AT70.18 Software Architecture I

Software engineering, Software architecture, Object-oriented analysisCSIM Logo WelcomeCourses
Faculty, Student, Staff
Projects and reports
Conferences, workshop and seminars
Laboratories and reasearch facilities
Information related to CSIM
Information non-related to CSIM
Address, map, phone, etc.
Search

Semester:
August

Rationale:
Designing, developing, and evolving complex software systems requires a mastery of analytical and technical skills, as well as a knowledge of appropriate processes, architectures and design patterns. Software architects building complex systems must create the illusion of simplicity through decomposition, abstraction, and encapsulation of functionality.

Software Architecture I and II teach the fundamentals of software architecture, drawn from research and best practice on large software projects. Students will learn techniques and tools for modeling, analyzing, evaluating, and controlling the development of complex software systems.

In Software Architecture Design I, students will develop the basic object-oriented analysis and modeling skills necessary for understanding, designing, and maintaining a software architecture.

Software Architecture I should be taken concurrently with AT70.xx, Software Development Methodologies.

Catalog Description:
Software engineering, Software architecture, Object-oriented analysis.

Credits:
1(1-0)

Prerequisite:
Experience programming in a high-level programming language, e.g. C or Java, or by permission of the instructor.

Course Outline:
Introduction
  1. The importance of software architecture
  2. Iterative software development
  3. The Unified Modeling Language (UML)
  4. Architectural views
  5. Object-oriented analysis and design
Use cases
  1. Actors
  2. Scenarios
  3. Use case diagrams
Problem domain modeling
  1. UML classes
  2. UML relationships
  3. Package analysis
Use case realization
  1. Objects and messages
  2. UML interaction diagrams
UML modeling tools

Textbook:
Larman:
Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd ed., Prentice Hall, 2005.

Reference Books:
Arlow and Neustadt:
UML 2 and the Unified Process, 2nd ed., Addison-Wesley, 2004.
Booch:
Handbook of Software Architecture, http://www.booch.com/architecture/index.jsp, 2006.
Booch, Rumbaugh, and Jacobson:
The Unified Modeling Language User Guide, 2nd ed., Addison-Wesley, 2005.
Fowler:
UML Distilled: A Brief Guide to the Standard Object Modeling Language, 3rd ed.. Addison-Wesley, 2003..
Pilone and Pitman:
UML 2.0 in a Nutshell, O'Reilly, 2005.

Journals and Magazines:
ACM Trans. Internet Technology
Web Intelligence and Agent Systems: An International Journal
The Semantic Web
World Wide Web
IEEE Intelligent Systems
IEEE Internet Computing

Coursework and Grading System:
Homework and in-class assignments (30%), final exam (70%).

Instructor:
Dr. Matthew Dailey

CSIM home pageWMailAccount managementCSIM LibraryNetwork test toolsSearch CSIM directories
Contact us: Olivier Nicole CSIM    SET    AIT Last update: Aug 2007