Tradisjonelle estimeringsmetoder Estimering med use case modeller

Slides:



Advertisements
Liknende presentasjoner
12.Studienreise nach Finnland,
Advertisements

Prissetting i norske bedrifter. Resultater fra en spørreundersøkelse
Kvinner og politikk Kvinnelig valgmobilisering i Nord-Norge: Glasstak eller etterslep? Marcus Buck.
Nettverksamling i matematikk
Etablering av effektiv produksjon på tvers av landegrenser
Plan for markedssatsing: <sett inn navn på markedssatsing>
Litt mer om PRIMTALL.
Ti måter å ødelegge en CT-undersøkelse av halsen på
Hjemmeoppgave 1: Å høre etter NAVN: ……………………………….. DATO: ……………………….
Grafisk design Visuell kommunikasjon
Teknologi for et bedre samfunn 1 Asbjørn Følstad, SINTEF Det Digitale Trøndelag (DDT) Brukervennlig digitalisering av offentlig sektor.
Egenskaper til stoff og tidsbegrep: En modell for aspekt i russisk Laura A. Janda UNC-Chapel Hill/University of Tromsø
Kontrollstrukturer (Kapittel 3)
©TNS Norsk Finansbarometer 2013 Norsk Finansbarometer 2013 Det norske skadeforsikringsmarkedet og dets bevegelser Grafikkrapport – Skadeforsikring.
Målinger generelt •I et moderne samfunn brukes målinger i mange ulike sammenhenger •Eksempler: –Sammenligne priser, lønninger –Høyde: størrelse på klær.
Universell utforming Kirsten Ribu HiO Evaluering av datasystemer Analyse av systemegenskaper Kirsten Ribu
Møre og Romsdal. 2 Ligger det et bedehus eller et kristelig forsamlingshus (ikke kirke) i nærheten av der du bor? (n=502) i prosent.
1 Kap 04 Datamodellering. 2 Datamodellering -Et språk for å analysere og beskrive virkeligheten. -En metode for å beskrive naturlige sammenhenger i data.
Prototyping & Use Case Software Engineering Gruppe
2. Planter. Del 1 (1–4). Nivå 2. Side 19–24
Norsk Finansbarometer 2013 © TNS Norsk Finansbarometer 2013 Det norske bankmarkedet og dets bevegelser Grafikkrapport.
© PROGRAM UTVIKLING as Vellykkede prosjekter leverer hyppig Johannes Brodwall, Steria Chief Scientist, Utvikler, Arkitekt, Sertifisert ScrumMaster.
Estimeringsmetoder. Kirsten Ribu HiO - Kirsten Ribu 2005.
Kapittel 14 Simulering.
Oppgave gjennomgang Kap. 3 og 4.
1 Oppgave gjennomgang Kap Oppgaver -Kap 12: 1, 2, 3, 5, 7, 8, 11, 18, 19.
EVALUERING AV PRODUKTER, PROSESSER OG RESSURSER. Gruppe 4 Remi Karlsen Stian Rostad Ivar Bonsaksen Jonas Lepsøy Per Øyvind Solhaug Andreas Tønnesen.
Kvalitetssikring av analyser til forskningsbruk
Prototyping In 140 Sommerville kap. 8. Mål Forstå hensikten med prototyping i forskjellige utviklingsprosjekt Forstå forskjellen mellom evolusjonær og.
Estimering av arbeids- og tids-forbruk ved systemutvikling
Omlasting og direkteleveranser. LOG530 Distribusjonsplanlegging 2 2 Vi har nå utvidet nettverket med direkteleveranser. Distribusjonen går enten via lagrene.
P-MP modeller. LOG530 Distribusjonsplanlegging 2 2 Det skal opprettes p fasiliteter (lager) for å betjene en gitt mengde kunder. Kundenodene er også potensielle.
Kap 06 Diskrete stokastiske variable
Oppsummering av hovedområdene i kurset LO 135A Kirsten Ribu
©TNS Norsk Finansbarometer 2013 Norsk Finansbarometer 2013 Det norske pensjons- og livsforsikringsmarkedet og dets bevegelser Grafikkrapport – Livsforsikring.
Norsk Finansbarometer 2012 Norsk Finansbarometer 2012 Norsk Finansbarometer 2012 TNS Gallup Oslo, 2012 Det norske skadeforsikrings- markedet og dets bevegelser.
Om Norsk Finansbarometer 2014
Norsk Finansbarometer 2012 Norsk Finansbarometer 2012 Norsk Finansbarometer 2012 TNS Gallup Oslo, 2011 Det norske livs- og pensjonsforsikrings- markedet.
Norsk Finansbarometer 2011 TNS Gallup Oslo, 2011 Det norske skadeforsikrings- markedet og dets bevegelser Grafikkrapport - total.
Norsk Finansbarometer 2011 TNS Gallup Oslo, 2011 Det norske livs- og pensjonsforsikrings- markedet og dets bevegelser Grafikkrapport - total.
Om Norsk Finansbarometer 2014
Empiriske metoder Oppgaveanalyse, observasjon
Skriv om slik at setningene betyr omtrent det samme
Statistikk på 20 2 timer PSY-1002
SINTEF Teknologi og samfunn PUS-prosjektet Jan Alexander Langlo og Linda C. Hald 1 Foreløpig oppsummering – underlag for diskusjon på PUS-forum
Malverk intern produktopplæring
1 BM-dagen 29.okt BM1 Fysisk miljøplanlegging Studieprogram for Bygg- og miljøteknikk Meny Prosjektoppgaven Arealbruk og befolkning Transport og.
Anvendt statistisk dataanalyse i samfunnsvitenskap
Eiendomsmeglerbransjens boligprisstatistikk Oktober 2010
Eiendomsmeglerbransjens boligprisstatistikk Februar 2011 Norges Eiendomsmeglerforbund og Eiendomsmeglerforetakenes Forening ECON Poyry og FINN.
Velkommen! 4/4/2017.
Virksomhetsrapport Oktober Innhold 1. Oppsummering 2. Hovedmål 3. Pasient 5. Aktivitet 4. Bemanning 6. Økonomi 7. Klinikker 2.
Estimering av arbeids- og tids-forbruk: COCOMO - modellen
En oversikt over personopplysningsloven Dag Wiese Schartum, AFIN.
Kognitiv psykologi Frode Svartdal UiT 2014.
Prosjektledelse In 140 Forelesning Nr 18 a Sommerville kap
BUCS Utfordringer og valg av fokus Tor Stålhane. Rammebetingelser Første spørreundersøkelse viser at det vi gjør må kunne: Brukes sammen med UML Passe.
Virksomhetsrapport August Innhold 1. Oppsummering 2. Hovedmål 3. Pasient 5. Aktivitet 4. Bemanning 6. Økonomi 7. Klinikker 2.
Objektorientert utforming In 140 Sommerville kap. 12.
Økoprofil - en miljøvurderingsmetode
Kirsten Ribu Samfunnsinformatikk Mer om tilgjengelighet Kirsten Ribu HiO.
Telenors satsing på fri programvare Paul Skrede - GoOpen 2009.
Idrettens kvinner og kvinners idrett: fakta og visjoner Ørnulf Seippel Institutt for samfunnsforskning Munthesgt. 31, 0260 Oslo, Norge
Dagligbankundersøkelsen Fakta Dagligbankundersøkelsen intervju Befolkning 15 år + TNS Gallup Forfatter Bente Pettersen Roar Thorvaldsen.
Gamle systemer In 140 Forelesning Nr 19 Sommerville kap 26.
Befolkning og arbejdsmarked 7. Mikroøkonomi Teori og beskrivelse © Limedesign
Objektorientert utforming In 140 Forelesning Nr 11 Sommerville kap 12 – del 1.
OPPGAVER MÅL TEKNOLOGI.
Use case realisering Designmodellering Kirsten Ribu Kapittel 4 UML Distilled.
Kap. 9 Organisasjonens omgivelse
Utskrift av presentasjonen:

