Session:Qualities in Architecture--Paper Preview
From WICSA Conference Wiki
Using Architectural Perspectives
Eoin Woods, Zuhlke Engineering
Nick Rozanski, Marks and Spencer
A crucial aspect of the software architect’s role is to ensure that a system based on their architecture will exhibit the quality properties (performance, security, availability and so on) that are important to their stakeholders. A proven approach to help guide an architect through the process of designing an architecture is to use architectural views, based on formal viewpoint definitions (such as those in the well known “4+1” set). However, a practical problem we have found when using existing viewpoint sets is the lack of guidance relating to system qualities (as opposed to system structures) that they provide. To address this problem, we identified a complimentary concept, called the architectural perspective , to provide an architect with practical guidance as to how to ensure that their system exhibits the right set of quality properties. This paper reviews the idea of the architectural perspective and relates a specific experience of applying them to the architectural definition of an enterprise integration project for a financial markets organisation, explaining the strengths and weaknesses we found in the approach.
Customized Benchmark Generation Using MDA
Liming Zhu, Empirical Software Engineering Program, National ICT Australia Ltd.;2School of Computer Science and Engineering, University of New South Wales, Australia
Yan Liu, Empirical Software Engineering Program, National ICT Australia Ltd.
Ian Gorton, Empirical Software Engineering Program, National ICT Australia Ltd.
NgocBao Bu, Faculty of Information Technology, University of Technology Sydney, Australia
This paper describes an approach for generating customized benchmark applications from a software architecture description using a Model Driven Architecture (MDA) approach. The benchmark generation and performance data capture tool implementation is based on widely used open source MDA frameworks. The business logic of the benchmark application is modeled in UML and generated by taking advantage of the existing generation “cartridges” so that the current component technology can be exploited in the benchmark. This greatly reduces the effort and expertise needed for benchmarking with complex component technology. We have also extended the MDA framework to model and generate a load testing suite and automatic performance measurement infrastructure. The approach complements current model-based performance prediction and analysis methods by generating the benchmark application from the same application architecture that the performance models are derived from. This provides the potential for tightly integrating runtime performance measurement with model-based prediction either for model validation or improving model prediction accuracy. We illustrate the approach using a case study based on EJB component technology.
Extending the ATAM Architecture Evaluation to Product Line Architectures
Femi Olumofin, University of Manitoba, Winnipeg
Vojislav Misic, University of Manitoba, Winnipeg
Architecture-based development of software product lines requires well established methodologies for both development and assessment of software product line architectures. While several methodologies for the development of such systems have been proposed, their assessment has mostly relied on methods developed for single product architectures. In this paper, we extend the popular ATAM (Architecture Tradeoff Analysis Method) method to cover both the core architecture of the product line and the individual product architectures. In addition, the extended method prescribes a qualitative analytical treatment of variation points using scenarios. We present the main tenets of the new method and illustrate its use through a small case study.