Föreläsning om RUP RUP – Rational Unified Process RUP är en programvaruprocess som ska på ett disciplinerat sätt se till att organisation producerar programvara med hög kvalité och på kort tid. RUP är en produkt, utvecklad och underhållen av Rational. Webb- site och bok t.ex. Ett ramverk till en utvecklings process, an anpassas efter projektets behov. T.ex. e-handel
RUP bygger på 6 utgångspunkter Erfarenhet från tidigare projekt har gett dessa utgångs punkter Iterativt Kravhantering Komponent baserad arkitektur Visuell modellering Kontinuerlig kontroll på programvarans kvalité Kontrollera ändring i programvaran.
Horisontellt: tiden, lifecycels, dynamiska aspekter Vertikalt: processer, artefakter, statiska aspekter. Användningsfalls driven process Viktigt med system arkitektur och komponentbaserad design Behov av utvecklingsverktyg som stöd för processen.
Historik 1995: Rational approach och Objectory Process 3.8 (skapades i Sverige 1987 av Jacobson på Ericsson) 1996 Rational Objektory Process 4.0 (UML 0.8) 1998 RUP 5.0 (UI design, Konfigurations och ändrings hantering UML 1.2) 2000 RUP 2000 (UML 1.4)
Beskrivning av processen Vem gör vad och när? Vem: Workers (roller) Vad: Aktivity ( definieras av olika steg: tänk steg, utförande steg, utvärderings steg) Vad: Artifacts (modeller, dokument i olika versioner) När: Workflow + Riktlinjer, Mallar/Templets, Verktygs stöd, begrepp
Viktiga begrepp i RUP
Dynamiska aspekt Faser, milestones, iterationer. Fel med vattenfalls modeller: Antar att kraven inte ändras Antar att det går att göra rätt design på papper och sedan kan implementeringen börja. Tar inte hänsyn till risker. Tar inte hänsyn till tidsskala. Producerar dokument som inte ändras. Kan ej skjuta upp vissa funktioner för att hålla tidsramen.
Faser Varje fas avslutas med en milestone, då fortsättningen, avslutandet eller ändringar avgörs. Varje fas har olika iterationer i sig med olika mål (användarfall realiserade, funktioner klara, krav satisfierade eller risker eliminerade. Fyra faser inledning, utveckling, konstruktion och överföring.
Inledning Vision av slutprodukt Verksamhets analys Omfånget av projektet Planering o krav Avslutas med lifecycle objective (LCO) milestone Meningen är att intressenterna håller med om målet och meningen med projektet. Målet är att hitta samstämmighet om definitionsområdet, kostnaden och tidsramen.
Utveckling Planera aktiviteter och resurser (personal). Systemets egenskaper och designa arkitekturen. Slutprodukten lifecycle architecture (LCA) milestone. Krav o arkitektur. Ta hand om visa tekniska risker. Utbildning. Exekverbar arkitektur.
Konstruktion Bygga produkten och värdera visionen, arkitekturen och planer. Fullständig produkt levereras till användaren. Initial operational capability (IOC) milestone. Designa och implementera.
Överföring Tillverka, leverera, träna och ge support Underhåll produkten Produkt release (PR) milestone Ändra egenskaper eller lägga till saknade element.
Arkitektur i RUP Definition: Organisering av programvaru system Vilka struktur element, dess gränssnitt och hur de interagerar. Hur de hänger ihop i ett subsystem. Systemet i kontexten slutanvändaren och organisationen. Ekonomi och sociala aspekter. Stil och estetik.
Arkitektur vyer Logisk vy Implementerings vy Process vy Driftsättnings vy Användningsfalls vy
Olika arbetsflöden Projekt hantering Verksamhets modellering Krav hantering Analys och design Imlementering Testning Konfiguration och ändrings hantering Driftsättning