University of Surrey

Test tubes in the lab Research in the ATI Dance Research

Specification and analysis of component-based software in a concurrent setting.

Moschoyiannis, Sotiris (2005) Specification and analysis of component-based software in a concurrent setting. Doctoral thesis, University of Surrey (United Kingdom)..

Available under License Creative Commons Attribution Non-commercial Share Alike.

Download (67MB) | Preview


Current advances in software engineering practice involve the adoption of a component- based approach in developing large-scale, complex systems. The component-based paradigm provides better structuring of systems and facilitates systematic software reuse. However, complex interactions between components, especially in concurrent and distributed applications, pose greater challenges. This thesis provides a formal framework for managing the dependencies between components, in terms of their interactions in a concurrent setting. In our approach, composites and single components are represented by a component signature, which identifies a component, and a vector language, also called component language, which describes the behaviour of a component. This language-based representation of component behaviour makes it possible to capture concurrency at both the individual component level and the composition level. The interpretation of concurrency is that of a non-interleaving model, with the notion of causal independence lifted to vectors. We describe how component languages are obtained from scenario-based specifications, typically used in an industrial context. Based on the order structure of a component language, we identify implicit or missing interactions which represent potentially faulty or simply unthought scenarios. This excludes pathological behaviour, the source of which can be traced back to inconsistencies in the sequence diagrams of the scenario specification such as race conditions, and this gives a characterisation of well-behaved components. Components are put together in our approach by matching required and provided interfaces in terms of the respective sequences of events. This builds on the concept of parallel composition in process algebras. We show that the properties that define well-behaved components are preserved under composition in the resulting composite. Well-behaved components give rise to discrete behavioural presentations which can capture concurrency and simultaneity between event occurrences on component interfaces. Well-behaved components are also associated with automata whose transition structure reflects the concurrency in the corresponding component language. This state-based description of component behaviour is graphically represented using state diagrams. This formal framework for components has been related to more conventional approaches to software design, as exemplified by strong connections to UML. It can aid designers in determining the complete set of intended behaviours before generating state models of the scenario-based specifications.

Item Type: Thesis (Doctoral)
Divisions : Theses
Authors :
Date : 2005
Contributors :
Depositing User : EPrints Services
Date Deposited : 09 Nov 2017 12:11
Last Modified : 19 Oct 2018 17:27

Actions (login required)

View Item View Item


Downloads per month over past year

Information about this web site

© The University of Surrey, Guildford, Surrey, GU2 7XH, United Kingdom.
+44 (0)1483 300800