CA586 COURSE MATERIALS (2008, Semester 2)

(to supplement lecture notes)

Note (12/02/2008): These notes, while mainly applicable for 2008, will be subject to some change. The order of presentation will be somewhat different, beginning with the content of Chapter 2.

· Course Notes:

Chapter 1 Software engineering overview (MS Word version has live hyperlinks) [done between sections 7.A and 8.A in 2007-2008]

Note: In Chapter1 there is a reference to the old ESA software engineering standards. For those interested, here are links to the new (2003-2005) standards (part 1, part 2).

Chapter 2 Introduction to UML (MS Word version has live hyperlink(s))

Chapter 3: Essentials of UML

3A Essentials of UML: Class Models; Supplementary notes on dependency etc (.pdf)

                                Note: An example (viewed 21/03/2006) on the internet of a CRC resource.

3B Essentials of, and More on UML Use Case Models

[Note Feb 27, 2008 – “More on use case” material will be covered after section 4.A]

3C Essentials of UML interaction diagrams

3D: Essentials of UML State & Activity diagrams

                        Note: Here is a link (looked up March 13, 2006) to explain what Nassi-Schneiderman diagrams are

                        Note: A short paper handout containing a few more state diagram examples was distributed

Chapter 4: Testing

4A: Generating Test Cases from Use Cases (Heumann’s approach)

                        Note: Link to Heumann’s paper.

4B: Summary of some Key SW Testing Concepts) [not applicable in 2007-2008]

4C: System Testing via Use Cases – Somewhat different perspective to 4A (paper handout) [not applicable in 2007-2008]

Chapter 5: Completion of UML Class, Interaction, State and Activity models & diagrams

            5A Review of interfaces etc

            5B MoreOnUMLClassInteractionStateActivity (refer to Text book diagrams for relevant figures)

                                Supplementary link on Java interfaces (Cymerman) (for information only)

Chapter 6: Implementation diagrams:; Packages, subsystems, models

Chapter 7: Two examples – Chapters 15 & 16 of Stevens & Pooley

          7A Ex1: Computer Science Department

            7B Ex2: Board Games - Frameworks  [not presented in 2007-2008]

Chapter 8: SW Engineering processes and systems

          Organisational-level systems:

8A     CMM Overview (detailed knowledge of all the CMM level specifics is not required)

          Summary of KPA goals

8B     Outline example of an organisation’s Quality Manual

          Example project level planning documentation:

8.C    Example Software Project Development Plan template (includes notes on project management)

                                  Note: Short (2 page) paper handout to illustrate PERT/CPM and bar (Gantt) charts distributed.

8.D    Example Software Project Quality Assurance Plan template

8.E     Example Software Project Configuration Management Plan template

8.F     Brief review notes on software verification (in lieu of a Software Project Verification Plan template)

Some instances of non-test verification techniques or methods:

8.G    Example Code Inspection Procedure

8.H    Example General Review Procedure

 

· Text book diagrams

 

Note (14/02/2008):

- The continuous assessment details for 2008 are now included (below).

- The “Work for first few lab sessions (pdf)” is relevant as a means of familiarising with the software tool for UML.

· Continuous Assessment:

- One assignment (MS Word version) (30%) (in 2 phases)

- Team membership

          - Provisional marks (out of 30) - Phases A & B

· Further Reading:

Any course on software engineering cannot hope to be comprehensive so it is highly recommended to read other material to broaden your knowledge. Apart from library books and journals there is a huge amount of material on the internet (though be critical as sometimes views expressed may not be sufficiently critical or disinterested). Here are a few worthwhile sites:

- Object-Oriented Analysis & Design: Methods (e.g. under "General Articles" the item on "OO Tips" by Yonat Sharon looks good)

- Fraunhofer institute (e.g. check out "Requirements and reusability engineering")

- SEI