CS 3443 Syllabus - Spring 2018

Advanced application development in a current object-oriented language. Introduction to the software life cycle, best programming practices, and modern development tools. Prerequisites: CS 2121 and CS 2123 (Data Structures).

Class Web Page:  http://www.cs.utsa.edu/~cs3443

Lecture Time and Place:

Section Day Time Place Instructor Email Office Office Hours
1 MWF 2pm-2:50pm NPB 1.202 Amanda Fernandez Amanda dot Fernandez at utsa dot edu NPB 3.214 MW 3pm-5pm, F 12pm-1pm, or by appt
2 MWF 11am-11:50am NPB 1.202 Amanda Fernandez Amanda dot Fernandez at utsa dot edu NPB 3.214 MW 3pm-5pm, F 12pm-1pm, or by appt

Grader:

Section 1: Ryan Fondulis - Ryan dot Fondulis at utsa.edu
Section 2: Ash Ranjbar - siavashr1 at gmail dot com

Exams:

Final Exam:
Section 1: Monday May 7, 2018 12:30pm - 3:00pm
Section 2: Thursday May 3, 2018 9:45am - 12:15pm
There are no make-up exams available, unless coordinated with your instructor 1 week in advance of the midterm or 1 month in advance of the final. Students must attend the final exam for the section in which they are enrolled.

Textbook:

Java SE8 for Programmers, 3rd edition, by Paul Deitel and Harvey Deitel

Prerequisite:

CS 2123/2121 Data Structures

Prerequisite For:

The course catalog lists CS 3443 as a prerequisite for several courses, including CS 3723 Programming Languages, CS 3733/3731 Operating Systems and CS 3773 Software Engineering.

Course Objectives:

Tentative Grading Policy:

Tentative Schedule:

Weeks     Topics
1-5 control, parameter passing, arrays, ArrayLists, Strings

classes, objects, variables, constructors, methods

encapulation, inheritance, abstract classes, interfaces, polymorphism
6-10 GUI, graphics, components and containers, event-driven programming

UML class diagrams, model-view-controller

begin team project, present project designs
11-15 collections, generics, exception handling, files

advanced topic such as threads or databases

finish team projects, present team projects

Blackboard:

The course will be using Blackboard (http://utsa.blackboard.com/) for grade reporting, program submissions and online quizzes.

ClassQue:

The course will be using ClassQue for taking attendence. See UTSA ClassQue Student Setup to setup ClassQue on your classroom computer.

Online Quizzes:

There will be approximately 10 quizzes administered online through Blackboard.

Programming Assignments:

There will be approximately 10 programming assignments. You must upload the deliverables for the assignment in Blackboard by the due date to receive credit for the exercise. Late assignments will NOT be accepted unless you have made prior arrangements with your instructor.

Team Projects:

Each team will consist of 4-5 students. Each project will be an independent GUI application designed and developed by the team members. The teams will use source control (Git) for their code.

Common Syllabus Information

Common syllabus information and links can be found at http://provost.utsa.edu/syllabus.asp.

Scholastic Dishonesty:

The integrity of a university degree depends on the integrity of the work done for that degree by each student.  The University expects a student to maintain a high standard of individual honor in his/her scholastic work.

You must write your own code.  Because patterns of cheating do not always become apparent until after several assignments have been completed, you should be aware all of your assignments are available to your instructor on Blackboard.

Further information on UTSA's policies regarding academic dishonesty can be found in UTSA's Student Code of Conduct, Section 203.