CSC301 Introduction to Software Engineering (Sum 08)
Administrative Docs and Links
Course Info Sheet
Policy on Collaboration
The Portal!
CDF Resources
UoT – Medical Certificate
Current UoT CS Courses
UoT Arts & Science Calendar
References
Object-oriented Software Engineering: Using UML, Patterns, and Java. by Bruegge & Dutoit
Head First Design Patterns by Freeman et. al.
Course Schedule and Notes
Lecture 1: Intro, Dealing with Complexity, UML, Identifying Classes, Relation between Classes.
Lecture 2: DP; Command, Singleton, Observer, Template Method, Composite
Lecture 3: DP; Proxy, Strategy, Abstract Factory, Builder, Adapter, Bridge, Facade
Lecture 4: SDLC; Waterfall, Rapid Prototyping, V-model, Incremental, Agile, XP
Lecture 5: Spiral Model. Software Estimation. DP: Chain of Respo, Obj Pool, Momento, Iterator
Lecture 6: Designing for Change. Pair Programming Model. Code Reviews. Laws/Rules
Lecture 7: Agile SDLC. Refactoring.
Lecture 8: Software Testing. Defect Types. Test Plans & Cases.
Lecture 9: Code Inspection. Software Proj Managment and Organization. Software Estimation.
Lecture 10: Cohesion & Coupling; Types, Use of Reflection/Components/XML/Message-Queues.
Assignments
Assignment Cover Sheet
Assignment/midterm Remark Form
Assignment Coding Guidelines
Team Member Evaluation Form
Team Member Evaluation Summary
A1: OOA
A2: OOD
A2: Marking Scheme
A3: Agile & Release Planning
A4: Agile & Release Planning ver2
Design Patterns Links
Wikipedia
Design Patterns FAQ
Design Patterns Index
Design Patterns Catalog
Refac Pat @ sourcemaking.com
Refac Pat @ IndustrialLogic.com
Non-Software Examples of Software Design Patterns by Michael Duell
Related Links
UML Tools: Argo UML, Eclipse UML Plugin
IDE: Eclipse, NetBeans
Software Estimation: Wikipedia, Prof. David Penny RP,