Software Development – CSIS 505

CG • Section 8WK • 11/08/2019 to 04/16/2020 • Modified 07/27/2021

Course Description

This course is an in-depth study of the general-purpose, secure, object-oriented, portable programming language Java. Students will learn to program in Java using advanced features in Java to create stand-alone applications and applications for the World Wide Web using Java. The Java language concepts learned will be data types, operators, flow control statements, objects, classes, methods, arrays, inheritance, polymorphism, strings, characters, regular expressions, generic collections, recursion, and custom generic data structures.

For information regarding prerequisites for this course, please refer to the Academic Course Catalog.

Rationale

The course explores the Java programming language at an intermediate to advanced level. More than a focus on Java programming syntax, the course further develops the student’s ability to think analytically through the use of object-oriented and functional programming paradigms in complex situations.

Course Assignment

Textbook readings and lecture presentations

Course Requirements Checklist

After reading the Course Syllabus and Student Expectations, the student will complete the related checklist found in the Course Overview.

Discussions (4)

Discussions are collaborative learning experiences. Therefore, the student is required to create a thread in response to the provided prompt for each discussion. Each thread must be at least 500 words and demonstrate course-related knowledge with at least 1 citation in current APA format and 1 biblical reference. In addition to the thread, the student is required to reply to 2 other classmates’ threads. Each reply must be at least 200 words and contain at least 1 citation in current APA format.

Homework Assignments (7)

Each Homework assignment will consist of coding solutions to a set of provided problems. Each problem will be a modified version of a textbook exercise. The student will code the program by writing out complete, error-free classes and methods. The student will complete each Homework assignment and submit 2 files showing his/her work. The first file will be a Word document with screenshots showing the output of the program running. The second file will be a compressed/zipped folder containing the Java project and all program code.

Project

The student will complete an individual, comprehensive programming project in the Java programming language on a topic of his/her own choosing. The project will progress through the following 3 milestones:

Project: Proposal Assignment

The student will submit a short description of what he/she is hoping to accomplish with the project, a bulleted list of requirements that his/her project will implement, an activity diagram, the proposed logic that will be automated, and a list of 5 to 7 information-based, class names that will be used to implement the final project.

Project: Design Assignment

The student will revise his/her topic based on the feedback he/she received from the Proposal and will create a class diagram depicting 5 to 7 information-based, classes and their relationships that will be used to implement the final project.

Project: Final Assignment

The student will submit a “code complete” version of his/her project along with appropriate documentation of the project. Additionally, the student will submit revisions to all of the previous deliverables based on given feedback.

Quiz: Midterm

The Quiz: Midterm will cover the Learn material for Module 1: Week 1 — Module 4: Week 4. The Quiz: Midterm will be open-book/open-notes, contain 50 multiple-choice and true/false questions, and have a 1-hour time limit.

Quiz: Final

The Quiz: Final will cover the Learn material for all Module 1: Week 1 — Module 8: Week 8. The Quiz: Final will be open-book/open-notes, contain 50 multiple-choice and true/false questions, and have a 1-hour time limit.