Software Development – CSIS 505

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

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.

Prerequisites

Meets BMAL590 / 27 hrs in BUSI with a score of 3 and Meets MATH121 or higher with a score of 3 and Meets MATH201/BUSI230/hi/equiv with a score of 3 and Meets CSIS 212 or equivalent with a score of 3 and Meets CSIS 312 or equivalent with a score of 3 and Meets CSIS330 /CSIS331 / equiv with a score of 3

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.

Measurable Learning Outcomes

Upon successful completion of this course, the student will be able to:

  1. Discuss the relevance of course material and the use of software development to a biblical worldview. (PLO: 1)
  2. Demonstrate the ability to build object-oriented applications. (PLO: 2)
  3. Employ the use of regular expressions on string and character data types. (PLO: 3)
  4. Compile relevant applications using generic data structures. (PLO: 3)
  5. Apply recursive concepts by using recursion in programming applications. (PLO: 3)

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 Module/Week 1.

Discussion Board Forums (4)

Discussion boards are collaborative learning experiences. Therefore, the student is required to create a thread in response to the provided prompt for each forum. 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 (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:

Proposal

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.

Design

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.

Final

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.

Midterm Exam

The Midterm Exam will cover the Reading & Study material for the first 4 modules/weeks. The Midterm Exam will be open-book/open-notes, contain 50 multiple-choice and true/false questions, and have a 1-hour time limit.

Final Exam

The Final Exam will cover the Reading & Study material for all 8 modules/weeks. The Final Exam will be open-book/open-notes, contain 50 multiple-choice and true/false questions, and have a 1-hour time limit.