Component Based System Development in the Norwegian Software Industry
MetadataVis full innførsel
Today it has become common practice to apply systematic reuse during software development. By reuse, the gain from creating a piece of software can be multiplied, as instead of creating a new component each time, old ones can be reused. This increases productivity (shorter time-to-market, less cost) and also software quality, as the components get well tested through using them in different systems. There are, however, many ways of applying reuse. There are different types of components that can be applied in systematic reuse. The most common ones are internally developed, OSS, COTS, or outsourced components. There are also many different ways to share and access the components among the developers. Today all companies who apply reuse have some sort of distributed way of sharing. To use product families is also one way of applying reuse. This can take reuse to another level as the reused parts can be vast, but it can also be used for branding a line of products. The main part of this thesis is a quantitative survey that was executed with a questionnaire. 32 Norwegian software companies participated in the survey. The questionnaire asked about who applied reuse and product families, how they applied it, and what the respondents thought were important when applying it. The data collected is used to answer 3 research questions and are also discussed against related research. The data is also used to see if there are any differences between how reuse is applied in companies of different sizes and internally in departments as well as for whole companies. Also the impact of different program languages and development processes/methods on reuse is explored. This survey builds upon the pre-study Reuse through product-families and framework [MS00]. In the pre-study subjects from 12 Norwegian software development companies were interviewed about how they utilized reuse and product families. This was a qualitative survey with open questions, which was used to discover trends in Norwegian software development companies, and these trends are in this thesis examined. The data from another survey done by IKT-Norge is also used in this thesis, but only the questions added extra for NTNU. These were about process improvement as well as reuse. There were a total of 142 Norwegian companies that responded, and 60 who answered the extra questions. The IKT-Norge survey is also compared against the thesis survey.