Tradisjonelle estimeringsmetoder Estimering med use case modeller Kirsten Ribu 03.02.04 HiO - Kirsten Ribu 2005

I dag Måling Hvordan ta beslutninger Estimeringsteknikker Ekspertestimering, estimering ved analogi, estimering ved bruk av algoritmer HiO - Kirsten Ribu 2005

Kostnader og prisfastsettelse Man estimerer for å avdekke utviklingskostnadene ved å lage et datasystem Det er ikke nødvendigvis en relasjon mellom utviklingskostnader og den prisen kunden betaler Forretnings-, organisasjonsmessige, økonomiske hensyn og politikk virker inn på prisen HiO - Kirsten Ribu 2005

Estimering = måling Måling = Hvorfor måle? Å tilordne tall eller symboler til entiteter for å beskrive dem på en meningsfylt måte. Hvorfor måle? Målinger har vært en viktig del av all vitenskapelig aktivitet siden middelalderen Galileo skrev for over 500 år siden: ’Gjør målbart det som ikke lar seg måle’. Tom DeMarco : “You can not manage what you do not measure.”  -NB!->Systemutvikling er fortatt en industri der det måles for lite. HiO - Kirsten Ribu 2005

Kostnadsestimering Ingen enkel oppgave: Tidlige estimater baserer seg på ufullstendig informasjon i kravspesifikasjonen Man må kanskje benytte ny teknologi Det kan være ukjente folk i prosjektteamet Estimater kan være selvoppfyllende profetier: Estimatet bestemmer budsjettet produktet justeres for å holde budsjettet HiO - Kirsten Ribu 2005

