Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Object Oriented Measurement

Liknende presentasjoner


Presentasjon om: "Object Oriented Measurement"— Utskrift av presentasjonen:

1 Object Oriented Measurement
Gruppe 5 består av: Cecilie Vitting – Marit S. Asklien - Terje Dahl - Lars-Gøran Larssen - Ole Henrik Leister - Presentasjonen og tilleggsnotater ligger her: home.no/gruppe5/presentation

2 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering OO Measurement Man kan måle størrelse på systemet og designet av systemet. Det er enkelt å lage et måleredskap for OO-systemer, da de bruker samme språket gjennom hele syklusen. Forskere har tatt i bruk ulike metoder for måling av system-utviklingen. Vi skal bl.a. ta for oss metodene til Lorenzen / Kidd, Chidamber / Kemerer og Li / Henry. Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

3 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Lorenz og Kidd Et system for å måle OO størrelse Definert ni hovedelementer i systemet og hvordan klasse-egenskapene påvirker produktet. Hver use case er satt i sammenheng med et scenario. Man teller opp antall scenario-scripts (Number of Scenario Scripts (NSS) i use casene. Videre teller man opp resten av de ni hovedelementene: Number of key classes Number of support classes Average number of support classes per key class Number of subsystems Class size Number of operations overridden by a subclass (NOO) Number of operations added by a subclass Specialization index: SI = (NOO x level) / (total class methods) Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

4 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Lorenz og Kidd Hver av disse måleteknikkene kan brukes i de ulike fasene i utviklingen, som vist i denne tabellen. Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

5 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Chidamber og Kemerer Også et system for måling av Objekt Orientert utvikling. Mer fokusert på design enn størrelse. Måler koplingen mellom objekter, responsen for en klasse og mangel på sammenheng i metodene. De måler også vekting av en klasses metoder, dybde av arv og antall barn. Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

6 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Chidamber og Kemerer C & K har laget en formel for å beregne ”vekting av en klasses metoder”: weighted methods per class = Summerer kompleksiteten til metodene for å finne de totale belastede metodene for klassen. Hvis svaret = 1; WMC = antall metoder i produktet. Jo større antall metoder, desto mer innsats trengs og barna til klassene får større innvirkning. Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

7 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Chidamber og Kemerer C & K har også definert en klasses dybde i arv til å være maksimum lengde i stien i hierarkiet fra klassen til roten i arve-treet. Jo dypere en klasse er i hierarkiet, desto flere metoder vil trolig bli arvet. Hver av disse måleteknikkene kan brukes i de ulike fasene i utviklingen, som vist i denne tabellen. Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

8 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Chidamber og Kemerer Man kan bruke C&K’s måleverktøy til programdesign også. Det fungerer på omtrent samme måte, ved at man i tillegg har klasser for brukergrensesnitt. Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

9 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Li og Henry Det er sannsynelig at det vil bli mer feil i koden hvis: De belastede metodene pr. klasse blir mer omfattende Det blir et stort antall barn i klassene Det blir stor dybde i arve-treet Det blir stor respons for klassen I tillegg kan man måle: message-passing coupling data abstraction coupling Målingene kan forutsi antall endringer i klassene i løpet av systemvedlikeholdet. Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

10 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Travassos Foreslår andre målinger for OO system bygd på gjennomsnitt. Antall beskjeder sendt fra en operasjon kan bli brukt til å kalkulere gjennomsnittsstørrelse for en operasjon. Det kan være nyttig å vite gjennomsnittet av antall parametere pr. operasjon. Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]

11 Object Oriented Measurement
Slide oversikt: Om Gruppe 5 Introduksjon L&K: Info L&K: Eksempel C&K: Info C&K: Eksempel L&H: Info Travassos Oppsummering Oppsummering Når skal man bruke OO Measurment? Når vi kan øke vår forståelse, forutsigelse og kontroll over produktet vi utvikler. Det er mange måter å måle OO systemer på, det er vanskelig å si hvilken som er best. Fremgangsmåtene vi har sett på her, kan være nyttige avhengig av hvilke problemer man støter på underveis og selve problemet man prøver å løse. Kilder: Lærebok: Software Engineering: Theory and Practice Web: Metrics for Object-Oriented Software Engineering [ Software Engineering: Gruppe 5 [home.no/gruppe5/presentation]


Laste ned ppt "Object Oriented Measurement"

Liknende presentasjoner


Annonser fra Google