Non-functional refinement of computer based systems architecture
- 13 November 2004
- conference paper
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE) in Proceedings. 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2004.
Abstract
Architecture based refinement is an importanttechnique for ensuring efficiency, effectiveness andcorrectness in the practical design of complex computerbased systems. With a few exceptions, current methods ofarchitectural refinement focus on functional behaviourand fail to address non-functional requirementsthroughout the refinement process. A best practicesapproach to refinement would address both functionaland non-functional requirements such that the refinementof an abstract into a concrete (implementation)architecture ensures that both sets of requirements aremet.We propose a method that focuses on the non-functionalrequirements while still addressing thefunctional requirements throughout refinement. Themethod has a formal underpinning in abstract data types(based on term rewriting) which are used to represent thearchitectures throughout the refinement process and toplace pre and post conditions on the refinements. Inaddition to this, the method uses non-functionalrequirement calculators to check the non-functionalqualities of the architecture as refinement proceeds.Reflection on the practice of the method suggests that itmay be possible to extend the architectural style idea toprovide reusable refinement schema for the design ofcertain non-functional qualities into architecturalpatterns. The example considers reliability andperformance in the refinement of a client serverarchitectural pattern.The method does not aim to replace or fully automatethe work of the designer. It aims to augment the designprocess and aid the designer in performing their tasks. Itseeks to provide certain guidance for the designer thatwill help them make the right design decisions, andcorrect certain classes of errors.Keywords
This publication has 16 references indexed in Scilit:
- Protocols for process interactionIEE Proceedings - Computers and Digital Techniques, 2003
- A case study in architectural modeling: the AEGIS systemPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A framework for building non-functional software architecturesPublished by Association for Computing Machinery (ACM) ,2001
- A classification and comparison framework for software architecture description languagesIEEE Transactions on Software Engineering, 2000
- Software architecture transformationsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2000
- Correct architecture refinementIEEE Transactions on Software Engineering, 1995
- AN INTRODUCTION TO SOFTWARE ARCHITECTUREPublished by World Scientific Pub Co Pte Ltd ,1993
- Larch: Languages and Tools for Formal SpecificationPublished by Springer Science and Business Media LLC ,1993
- Process synchronisation in MASCOTThe Computer Journal, 1979
- Networks for real-time programmingThe Computer Journal, 1967