Software Design

Course Number: CIS 122
Transcript Title: Software Design
Created: September 1, 2012
Updated: January 22, 2016
Total Credits: 4
Lecture Hours: 30
Lecture / Lab Hours: 0
Lab Hours: 30
Satisfies Cultural Literacy requirement: No
Satisfies General Education requirement: Yes
Grading options: A-F (default), P-NP, audit
Repeats available for credit: 0


CIS 120 or CAS 133 or BA 131

Course Description

Covers software design as part of the software development life cycle. Includes basic logic constructs, testing programs, use case descriptions, modularity and an introduction to object design. Provides examples of well-designed software projects. Additional lab hours may be required. Recommended: CIS120 or CAS 133 or BA 131. Prerequisites: MTH 20 or equivalent placement test scores. Prerequisite/concurrent: WR 121. Audit available.

Intended Outcomes

On completion of this course the student should be able to:

  1. Translate simple business problems into programming algorithms applying Use Case descriptions and a design methodology.
  2. Translate standard business programming algorithms proficiently into a physical programming language that meets user requirements.
  3. Communicate algorithmic solutions to other programmers using a standard design methodology.
  4. Test a solution to a business problem both before and after coding a physical solution.

Alignment with Institutional Core Learning Outcomes

1. Communicate effectively using appropriate reading, writing, listening, and speaking skills. (Communication)
2. Creatively solve problems by using relevant methods of research, personal reflection, reasoning, and evaluation of information. (Critical thinking and Problem-Solving)
3. Apply the knowledge, skills and abilities to enter and succeed in a defined profession or advanced academic program. (Professional Competence)
4. Appreciate cultural diversity and constructively address issues that arise out of cultural differences in the workplace and community. (Cultural Awareness)
5. Recognize the consequences of human activity upon our social and natural world. (Community and Environmental Responsibility)

Outcome Assessment Strategies

Students will complete the following assessments:

  • Translate business problems to program designs.
  • Write algorithms that illustrate typical programming applications (some typical application examples):
    • Counters and Accumulators
    • Minimum and Maximum
    • Common business/math/science problems
  • Produce a design document in a standard format.
  • Develop test plan to prove solutions.

Course Activities and Design

This course is presented with a combination of lectures and labs.
Students will be expected to complete design and programming assignments.

Course Content (Themes, Concepts, Issues and Skills)

  • Software Development Life Cycle
  • Logic Constructs
    • Selection
    • Repetition
    • Sequence
  • Standard algorithms
    • "Hello World" project
    • Counter
    • Accumulator
    • Minimum/Maximum
  • Solving Word Problems
  • Employing Standards
    • Naming
    • Indentation
    • Logic design syntax
    • Physical code syntax
  • Expressions
  • Logical vs. physical solution
  • Pseudo Code
  • Graphical design tool
  • Objects (general introduction)
  • Object design tools (introduction only)
    • UML Use case narrative
    • UML Use case diagram
    • UML Class diagram
    • UML Object diagram

Related Instruction


Hours: 16


  1. Translate simple business problems into programming algorithms.
  2. Code standard business programming algorithms proficiently that meet user requirements.


  1. Direct instruction (+ study time) in discipline-related computations involving Boolean algebra and arithmetic expression construction and evaluation as applied in a specific programming language's type system.