Abstract
dc:descriptionIn the continuously evolving era of software technological advances, software complexity and requirements change grow at increasing paces. Developing software using traditional approaches to meet the growing demand for functionalities and computation, in particular for large scale software, produces software applications which are characterized as being monolithic, difficult to reuse and costly to develop. To address those issues, componentbased software development has emerged among other approaches and has already produced a noteworthy positive impact. Nevertheless, component-based software development still suffers from a number of drawbacks and limitations. The aim of this research project is to improve software construction by composition of components. Traditionally, reusable components may exhibit a bloating syndrome caused by bundled but unused set of members which vary according to application contexts and business domains. Furthermore, reusable components may suffer from chaotic amalgamation of code elements. Component members' bloating and a chaotic amalgamation of code elements limitations can be partially attributed to the lack of modular components. Typically, software constmctors rewrite from scratch newer software components (even though many code parts exist), retrofit or customize existing components to satisfy applications' requirements. In addition to these two limitations, software components suffer also from version mismatches due to the use of different versions of the same component. To address the aforementioned limitations a new approach is proposed in this research work. Our approach is based on composition of atomic or enhanced modularity components. This new approach will contribute to the improvement of component-based software construction by alleviating some of the limitations facing it. It The focus of our research targets particularly the constmction phase of the software development lifecycle. The main generic goal of this research project is: • To improve software construction based on components composition by providing an approach which shifts and promotes software construction from a traditional construction approach based heavily on code writing and amalgamation to an approach relying increasingly on components composition. The specific objectives of this research are: • To propose and specify a software component model which provides remedies for some of the limitations facing software construction by components composition. • To provide a reference implementation for this component model. • To design a measurement method to measure components" unwanted members. • To provide a prototype tool to measure components" unwanted members. • To propose a component versioning mechanism. • To provide a prototype tool to detect component versions mismatches. The approach presented in this thesis is partly derived from the observation of product development processes implemented in traditional engineering disciplines. It can be argued that this approach represents a step forward in the evolution of software constmction based on components composition for it provides a simple and fluid components composition approach. The application and use of this composition approach reduces the need to retrofit and customize existing components as has been done traditionally. The software constructor relies more and more on selective composition of enhanced modularity components which suit particular application requirements. Moreover, this approach leads to additional secondary benefits which can be exploited in the use of fine-grained testing and in conducting various component measurements that ultimately benefit the software constmction process as a whole.
Degree
thesis:*- Level thesis:degree_level
- phd
- Grantor dc:publisher
- École de technologie supérieure
- Year dc:date
- 2010
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Msheik, Hamdan
Subjects
dc:subject × 1Rights
- Language dc:language
- en
Identifiers
dc:identifier.*- Identifier
- INSERT-YOUR-LIBRARY-ID-HERE281