Vis enkel innførsel

dc.contributor.authorSlyngstad, Odd Petter Nordnb_NO
dc.date.accessioned2014-12-19T13:38:26Z
dc.date.available2014-12-19T13:38:26Z
dc.date.created2012-07-03nb_NO
dc.date.issued2011nb_NO
dc.identifier539135nb_NO
dc.identifier.isbn978-82-471-2704-9nb_NO
dc.identifier.urihttp://hdl.handle.net/11250/252853
dc.description.abstractMotivation: Component-Based Software Engineering (CBSE) is an approach to software reuse where software assets or artifacts from multiple sources are reused to develop systems faster and cheaper. The main benefit of software reuse in CBSE is the enabling of systematic improvement in terms of quality, effort, time-to-market, common software platform/architecture, and standards compliance. A key aim of these improvements is to enable proper management of CBSE-driven software evolution, i.e. helping software engineers become more cost-effective in developing and incorporating high-quality, reusable components and other assets. Knowing the relevant risks and effective handling strategies in software evolution is paramount to achieving improvements in quality, effort and time-to-market. Moreover, the architecture of a software system constitutes its fundamental building blocks. Continued suitability of the architecture over time is therefore crucial to the continued success of the system. Prior investigations on risks and risk management strategies have commonly focused on project-level risks and strategies. Similarly, studies on software architecture have mainly investigated its design, implementation and maintenance. Little prior effort has been made towards studying risks and risk management strategies of architectural evolution. Approach: This thesis investigates the state of practices and issues of modern CBSE, with multi-origin reusable components (in-house software, Commercial Off- The-Shelf software (COTS), and Open Source Software (OSS)), in the development process, based on quantitative and qualitative empirical studies of industrial systems. It also explores software evolution impact, elicited through defect and change reports over time. Test Driven Development (TDD) as a strategy to handle these impacts is also investigated. Finally, surveys are performed on risks and risk management strategies in industrial software projects. The aims (research questions) in this thesis are:                                                                                                                     RQ1: What is the state of practices and issues with respect to software process improvement in CBSE for COTS/OSS and in-house reusable software? This is answered by two industrial surveys.                                                                                                   RQ2: How does software evolution impact individual reusable components, in terms of defect and change densities? This is answered by an industrial case study.                                                                                                                                                       RQ3: What are the impacts of Test Driven Development versus test-last development on reusable components? This is answered by an industrial case study.                                                                                                                                                           RQ4: What are the perceived architectural risks of CBSE-driven software evolution, and how can these risks be mitigated? This is answered by two industrial surveys. Correspondingly, the contributions of this thesis are (elaborated in articles P1-P6):                                                                       C1. Improved knowledge of modern trends in CBSE and their impacts on software development processes                                          C2. Improved understanding of evolution impact on individual reusable components in terms of defect and change densities (RQ2, article P3).                                                                                                                                                                             C3. Improved understanding of the impact and effectiveness of TDD (RQ3, article P4)                                                                     C4a. Identification of perceived risks and related mitigation strategies specifically for the evolution of software architecture (RQ4, articles P5, P6).                                                                                                                                                                                  C4b. An adapted operational matrix as a tool to support risk management in software architecture evolution (RQ4, article P6).nb_NO
dc.languageengnb_NO
dc.publisherNorges teknisk-naturvitenskapelige universitet, Fakultet for informasjonsteknologi, matematikk og elektroteknikk, Institutt for datateknikk og informasjonsvitenskapnb_NO
dc.relation.ispartofseriesDoktoravhandlinger ved NTNU, 1503-8181; 2011:87nb_NO
dc.titleComponent-Based Software Engineering: Modern Trends, Evolution and Perceived Architectural Risksnb_NO
dc.typeDoctoral thesisnb_NO
dc.contributor.departmentNorges teknisk-naturvitenskapelige universitet, Fakultet for informasjonsteknologi, matematikk og elektroteknikk, Institutt for datateknikk og informasjonsvitenskapnb_NO
dc.description.degreePhD i informasjonsteknologinb_NO
dc.description.degreePhD in Information Technologyen_GB


Tilhørende fil(er)

Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel