BGSU Logo
BGSU Home BGSU Academics BGSU Admissions The Arts BGSU Athletics Libraries Offices
Department of Computer Science
Computer Science Home Undergraduate Program Graduate Program Computer Science Faculty Academic Advising Mission and Vision
Small font Medium font Larger font Largest font
Left Bracket CS 564: Software Development Right Bracket

Course Syllabus

  1. Overview of the software life cycle
  2. Systems analysis
    1. User and/or market requirements
    2. Project specifications
    3. Structured analysis
    4. Decision tables or trees
  3. Preliminary design
    1. User interface design and prototyping
    2. Structured design
    3. Design evaluation, including cohesion and coupling
  4. Detailed design
    1. At least one diagraming technique for detailed design
    2. Algorithm choice and efficiency issues
    3. Detailed design standards
  5. Implementation
    1. Language selection
    2. Approaches to implementation: top-down, bottom-up, threads
    3. Coding methods and guidelines
  6. Testing
    1. Types: unit, integration, system, field, acceptance
    2. Testing methods, including black-box and white-box
  7. Software maintenance

Experiences

  1. It will be assumed that the student has been involved in a team project, specifically one involving the development of a software system for a user. The project will be one which is suitable for the use of Structured Analysis and Structured Design.
  2. The student will use the Structured Analysis and Structured Design methods in carrying out the project.
  3. The student will use the department's CASE tools for at least analysis and design.

Learning Goals

The student will be able not only to define and discuss the topics listed on this sheet, but will be able to apply the principles and techniques to new problems. For example, the student should be able to apply the Structured Analysis/Structured Design method to a (small) problem on the comprehensive exam. The student should be able to generate black-box and white-box test cases and explain how/why the particular test cases were selected. The student should be able to assess cohesion and coupling, derive a decision table, discuss selection of an appropriate implementation approach and so on.

Additional Topics

The course will contain material on other topics, but only the topics listed here will be included on the comprehensive exam.

webmaster@cs.bgsu.edu