(Dynamic) schedule for CS 446

Next item in calendar for CS 446 Fall Quarter 1995-1996.
Updated 2 Oct., 13 Oct., 16 Oct., 23 Oct 1995.
Gio Wiederhold.

Tools and Processes for Software.
An Experimental Seminar on Large Scale Software Construction.

MW 3:15-4:30 in Building 200 (History Corner), room 124
The schedule is listed below, and also include pointers to class notes, on-line references, and related events as the Friday 3:15-4:30 CS545 database seminar series in MJH352.

Format: Small (graduate mainly) seminar. Undergraduate attendance by consent, based on prior software experience.

The objective is to gain insights into an area of computing that presents major problems and is short on science.

Format: Readings and reports by participants. Some presentations by outside, non-academic experts. Extensive time for critique of read and presented material. Discussion of metrics for software effectiveness. Design of an experiment to adapting an existing large software system to another task. Preparation of a report to guide further work and research. Creation of critically annotated bibliography.

Presentations limited to half of class period, remainder discussion, analysis, synthesis, generalization. Notes for session to be posted on Web.

Prerequisites: Prior software experience, graduate standing or consent of instructor.

Syllabus: The Phases of Software: Specification, Design, Coding and Acquisition, Integration, Operational Test, Maintenance, Adaptation, and Reuse. Allocation of System Function to Hardware versus Software. Distribution of functions among software creators and consumers. Waterfall, spiral, and domain-specific models. Adaptation and reuse of software. Allocation of system functions and responsibilities. Infrastructure, services, business and consumer responsibilities. Physical distribution, interaction, and feedback. Contributions and limits of object, modular, mega-programming, and other paradigms. Formal design and maintenance models. Available language facilities and requirements. Evaluation and metrics. Effects on business practice and employment. New models for software businesses. Future directions, especially with respect to distributed and federated software.

Textbook: Bruce Blum: Software Engineering, A Holistic View; Oxford 1992. Provides basic definition, a philosophical overview by a person with much experience.

Other Course Material: Bibliography from a wide variety of sources, including evaluations of successful and failed large software projects. Presentations from practioners. Papers and articles, various reference books.

CS 446 Fall 1995/96 Topics (tentative): Speaker [Notes]

1. Sept.27 Introduction, objectives. Design Concepts: waterfall, spiral models, growing systems, prototyping, functional prototypes. Discussion on course format: Gio Wiederhold. Read Blum:91 Chapter 1. Notes
2. Oct.2 Stanford Administrative Computing: an Example of trying to move to a modern architecture: Ron Burback. Handouts: ITSS material, GarlanA:95. Notes
[Hal Berghel WWW talk after]
3. Oct.4 Discussion of project plans, reading list. The Changes in Software Creation, Software management tools: Gio Wiederhold. Handout: Bibliography. Read Blum, Chapter 2. Notes
-- Oct.6 CS545 (MJH 352) Evolving OODBMS standards: Drew Wade.
4. Oct.9 Computer Industry Project Study: Avron Barr. Read Blum, Chapter 6. Notes
5. Oct.11 Mega programming. Parallel execution, Continuous execution, Compiling, optimization. Handout W:92 paper. Some viewgraphs under topic megaprogramming
6. Mmm.dd Reuse economics, technology, barriers: Will Tracz! Viewgraphs. Cancelled due to emergency.
6. Oct.16 The Chaos model: Ron Burback Note 6.
7. Oct.18 The Death of Computer Languages, the Birth of Intentional Programming: Charles Simony, Microsoft, meet in PoliScience (bldg.160 Room 163E. Read also 3 abstracts on Complex Software
-- Oct.22 Add deadline
8. Oct.23 Formal Software Methods: Dave Luckham Note 8. Also paper
9. Oct.25 Formal Software Methods: Dave Luckham [Amsterdam]
-- Oct.29 Drop deadline. Have your report topic in hand.
10. Oct.30 Composition technology: Dale Skeen. Note 10. 11. Nov.1 !!! in ERL 401 !!! (ERL is beyond Varian from the quad, room 401 is on the second floor, east wing, north side corner): X/Open DTP transaction standard: John Kenny/David Luckham demo. No notes taken by Gio.
12. Nov.6 Tools for Software Reengineering: Valdis Berzins, NPGS. Note 12.
13. Nov.8 Software Maturity metrics: Larry Druffel (SEI) Note 13.
-- Nov.12 Gradetype change deadline
14. Nov.13 Discusion of prior talks. Mediation and SW maintenance: Gio Note 14.
15. Nov.15 Role of Standards: with Carl Cargill. A book review Libicki: Information Technology Standards. Brief Note and table 15. ISO 9000 per dilbert
-- Nov.16 SCIP Seminar: Rishi Davis: "Patterns of Success in the Indian Software Industry", GSB Littlefield,107 12:00-1:10 pm
16. Nov.20 Knowledge-based Software Engineering: Debellis @Andersen Consulting. Brief Note with GIF images of the slides 16 (note tha GIFss print very slowly). His presentation slides in postscript. later version of his presentation slides in postscript.
17. Nov.22 Domain-specific Software: Mike Lowry. Brief Note 17.
-- Nov.26 Withdrawal deadline
18. Nov.27 Mediation, matchmaking, facilitators: Dan Kuokka. Brief Note 18.
19. Nov.29 The Taligient Business Model: Doug Doyle
-- Nov.30 SCIP seminar: Prof. Francois Bar, UC Berkeley visiting Stanford University "NII Inoperability Debate", GSB Littlefield 107 12:00-1:10pm
20. Dec.4 Mediation. The business of composition. Revenue collection for software module purchase, lease, use. Mediator glossary.
21. Dec.6 Discussion: Experience with project courses, what should a Software course sequence at Stanford cover: Fagan.
Today or soon.
22. Dec.8 Final reports due. hand in to Marianne Siroker, MJH 436, or by email. No final exam.

Graded reports will be returned the first week of the Winter Quarter.