Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Line Ånderbakk Olsen Thor Ånderbakk Olsen

Liknende presentasjoner


Presentasjon om: "Line Ånderbakk Olsen Thor Ånderbakk Olsen"— Utskrift av presentasjonen:

1 Line Ånderbakk Olsen Thor Ånderbakk Olsen
Study of Software reuse at Skattedirektoratet Master’s thesis oral exam, 24 May 2008 Line Ånderbakk Olsen Thor Ånderbakk Olsen

2 Disposisjon Skattedirektoratets IT-avdeling Problembeskrivelse
Forskningsspørsmål SKDs mål med oppgaven State-of-the-art of Software Reuse Presentasjon av hvert enkelt tema Konklusjon Videre arbeid Refleksjoner

3 Skattedirektoratets IT-avdeling
En av landets største når det kommer til datamengde og antall brukere Ca. 220 ansatte

4 GLD systemene Eldre systemer som stammer tilbake fra slutten av 80-tallet Skrevet i COBOL og kjører på SKDs stormaskin I alt finnes det 15 GLD systemer Hovedformålet med GLD-systemene er å motta og lagre skatterelatert informasjon fra tredjepart og for forhåndsutfylling av selvangivelse

5 GLD systemene

6 Forskningsspørsmål RQ1: What is the current state of software reuse in the selected GLD systems? RQ2: Do reused components have lower change and defect rate compared to other components? RQ3: What is the emphasis for systematic reuse in the current development process? RQ4: What is the potential for systematic reuse, and how can it be achieved?

7 SKDs mål med oppgaven Goal 1: Propose a process which assures software reuse Goal 2: Propose an ideal architecture for GLD, with focus on reuse

8 Tema State-of-the-art innen programvaregjenbruk
Undersøkelse av nåværende gjenbruksnivå i GLD- systemene Gjennomgang av SKDs utviklingsprosess Gjennomgang av muligheteter for systematisk gjenbruk innen SKD

9 Bidrag Litteraturgjennomgang om programvaregjenbruk
Estimat av gjenbruksnivå i de valgte GLD- systemene Spørreundersøkelse om programvareutviklingsprosess og gjenbruksaspekter hos SKD Forslag til prosess som skal sikre systematisk gjenbruk innen SKD

10 State-of-the-art of Software Reuse
Programvaregjenbruk vil si å skape nye systemer ut fra eksisterende komponenter og systemer ”Alt” kan gjenbrukes: Arkitektur Kildekode Dokumentasjon GUI Kravspesifikasjoner

11 State-of-the-art of Software Reuse
Ad-hoc Uformell prosess Få eller ingen metoder som sikrer gjenbruk Gjenbruk oppstår ved tilfeldigheter Individuelt nivå ”Klipp-og-lim” Systematisk gjenbruk Formell, konsistent og repeterbar prosess Planlagt gjenbruk Organisasjonelt nivå Krever investreringer Mulig å måle gjeldende nivå

12 State-of-the-art of Software Reuse
Fordeler Økt kvalitet Økt produktivitet og redusert utviklingstid Forbedret interaksjon mellom ulike systemer Reduserte kostnader Enklere å e stimere tid og kostnad Problemer Støtte og forståelse fra ledelse og utviklere Arkitektur som understøtter gjenbruk Lagre, klassifisere og identifisere gjenbrukbare komponenter

13 State-of-the-art of Software Reuse
Gjenbruksperspektiver

14 State-of-the-art of Software Reuse
Fremgangsmåter for programvare gjenbruk Applikasjonsgeneratorer Programvarearkitektur Komponenter ”Code Scavenging”

15 State-of-the-art of Software Reuse
Flere ikke-tekniske aspekter å ta hensyn til: Menneskelige Kulturelle Økonomiske Organisatoriske

16 State-of-the-art of Software Reuse
Organisasjoner må være i stand til å måle fremgang og identifisere hensiktsmessige gjenbruksstrategier Hudson og Koltuns Reuse Maturity Model består av følgende 5 faser: 1. Initial/Chaotic 2. Monitored 3. Coordinated 4. Planned 5. Ingrained

17 State-of-the-art of Software Reuse
Hvordan oppnå systematisk programvaregjenbruk? Program for gjenbruk Endringer i utviklingsprosess Endringer i organisasjon Pilotprosjekt Figuren viser fire samvirkende prosesser som inngår i systematisk gjenbruk

18 Valg av empiriske fremgangsmåter
Både kvalitative og kvantitative fremgangsmåter ble benyttet: Møter med utviklere Gjennomgang av systemdokumentasjon Analyse av kildekode Gjennomgang av utviklingsprosess Intervju Spørreundersøkelse

19 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
Benyttet følgende fremgangsmåter: Gjennomgang av dokumentasjon og programbeskrivelser for alle GLD systemer Analyse av kildekode for utvalgte programmer Kartlegging av modenhetsnivå i henhold til Koltun og Hudsons ”Reuse Maturity Model” (RMM)

