Week | Date | Lecture Notes | Description | Readings |
---|
1 | 23/09/2011 | Lecture Notes 01 [Slides with Notes] | SEOC Introduction This lecture provides a general introduction to Software Engineering and to the SEOC course. | REQUIRED READINGS- UML course textbook
- Chapter 1 on the Introduction to the Case Studies.
- Chapter 2 on the Background to UML.
- B. Meyer. Software Engineering in the Academy. IEEE Computer, May 2001, pp. 28-35. [DOI link]
- R.N. Charette. Why Software Fails. IEEE Spectrum, pp. 42-49, September 2005. [DOI link]
- B. Nuseibeh. Ariane 5: Who Dunnit? IEEE Software, pp. 15-16, May/June 1997. [DOI link]
- J.-M. Jezequel, B. Meyer. Design by Contract: The Lessons of Ariane. IEEE Computer, pp. 129-130, January 1997. [DOI link]
- M. Grottke, K.S. Trivedi. Fighting Bugs: Remove, Retry, Replicate, and Rejuvenate. IEEE Computer, pp. 107-109, February 2007. [DOI link]
SUGGESTED READINGS- I. Sommerville. Software Engineering, Eighth Edition, Addison-Wesley 2007.
- Chapter 1 for a general account of Software Engineering
- Chapter 3 on Critical Systems
- Chapter 4 on Software Processes
- SWEBOK Guide to the Software Engineering Body of Knowledge. 2004 Version, IEEE. [DOI link]
- A. Avizienis, J.-C. Laprie, B. Randell and C. Landwehr. Basic Concepts and Taxonomy of Dependable and Secure Computing. IEEE Transactions on Dependable and Secure Computing 1(1):11-33, January-March 2004. [DOI link]
- N.G. Leveson, C.S. Turner. An investigation of the Therac-25 accidents. IEEE Computer 26(7): 18-41, Jul 1993. [DOI link]
- D.R. Wallace, D.R. Kuhn. Lessons from 342 Medical Device Failures. In Proceedings of HASE 1999, pp. 123-131. [DOI link]
|
2 | 27/09/2011 | Lecture Notes 02 [Slides with Notes] | Gathering and Organising Requirements This lecture provides a general overview on Requirements Engineering. It uses sample UML designs drawn from the coursebook case studies. The main objective is to highlight requirements engineering practices, references and resources. | REQUIRED READINGS- I. Sommerville. Integrated Requirements Engineering: A Tutorial. IEEE Software, January/February 2005, pp. 16-23. [DOI link]
- IEEE Recommended Practice for Software Requirements Specifications, IEEE Std 830-1998. [DOI link]
SUGGESTED READINGS- I. Sommerville, P. Sawyer. Requirements Engineering: A Good Practice Guide. John Wiley & Sons, 1997.
- G. Kotonya, I. Sommerville. Requirements Engineering: Processes and techniques. John Wiley & Sons, 1998.
- I. Sommerville. Software Engineering, Eighth Edition, Addison-Wesley 2007.
- Chapter 6 on Software Requirements.
- Chapter 7 on Requirements Engineering Processes.
- M. Jarke. Requirements Tracing. Communications of the ACM, Vol. 41, No. 12, December 1998. [DOI link]
- S. Robertson, J. Robertson. Mastering the Requirements Process. Addison-Wesley, 1999.
- J. Boegh, S. De Panfilis, B. Kitchenham, A. Pasquini. A Method for Software Quality Planning, Control, and Evaluation. IEEE Software, 16(2):69-77, 1999. [DOI link]
|
2 | 30/09/2011 | Lecture Notes 03 [Slides with Notes] | Use Cases This lecture introduces the basic notation for use case diagrams. Use case templates allow the desciption of use case information. | REQUIRED READINGS- UML course textbook, Chapter 3 on Use Cases
|
3 | 04/10/2011 | Lecture Notes 04 [Slides with Notes] | Software Design and Class Diagrams This lecture introduces software design in terms of objects and components. It also introduces class diagrams, the UML notations for capturing some (architectural) software design aspects of objectd-oriented systems. | REQUIRED READINGS- UML course textbook
- Chapter 4 on Class Diagram: Classes and Associations
- Chapter 5 on Class Diagram: Aggregation, Composition and Generalization
- Chapter 6 on Class Diagram: More on Associations
- Chapter 7 on Class Diagram: Other Notations
- P. Kruchten. The 4+1 View Model of architecture. IEEE Software, 12(6): 42-50, November, 1995. [DOI link]
SUGGESTED READINGS- Chapter 14 on Object-oriented design, I. Sommerville. Software Engineering, Eighth Edition, Addison-Wesley 2007.
- P. Kruchten, H. Obbink, J. Stafford. The Past, Present and Future of Software Architecture. IEEE Software, 23(2):22-30, March/April, 2006. [DOI link]
- B. Meyer. Applying ``design by contract''. IEEE Computer, 25(10):40-51, 1992. [DOI link]
|
3 | 07/10/2011 | Lecture Notes 05 [Slides with Notes] | Design Patterns This lecture introduces the basic concepts of Design Patterns. It discusses how design patters support reuse strategies. | REQUIRED READINGS- UML course textbook, Chapter 17 on Design Patterns
- T. Winn, P. Calder. Is This a Pattern?. IEEE Software 19(1):59-66, January/February, 2002. [DOI link]
SUGGESTED READINGS- E. Gamma, R. Helm, R. Johnson, J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
- M. Schumacher, E. Fernandez-Buglioni, D. Hybertson, F. Bushmann, P. Sommerlad. Security Patterns: Integrating Security and Systems Engineering. John Wiley & Sons, 2006.
|
4 | 11/10/2011 | Lecture Notes 06 [Slides with Notes] | Validation: CRC Cards This lecture introduses CRC cards as validation and modelling method, which supports principles of design by responsibilities (responsibility-based modeling or responsibility-driven design). | REQUIRED READINGS- K. Beck, W. Cunningham. A Laboratory for Teaching Object-Oriented Thinking. In Conference Proceedings on Object-Oriented Programming Systems, Languages and Applications (OOPSLA '89), ACM, pp. 1-6. [DOI link]
SUGGESTED READINGS- T. Mens, T. Tourwe. A survey of software refactoring. IEEE Transactions on Software Engineering, vol.30, no.2, pp. 126-139, February, 2004. [DOI link]
|
4 | 14/10/2011 | P&G presentation [Slides with Notes] | P&G presentation | |
5 | 18/10/2011 | Lecture Notes 07 [Slides with Notes] | Component Diagrams This lecture discusses the rationale and introduces the notation for component diagrams. | REQUIRED READINGS- UML course textbook, Chapter 7 on Class Diagram: Other Notations
- UML course textbook, Chapter 8 on Component Diagrams
|
5 | 21/10/2011 | No Letcure | | |
6 | 25/10/2011 | Lecture Notes 08 [Slides with Notes] | Sequence Diagrams This lectures introduces sequence diagrams. One of the UML interaction diagrams, which capture (i.e., model) dynamic system aspects. | REQUIRED READINGS- UML course textbook, Chapter 9 on Interaction Sequence Diagrams
|
6 | 28/10/2011 | No Lecture | Deliverable 1 Deadline | |
7 | 01/11/2011 | Lecture Notes 09 [Slides with Notes] | Communication Diagrams This lecture introduces communication diagrams, formerly named collaboration diagrams. Communication diagrams provide an alternative representation (to sequence diagrams) for dynamic system aspects. | REQUIRED READINGS- UML course textbook, Chapter 10 on More on Interaction Diagrams
SUGGESTED READINGS- K.J. Lieberherr, I.M. Holland. Assuring good style for object-oriented programs. IEEE Software 6(5):38-48, 1989. [DOI link]
|
7 | 04/11/2011 | Lecture Notes 10 [Slides with Notes] | Activity Diagrams This lecture introduces activity diagrams. | REQUIRED READINGS- UML course textbook, Chapter 11 on Activities
|
8 | 08/11/2011 | Lecture Notes 11 [Slides with Notes] | State Machines This lecture introduces state machines. It also highlights relationships between state machines and activity diagrams. | REQUIRED READINGS- UML course textbook, Chapter 12 on State Machines
SUGGESTED READINGS- D. Harel. Statecharts: A Visual Formalism for Complex Systems. Science of Computer Programming, Elsevier, 8(3):231-274, 1987. [DOI link]
- D. Harel. Statecharts in the making: a personal account. Communications of the ACM, 52(3):67-75, 2009. [DOI link]
|
8 | 11/11/2011 | Lecture Notes 12 [Slides with Notes] | Software Testing This lecture introduces the basic concepts of software testing. It also highlights how use cases drive software testing. | REQUIRED READINGS- J.A. Whittaker. What is Software Testing? And Why is it so Hard?. IEEE Software, 17(1):70-79, January/February, 2000. [DOI link]
- P.C. Jorgensen, C. Erickson. Object Oriented Integration Testing. Communications of the ACM, 37(9):30-38, September, 1994. [DOI link]
|
9 | 15/11/2011 | Lecture Notes 13 [Slides with Notes] | Deployment Diagrams This lecture introduces deployment diagrams. | REQUIRED READINGS- UML course textbook, Chapter 14 on Deployment Diagrams
|
9 | 18/11/2011 | No Lecture | | |
10 | 22/11/2011 | Lecture Notes 14 [Slides] | SEOC - Open Issues and Course Summary Deliverable 2: Question/Answer session. | |
10 | 25/11/2011 | No Lecture | Deliverable 2 Deadline |
No comments:
Post a Comment