Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Bendik Bygstad 2.2.07 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 2.2.07 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 2.2.07 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 2.2.07 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. 1991-99: IT-sjef: Teknologisk Institutt 1985-91: IT-konsulent: Department, konsulentfirma

3 Bendik Bygstad 2.2.07 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 2.2.07 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 2.2.07 Høgskolen i Vestfold Behovet for rammeverk for systemutvikling Litt historikk om software engineering. PeriodeUtviklingsprosessProblemer 60-tallet:Uformelle metoder NATO erklærte ”Softwarekrisen” i 1968. 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. 2000 -Ulike rammeverk: RUP, XP, Scrum, DSDM etc Fremdeles mange mislykkede prosjekter…

6 Bendik Bygstad 2.2.07 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 2.2.07 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 2.2.07 Høgskolen i Vestfold Hvilke metoder brukes i Norge? Kilde: Bygstad, B., Ghinea, G., Brevik, E.(2006) "Systems Development Methods and Usability. An Industrial Perspective". Nokobit, Molde. Method 2006 20032002 Own method68%78 %79 % RUP29% 23 % XP/Agile methods18%21 %17 % MSF29%19 %21 % OPEN0%11 %0 % PSO0%7 %21 % Other methods19%10 %13 %

9 Bendik Bygstad 2.2.07 Høgskolen i Vestfold Hva kjennetegner ’egen metode’? Egen metode Formelle metoder Iterativ type55 %43 % Vannfalls-type30 %23 % Annet10 %7 % Vet ikke5 %

10 Bendik Bygstad 2.2.07 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 2.2.07 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 2.2.07 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 2.2.07 Høgskolen i Vestfold Hovedstruktur i RUP-prosjekt

14 Bendik Bygstad 2.2.07 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

15 Bendik Bygstad 2.2.07 Høgskolen i Vestfold ”Agile RUP”


Laste ned ppt "Bendik Bygstad 2.2.07 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