Go to ...[Main Page] [Tutorials] [Documents] [What's new] [Feedback]

Software Architecture and Iterative Development Process

by Philippe Kruchten

240-10711 Cambie road, Richmond BC V6X 3G5, Canada
Phone: +1 (604) 231 3706 - Fax: +1 (604) 231 3720
Email: pbk@rational.com

Abstract: This tutorial has two parts.

Part 1 deals with the "why" and "what". We introduce the concept of software architecture, its boundaries, and its motivation. We propose a model to represent the architecture of software-intensive systems, using multiple views or blueprints. For each view: conceptual, dynamic, static, physical, we detail the elements involved, a view-specific notation, and its relations with other views.

Part 2 deals with the "how" and "who". An iterative process is described to develop and validate a software architecture. We then examine the organizational aspects related to software architecture and in particular the role of an architect or an architecture team.

The tutorial is based on practical experience in the development of large, software intensive systems in the areas of aerospace, defense, command and control, and telecommunications over the last fifteen years, and the examples are derived from telecommunication and air traffic control systems.

Background: General notions of object-oriented technology, of software engineering in general, understanding of concurrency and distribution issues, and of the software development process. The tutorial is aimed a software professionals faced with the issues of designing large, unprecedented system, from scratch, using OO methods.

Biography: The tutorial was developped by Philippe Kruchten, Senior Technical Consultant at Rational, where he is in charge of the Software Architecture Practice Area. Philippe Kruchten has 20 years of experience of software development. He has been associated with several large-scale software-intensive projects around the world: the Alcatel 2505 and Alcatel 2600 ranges of private telephone exchanges in France, the Ship System 2000 command and control system in Sweden, and several other projects in avionics, defense, transportation, and compilation. Since August 1992, he has been the lead software architect for the Canadian Automated Air Traffic System, developped by Hughes Aircraft of Canada in Vancouver.

Philippe Kruchten has a Master Degree in Mechanical Engineering from Ecole Centrale de Lyon (France) and a Doctorate Degree in Information Technology from the French National Institute of Telecommunications in Paris (France). He is a member of ACM and the IEEE Computer Society.




Your comments/suggestions to the maintainer.