course_outline
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
course_outline [2013/03/24 18:57] – jonathan | course_outline [2013/04/14 02:01] (current) – jonathan | ||
---|---|---|---|
Line 7: | Line 7: | ||
**Learning Outcomes**: | **Learning Outcomes**: | ||
- | Software products are programs developed by one team to be used and maintained by others. Students are thus expected to understand how to develop software so that it is: | + | Software products are programs developed by one team to be used and maintained by others. The original development team may not be around to maintain the product. Students are thus expected to understand how to develop software so that it is: |
- Correct | - Correct | ||
- Efficient | - Efficient | ||
Line 71: | Line 71: | ||
* Decorator Pattern | * Decorator Pattern | ||
* Visitor Pattern | * Visitor Pattern | ||
- | * Some others | + | * Composite, Adapter, and Facade |
We stress information hiding (as in famous paper by Parnas) and the criteria by which to decompose a system into modules. What are the features? Which features belong together coherently in a module (class)? How are modules related to each other (client supplier and inheritance relationships)? | We stress information hiding (as in famous paper by Parnas) and the criteria by which to decompose a system into modules. What are the features? Which features belong together coherently in a module (class)? How are modules related to each other (client supplier and inheritance relationships)? | ||
Line 84: | Line 84: | ||
| | ||
- | See slides and OOSC2 | + | See slides and OOSC2. How to make software products robust. |
+ | |||
+ | | ||
+ | See the Osmonde curve and the slides. |
course_outline.1364151437.txt.gz · Last modified: 2013/03/24 18:57 by jonathan