Laste ned presentasjonen
Presentasjon lastes. Vennligst vent
1
Objektorientert design
In 140 Sommerville kap 12 – del 2
2
Samtidige (Concurrent objekter)
Objekter kan kjøre som parallelle prosesser (tråder) Objekter kan eksistere på separate systemer I praksis er standardinnstillingen utførelse i rekkefølge, med metoder som prosedyrekall Java inneholder støtte for tråder. Enkelt å lage parallelle prosesser To vanlige løsninger Severobjekter, som starter for å betjene et behov. Eksempel: separate systemer, utskriftstjeneste. Hensikt: Unngå venting Aktive objekter, selvstyrte tilstandsmaskiner. Hensikt: Tidsstyrt operasjon, Enklere programlogikk.
3
An active transponder object
4
OO design prosess Definer kontekst og modeller av bruk
Design system arkitektur Identifiser objekter og deres klasser Utvikle designmodeller Spesifiser objektgrensesnitt
5
Eksempel værdatasystem
Hensikt: Lage værkart fra forskjellige datakilder automatiske værstasjoner værobservatører ballonger satelitter Lagdelt arkitektur
6
System kontekst og modeller av bruk
Utvikle en forståelse av relasjonene mellom programvaren som skal utvikles og omgivelsene til systemet System kontekst Statisk modell som beskriver andre systemer i omgivelsene. Modell av bruk av systemet Beskriver hvordan systemet samhandler med omgivelsene
7
Lagdelt arkitektur
8
Subsystemer i værstasjonsystemet
9
Use-cases for en automatisk værstasjon
10
Use-case beskrivelse
11
Design modeller Design modeller viser objekter og klasser og relasjoner mellom dem Statiske modeller beskriver strukturen til systemet basert på klasser og relasjonene mellom dem Dynamiske moldeller beskriver dynamikken i objekter og/eller mellom objekter
12
Eksempler på designmodeller
Subsystem modeller Klassediagrammer Sekvensdiagrammer Tilstandsmaskinsmodeller Use-case
13
Værstasjonens arkitektur
14
Weather station object classes
15
Værstasjonens subsystemer
16
Subsystem modeller Viser hvordan designet er organisert i logiske deler (pakker) av objekter Bruker UML ”packages” for å innkapsle delsystemer. Logisk modell, kan være annerledes i programmet.
17
Sekvensdiagrammer Viser hvordan objekter samhandler
Objektene på toppen av diagrammet Vertikal tidsakse Samhandling vist med piler Bokser på tidsaksen viser at objektet er aktivt(har kontroll)
18
Sekvensdiagram for datainnsamling
19
Tilstandsdiagrammer Dynamisk modell
Viser objektets hvordan objektet endre tilstand etter interaksjon med andre objekter
20
Tilstandsdiagram for værstasjon
21
Objekt grensesnitt spesifikasjon
Bør defineres så tidlig som mulig => muliggjør parallell utvikling Ikke definer representasjon av objektet, kun grensesnittet Objektet kan ha flere grensesnitt Klassediagrammer kan være tilstrekkelig spesifikasjon, men også bruk av programmerspråk, for eksempel JAVA
22
Grensesnitt for værstasjon
23
Evolusjon av objektorienterte systemer
Lett å endre design Attributtrepresentasjon påvirker ikke designet Å endre innmaten i et objekt skal ikke påvirke andre objekter Lav kobling gjør det lett å introdusere nye objekter Arv og polymorfisme letter introduksjon av nye objekter Nye metoder kan introduseres uten å endre metodene som er der fra før.
Liknende presentasjoner
© 2024 SlidePlayer.no Inc.
All rights reserved.