A software component model with concurrency
Component-Based Software Development (CBSD) represents a paradigm shift in software engineering, where the focus is on building systems out of pre-developed components. In CBSD, components developers are different from component users, where the former concentrate on building reusable components, wh...
Main Author: | |
---|---|
Other Authors: | |
Published: |
University of Manchester
2009
|
Subjects: | |
Online Access: | http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.506275 |
id |
ndltd-bl.uk-oai-ethos.bl.uk-506275 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-bl.uk-oai-ethos.bl.uk-5062752015-03-20T03:46:48ZA software component model with concurrencyNtalamagkas, IoannisLau, Kung-Kiu2009Component-Based Software Development (CBSD) represents a paradigm shift in software engineering, where the focus is on building systems out of pre-developed components. In CBSD, components developers are different from component users, where the former concentrate on building reusable components, whereas the latter concentrate on building customised systems out of components. The different roles in component development give rise to the idealised component life cycle which consists of the design, the deployment and the run-time phases. Ideally, component composition should occur in both design and deployment phases and it should be supported by a proper composition theory. Concurrency is an important issue in software engineering and in theoretical computer science. Decades of research have been devoted in finding efficient ways of discovering common concurrency errors, like deadlock, in abstract mathematical models and in software. Existing software component models do not address composition and concurrency completely. In general, component models support composition in either design or deployment phase but not in both. Regarding concurrency, the support provided varies, ranging from complete formal models to leaving the concurrency aspect undefined and dependant on the implementation. More importantly, not all component models support both passive and active components. In this thesis we define a software component model that supports composition of active and passive components using explicit composition operators, in both design and deployment phases of the idealised component life cycle. We also show that our composition connectors are control patterns and we define their composition. This means that composite connectors are composed out of simpler ones. This allows for the hierarchical construction of complex control structures that can be used in further connector and component compositions. Connector composition constitutes a unique feature of our model.005.3University of Manchesterhttp://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.506275http://www.manchester.ac.uk/escholar/uk-ac-man-scw:180466Electronic Thesis or Dissertation |
collection |
NDLTD |
sources |
NDLTD |
topic |
005.3 |
spellingShingle |
005.3 Ntalamagkas, Ioannis A software component model with concurrency |
description |
Component-Based Software Development (CBSD) represents a paradigm shift in software engineering, where the focus is on building systems out of pre-developed components. In CBSD, components developers are different from component users, where the former concentrate on building reusable components, whereas the latter concentrate on building customised systems out of components. The different roles in component development give rise to the idealised component life cycle which consists of the design, the deployment and the run-time phases. Ideally, component composition should occur in both design and deployment phases and it should be supported by a proper composition theory. Concurrency is an important issue in software engineering and in theoretical computer science. Decades of research have been devoted in finding efficient ways of discovering common concurrency errors, like deadlock, in abstract mathematical models and in software. Existing software component models do not address composition and concurrency completely. In general, component models support composition in either design or deployment phase but not in both. Regarding concurrency, the support provided varies, ranging from complete formal models to leaving the concurrency aspect undefined and dependant on the implementation. More importantly, not all component models support both passive and active components. In this thesis we define a software component model that supports composition of active and passive components using explicit composition operators, in both design and deployment phases of the idealised component life cycle. We also show that our composition connectors are control patterns and we define their composition. This means that composite connectors are composed out of simpler ones. This allows for the hierarchical construction of complex control structures that can be used in further connector and component compositions. Connector composition constitutes a unique feature of our model. |
author2 |
Lau, Kung-Kiu |
author_facet |
Lau, Kung-Kiu Ntalamagkas, Ioannis |
author |
Ntalamagkas, Ioannis |
author_sort |
Ntalamagkas, Ioannis |
title |
A software component model with concurrency |
title_short |
A software component model with concurrency |
title_full |
A software component model with concurrency |
title_fullStr |
A software component model with concurrency |
title_full_unstemmed |
A software component model with concurrency |
title_sort |
software component model with concurrency |
publisher |
University of Manchester |
publishDate |
2009 |
url |
http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.506275 |
work_keys_str_mv |
AT ntalamagkasioannis asoftwarecomponentmodelwithconcurrency AT ntalamagkasioannis softwarecomponentmodelwithconcurrency |
_version_ |
1716782390408380416 |