Title :
Non-functional refinement of computer based systems architecture
Author :
Denford, Mark ; Leaney, John ; Neill, Tim O.
Author_Institution :
Inst. for Inf. & Commun. Technol., Univ. of Technol., Sydney, NSW, Australia
Abstract :
Architecture based refinement is an important technique for ensuring efficiency, effectiveness and correctness in the practical design of complex computer based systems. With a few exceptions, current methods of architectural refinement focus on functional behaviour and fail to address nonfunctional requirements throughout the refinement process. A best practices approach to refinement would address both functional and nonfunctional requirements such that the refinement of an abstract into a concrete (implementation) architecture ensures that both sets of requirements are met. We propose a method that focuses on the nonfunctional requirements while still addressing the functional requirements throughout refinement. The method has a formal underpinning in abstract data types (based on term rewriting) which are used to represent the architectures throughout the refinement process and to place pre and post conditions on the refinements. In addition to this, the method uses nonfunctional requirement calculators to check the nonfunctional qualities of the architecture as refinement proceeds. Reflection on the practice of the method suggests that it may be possible to extend the architectural style idea to provide reusable refinement schema for the design of certain nonfunctional qualities into architectural patterns. The example considers reliability and performance in the refinement of a client server architectural pattern. The method does not aim to replace or fully automate the work of the designer. It aims to augment the design process and aid the designer in performing their tasks. It seeks to provide certain guidance for the designer that will help them make the right design decisions, and correct certain classes of errors.
Keywords :
abstract data types; client-server systems; file servers; formal specification; formal verification; object-oriented methods; open systems; software reusability; abstract data types; architecture based refinement; client server architectural pattern; computer based systems architecture; formal underpinning; nonfunctional refinement; right design decision; term rewriting; Analog-digital conversion; Best practices; Communications technology; Computer architecture; History; Random access memory; Reflection; Switches; Switching converters; Transducers;
Conference_Titel :
Engineering of Computer-Based Systems, 2004. Proceedings. 11th IEEE International Conference and Workshop on the
Print_ISBN :
0-7695-2125-8
DOI :
10.1109/ECBS.2004.1316696