Internet Explorer 7, 8, and 9 are no longer supported. Please use a newer browser.
Concourse works best with JavaScript enabled.
Liberty University logo

Online · School of Business · Computational Sciences

Software Design
CSIS-643

  • CG
  • Section 8WK
  • 11/08/2019 to 04/16/2020
  • Modified 01/13/2020

Course Description

In this course, the student will be introduced to the architectural design of complex software systems and explore how to successfully design complex software systems. Software system design requires an individual to be able to describe, evaluate, and create systems at an architectural level of abstraction. Therefore, this course considers commonly-used software system structures, techniques for designing and implementing these structures, models, and formal notations for characterizing and reasoning about architectures, tools for generating specific instances of an architecture, and case studies of actual system architectures. Students will learn the skills and background needed to properly evaluate the architectures of existing systems and to design new systems in principled ways using well-founded architectural paradigms.

Requisites

Prerequisites

CSIS 505 and CSCI 611

Rationale

The purpose of CSIS 643, Software Design, is to teach the student the concepts of architectural design and to apply these concepts to successfully design complex software systems. This course is important for the student because the quality and longevity of a software system is determined by its architecture, thus making these skills valued by employers.

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 design to a biblical worldview. (PLO-1)
  2. Recognize major architectural styles in existing software systems. (PLO-3)
  3. Assess software design alternatives for a problem. (PLO-2)
  4. Use existing definitions and development tools to expedite such tasks. (PLO-2)
  5. Apply domain knowledge to specialize an architecture for a particular family of applications. (PLO-3)
  6. Recognize how to manage software projects by being able to plan, manage, and control a software project. (PLO-2)

Course Resources

Required Resource Purchase

Bass, L., Clements, P., & Kazman, R. (2013). Software architecture in practice (3rd ed.). Upper Saddle River, NJ: Addison-Wesley. ISBN: 9780321815736.

Disclaimer: The above resource provides information consistent with the latest research regarding the subject area. Liberty University does not necessarily endorse specific personal, religious, philosophical, or political positions found in this resource.

Recommended Resource

American Psychological Association. Publication manual of the American Psychological Association (Current ed.). Washington, DC: Author.

Additional Materials for Learning

    1. Computer with basic audio/video output equipment
    2. Internet access (broadband recommended)
    3. Blackboard recommended browsers
    4. Microsoft Office

Course Assignments

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 400 words and demonstrate course-related knowledge. In addition to the thread, the student is required to reply to the threads of at least 2 classmates. Each reply must be at least 200 words. Each thread and reply must include at least 1 citation in current APA format.

Project

Throughout the course, the student will architect and program a software application utilizing object-oriented techniques and graphical user interfaces using Java. This project will be completed in the following steps:

Architecture Part 1

The student will write a 10–12-page (approximately 300 words per page) paper in current APA format that describes the business case and architecturally significant requirements for the project. The paper must include at least 10 scholarly articles as references in addition to the course textbook and the Bible.

Architecture Part 2

The student will write a 6–8-page (approximately 300 words per page) paper (not including models) in current APA format that describes and justifies the complete architecture and design decisions for the project. Architecture Part 2 must include at least 15 fully developed models of at least 8 different types. The paper must include at least 6 scholarly articles as references in addition to the course textbook and the Bible.

The student will add Architecture Part 1 to Architecture Part 2 to create the Architecture Part 2 submission. The final submission will be 16–20 pages (not including models) and contain at least 15 models and at least 16 scholarly articles as references.

Implementation

This step will display the student’s completed software application, the culmination of the software design and architecture process. The student will submit his or her Java source code and the architecture.

Utility Tree Analysis

The student will complete an interactive activity in which he or she will be given a set of architecturally significant requirements (ASR) to evaluate in terms of business value and quality attributes.

Peer Evaluation

The student will provide a reflection thread of at least 400 words and an attachment of his or her final project. In addition to the thread, the student will conduct a peer review of the projects of least 2 classmates. Each peer review must be at least 200 words.

Course Grading

Course Requirements Checklist

10

Discussion Board Forums (4 at 40 pts ea)

160

Project

Architecture Part 1

200

Architecture Part 2

250

Implementation

250

Utility Tree Analysis

60

Peer Evaluation

80

Total

1010

Policies

Late Assignment Policy

Course Assignments, including discussion boards, exams, and other graded assignments, should be submitted on time.

If the student is unable to complete an assignment on time, then he or she must contact the instructor immediately by email.

Assignments that are submitted after the due date without prior approval from the instructor will receive the following deductions:

  1. Late assignments submitted within one week after the due date will receive up to a 10% deduction.
  2. Assignments submitted more than one week and less than 2 weeks late will receive up to a 20% deduction.
  3. Assignments submitted two weeks late or after the final date of the course will not be accepted outside of special circumstances (e.g. death in the family, significant personal health issues), which will be reviewed on a case-by-case basis by the instructor.
  4. Group projects, including group discussion board threads and/or replies, and assignments will not be accepted after the due date outside of special circumstances (e.g. death in the family, significant personal health issues), which will be reviewed on a case-by-case basis by the instructor.

