Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Forfattere: Lars Mathiassen, Thomas Seewaldt og Jan Stage

Lignende præsentationer


Præsentationer af emnet: "Forfattere: Lars Mathiassen, Thomas Seewaldt og Jan Stage"— Præsentationens transcript:

1 Prototypes and Specifying: Principles and Practices of a Mixed Approach.
Forfattere: Lars Mathiassen, Thomas Seewaldt og Jan Stage Publiseret i: Scandinavian Journal of Information Systems 1995 1

2 Disposition Præmis, Formål og Metode Eksperimenterne Resultater
UCLA eksperimentet AAU Eksperimentet Sammenlignelighed Begrænsninger ved Forsøget Resultater Teoretisk Refleksion Konklusion Kritik af Artiklen 2

3 Præmis, Formål og Metode
Artiklen tager udgangspunkt i en implicit hypotese der går på at en udviklingsmetode der kombinere analytiske og eksperimentelle tilgange er bedre end specialisere metoder. Artiklen beskriver et studie der har til formål at evaluere en blandet tilgang baseret på spiralmodellen, samt vurdere den i forhold til to specialiserede metoder - prototyping og specifying. Forskningsmetoden der anvendes kan karakteriseres som applied research idet kendte metoder afprøves med det formål for øje at evaluere og vurdere dem i forhold til hinanden og undersøge hypotesen om at en blandet metode vil klare sig bedre end specialiserede. 3

4 UCLA Eksperimentet 1/2 Udført i 1982 på UCLA
Formålet var at sammenligne to specialiserede udviklingsmetoder: Specifying og prototyping. Syv hold studerende udviklede et system til at støtte estimering af omkostninger ved udvikling af software baseret på COCOMO modellen. Systemerne blev udviklet i pascal. Systemerne blev efterfølgende vurderet ud fra fire kriterier: Functionality Robustness Ease of Use Ease of Learning 4

5 UCLA Eksperimentet 2/2 Overordnet var systemernes performance sammenlignelig, men de adskilte sig dog på de fire kriterier. Specifying systemerne blev vurderet højt i forhold til functionality og robustness, men lavt på ease of use og ease of learning Prototyping systemerne blev vurderet højt i forhold til ease of use og ease of learning, men lavere i forhold til functionality og robustness end systemerne udviklet med specifying. Forskerne konkluderede derfor at specifying og prototyping kunne komplementere hinanden i software-udvikling. 5

6 AAU Eksperimentet To hold udviklede et tilsvarende system, dog med den undtagelse at de anvendte spiralmodellen som ramme for deres udviklingsarbejde. Holdene fik leveret algoritmerne der skulle anvendes i systemet og blev endvidere opfordret til at lave en grafisk brugergrænseflade. Programmeringssproget var modula2 og der blev benyttet hhv. suntools og tooltool til udvikling af brugergrænsefladen. De to hold bestod af hhv. 2 og 3 personer opdelt efter eget valg. De to AAU systemer blev vurderet af Stage og Mathiassen og efterfølgende gentog Seewaldt vurderingerne. 6

7 Sammenlignelighed Eksperimenterne er tilrettelagt på samme måde og Seewaldts deltagelse bliver fremstillet som garant herfor. Deltagerne er sammenlignelige ift. deres erfaring. Ensartede vurderinger. Udviklingsværktøjer og udviklingssprog giver højere effektivitet i AAU eksperimentet, men GUI tilføjer øget kompleksitet til opgaven, hvilket mindsker effektiviteten. 7

8 Begrænsninger De studerende på UCLA arbejde ud fra kendte og specificerede metoder, hvorimod AAU holdene arbejde ud fra egen fortolkning af en generel beskrivelse af spiralmodellen som ramme for udvikling. Spiralmodellen tilføjede endvidere et større behov for kommunikation og projektstyring. De studerende på AAU havde stort set kun det ene projekt at bekymre sig om, hvorimod de studerende på UCLA skulle følge 2-3 andre kurser samtidigt. De studerende på AAU var involverede i eksperimentet i modsætning til de studerende ved UCLA, hvilket forventes at øge deres motivation og engagement. Dataindsamlingen var baseret på ensartede kriterier, men disse kan være tolket forskelligt af de forskellige hold og forskerne forventer at de studerende på AAU har været grundigere. 8

