Now you should all be experts in UML and patterns. Well, it takes a little more work, but by the end of the semester you should have a good idea of the use of these two concepts.
Good textbooks about UML are :
– Timothy C. Lethbridge and Robert Laganiere, Object-Oriented Software Engineering: Practical Software Development using UML and Java, 2/e, McGrawHill 2005.
Lecture Slides: http://www.site.uottawa.ca/school/research/lloseng/supportMaterial/slides/
– Craig Larman, Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd Ed. is also good.
The best book on architectural patterns is:
– F. Buschmann, R. Meunier, H. Rohnert, P. Sommerland, and M. Stal., Pattern-Oriented Software Architecture, Wiley 1996.