next_inactive up previous


Course Plan
CS4211 Software Engineering
Fall 2004

Dines Bjørner, Visiting Professor, 1 July 2004 -- 30 June 2005
Department of Computer Science, School of Computing
National University of Singapore
3 Science Drive 2, Singapore 117543, Republic of Singapore
E-Mail: bjorner''ad''comp.nus.edu.sg

18 October 2004

Welcome to Course CS4211

We are going to have a good time together

This document is the main document of student information for CS4211.

This page will be regularly updated

LATEST NEWS


Contents

[1] Course Aims & Objectives

[1.1] Course Aims

[1.2] Course Objectives

[2] Course Material

[2.1] Reference

[2.2] Practical Matters

[2.3] Skip Some Material


[3] Lecture Plan

Tuesday 10 August: The TripTych of SE

Lecture Topic: Chapter 1

Group Assignments:

Tuesday 17 August: Phases, Stages & Steps of SE

Lecture Topics: Chapter 1

Assignment Name: TripTych Phases

Please hand assignment in by: Week of 14.9, 2004

Tuesday 31 August: Documents (I of II)

Lecture Topics: Chapter 2

Assignment Name: Informative + Rough Sketch Documents

Please hand assignment in by: Week of 14.9, 2004

Tuesday 7 September: Documents (II of II)

Lecture Topics: Chapter 2

Assignment Name: Narrative and Terminology Documents

Please hand assignment in by: Week of 14.9, 2004

Tuesday 14 September: Descriptions: Theory & Practice (I of II)

Lecture Topics: Chapter 5

Assignment Name: Description Theory

Please hand assignment in by: Week of 12.10, 2004

Wednesday 15 September, 4pm-6pm, LT34: Descriptions: Theory & Practice (II of II)

Lecture Topics: Chapter 5

Assignment Name: Description Theory

Please hand assignment in by: Week of 12.10, 2004

Tuesday 28 September: Domain Engineering, Stake Holders and Domain Facets (I of II)

Lecture Topics: Chapter 8 + Chapter 9 + Chapter 11

Assignment Name: Domains: Stake Holders, Intrinsics and Business Processes

Please hand assignment in by: Week of 12.10, 2004

Tuesday 5 October: Domain Facets (II of II)

Lecture Topics: Chapter 11

Assignment Name: Further Domain Facets

Please hand assignment in by: Week of 12.10, 2004

Tuesday 12 October: Overview of Requirements Engineering, Domain Requirements

Lecture Topics: Chapter 17 + Chapter 19

Assignment Name: Domain Requirements

Please hand assignment in by: Tuesday Nov. 2, 2004, at 4 pm at the very latest !

Tuesday 19 October: Interface Requirements

Lecture Topic: Chapter 19

Assignment Name: Interface Requirements

Please hand assignment in by: Tuesday Nov. 2, 2004, at 4 pm at the very latest !

Wednesday 20 October, 4pm-6pm, LT34: Machine Requirements

Lecture Topic: Chapter 19

Assignment Name: Machine Requirements

Please hand assignment in by: Tuesday Nov. 2, 2004, at 4 pm at the very latest !

Tuesday 26 October: Software Architecture Design

Lecture Topics:

Assignment Name: Software Architecture

Please hand assignment in by: Week of 2.11, 2004

Wednesday 27 October, 4pm-6pm, LT34: Domain Specific Architectures

Lecture Topics: Survey

No assignment items.

Tuesday 2 November: Closing Lecture - Review and Summary

Lecture Topics: Issues not covered in the course:

No Lecture on Tuesday 9 November

Has been re-scheduled to late October (Wednesdays 20 + 27), ie. earlier !

Tuesday 23 November: Exam

[4] Course Work

[4.1] General


[4.2] Specific Assignment Topics

  1. What is Administrative Forms Processing  ? (NUS, anyone ?)
  2. What is an Airport  ? (Changi, anyone ?)
  3. What is Air Traffic  ? (Changi etc., anyone ?)
  4. What is a Container Harbour  ? (Singapore, anyone ?)
  5. What is a Document System  ?
  6. What is Freight Logistics  ? (Singapore, anyone ?)
  7. What is a Financial Service System  ? (Singapore, anyone ?)
  8. What is a Hospital  ? (NUS Hospital, anyone ?)
  9. What is a Manufacturing Company  ?
  10. What is the Market  ? (in preparation for an/the $\mathcal{E}$-Market)
  11. What is a Metropolitan Area Tourism Industry  ? (Singapore, anyone ?)
  12. What is a Railway System  ? (MRT ?)

Section 7 brings more details.

[4.3] Assignments

[5] Examination

There will be two forms of examination:

Each form of examination ``counts'' 50%.

[5.1] Written, 2 Hour Test

[5.2] Assignment Reports - and Assignment Report Evaluation


[6] Tutoring


