study of software reuse at skattedirektoratet master’s thesis oral exam, 24 may 2008

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

Upload: jafari

Post on 05-Jan-2016

33 views

Category:

Documents


1 download

DESCRIPTION

Study of Software reuse at Skattedirektoratet Master’s thesis oral exam, 24 May 2008. Line Ånderbakk Olsen Thor Ånderbakk Olsen. Disposisjon. Skattedirektoratets IT-avdeling Problembeskrivelse Forskningsspørsmål SKDs mål med oppgaven State-of-the-art of Software Reuse - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Study of Software reuse at Study of Software reuse at SkattedirektoratetSkattedirektoratet

Master’s thesis Master’s thesis oral exam, 24 May 2008oral exam, 24 May 2008Line Ånderbakk OlsenThor Ånderbakk Olsen

1

Page 2: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

DisposisjonDisposisjonSkattedirektoratets IT-avdelingProblembeskrivelseForskningsspørsmålSKDs mål med oppgavenState-of-the-art of Software ReusePresentasjon av hvert enkelt temaKonklusjonVidere arbeidRefleksjoner

2

Page 3: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Skattedirektoratets IT-Skattedirektoratets IT-avdelingavdeling

• En av landets største når det kommer til En av landets største når det kommer til datamengde og antall brukeredatamengde og antall brukere• Ca. 220 ansatteCa. 220 ansatte

3

Page 4: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

GLD systemeneGLD systemeneEldre systemer som stammer

tilbake fra slutten av 80-talletSkrevet i COBOL og kjører på SKDs

stormaskinI alt finnes det 15 GLD systemerHovedformålet med GLD-

systemene er å motta og lagre skatterelatert informasjon fra tredjepart og for forhåndsutfylling av selvangivelse

4

Page 5: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

GLD systemeneGLD systemene

5

Page 6: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

ForskningsspørsmålForskningsspørsmålRQ1: 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?

6

Page 7: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

SKDs mål med oppgavenSKDs mål med oppgavenGoal 1: Propose a process which

assures software reuseGoal 2: Propose an ideal

architecture for GLD, with focus on reuse

7

Page 8: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

TemaTemaState-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

8

Page 9: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

BidragBidragLitteraturgjennomgang om

programvaregjenbrukEstimat av gjenbruksnivå i de

valgte GLD-systemeneSpørreundersøkelse om

programvareutviklingsprosess og gjenbruksaspekter hos SKD

Forslag til prosess som skal sikre systematisk gjenbruk innen SKD

9

Page 10: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

State-of-the-art of Software State-of-the-art of Software ReuseReuseProgramvaregjenbruk vil si å

skape nye systemer ut fra eksisterende komponenter og systemer

”Alt” kan gjenbrukes:◦Arkitektur◦Kildekode◦Dokumentasjon◦GUI◦Kravspesifikasjoner

10

Page 11: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

State-of-the-art of Software State-of-the-art of Software ReuseReuseAd-hocUformell prosessFå 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å 11

Page 12: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

State-of-the-art of Software State-of-the-art of Software ReuseReuseFordelerØ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

12

Page 13: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

State-of-the-art of Software State-of-the-art of Software ReuseReuseGjenbruksperspektiver

13

Page 14: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

State-of-the-art of Software State-of-the-art of Software ReuseReuseFremgangsmåter for programvare

gjenbrukApplikasjonsgeneratorerProgramvarearkitekturKomponenter”Code Scavenging”

14

Page 15: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

State-of-the-art of Software State-of-the-art of Software ReuseReuseFlere ikke-tekniske aspekter å ta

hensyn til:MenneskeligeKulturelleØkonomiskeOrganisatoriske

15

Page 16: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

State-of-the-art of Software State-of-the-art of Software ReuseReuseOrganisasjoner 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

16

Page 17: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

State-of-the-art of Software State-of-the-art of Software ReuseReuseHvordan oppnå systematisk

programvaregjenbruk?

Program for gjenbrukEndringer i utviklingsprosessEndringer i organisasjonPilotprosjekt

Figuren viser fire samvirkende

prosesser som inngår i

systematisk gjenbruk

17

Page 18: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Valg av empiriske Valg av empiriske fremgangsmåterfremgangsmåterBå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

