Advanced Programming (Fall 2019 – CIS 4320)


CRN 12914
Fall 2019

Room: BUSN 320
Meeting Times:  TR 9:00 AM -10:20 AM  BUSN 320
Office Hours: By appointment only
Book: Building Java Programs
Recommended IDE: Eclipse
Additional Exercises: ReplIt


Final exam30%
Group project25%
Individual project(s)25%

Class Schedule

WeekTopicItems Due/Comments
1Introduction and Programming FoundationsFamiliarize yourself with the course goals and contents. IDE Setup. Hello world.
2Data Types and Control FlowConcatenation, variables, data types, and type casting
3User Input and MethodsScanner
4Method Types and ParametersOrganization, method types, method calls
5Boolean LogicTrue and False, And & Or
6ConditionalsIf and Else statements
7LoopsFor loops, increment and decrement operators
8MIDTERMThursday, October 17th
9LoopsWhile loops
10Nested LoopsLoops within loops
11ArraysDeclarations and traversals
12PolymorphismMethods with same name and diff params
13Objects & EncapsulationConstructors, accessors, and mutators (get/set)
14One-on-OneSemester individual review
15Final Project PresentationsFinal comments and evaluations

Review (Dec 5th). Final (Dec 10th, 10:00 am)

Important Dates

  • September 2nd – Labor Day, UTEP closed
  • September 24th – Individual Project 1
  • October 17th – Midterm
  • November 1st – Drop deadline
  • November 19th – Final project due date
  • November 21st and 26th – One-on-one meetings
  • November 28th and 29th – Thanksgiving, UTEP closed
  • December 3rd – Final review. Last day of classes
  • December 5th – Final Presentations
  • December 6th – Dead day
  • December 6th – Portfolio due date
  • December 10th (10:00 am – 12:45 am) – Final exam


Group Project

Group Project 1

Individual Projects

Final Exam and Review

Final exam review


A set of more challenging exercises (Arrays) for those who enjoy self inflicted academic pain.


ReplIt has a set of 114 exercises covering all topics in this class. Click the link here, create an account, and solve any/all exercises for additional practice. ReplIt has integrated tools that will give you immediate feedback on your code.

Other References has a full interactive tutorial on Java which you can find here. I highly recommend you go over it.

They also offer similar tracks for different languages if you are interested, including Python and PHP.

Portfolio Extra Credit

  1. A professional looking picture. Don’t spend on this, use your career services department, or take one with your phone.
  2. A professional looking URL. The domain is free with some web building tools but it has a few restrictions (e.g. you can have a free domain that looks like this: firstnamelastname
  3. A link to an updated LinkedIn profile.
  4. A short paragraph describing your career goals (i.e. pursue a master’s degree, work for X or Y firm or company).
  5. A section or a list with the projects you are most proud of. These should be full projects, and can and should contain those which are done as part of your academic coursework, whether it is for this class or others

Additional Guidelines

  1. No late assignments will be accepted. Please turn in assignments as-is before the deadlines to prevent a cascading effect where you are never able to catch up. Any grade is better than zero grade.
  2. The midterm and final exams are open book, open notes, and you can use the internet to search for information, however, you cannot communicate with your classmates or anyone else in any way online or otherwise. The tests will require coding and will contain quit a few of our “morning questions”, in-class coding exercises, and homework assignments.
  3. Homework will be assigned, however, it will not be graded. You will be able to receive feedback by using some automated tools. Remember, versions of this problems, whether verbatim or with slight variants will appear on your exams.