Ulike estimeringsmetoder Telle antall kodelinjer Ekspertestimering Analogier Algoritmer - kostnadsmnodeller Funksjonspoengmetoden Use case poeng metoden HiO - Kirsten Ribu 2005

Måling av programvare Størrelsen på systemet = størrelsen på hele prosjektet: Prosjektledelse Analyse, design, koding Testing Systemintegrasjon Størrelsen på prosjektet må måles og oversettes til et tall som representerer tidskostnader (effort) og prosjektets varighet HiO - Kirsten Ribu 2005

’Pricing-to-win’ Kostnadene = kundens budsjett En ikke uvanlig strategi Kan synes uetisk og lite profesjonelt Men det er fordeler: Kunde og leverandør må alltid forhandle om funksjonalitet innenfor visse kostnadsrammer Kostnader er den virkelige begrensningen, ikke kravspesifikasjonen, den kan justeres Et mindre firma/en nykommer i markedet kan bevisst underby andre for å få kontrakten HiO - Kirsten Ribu 2005

Nye systemutviklingsmetoder/ teknologi gir nye utfordringer Det kan være store forskjeller på tidligere og framtidige prosjekter Mange prosjektledere kan ha problemer med å estimere nye prosjekter pga bla: objekt-orientert systemutvikling i motsetning til funksjonsorientert Klient/tjener systemer Bruk av ferdige komponenter i motsetning til å lage alt selv Gjenbruk vs. utvikling ’fra scratch’ CASE verktøy med kodegenerering HiO - Kirsten Ribu 2005

Bruk av algoritmer Mest systematisk framgangsmåte Ikke nødvendigvis nøyaktig En algoritme lages ved å analysere kostnader og attributter på ferdige prosjekter En matematisk formel brukes for å forutsi kostnader basert på estimater av systemets størrelse, antall programmere, og ulike prosess- og produktfaktorer Er basert på empiriske observasjoner HiO - Kirsten Ribu 2005

Størrelse på systemet Defineres som et sett interne attributter: Lengde, funksjonalitet og kompleksitet Kan måles uten å kjøre systemet: Lengde: Systemets fysiske størrelse, kan måles for spesifikasjonen, designet og koden Funksjonalitet måler funksjonene slik brukeren ser dem. Kompleksitet referer til både effektivitet og problemkompleksitet HiO - Kirsten Ribu 2005

Bottom-up vs. Top-down Bottom-up estimering begynner med komponentene på laveste nivå, og det lages et estimat for hver del. Bottom-up tilnærmingen setter sammen estimering av enkelttdeler til høynivå estimater. Top-down estimering begynner med det overordnede produkt Estimater for enkeltdelene regnes ut som deler (prosenter) av estimatet for hele systemet. HiO - Kirsten Ribu 2005

Prosentvis bottom-up estimering basert på empiri Prosjektledelse 20% Analyse: 15% Design: 20% Koding: 25% Testing 15% Systemintegrasjon 5% Totalt 100% HiO - Kirsten Ribu 2005

Ekspert-estimering Kostnadsoverslag gjøres av ’eksperter’ basert på tidligere erfaringer Kan resultere i ganske nøyaktige estimater, men det er helt avhengig av ekspertens erfaringsbakgrunn Expertbaserte teknikker er nyttige når man ikke har empiriske data Fordel: Metoden anvender kunnskap om forskjeller og likheter på tidligere prosjekter (erfaring). Ulempe: Estimatene er ikke bedre enn ekspertens vurderinger. De er ikke målbare, og er preget av enkeltpersoners holdninger og forventninger HiO - Kirsten Ribu 2005

Analogi Analogi = en mer formell tilnærming til ekspertestimering Estimererne sammenligner det planlagte prosjektet med ett eller flere tidligere prosjekter Forskjeller og likheter brukes til å justere estimatet: Type applikasjon blir identifisert, et tidlig overslag gjøres, og justeres i henhold til prosjekterfaringer. Nøyaktighet er avhengig av at det finnes informasjon om tidligere prosjekter. HiO - Kirsten Ribu 2005