20 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
1. Gjennomgang av dokumentasjon og programbeskrivelser for alle GLD systemer Hensikten var å identifisere komponenter brukt på tvers av applikasjoner Kryss-sjekket alle programmer beskrevet i programbeskrivelsene

21 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
1. Gjennomgang av dokumentasjon og programbeskrivelser for alle GLD systemer

22 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
1. Gjennomgang av dokumentasjon og programbeskrivelser for alle GLD systemer Fire programmer ble brukt på tvers innen GA/LTO systemet Ett program ble brukt på tvers i de resterende 14 GLD systemene

23 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
2. Analyse av kildekode for utvalgte programmer Hensikten var å identifiserte likheter i programmer mellom Årsversjoner Forskjellige GLD systemer Benyttet ulike verktøy Winmerge (for å finne differanser) Egenutviklede programmer i Java

24 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
2. Analyse av kildekode for utvalgte programmer I gjennomsnitt 60% felles kodelinjer i programmer mellom forskjellige GLD systemer

25 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
2. Analyse av kildekode for utvalgte programmer Vi identifiserte mellom 97-99% felles kodelinjer mellom programmer for ulike årsversjoner

26 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
3. Koltun og Hudsons RMM Hensikten var å tilby en kvantitativ indikator for gjeldende gjenbruksnivå i de valgte GLD systemene Vi benyttet en fremgangsmåte som fastslo modenhetsnivået ut i fra tre faktorer for gjenbruk: Repository structure (r) Software development architecture (s) Administrative management (g) Beregnet gjenbruksnivå med formel:

27 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
3. Koltun og Hudsons RMM Formelen gav 5.41 poeng, altså er GLD systemene på nivå B ”Monitored”

28 Undersøkelse av nåværende gjenbruksnivå i GLD-systemene (T2)
Begrensinger ved fremgangsmåter SKDs programdokumentasjon var ufullstendig Dokumentgjennomgangen fant kun komponenter som ble brukt på tvers av applikasjoner Kun CICS programmer ble gjennomgått i kildekodeanalysen Fremgangsmåten for å kartlegge gjenbruksnivået i Koltun og Hudsons modell var lite benyttet i litteraturen

29 Gjennomgang av SKDs utviklingsprosess (T3)
Benyttet følgende fremgangsmåter: Spørreundersøkelse blant 25 utviklere hos SKD Gjennomgang av SKDs utviklingsprosess Intervju med prosessansvarlig

30 Gjennomgang av SKDs utviklingsprosess (T3)
1. Spørreundersøkelse blant 25 utviklere hos SKD Positiv holdning mot programvaregjenbruk Gjenbruk er viktig for å oppnå fordeler som redusert utviklingstid og kostnad, høyere kvalitet etc Det bør være mer gjenbruk enn det er i dag Delte meninger om hvorvidt prosessen for å finne, fastsette eller gjenbruke fungerer eller ikke Ingen klart definert måte for å gjenbruke kode eller design komponenter

31 Gjennomgang av SKDs utviklingsprosess (T3)
Programvaregjenbruk er ikke beskrevet i utviklingsprosessen Samtaler med utviklere bekreftet at det ikke eksisterer noen formell prosess for gjenbruk 3. Intervju med prosessansvarlig Det ble enda en gang bekreftet at det ikke eksisterer noen formell prosess for gjenbruk

32 Gjennomgang av SKDs utviklingsprosess (T3)
Begrensinger ved fremgangsmåter Spørreskjema Intervju Møter med utviklerne

33 Gjennomgang av muligheteter for systematisk gjenbruk innen SKD (T4)
Benyttet følgende input: Funn fra T1 (litteraturgjennomgang) Funn fra T3

34 Gjennomgang av muligheteter for systematisk gjenbruk innen SKD (T4)
Hva er potensialet for systematisk gjenbruk og hvordan kan SKD oppnå det?

35 Konklusjon Høy nivå av gjenbrukte kodelinjer Nivå B ”Monitored” i RMM
Ad-hoc Nivå B ”Monitored” i RMM Utviklerne har positive holdninger til gjenbruk Nåværende utviklingsprosess tar ikke hensyn til programvaregjenbruk Endringer må til i prosessen for å oppnå et høyere nivå av gjenbruk

36 Videre arbeid Introduksjon av program for systematisk gjenbruk
Identifisere innholdet i likhetene mellom programmene Spørreundersøkelse Gjenbrukte komponenter vs. ikke- gjenbrukte komponenter Suksessfaktorer i systematik gjenbruk

37 Refleksjoner Fordeler Ulemper
Interessant og lærerikt tema, med relevans til jobben vi nå skal ut i Stor hjelp både fra veileder og SKD I alt er vi godt fornøyd med sluttresultatet Ulemper Geografisk avstand mellom oss og SKD Usikkerhet rundt GLD systemenes fremtid Mangelfull dokumentasjon rundt systemene


Laste ned ppt "Line Ånderbakk Olsen Thor Ånderbakk Olsen"

Liknende presentasjoner


Annonser fra Google