18

Page 19: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(T2)Benyttet følgende

fremgangsmåter:1. Gjennomgang av dokumentasjon

og programbeskrivelser for alle GLD systemer

2. Analyse av kildekode for utvalgte programmer

3. Kartlegging av modenhetsnivå i henhold til Koltun og Hudsons ”Reuse Maturity Model” (RMM)

19

Page 20: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(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

20

Page 21: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

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

programbeskrivelser for alle GLD systemer

21

Page 22: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(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

22

Page 23: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(T2)2. Analyse av kildekode for

utvalgte programmer

Hensikten var å identifiserte likheter i programmer mellom

◦ Årsversjoner◦ Forskjellige GLD systemerBenyttet ulike verktøy◦ Winmerge (for å finne differanser)◦ Egenutviklede programmer i Java

23

Page 24: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(T2)2. Analyse av kildekode for

utvalgte programmer I gjennomsnitt 60% felles kodelinjer i

programmer mellom forskjellige GLD systemer

24

Page 25: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(T2)2. Analyse av kildekode for

utvalgte programmer Vi identifiserte mellom 97-99% felles

kodelinjer mellom programmer for ulike årsversjoner

25

Page 26: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(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:

1. Repository structure (r)

2. Software development architecture (s)

3. Administrative management (g) Beregnet gjenbruksnivå med formel:

26

Page 27: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(T2)3. Koltun og Hudsons RMM

Formelen gav 5.41 poeng, altså er GLD systemene på nivå B ”Monitored”

27

Page 28: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Undersøkelse av nåværende Undersøkelse av nåværende gjenbruksnivå i GLD-systemene gjenbruksnivå i GLD-systemene (T2)(T2)Begrensinger ved fremgangsmåterSKDs programdokumentasjon var

ufullstendigDokumentgjennomgangen 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

28

Page 29: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Gjennomgang av SKDs Gjennomgang av SKDs utviklingsprosess (T3)utviklingsprosess (T3)Benyttet følgende

fremgangsmåter:1. Spørreundersøkelse blant 25

utviklere hos SKD2. Gjennomgang av SKDs

utviklingsprosess3. Intervju med prosessansvarlig

29

Page 30: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Gjennomgang av SKDs Gjennomgang av SKDs utviklingsprosess (T3)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

30

Page 31: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Gjennomgang av SKDs Gjennomgang av SKDs utviklingsprosess (T3)utviklingsprosess (T3)2. Gjennomgang av SKDs

utviklingsprosess 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

31

Page 32: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Gjennomgang av SKDs Gjennomgang av SKDs utviklingsprosess (T3)utviklingsprosess (T3)Begrensinger ved fremgangsmåterSpørreskjema IntervjuMøter med utviklerne

32

Page 33: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Gjennomgang av muligheteter Gjennomgang av muligheteter for systematisk gjenbruk innen for systematisk gjenbruk innen SKD (T4)SKD (T4)Benyttet følgende input:

1. Funn fra T1 (litteraturgjennomgang)2. Funn fra T3

33

Page 34: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Gjennomgang av muligheteter Gjennomgang av muligheteter for systematisk gjenbruk innen for systematisk gjenbruk innen SKD (T4)SKD (T4)Hva er potensialet for systematisk

gjenbruk og hvordan kan SKD oppnå det?

34

Page 35: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

KonklusjonKonklusjonHøy nivå av gjenbrukte kodelinjer

◦Ad-hocNivå B ”Monitored” i RMMUtviklerne har positive holdninger

til gjenbrukNåværende utviklingsprosess tar

ikke hensyn til programvaregjenbruk◦Endringer må til i prosessen for å

oppnå et høyere nivå av gjenbruk35

Page 36: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

Videre arbeidVidere arbeidIntroduksjon av program for

systematisk gjenbrukIdentifisere innholdet i likhetene

mellom programmeneSpørreundersøkelseGjenbrukte komponenter vs.

ikke-gjenbrukte komponenterSuksessfaktorer i systematik

gjenbruk

36

Page 37: Study of Software reuse at Skattedirektoratet Master’s thesis  oral exam, 24 May 2008

RefleksjonerRefleksjonerFordeler 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

37