Psykologi i beslutningsprosessen HiO - Kirsten Ribu 2005

Persepsjon og kontekst Det er umulig å ta en ’nøytral’ avgjørelser Avgjørelser er avhengige av sammenhengen (kontekst) Alle avgjørelser beror på måten vi betrakter verden på Kilde: Scott Plous: The Psychology of Judgement and Decision making HiO - Kirsten Ribu 2005

Selektiv persepsjon Persepsjon (oppfattelse) avhenger av motivasjon og kognitive faktorer Spørsmål: Hvilke forventninger har jeg i denne situasjonen? Er jeg innstilt på å se ting på en bestemt måte? Ville jeg sett ting annerledes i dersom jeg hadde andre motiver? Har jeg konferert med andre som ikke deler mine forventninger og motiver? HiO - Kirsten Ribu 2005

Parkinsons lov Kostnader avgjøres av tilgjengelige ressurser, ikke objektiv vurdering Arbeidet har en tendens til å fylle tiden som er til rådighet. Eks: Hvis systemet skal leveres innen 12 måneder og teamet er på 5 personer, blir tidskostnadene estimert til 60 månedsverk. HiO - Kirsten Ribu 2005

Hva kan forkludre ’nøytrale’ vurderinger Et lite eksperiment HiO - Kirsten Ribu 2005

’Anker’-effekten Eksempel 1: Lykkehjulet lander på 65. Spørsmål: Er prosentandelen av afrikanske land i FN høyere eller lavere enn 65? HiO - Kirsten Ribu 2005

Eksempel 2 Ny situasjon: Ny forsøksperson. Lykkehjulet stopper på 10 Spørsmål: Er prosentandelen av afrikanske land i FN høyere eller lavere enn 10? HiO - Kirsten Ribu 2005

Konklusjon Eksperiment av Amos Tversky og Daniel Kahneman (1974) Tilfeldig sammensetning av forsøkspersoner Resultat: Nåla stoppet på 65: Gjennomsnittssvar = 45% Nåla stoppet på 10: Gjennomsnittssvar = 25% Ankereffekten er blitt dokumentert i mange sammenhenger HiO - Kirsten Ribu 2005

Eksempel Spørsmål: Er sannsynligheten for en atomkrig mellom USA og Sovjetunionen: Høyere eller lavere enn 1 prosent (lav-anker) Høyere eller lavere enn 90% (høy-anker) Ingen anker Resultat: Høyt anker gir høy prosent, lavt anker lav prosent HiO - Kirsten Ribu 2005

Algoritmer Kostnadsmodeller HiO - Kirsten Ribu 2005

Kostmodeller (cost models) Algoritmer som relaterer et bestemt input til et bestemt output f.eks systemstørrelse til antall arbeidstimer Modellene frambringer estimater direkte Det finnes 2 typer modeller: Matematiske ligninger Oppslagstabeller HiO - Kirsten Ribu 2005

Kostnadsdrivere Ligninger bruker systemstørrelse som input variabel og arbeidstid (effort) som output. I tillegg brukes ulike justeringsfaktorer = kostnadsdrivere (cost drivers). Disse påvirker produktiviteten Er ofte i form av en skala: (for eksempel som et mål på programmeringserfaring): Svært erfaren, erfaren, middels, lite, novise 1-5 HiO - Kirsten Ribu 2005

Fordeler og ulemper Fordeler: Ulemper: Kan brukes av ikke-eksperter Formelen må oppdateres for å ta høyde for endringer i system utviklingsmetoder. Modeller antar at fremtiden er lik fortiden Gir derfor resultater som passer på ’gjennomsnittsprosjekter’. HiO - Kirsten Ribu 2005

Funksjonspoengmetoden Function points ’oppfunnet’ i 1979 av Alan Albrecht Metoden måler størrelsen på problemet sett fra brukerens synsvinkel Hovedprinsippet er å fokuserer på kravspesifikasjonen, slik at man får et tidlig estimat over utviklingstid og –kostnader. Anvender 5 eksterne attributter som mål: Input til systemet Output fra systemet ’Forespørsler’ fra bruker Antall logiske filer eller filer som skal oppdateres av systemet Grensesnitt til andre systemer HiO - Kirsten Ribu 2005

Utdatert metode Passer ikke til sanntidsapplikasjoner eller dagens objektorienterte virkelighet Men lever likevel i beste velgående: IFPUG (International Function Points User Group) www.ifpug.org HiO - Kirsten Ribu 2005

