Sök:

Komponenter och generalitet - Planering för design av generella programvarukomponenter


Utveckling av programvarukomponenter görs för att möjliggöra återanvändning av gemensam funktionalitet i applikationer och därigenom minska organisationers utvecklingskostnader. För att komponenter ska kunna vara möjliga att återanvända så krävs det att de är utvecklade med viss anpassningsbarhet ? generalitet ? och på så sätt kan komponenten vara funktionell i kontexter. Dock kan det ta mångdubbelt mer tid i anspråk i jämförelse med att skräddarsy en komponent för en viss applikation, då det ställs höga krav på bland annat planeringsarbetet. Om utvecklingen av programvarukomponenter ska vara lönsam måste man försäkra sig om att komponenten kommer att användas till den grad att den längre utvecklingstiden är befogad. Målsättningen med uppsatsen är att skapa en förståelse för hur design av programvarukomponenter planeras med avseende på komponenters generalitet. Uppsatsen genomfördes genom kvalitativa intervjuer med systemutvecklare och forskare inom komponentutveckling. Det verkar som att många organisationer är försiktiga med att utveckla generella komponenter, då dessa anses vara svårt att hitta användningsområden för: Komponenter som har en hög grad av generalitet är mer komplexa och därför svårare att använda. Organisationen runt återanvändbara komponenter innebär en stor investering och många företag verkar ovilliga att satsa så mycket resurser på en gång och väljer därför att utveckla specifika komponenter istället, trots att långsiktiga vinster kanske går förlorade. Ofta görs bra men restriktiva analyser som är pragmatiska och till stor del bygger på tidigare erfarenheter och man utvecklar endast generella komponenter i de fall man vet att de kommer att användas. Benägenheten att utveckla generella komponenter verkar öka ju färre domäner utvecklingen sker för samt ju mer produktspecifik utvecklingen är. Kontexten är en avgörande faktor när man bestämmer om man ska utveckla en ny komponent eller modifiera en gammal. Eftersom bakåtkompatibiliteten ofta är mycket viktig, utvecklas ofta nya komponenter istället för att gamla modifieras. De gamla komponenterna får leva kvar i de system som använder dem.

Författare

Patrik Palmér Anders Olsson

Lärosäte och institution

Lunds universitet/Institutionen för informatik

Nivå:

"Magisteruppsats". Självständigt arbete (examensarbete ) om minst 15 högskolepoäng utfört för att erhålla magisterexamen.

Läs mer..