Den ökande industrimässigheten inom den fortfarande unga mjukvarubranschen speglar en övergång till ett synsätt där ett aktivt återanvändningsarbete är nödvändigt. Detta är ett naturligt steg för att förbättra utfallet av dagens systemutvecklingsprojekt. Bland dessa finns idag alltför många exempel på problem avseende faktorer som kvalitet, genomförandetid eller kostnader. Komponentbaserad mjukvaruutveckling (CBSE) är ett svar på denna utveckling. Inte heller strategin med CBSE är dock problemfri. Det har nämligen visat sig vara besvärligt för systemutvecklare att finna rätt komponenter. Syftet med denna uppsats är att finna angreppssätt för att hitta rätt mjukvarukomponent. Ansats tas ifrån vad som redovisas i facklitteratur inom området. Kunskaper från både empiriska och teoretiska studier redovisas. Fyra skilda angreppssätt för att finna rätt komponenter identifieras i uppsatsen. Antingen kan man granska vad som finns i det egna komponentbiblioteket, köpa en komponent från en extern leverantör, bygga en ny komponent eller använda sig av free software. Vilket angreppssätt man beslutar sig för kommer att få specifika inverkningar på ens eget systems framtid. De olika angreppsätten beskrivs inte lika väl i facklitteraturen. Speciellt är ett free software baserat angreppssätt sämre beskrivet. Generellt går det att hitta metodstöd för enskilda arbetsmoment i urvalsprocessen för resp. angreppssätt. Däremot är dessa inte nödvändigtvis integrerade. Detta kan orsaka oklarheter hos systemutvecklaren, vilket medför en risk för att viktiga moment förbises. Många av de problem och framgångsfaktorer som berör CBSE handlar inte om tekniska frågor. En faktor som Not-Invented-Here (NiH) syndromet arbetar t.ex. direkt emot tanken på en gemensam marknad för återanvändningsbara mjukvarukomponenter. Detta kan förhindra att rätt komponenter hittas och därmed begränsas den potentiella nyttan av CBSE. Återanvändningen av komponenter skulle underlättas om komponenterna kvalitetssäkrades. För systemutvecklare skulle kvalitetssäkringen betyda att de ges tillräcklig information för att som tänkbara konsumenter få en korrekt möjlighet att utvärdera produkten enligt det egna utvecklingsprojektets kriterier samt att garantier ges att komponenten överensstämmer med de krav som specificeras av använd standard. En kvalitetssäkring av komponenterna tillsammans med ett väl integrerat metodstöd bör kunna ge branschen förutsättningar att ta ett steg närmare en hållbar mjukvaruutvecklingsstrategi.
The increasing industrialization within the maturing software industry reflects a transition to a paradigm where an active reuse effort is necessary. This is a natural step to improve the outcome of software development projects. Far too many of these, are today showing problems with software quality, time consumption and budget deficients. Component-based software engineering (CBSE) is a response to this predicament. A CBSE strategy though, is not without problems itself. It has proven difficult for system developers to find the components they are looking for. The purpose of this report is to find a way to attack this problem. Specialist literature constitute the basis for this research, that is, knowledge from both empirical and theoretical studies will be used. Four separate approaches to find the ”right” components are identified in this paper. One could either examine the in-house-repository, buy the wanted component from an external supplier, construct a new component, or use free software components. It’s important to recognize that the way you choose will have specific aftereffects on your system. The different approaches are not equally well described in the specialist literature. A free software based approach is especially poorly described. In general, it’s possible to find supporting methods for a single step in the selection process for each approach. However, the steps are not necessarily integrated with each other. This may, for the system developer, result in uncertainties of how to proceed, which in turn could lead to the omission of important steps. Many of the problems and success factors concerning CBSE is not about technical issues. An example is the Not-Invented-Here (NiH) syndrome, which works in opposite of the idea of a common marketplace for reusable components. This may hinder the ”right” components from being found and therefore limits the potential benefits of CBSE. The reuse of software components would be facilitated if the components would be quality certified. For system developers, this would mean that they could acquire sufficient information as prospective consumers to get a possibility to make a fair evaluation of the product according to criteria from their development project, as well as receiving guarantees that the software component is in accordance with used component model. Quality certified components should together with more integrated approaches give the basis for the industry to move another step forward to a lasting software development strategy.