Home > Research > Publications & Outputs > An integrated architecture analysis framework f...

Electronic data

View graph of relations

An integrated architecture analysis framework for component-based software development

Research output: ThesisDoctoral Thesis

  • Novia Admodisastro
Publication date2011
Number of pages318
Awarding Institution
  • Kotonya, Gerald Odhiambo, Supervisor
Award date31/10/2011
Place of PublicationLancaster
  • Lancaster University
<mark>Original language</mark>English


The importance of architecture in reuse-driven development is widely recognized.
Architecture provides a framework for establishing a match between available
components and the system context. It is a key part of the system documentation;
enforces the integrity of component composition and provides a basis for managing
change. However, one of the most difficult problems in component-based system
development (CBD) is ensuring that the software architecture provides an acceptable
match with its intended application, business and evolutionary context. Unlike custom
development where architectural design relies solely on a detailed requirements
specification and where deficiencies in application context can be corrected by
‘tweaking’ the source code, in component-based system development the typical unit
of development is often a black-box component whose source code is inaccessible to
the developer. Getting the architecture right is therefore key to ensuring quality in a
component-based system. Architecture analysis in CBD provides the developer with a
means to expose interface mismatches, assess configurations with respect to specific
structural and behavioural constraints and to verify the adequacy of compositions with
respect to quality constraints. However, support for key component-based system
design issues is still patchy in most architecture analysis approaches. My solution has
been to develop, Component-based Software Architecture analysis FramEwork (CSAFE), a scenario-driven architecture analysis approach that combines and extends
the strengths of current approaches using pluggable analysis. CSAFE is process-
pluggable and recognises that negotiation (trade-off analysis) is central to black-box
software development. However, while CSAFE is primarily intended to support
black-box development, we recognise that there may be aspects of the system for
which a black-box solution is not feasible. CSAFE supports custom development in
such situations by treating abstract components as placeholders for custom
development. CSAFE is supported by an extensible toolset.