01.10.02 UML & object models av gruppe 8 Presenteres av : Hege-Kristin Johansen Herman Kolås Resten av gruppen : Marit Finden Marianne Ates Tom Vidar Lunde André Johansen Jonas Lillevold
UML Unified Modeling Language Modellerings-språk som brukes til planlegging av programmmer Brukes til å beskrive program/system : både beskrivelse av klasser og hvordan ulike instanser virker UML er generell UML er uavhengig av språk som skal brukes i implementeringen UML deles inn i diagrammer
UML- diagrammer Typiske UML-diagrammer Use Case diagram Class diagram State diagram Pakke diagrammer Interaction diagram - 2 typer - Sequence diagram - Collaboration diagram Component diagram Deployment diagram Activity diagram
Requirements Design Coding UML bruker case-beskrivelser og diagrammer UML Activity diagrams UML State diagrams UML Pakke diagrams Object models Status Requirements Specification UML Component diagrams UML Class diagrams UML Object diagrams Scenarioer Class structure Interaction UML Sequence diagrams UML Collaboration diagrams UML Deploymentdiagrams Arbeidsflyt diagrammer Klasse definisjoner og relasjoner * UML brukt i utviklingsprosessen
UML-diagrammer Use Case diagram Forklarer spesielle funksjonaliteter systemet har til hensikt å utføre ved å modellere dialogen mellom bruker, eksterne systemer, og andre entiteter i utviklingsprosessen. Use-case navn Aktør navn Assosiasjon (navn)
UML-diagrammer Class diagram beskriver type objekter og deres statiske relasjoner. Egentlig vil vi skildre assosiasjoner mellom objekter og relasjoner mellom typer-subtyper. Diagrammene skal illustrere egenskapene : for hvert objekt for objektenes individuelle oppførsel restriksjoner på hver klasse eller objekt
UML-diagrammer Class diagram - notasjon Assosiasjon Komposisjon Aggregering Avhengighet Navigering
UML-diagrammer Class diagram Klasse Assosiation Classes Selger Klassenavn Egenskap Egenskap : data_type Egenskap : data_type=int_value … Operation Operation(arg_list) : resultat_type Selger 1 motta 1..* 1 inkluderer har Bestilling Bestilt produkt Kunde
UML-diagrammer State diagram viser den mulige statusen et objekt kan ta. [ time<= 7 ] 2. viser handlingen som utløser transaksjonen fra en status til den neste. Autorisering Autorisert 3. viser ”actions” som kommer fra enhver status endring. [ Betaling ok ] [ Betaling ikke ok ] Anskaffelse / kjøpe Avvist Start Stopp
UML-diagrammer Pakke diagram Viser systemet som små pakker, som igjen kan utvikle seg til et større sett av klasser Eksternt System 2. Viser avhengigheten mellom klassene Produkt 3. Hjelper oss til å forstå avhengighet og lage våre tester deretter. Vedlikehold Kunder
UML-diagrammer Pakke diagram 1 0 ..1 Parkering pris Vedlikehold rabatt_pro pris( ) Vedlikehold av bil liter Parkerings-plass sted er_ledig( )
UML-diagrammer Interaction diagram Blir brukt til å beskrive hvordan operasjoner og oppførsel blir håndtert av objektene i designen. 2 typer : Sequence Diagram Collaboration Diagram
UML-diagrammer Sequence diagram 5. Operation (parameter liste) 1. event 2.operation 3.operation (parameter liste) 4. Operation (parameter liste) Object 1: Class name Object 2: Object 3: : Class name Actor name: Actor Class ”Script text” Mer ”script text” 5. Operation (parameter liste)
UML-diagrammer Collaboration diagram Kunde Parkeringsplass Kjøpe 3. parkering_paa(sted) 4. ny_anskaffelse( kunde, parkering, dato, sted) Parkeringsplass Kjøpe 2. neste_ledig( ) 5. ny_parkering( kunde, sted) Bensinstasjon Parkering
UML-diagrammer Component diagram Deployment diagram Komponent 1 Komponent 2 Navn på link Node 1 Node 2 Deployment diagram
UML-diagrammer Activity diagram Til å modellere flyten av prosedyrene og aktivitetene i en klasse. Når tilstanden blir brukt til å avgjøre hvilke aktiviteter som skal påkalles, vil aktivitets diagrammet bruke en decision-node til å representere valgene.
UML-diagrammer Activity diagram Aktivitet A Aktivitet B Aktivitet C Output X Aktivitet A Aktivitet B Aktivitet C Aktivitet D
UML-oppsummering UML brukes for å gjøre det lettere å kontrollere objektene, klassene og handlingene. Ved å bruke UML-notasjon kan vi visualisere relasjonene i systemet. UML er uavhengig av implementeringsspråk.