CPIT 252
|
Course Name
|
Course Code
|
Software Design Patterns
|
CPIT 252
|
Prerequisite
|
Credit Units
|
CPIT 251
|
Theory
|
Practice
|
Training
|
Credit
|
|
3
|
1
|
0
|
3
|
|
Course Description
|
This course introduces the students to the foundations of large scale software architecture, and also defines frameworks, patterns and ways of developing and establishing systems based on components.
|
|
Course Contents
|
§ The history and principles of design patterns.
§ Diverse ways to use patterns.
§ The importance of software architecture.
§ Classical methods of software architecture (data extraction based on the event and objects components).
§ Formal models and the importance of architecture.
§ Design of architectures as reusable frames, and examples of famous frames (HotDraw).
§ Reused components for Software development, and examples of design with components.
|
|
Course Outcomes
|
Upon finishing this course, the student should:
§ Understand the principles of the software patterns
and apply basic patterns.
§ Understand the need for software architectures.
§ Know the classical models of software architecture and the need for a language to describe the architecture.
§ Be acquainted with the matter behind the creation and reuse of framework architectures.
§ Understand how to build and use components and how they can be used in software development
|
|
References
|
-
L. Bass, P. Clements, R. Kazman, "Software Architecture in Practice", 2nd Ed., Addison-Wesley, 2003, ISBN 0321154959.
-
S. J. Metsker, "Design Patterns Java Workbook", Addison-Wesley, 2002, ISBN 0201743973.
-
E. Freeman, "Head First Design Patterns", O'Reily, 2004, ISBN 0596007124.
-
J. Garland, R. Anthony, "Large-Scale Software Architecture: A Practical Guide using UML", John Wiley & Sons, 2002, ISBN 0470848499.
|
Back To Study Plan
|
Last Update
1/31/2010 11:27:10 PM
|
|
|