Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Bendik Bygstad 9.1.06 Høgskolen i Vestfold Innføring i The Rational Unified Process Bendik Bygstad NITH 1.time: Noen grunnproblemer i systemutvikling 2.time:

Liknende presentasjoner


Presentasjon om: "Bendik Bygstad 9.1.06 Høgskolen i Vestfold Innføring i The Rational Unified Process Bendik Bygstad NITH 1.time: Noen grunnproblemer i systemutvikling 2.time:"— Utskrift av presentasjonen:

1 Bendik Bygstad Høgskolen i Vestfold Innføring i The Rational Unified Process Bendik Bygstad NITH 1.time: Noen grunnproblemer i systemutvikling 2.time: Hovedprinsipper i RUP 3.time: Strukturen i et RUP-prosjekt 4.time: RUP og UML

2 Bendik Bygstad Høgskolen i Vestfold Førsteamanuensis Bendik Bygstad Utdannelse 2005: PhD Computer Science. Universitetet i Aalborg 1987: Mag.art Universitetet i Oslo Erfaring 1999-: Norges Informasjonsteknologiske Høgskole NITH 1995-: Fagrevisor ISO 9000, BS7799. TI Sertifisering : IT-sjef: Teknologisk Institutt : IT-konsulent: Department, konsulentfirma

3 Bendik Bygstad Høgskolen i Vestfold Noen grunnproblemer i systemutvikling Hovedprinsipper i RUP 1.Hva er en SW utviklingsprosess? 2.Litt historikk: Hvilket problem forsøker vi å løse? 3.Hvilke metoder brukes i Norge? 4.Introduksjon til RUP 5.RUP på ulike nivåer 6.Hovedprinsipper 7.Hovedstruktur i RUP-prosjekter 8.Litt om kritikken mot RUP

4 Bendik Bygstad Høgskolen i Vestfold Hva er en SW utviklingsprosess? En beskrivelse av hvem som skal gjøre hva, og hvordan, - for å utvikle et SW-produkt. Grunnmodell: Fra System Engineering Viktige rammebetingelser: •Teknologi •Verktøy •Mennesker •Organisasjon

5 Bendik Bygstad Høgskolen i Vestfold Behovet for rammeverk for systemutvikling Litt historikk om software engineering. PeriodeUtviklingsprosessProblemer 60-tallet:Uformelle metoder NATO erklærte ”Softwarekrisen” i Løsning: Software Engineering. 70-talletFossefallsmetoden Brukerkrav fryses tidlig, før brukerne har sett systemet. 80-talletFossefallsvarianter Prototyping Fortsatt stivhet i fossefallsmetoden. Prototyping ikke skalerbart. 90-talletIterative og inkrementelle metoder Styring av evolusjonære prosjekter vanskelig. Økende kompleksitet i rammeverkene Ulike rammeverk: RUP, XP, Scrum, DSDM etc Fremdeles mange mislykkede prosjekter…

6 Bendik Bygstad Høgskolen i Vestfold Hovedproblemer i systemutvikling Standish Group: Chaos Report 2000: - Vellykkede prosjekter: 28% - Problematiske prosjekter: 49% - Mislykkede prosjekter: 23% Hovedårsaker til mislykkede prosjekter: - Manglende brukerkrav - Uklare mål - Ufullstendige krav - Krav endres underveis - Manglende planlegging

7 Bendik Bygstad Høgskolen i Vestfold Behovet for en utviklingsprosess (hvorfor kan vi ikke bare programmere…?) •Mestre teknisk kompleksitet •Fra krav til modell: Forstå behov •Fra modell til komponent: Realisere løsning •Fra komponent til produksjon: Sikre stabil drift •Styre prosjekter •Økonomisk •Tid •Kvalitet

8 Bendik Bygstad Høgskolen i Vestfold Hvilke metoder brukes i Norge? MethodUse 2003Use 2002 Own method78 %79 % RUP29 %23 % XP21 %17 % MSF19 %21 % OPEN11 %0 % PSO7 %21 % Other methods10 %13 % Kilde: Fagerstrøm,A., Bygstad,B., Østensen,T. (2003): Adoption of systems development methods, and market orientation. An empirical investigation in Norway. Nokobit 2003.

9 Bendik Bygstad Høgskolen i Vestfold Hva kjennetegner ’egen metode’? Own methodology is ofShare of Own method Share of FSDM = “Yes” Iterative type55 %43 % Waterfall type30 %23 % Other type10 %7 % No answer5 %

10 Bendik Bygstad Høgskolen i Vestfold Introduksjon til RUP •RUP er en prosessmodell for OO systemutvikling (Det finnes andre: OPEN, Catalysis, MSF, XP, DSDM...) •Introdusert i 1999 •Jacobson, Booch, Rumbaugh •Bygger på Jacobsens arbeid hos Ericsson •Software Engineering: Best Practice •Andre kilder: •Nygård/Dahl: Objektorientert programmering •Boehm: Iterativ utvikling/risikohåndtering •Tom Gilb: Inkrementell utvikling •Mitroff: Stakeholders •Software Engineering Institute: CMM etc

11 Bendik Bygstad Høgskolen i Vestfold RUP på tre nivåer RUP er er prosessmodell for systemutvikling. Det er viktig å tilpasse RUP til typen av oppgave og omfanget av den. RUP er: I praktisk bruk: 1. Noen grunnleggende prinsipper Må følges (se neste side) 2. En beskrivelse av trinn i prosessen, og Følges i hovedsak, men de viktigste produkter (artifacts) tilpasses 3. Et stort smørgåsbord (3700 web-sider!) av aktiviteter teknikker, artifacts, Velges nøye etter behov templates etc

12 Bendik Bygstad Høgskolen i Vestfold Hovedprinsipper i RUP PrinsippBeskrivelse •Use Case drevet •Arkitektur-sentrert •Iterativ •Inkrementell •Styrt Kilde: Gary Evans: Lightening up a heavyweight Hele systemet tar utgangspunkt i use cases, utviklet i Samarbeid med brukere. Hvert use-case viser til en tjeneste for en brukergruppe. Testing tar utgangspunkt i use cases. Arkitekturen viser (i ulike views) hvordan systemet er strukturelt bygget opp. Problemet og løsningen deles opp i mindre deler, som Utvikles gjennom iterasjoner, små prosjekter som resulterer I en release. Hver iterasjon bygger inkrementelt på resultatet av forrige Iterasjon. Prossesen er styrt, i den forstand at du alltid skal vite hva neste skritt er, og at alle artifacts som blir laget er underlagt konfigurasjonsstyring.

13 Bendik Bygstad Høgskolen i Vestfold Hovedstruktur i RUP-prosjekt

14 Bendik Bygstad Høgskolen i Vestfold Litt om kritikken mot RUP •2000: Beck: Extreme programming –Vekt på kode, ikke modeller – Tettere samarbeid med kunde – Parprogrammering •2003: Respons fra Rational – Mer vekt på programmerers ferdigheter – ’Agile RUP’ •2005: Larman: Striden avblåst - ulike metoder til ulike behov


Laste ned ppt "Bendik Bygstad 9.1.06 Høgskolen i Vestfold Innføring i The Rational Unified Process Bendik Bygstad NITH 1.time: Noen grunnproblemer i systemutvikling 2.time:"

Liknende presentasjoner


Annonser fra Google