Disability Assistance

Students with a disability and those with medical conditions associated with pregnancy may contact Liberty University’s Online Office of Disability Accommodation Support (ODAS) at [email protected] for accommodations.  Such accommodations require appropriate documentation of your condition.   For more information about ODAS and the accommodations process, including how to request an accommodation, please visit https://www.liberty.edu/online/online-disability-accommodation-support/. Requests for accommodations not related to disabilities or pregnancy must be directed to the Registrar’s Office, which generally handles medical needs support.

If you have a complaint related to disability discrimination or an accommodation that was not provided, you may contact ODAS or the Office of Equity and Compliance by phone at (434) 592-4999 or by email at [email protected].  Click to see a full copy of Liberty’s Discrimination, Harassment, and Sexual Misconduct Policy or the Student Disability Grievance Policy and Procedures.

Course Attendance

In an effort to comply with U.S. Department of Education policies, attendance is measured by physical class attendance or any submission of a required assignment within the enrollment dates of the course (such as examinations, written papers or projects, any discussion board posts, etc.) or initiating any communication with one’s professor regarding an academic subject. More information regarding the attendance policy can be found in the Academic Course Catalogs. Regular attendance in online courses is expected throughout the length of the term. Students who do not attend within the first week of a sub-term by submitting a required academic assignment (such as the Course Requirements Checklist, an examination, written paper or project, discussion board post, or other academic activity) will be dropped from the course. Students who wish to re-engage in the course are encouraged to contact Academic Advising to discuss their enrollment options. Students who begin an online course, but at some point in the semester cease attending, and do not provide official notification to withdraw, will be assigned a grade of “FN” (Failure for Non-Attendance). Students wishing to withdraw from courses after the official start date should familiarize themselves with the withdrawal policy.

Grading Scale

A- B+ B B- C+ C C- D+ D D- F
940-1010 920-939 900-919 860-899 840-859 820-839 780-819 760-779 740-759 700-739 680-699 679 and below

For courses with a Pass/NP final grade, please refer to the Course Grading section of this syllabus for the assignment requirements and/or point value required to earn a Passing final grade.

Add/Drop Policy

The full policy statement and procedures are published in the Policy Directory.

Honor Code

Liberty University comprises a network of students, Alumni, faculty, staff and supporters that together form a Christian community based upon the truth of the Bible. This truth defines our foundational principles, from our Doctrinal Statement to the Code of Honor. These principles irrevocably align Liberty University’s operational procedures with the long tradition of university culture, which remains distinctively Christian, designed to preserve and advance truth. Our desire is to create a safe, comfortable environment within our community of learning, and we extend our academic and spiritual resources to all of our students with the goal of fostering academic maturity, spiritual growth and character development.

Communities are predicated on shared values and goals. The Code of Honor, an expression of the values from which our Doctrinal Statement was born, defines the fundamental principles by which our community exists. At the core of this code lie two essential concepts: a belief in the significance of all individuals, and a reliance on the existence of objective truth.

While we acknowledge that some may disagree with various elements of the Code of Honor, we maintain the expectation that our students will commit to respect and uphold the Code while enrolled at Liberty University.

Adherence to the principles and concepts established within facilitates the success of our students and strengthens the Liberty community.

The Code of Honor can be viewed in its entirety at http://www.liberty.edu/index.cfm?PID=19155.

Schedule

CSIS 643

Textbook: Bass et al., Software Architecture in Practice (2013).

Module/Week

Reading & Study

Assignments

Points

1

Bass et al.: chs. 1–3

2 presentations

Course Requirements Checklist

Class Introductions

DB Forum 1

10

0

40

2

Bass et al.: chs. 4–7

1 presentation

Project – Architecture Part 1

200

3

Bass et al.: chs. 8–11

1 presentation

DB Forum 2

40

4

Bass et al.: chs. 12–14

1 presentation

Project – Architecture Part 2

250

5

Bass et al.: chs. 15–18

1 presentation

DB Forum 3

Utility Tree Analysis

40

60

6

Bass et al.: ch. 19

1 presentation

DB Forum 4

40

7

Bass et al.: ch. 20

1 presentation

Project – Implementation

250

8

Bass et al.: chs. 21–22

1 presentation

Peer Evaluation

80

Total

1010

DB = Discussion Board

NOTE: Each course module/week begins on Monday morning at 12:00am. (ET) and ends on Sunday night at 11:59 p.m. (ET). Module/Week 8 ends on at 11:59 p.m. (ET) on Friday.