Tom Kelliher, CS 319

Sept. 4, 1998

Announcements: Brooks book? Leaning toward client/contractor project model.

From last time:

  1. Syllabus.

  2. Discussion.


  1. Introduction.

  2. Waterfall, evolutionary development models.

  3. Risk.

  4. Applications.

Assignment: Read Chapter 2.


  1. Increasing dependence upon complex software. Increasing percentage of GDP. Consequences?

  2. Generic, bespoke systems. Examples, differences.

  3. Software product attributes: maintainable, dependable, appropriately efficient, usable.

  4. Software process composed of activities and deliverables:
    1. Software specification.

    2. Software development.

    3. Software validation.

    4. Software evolution.

Software Development Paradigms

  1. Waterfall model, evolutionary development.

  2. Exploratory programming: ``Ready, fire, aim.'' Get something working. Modify until ``acceptable.''

  3. Prototyping: Get something working. Create a requirements specification. Develop the ``real'' system.

  4. Formal translation: Get a formal specification.

  5. Code reuse: Use COTS software to build the system.

The Waterfall Model

  1. Why do managers like this model?

  2. What are its drawbacks?

Evolutionary Development

  1. Exploratory programming, throw-away prototyping.

  2. Problems.

  3. Evolutionary development appropriate for?


  1. What is risk in software engineering?

  2. Consider risk in a radiation treatment system.

  3. Consider risk in an online system for accessing student advising, registration information.


  1. Describe the process model you utilized in your last programming project.

  2. What is the most appropriate generic software process model for developing each of the following systems:
    1. An automotive ABS system.

    2. A software maintenance VR system.

    3. A college accounting system designed to replace an existing system.

    4. An interactive system allowing railway passengers to find train times from terminals installed in the station.

    What risks might be involved in each of these?

  3. A university intends to procure an integrated student management system. The alternative approaches to be adopted are either:
    1. Buy a DBMS and develop a system in-house.

    2. Buy a system from another university and modify it.

    3. Join a consortium of other universities, establish a common set of requirements and contract a software house to develop a single system for all members of the consortium.

    Are there other possible alternatives? Identify two possible risks in each of these strategies and suggest techniques for risk resolution which would help in deciding which approach to adopt.

  4. Should professional societies have codes of conduct? Should disciplines have professional societies?

Thomas P. Kelliher
Thu Sep 3 08:47:34 EDT 1998
Tom Kelliher