9 Resultater 1/2 Arbejdsindsats og kodemængden afslørede ikke den store forskel metoderne imellem. Sammenligning af design og programmeringsfaserne i forløbet afslører at spiralmodellen resultere i et miks af de to andre tilgange. Systemerne der blev udviklet ved specifying blev vurderet højt på functionality og robustness på bekostning af ease of use og ease of learning, Prototyping holdene og spiralholdene gav alle fire kriterier ligelig opmærksomhed. Systemer udviklet med spiralmodellen scorede højt på robustness, hvilket kan tyde på at man med spiralmodellen kan kompensere for prototypings svagheder. Spiralmodellen scorede generelt lige højt på alle fire kriterier, hvilket ikke var kendetegnende for specifying og prototyping der hver især viste svagheder. 9

10 Resultater 2/2 Spiralmodellen skal fortolkes og tilpasses til de specifikke omstændigheder i et projektforløb. Spiralmodellen opfordrer udviklerne til at fokusere på designovervejelser før det endelige system udvikles. Spiralmodellen støttede udviklerne i at udvikle kode med henblik på at lære fra det og derefter smide det væk. Spiralmodellen hjalp til at fordele arbejdsindsatsen over de forskellige faser i forløbet. Det var svært at anvende spiralmodellen til at tilrettelægge tidsforbruget i projektforløbet. Risikoanalyserne var baseret på erfaring og intuition og ikke kvantitative analyser. Risikostyringen medførte at nye risici blev identificeret og eksisterende blev taget op til revision. Spiralen som metafor blev fundet utilstrækkelig idet der i forløbet opstod behov for at foretage yderligere iterationer parallelt med igangværende iterationerne. 10

11 Teoretisk Refleksion The Priciple of Limited Reduction (Stage og Mathiassen) Analytisk abstraktion af kompleksitet medfører øget usikkerhed pga. forsimpling, hvilket kræver eksperimentelle modtræk. og modsat vil eksperimenter med formål at reducere usikkerhed introducere ny viden og dermed øget kompleksitet der kræver analytiske modtræk. I de udførte eksperimenter anslås kompleksiteten til at være moderat og usikkerheden som noget højere. Dette er med til at forklare forskellen i resultaterne opnået med hhv. specifying og prototyping og spiralmodellen, fordi de eksperimenterende metoder netop tager højde for usikkerheden. Dette leder forskerne til at antage at det er fornuftigt at kombinere forskellige tilgange i den samme udviklingsproces og at spiralmodellen er er udmærket værktøj til denne kombination. 11

12 Konklusion Tilgange der blander det analytiske og eksperimentelle kan tilsyneladende trække på styrker fra begge tilgange og resultere i produkter af minimum lige så høj kvalitet som de specialiserede metoder. Dette er i overensstemmelse med The Priciple of Limited Reduction. Spiralmodellen er et godt værktøj til at kombinere analytiske tilgange med eksperimentelle. Den er dog ikke simpel at bruge da den kun er et generelt værktøj til forståelse og styring af udviklingsprocesser. Den er desuden åben for individuel fortolkning. 12

13 Kritik Der konkluderes på et noget spinkelt datamateriale.
Man hører intet om, hvorvidt den øgede robustness i systemer udviklet ud fra spiralmodellen er et resultat af et mere kompetent programmeringssprog. Man kan spørge sig selv, eller forskerne, om brugergrænsefladen kunne spille ind på vurderingen af ease of use og ease of learning? 13


Download ppt "Forfattere: Lars Mathiassen, Thomas Seewaldt og Jan Stage"

Lignende præsentationer


Annoncer fra Google