Abstract : This paper presents the Architecture Based Design (ABD) method for designing the high-level software architecture for a product line or long-lived system. Designing an architecture for a product line or long-lived system is difficult because detailed requirements are not known in advance. The ABD method fulfills functional, quality, and business requirements at al level of abstraction that allows for the necessary variation when producing specific products. Its application relies on an understanding of the architectural mechanisms used to achieve this fulfillment. The method provides a series of steps for designing the conceptual software architecture. The conceptual software architecture provides organization of function, identification of synchronization points for independent threads of control, and allocation of function to processors. The method ends when commitments to classes, processes and operating system threads begin to be made. In addition, one output of the method is a collection of software templates that constrain the implementation of components of different types. The software templates include a description of how components interact with shared services and also include "citizenship" responsibilities for components.
[1]
Paul Clements,et al.
Software architecture in practice
,
1999,
SEI series in software engineering.
[2]
Mark Klein,et al.
Experience with performing architecture tradeoff analysis
,
1999,
Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).
[3]
Gary J. Chastek,et al.
A Case Study in Structural Modeling
,
1996
.
[4]
Philippe Kruchten,et al.
The 4+1 View Model of Architecture
,
1995,
IEEE Softw..
[5]
Robert L. Nord,et al.
Applied Software Architecture
,
1999,
Addison Wesley object technology series.
[6]
Ivar Jacobson,et al.
The Unified Process
,
1999
.