Nyere varianter MkII (brukt i Storbritannia) – nå gammeldags -> COSMIC FFP (full function points) er nå en internasjonal standard: ISO 19761 Use case poeng metoden – oppfunnet i 1993 av Gustav Karner HiO - Kirsten Ribu 2005

Estimering med use cases Use case poeng metoden (Karners metode) HiO - Kirsten Ribu 2005

Estimering basert på use cases Use case modellen beskriver funksjonaliteten til systemet Attributter ved use case modellen kan dermed brukes som et mål på størrelsen til systemet som skal lages Samme filosofi som funksjonspoengmetoden Størrelsesmålet brukes som input til et top-down estimat. Use case baserte estimater kan brukes sammen med ekspertvurderinger HiO - Kirsten Ribu 2005

Gode resultater på ulike prosjekter Eksempler: Prosjekt Ekspertestimat UC-estimat Faktisk tidsbruk 1 7000 10831 10043 2 12600 14965 13933 3 2730 2550 3670 4 2340 2730 2860 5 2080 2100 2740 HiO - Kirsten Ribu 2005

Oversikt over metoden: Identifiser, klassifiser og vekt aktører Identifiser, klassifiser og vekt use case Identifiser og vekt tekniske faktorer Identifiser og vekt omgivelsesfaktorer Konverter poeng til arbeidstimer Kalkuler justerte poeng HiO - Kirsten Ribu 2005

Framgangsmåte Enkel aktør: Programgrensesnitt 1. Tell aktører og definer kompleksitet: Enkel aktør: Programgrensesnitt Medium aktør: Interaktivt grensesnitt eller protokolldrevet grensesnitt (f.eks TCP/IP) Kompleks aktør: Grafisk brukergrensesnitt (person) HiO - Kirsten Ribu 2005

Use case poeng metoden Aktørbeskrivelse Aktørtype Beskrivelse Faktor Enkel Program-grensesnitt 1 Middels Interaktivt grensesnitt 2 Kompleks Grafisk brukergrensesnitt 3 HiO - Kirsten Ribu 2005

Use case kompleksitet Use case Beskrivelse Faktor 5 10 15 Enkel 3 eller færre transaksjoner 5 Middels 4 til 7 transaksjoner 10 Kompleks Mer enn 7 transaksjoner 15 HiO - Kirsten Ribu 2005

Spørreskjemageneratoren 3 aktører: 1 eksternt system = enkel 2 personer = komplekse HiO - Kirsten Ribu 2005

UC ’Generer spørreskjema’: >8 transaksjoner = komplekst HiO - Kirsten Ribu 2005

Legg sammen Summen av antall use case* kompleksitetsfaktor UUCW (unadjusted use case weights) + Summen av antall aktører*kompleksitetsfaktor UAW (unadjusted actor weights) = UUCP (unadjusted use case points) Antallet use case poeng ganges med en justeringsfaktor = (omgivelsesfaktor) HiO - Kirsten Ribu 2005

Tekniske faktorer og omgivelsefaktorer Opprinnelig: 13 tekniske faktorer Kan antakelig utelates. Dette forskes det på. 8 omgivelsesfaktorer – ytre påvirkning som har innflytelse på tidsbruken HiO - Kirsten Ribu 2005

Omgivelsesfaktorer F1 Erfaring med RUP/ anvendt prosessmodell F2 Team-erfaring med tilsvarende applikasjon F3 Team-erfaring med objekt-orientering/ UML modellering F4 Prosjektleders kompetanse F5 Team-motivasjon F6 Stabile krav/domenekunnskap F7 Ustabile ressurser (deltidsansatte, ikke tilgjengelige ressuser) F8 Ukjent programmeringsspråk/ ny teknologi HiO - Kirsten Ribu 2005

Beregn timeforbruk per use case poeng: Omgivelsesfaktorene påvirker antall timer pr use case poeng Erfaring viser at timer pr use case poeng i større prosjekter varierer mellom 20 og 36 Studentprosjekter: 2-3 timer pr ucp HiO - Kirsten Ribu 2005

Use case poeng totalt Eksempel: Regneark HiO - Kirsten Ribu 2005

Neste gang Ingen forelesning mandag Torsdag: Mønstre: Design patterns Ukeoppgave: lag et estimat for Zebrasystemet utfra de use casene du har spesifisert. Bruk malen/regnearket. Omgivelsesfaktorene må bestmmes ved gjetning. HiO - Kirsten Ribu 2005