[7] More on Course Topics

  1. What is Administrative Forms Processing ?

    Typically enterprises base part of their day-to-day operations (especially administration) on a small set of forms: Employment forms: Application, employment offer, offer acceptance or rejection, work assignment form, form(s) for reporting sick leave, leave with, or without pay, etc., termination or notification form, etcetera; procurement forms: Product or service inquiry, Product or service offers, requisition, receipt form, inspection (acceptance or rejection) form, payment form, etcetera. Each form basically contain preformatted fields, to be `filled in', partially or fully. Each such partially `filled in' form may undergo several `rounds' of `filling in' and possible, where needed, approvals (signatures). Etcetera.

  2. What is an Airport - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with the flow of people (passengers), material (fuel, catering, luggage), aircrafts, information (passenger, luggage, catering, fuel, servicing, etc., information), and control in an airport.

  3. What is Air Traffic - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with the movements (start-up, take-off, flight, preparation for landing, possible holding (in holding areas), touch down and taxiing) of aircrafts -- under the monitoring and ``control'' by ground, terminal, area and continental air traffic control towers.

  4. What is a Container Harbour - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with the flow of ships and cargo, into and out from a container harbour: Ships arriving at a container harbour, ships having, possibly, to anchor for container quay place, ships unloading and loading containers, ships being detained for customs, illegal cargo, or lack of seaworthyness reasons in a harbour, ships cleaning their fuel tanks in a harbour, and ships leaving harbour.

  5. What is a Document System ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with documents: Their creation as originals, at a certain time and location, their placement with (allocation to) people or file cabinets, their copying (whereby unique, distinct copies are made, with no two copies of the same document being the same due to their necessarily being copied at different times), their editing (whereby the document which is being edited -- whether an original, or a copy, or a version -- becomes a version of the document it was ``edited from''), their movement (ie., transfer from persons or file cabinets to (other) persons or (other) file cabinets, all necessarily having different locations -- or their movement because the person with whom a document is associated is carrying that document ``around''), or their shredding.

  6. What is Freight Logistics - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with (1) people (senders) inquiring with logistics firms about and actually sending or receiving freight transports; (2) with logistics firms arranging such transportation with trucking companies, with freight train operators, with ship owners, and with air cargo companies -- as well as logistics firms interacting with trucking and freight train depots, harbours and airports; with (3) trucks, trains, ships and aircrafts unloading and loading freight at depots, harbours and airports, etc. A central concept: That of a way bill (or a bill of lading) directs freight from point of origin via intermediate hubs (depots, harbours, airports), to final destination.

  7. What is a Financial Service System - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with people, customers, using banks, insurance companies, stock brokers and portfolio managers. Thus also the entities, functions, etc., of these phenomena need be described. Of special interest is transfers of securities instruments between banks, insurance companies, stock brokers, the (assumed one) stock exchange, and portfolio managers.

  8. What is a Hospital - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with the flow of patients, visitors and health-care workers, of materials (beds, medicine, etc.), information (patient medical records with update information on clinical tests, X-rays, ECGs, MR Scans, CT scans, etc.), and control in a hospital. Thus patient treatments, as a process, and its interaction with other hospital processes need be narrated.

  9. What is a Manufacturing Company - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with the flow of orders into, and deliveries from a manufacturing company, as well as the flow of materials (parts), equipment (trucks, conveyor belts, etc.), information (sales orders, production orders, etc.), and control among and within the various departments of a manufacturing enterprise: Marketing, sales and service, design, production floor (machines [lathes, saws, mills, planers, etc.] and their in- and out trays, delivery trucks, etc.), parts and products warehouses, etc.

  10. What is the Market - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with customers inquiring about, ordering, getting delivered, returning (rejecting), accepting and paying for, merchandise -- with, from, and to retailers, who again perform similar actions with wholesalers, who again perform similar actions with producers, and where distribution companies may be involved in deliveries from producers to wholesalers to retailers to consumers.

  11. What is a Metropolitan Area4 Tourism Industry - and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with the inquiry, arrival, flow and departure of people (tourists, conference-goers, business people) about, to, within and from a metropolitan area: Between airports and hotels, and between hotels, restaurants, shops, museums, theatres, parks, historic sights, nature spots, etc. Inquiry about and reservations of hotel rooms, restaurants (tables), theatres (tickets), the inquiry and buying of transport cards, what to buy, planning of shopping ``spree'' (itinerary), etc. -- all are part of what a visitor to a metropolitan area undergoes, including possible visits to the dentist, medical doctor, or hospital emergency room.

  12. What is a Railway System and what Software Do You Want and Get ?

    Domain descriptions of this topic shall identify and describe the entities, functions upon, and events & behaviours in connection with the rail net (lines and stations), time tables, train traffic, passengers inquiring, buying tickets, canceling (ie., using) tickets, etc. The lines and stations consists of rail units, have signals, etc. Thus railway system personnel despatch and reschedule, maintain (clean, repair, etc.) trains, and personnel are rostered (ie., assigned to train duties, etc.), etc.

For respective of the above topics similar prescriptions, respectively specifications are to be made of requirements and software design.

[8] Lecturer's URLs

The curious student may wish to inspect:

for biographical data about the lecturer.

for information about the course text book.

for information about a worldwide railway system domain R&D project instigated and headed by Dines Bjørner.

for information about formal methods (the CoLogNET part headed by Dines Bjørner).

And:

as the main entry to info related to the lecturer.

About this document ...

Course Plan
CS4211 Software Engineering
Fall 2004

This document was generated using the LaTeX2HTML translator Version 2002 (1.62)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -split 0 -toc_depth 6 plan

The translation was initiated by on 2004-10-18


Footnotes

... day.1
DB is chairing a Topical Day Session, August 26, at the IFIP World Computer Congress 2004, at Toulouse, France: http://www.wcc2004.org/congress/topical_days/top11.htm.
... 26.2
DB is planning, subject to approval, to visit UNU-IIST, the United Nations' University's International Institute for Software Technology at Macau, SAR, near Hong Kong: http://www.iist.unu.edu.
... day.3
DB is General Chair of the Intl. Conf. on Formal Engineering Methods, ICFEM'04, Seattle, Washington, USA: http://research.microsoft.com/conferences/icfem2004.
... Area4
Such cities as Singapore, Macau, Hong Kong, London, New York, Tokyo, Paris, etc., can be said to be `Metropolitan Areas'.

next_inactive up previous
2004-10-18