Course Notes and Readings
Introduction to Software
Scope of Architectures: Arriving at an Architecture
Software Architecture Evolution
Microsoft .Net framework
Application Overview (PPT)
2 Enterprise Edition and EJBs
Notification Service (PPT)
Services and Applications
Architectural Methods for Software Changeability (HTML)
D. E. Perry and A. L. Wolf. Foundations
for the Study of Software Architectures. ACM SIGSOFT Software Engineering
Notes, October 1992.
R. N. Taylor et al. A
Component- and Message-Based Architectural Style for GUI Software.
IEEE Transactions on Software Engineering, June 1996.
and B. W. Boehm. Composing
Components: How Does One Detect Potential Architectural Mismatches?
Workshop on Compositional Software Architectures,
Monterey, CA, January 1998.
S. Vinoski. CORBA:
Integrating Diverse Applications Within Distributed Heterogeneous Environments.
IEEE Communications Magazine, February 1997.
R. Natarajan and D. S. Rosenblum.
Component Models and Architectural Styles. Third International
Software Architecture Workshop, November 1998.
R. Kazman, M. Klein, M. Barbacci,
T. Longstaff, H. Lipson and J. Carriere, The
Architecture Tradeoff Analysis Method, in Proceedings of ICECCS,
Detective: Reconstructing Software Architecture from Available Evidence.
Automated Software Engineering, 6: 2 (April 1999).
Nord and C. Hofmeister, Software
Architecture in Industrial Applications, Proceedings of ICSE 17.
New York: ACM Press 1995: 196-207.
and E. Niemela, A
Survey on Software Architecture Analysis Methods. IEEE Transactions
on Software Engineering, Vol. 28, No. 7, July 2002, pp. 638-653
and Design Course Notes
Software Analysis and Design Course Notes:
Metrics and Management
Software Requirements Analysis (SRS)
Software Design and Software Design Specification
Ezequiel Cuellar's Notes on Applying UML
Section 1 - Development Process
Section 2 - Requirements Modeling
Section 3 - Architecture
Section 4 - Static Modeling
Section 5 - Dynamic Modeling
Section 6 - Design and Implementation Techniques
All the notes in Word format - ZIP file
UML Review Questions
UML Review Answers
More UML Review Questions
More UML Review Answers
Topics in Software Design: Lecture Notes
More Educational Materials
on Software Architecture
How Do You Define
in Software Architectures - This course will expose students to formal
specification methods, with a particular focus on those used in software
architectures. All lecture notes, etc. are available for free.
Architectures - This course will expose you to the concepts, principles,
and state-of- the-art methods in software architectures, including domain-specific
software architectures (DSSA), architectural styles, architecture description
languages (ADL), software connectors, dynamism in architectures, and architecture-based
testing and analysis. All lecture notes, etc. are available for free.
Perspectives on the cutting edge of software design and usability
- This is an excellent site to learn about software system design and all
the issues and problems that it entails. This is the best free site I found
on this subject.
Bringing Design to Software
- Shows how to improve the practice of software design, by applying lessons
from other areas of design to the creation of software. The goal is to create
software that works---really works---in being appropriate and effective
for people who live in the world that the software creates. 7 chapters of
this book are available for free on this site.
Lecture Slides from the book, Computer Systems Design and Architecture
Waterfall Development Model
Rapid Prototyping Model