DocumentCode
1900530
Title
Towards Design-by-Contract based software architecture design
Author
Ozkaya, Mert ; Kloukinas, Christos
Author_Institution
Dept. of Comput. Sci., City Univ. London, London, UK
fYear
2013
fDate
22-24 Sept. 2013
Firstpage
157
Lastpage
164
Abstract
Design-by-Contract (DbC) gained wide familiarity among software developers for specifying software. It aids in documenting the behaviour of class methods as contracts between clients of the methods (pre-) and their suppliers (post-condition). This not only allows developers to document software behaviour precisely at such a high-level that can more easily be communicated, but also enables the formal verification of the behaviour. In this paper, we provide a comprehensive extension to DbC so that it can also be applied to the level of software architecture design. We illustrate this through our architecture description language XCD. Components in XCD have four different types of interfaces: provided and required interfaces of methods or emitter and consumer interfaces of events where methods/events are contractually specified. Contract specification is separated into functional and interaction contracts thus modularising the functional and interaction component behaviours. Furthermore, treating interaction protocols as connectors, XCD allows to specify connectors with interaction contracts that participating components adhere to. The formal semantics of XCD are defined using Finite State Process (FSP) thus enabling formal analysis of contractually specified software architectures for quality properties, e.g., deadlock.
Keywords
formal specification; program verification; software architecture; DbC; FSP; XCD; architecture description language; connectors; design-by-contract based software architecture design; emitter-consumer interfaces; finite state process; formal semantics; formal verification; functional contracts; interaction contracts; interaction protocols; quality properties; software behaviour document; software specification; Connectors; Contracts; Ports (Computers); Semantics; Servers; Software;
fLanguage
English
Publisher
ieee
Conference_Titel
Intelligent Software Methodologies, Tools and Techniques (SoMeT), 2013 IEEE 12th International Conference on
Conference_Location
Budapest
Print_ISBN
978-1-4799-0419-8
Type
conf
DOI
10.1109/SoMeT.2013.6645654
Filename
6645654
Link To Document