Software Engineering

Software Engineering is a disciplined approach to the design, production, and maintenance of computer programs that are developed on time and with cost estimates, utilizing tools that help to manage the size and complexity of the resulting software products.
   -Dale, Nell and Susan C. Lilly, Pascal Plus Data Structures, 1991.

If our goal is to develop quality software, we should make sure our software

To accomplish these requirements, we must follow these steps:

  1. Write a detailed specification
  2. Solve the problem
    1. Use step-wise refinement or top-down design.
    2. Develop efficient algorithms
    3. Select proper data structures.
  3. Implement the solution
    1. Use external documentation
    2. Use internal documentation
      2. Self-documenting code
      3. Program structures
      4. Style
      5. Use constants
  4. Complete on schedule

Continue to:  Unit 1  / Prev  / Next