De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Object geOrienteerd Software-ontwerp - 6

Verwante presentaties


Presentatie over: "Object geOrienteerd Software-ontwerp - 6"— Transcript van de presentatie:

1 Object geOrienteerd Software-ontwerp - 6
Toestandsdiagram To do

2 Toestandsdiagram Voor één enkel object
Bij een klasse waarvan de objecten in verschillende toestanden kunnen verkeren! OOS: zoek 1 geschikte klasse in jullie package en teken een toestandsdiagram. Zoek info en voeg toe aan ‘bewijsmateriaal’

3 Voorbeeld: telefoon

4 Notatie begintoestand eindtoestand (algemene) toestand
event: gebeurtenis transition: overgang guards: [boolean] automatische overgang acties: / overgang, entry, exit activiteit toestandsnaam event [voorwaarde] event [voorwaarde] event / actie toestandsnaam do/activiteit

5 Ontwerp van toestandsdiagram
Mogelijke events Mogelijke toestanden Wat is de invloed van elk event op elke toestand Guards en automatische transities

6 Opdracht 1 Toilet met een spoel- en spaarknop. Het indrukken van de spoelknop heeft tot effect dat het waterreservoir leegloopt. Het indrukken van de spaarknop breekt het leeglopen van het reservoir af. Zodra de uitloop vanuit het reservoir stopt wordt hij aangevuld totdat hij weer vol zit. Ontwerp een toestandsdiagram voor dit toilet.

7 Overgangsmatrix ↓van naar→ vollopend leeglopend vol spoelen [isVol]
[isLeeg] of afbreken -

8 Opdracht 2 Op een veiling worden kavels bij opbod verkocht. Elke veiling kent een minimumbod. Een veiling eindigt zodra er na een vooraf vastgestelde tijd geen voldoende hoger bod is uitgebracht. Ontwerp een toestandsdiagram voor een veiling.

9 Opdracht 3 Bij een internetspel kunnen ingelogde spelers in de lobby chatten, óf aan maximaal een spel deelnemen, óf naar maximaal een spel kijken. Ontwerp een toestandsdiagram voor een speler.

10 Analyseresultaten toestandsdiagram
events  methoden guards  precondities activiteiten  threads entry-actie  constructor subtype versus toestand

11 Dynamische classificatie
Exemplaar leenUit(Lid) komtTerug() legApart() Aanwezig Uitgeleend Beschikbaar

12 <<abstract>>
State Pattern <<abstract>> ToestandVan Exemplaar Exemplaar leenUit(Lid) komtTerug() legApart() 1 state leenUit(Lid) komtTerug() legApart() Beschikbaar Uitgeleend Aanwezig

13 To do Toestandsdiagram voor 1 klasse
Voltooien View- en andere GUI-klassen Week 7 demo Week 8 individuele beoordeling Inleveren op papier: Klassendiagram Broncode domeinmodel Broncode van jouw GUI-deel Jouw sequencediagram


Download ppt "Object geOrienteerd Software-ontwerp - 6"

Verwante presentaties


Ads door Google