Inleiding UML Inleiding Use cases Klassen Processen Autorisaties
- Slides: 156
Inleiding UML Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Doel van de cursus Inleiding Use cases • Helder beeld van te bouwen software • Hierover eenduidig communiceren Klassen Processen Middel: Plaatje zegt meer dan 1000 woorden Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Onderwerp van de oefeningen Inleiding Use cases Oefeningen realistisch en levendig maken, dus: Klassen Processen Autorisaties Toestanden • Kies software die uw organisatie wil (laten) realiseren Schermen Logica Koppelen Realisatie Inleiding UML • Gebruik dit als voorbeeld in alle oefeningen in deze cursus Hendrik Jan van Randen
Voorstelrondje • Hoe heet je? Inleiding Use cases Klassen • Voor welke organisatie werk je? Processen Autorisaties Toestanden • Wat is je rol in deze organisatie? Schermen Logica Koppelen • Wat wil je met deze cursus bereiken? Realisatie Inleiding UML • Welk onderwerp gebruik je als voorbeeld? Hendrik Jan van Randen
Boek Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
UML Inleiding Unified Modeling Language Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Use case diagram Inleiding Overzicht geven Use cases winkelwagen vullen Klassen Processen inkoper Autorisaties bestelling betalen werkwoord Toestanden Schermen Logica Koppelen blz 12 product manager magazijnmedewerker producten beheren boven elkaar bestelling versturen use cases rechts Realisatie Inleiding UML Hendrik Jan van Randen
Systeem actor blz 13 Inleiding Use cases Klassen Processen bestelling betalen inkoper ERP systeem winkelwage n vullen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Secondary actor blz 13 Inleiding Use cases Klassen Processen bestelling betalen i. Deal van bank inkoper ERP systeem winkelwage n vullen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Organisaties blz 14 bestelling betalen Use cases Klassen klant Inleiding inkoper ERP systeem Processen i. Deal van bank winkelwage n vullen Autorisaties Toestanden Logica Koppelen Realisatie Inleiding UML leverancier Schermen product manager magazijnmedewerker producten beheren bestelling versturen Hendrik Jan van Randen
Detailleren - Overerving blz 15 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica klant financiële transactie uitvoeren Koppelen Realisatie Inleiding UML geld opnemen geld overmaken geld storten Hendrik Jan van Randen
Stereotype «include» blz 16 bestelling betalen Inleiding Use cases Klassen Processen inkoper ERP systeem Autorisaties Logica Inleiding UML «include» Schermen Realisatie winkelwage n vullen product zoeken Toestanden Koppelen i. Deal van bank product manager magazijnmedewerker «include» producten beheren bestelling versturen Hendrik Jan van Randen
Vragen? Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Oefening voor use cases Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen blz 17 Maak voor deze eerste oefening een use case diagram met daarin: Een actor (draadpoppetje) voor elke gebruikersrol die een menselijke gebruiker van het systeem kan hebben. Een use case voor elke handeling die de gebruikers kunnen uitvoeren. Pijlen die aangeven welke actoren welke use cases kunnen uitvoeren. Eventuele systeem actoren en secondary actoren. Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Klassendiagram blz 18 Inleiding Use cases Klassen • Doel: aangeven welke gegevens rol spelen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Klasse blz 18 Inleiding Use cases Klassen klant bestelling product Processen Autorisaties Toestanden Schermen Logica Koppelen Klassenaam is altijd enkelvoud Realisatie Inleiding UML Hendrik Jan van Randen
Object (instantie) blz 19 Inleiding Use cases Klassen klant bestelling product Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Attribuut Inleiding Use cases Klassen Processen klant naam straat huisnummertoevoeging postcode plaats bestelling nummer status besteld op blz 19 product naam prijs incl. BTW Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Kleine letters, tenzij taalkundig altijd met hoofdletter Hendrik Jan van Randen
Attribuuttype blz 20 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen klant naam : string straat : string huisnummer : integer huisnummertoevoeging : string postcode : string plaats : string telefoonnummer : string bestelling nummer : integer status : process besteld op : datetime product naam : string prijs incl. BTW : amount in € Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Veelgebruikte attribuuttypen Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen amount in € boolean datetime of timestamp float integer password process geldbedrag in de genoemde valuta ja of nee datum en tijd string time tekst tijdstip (zonder datum) blz 20 getal dat cijfers achter de komma kan bevatten geheel getal versleuteld wachtwoord (bedrijfs)proces, zoals verderop in dit boek beschreven. Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Telefoonnummer blz 21 Inleiding Use cases Klassen klant Processen Autorisaties telefoonnummer : string Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Verplichte en optionele attributen blz 21 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen persoon voornaam : string [0. . 1] tussenvoegsel : string [0. . 1] achternaam : string straat : string huisnummer : integer huisnummertoevoeging : string [0. . 1] postcode : string plaats : string bestelling nummer : integer status : process besteld op : datetime [0. . 1] product naam : string prijs incl. BTW : amount in € Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Enumeratie persoon Inleiding Use cases Klassen Processen blz 22 bestelling voornaam : string [0. . 1] tussenvoegsel : string [0. . 1] achternaam : string geslacht : geslacht [0. . 1] straat : string huisnummer : integer huisnummertoevoeging : string [0. . 1] postcode : string plaats : string privilegeniveau : privilegeniveau nummer : integer status : process besteld op : datetime [0. . 1] product naam : string prijs incl. BTW : amount in € Autorisaties Toestanden Schermen Logica «enumeration» geslacht man vrouw «enumeration» privilegeniveau brons zilver goud Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Operatie blz 23 Inleiding rectangle Use cases Klassen Processen Autorisaties left : integer top : integer right : integer bottom : integer calculate. Surface() : integer move(delta. X : integer, delta. Y : integer) : void Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Associatie klant bestelling blz 23 product Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Multipliciteit klant product bestelling 1 Inleiding blz 24 * * * Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML 1 precies 1 0. . 1 0 of 1 * 0 of meer 1. . * 1 of meer Hendrik Jan van Randen
Voorkom kip-en-ei problemen Inleiding klant Use cases blz 25 bestelling 1 1. . * Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen klant bestelling 1 * Realisatie Inleiding UML Hendrik Jan van Randen
Tussenklasse blz 26 Inleiding Use cases klant Klassen bestelling 1 * Processen Autorisaties 1 Toestanden Schermen Logica * bestelregel product 1 aantal : integer * Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Composiet blz 27 Inleiding Use cases klant bestelling 1 Klassen * Processen Autorisaties Toestanden Schermen Logica * product bestelregel 1 aantal : integer * Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Aggregatie klant blz 28 bestelling * Inleiding Use cases Klassen Processen Autorisaties Toestanden * product bestelregel 1 aantal : integer * Schermen Logica Koppelen Klant met bestellingen verwijderen? Realisatie Wilt u deze klant inclusief zijn 5 bestellingen verwijderen? Inleiding UML Verwijderen Annuleren Hendrik Jan van Randen
Associatieklasse blz 29 Inleiding Use cases Klassen product * * bestelling Processen Autorisaties bestelregel aantal : integer Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Navigeerbaarheid blz 29 Inleiding Use cases Klassen klant Processen 1 * bestelling Autorisaties * Toestanden Schermen product 1 bestelregel * Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Naam van associatie-einde Inleiding klant blz 30 bestelling Use cases * Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML van vervoer * * 1 1 plaats naam : string naar Hendrik Jan van Randen
Referentieklasse blz 31 Enumeratie: Inleiding Use cases klant «enumeration» privilegeniveau Klassen Processen brons zilver goud privilegeniveau : privilegeniveau Autorisaties Toestanden Schermen Logica Referentieklasse: Koppelen Realisatie Inleiding UML klant * 1 privilegeniveau naam : string Hendrik Jan van Randen
Eenvoud of flexibiliteit blz 32 Enumeratie: Inleiding Use cases klant «enumeration» privilegeniveau Klassen Processen brons zilver goud privilegeniveau : privilegeniveau Autorisaties Toestanden Schermen Logica Referentieklasse: Koppelen Realisatie Inleiding UML klant * 1 privilegeniveau naam : string Hendrik Jan van Randen
Afgeleid attribuut blz 33 Inleiding Use cases klant Klassen bestelling 1 Processen * /totaalbedrag bestelling incl. BTW : amount in € Autorisaties Toestanden Schermen Logica Koppelen * product bestelregel 1 aantal : integer * prijs per stuk incl. btw : amount in € /totaalbedrag bestelregel incl. BTW: amount in € Realisatie Inleiding UML Hendrik Jan van Randen
Overerving blz 34 Inleiding Use cases Klassen Processen «enumeration» bedgrootte king size queen size budget size boekingsregel aantal personen : integer totaalprijs incl. btw: amount in € boeking * Autorisaties van Toestanden Schermen Logica Koppelen Realisatie Inleiding UML hotelovernachting vervoer bedgrootte : bedgrootte ontbijt : boolean «enumeration» vliegklasse business economy vliegreis * 1 naar plaats naam : string busreis klasse : vliegklasse Hendrik Jan van Randen
Gebruikersrollen modelleren Boolean attribuut voor elke rol blz 35 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen gebruiker is inkoper : boolean is magazijnmedewerker : boolean is verkoper : boolean is productbeheerder : boolean Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Gebruikersrollen modelleren Eigenschap voor een bepaalde rol blz 36 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen gebruiker is inkoper : boolean is magazijnmedewerker : boolean is verkoper : boolean is productbeheerder : boolean bestelling * Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Gebruikersrollen modelleren Eigenschap voor een bepaalde rol blz 36 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen gebruiker /is inkoper : boolean is magazijnmedewerker : boolean is verkoper : boolean is productbeheerder : boolean «role» klant 0. . 1 bestelling * Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Gebruikersrollen modelleren Flexibel blz 37 Inleiding Use cases Klassen gebruiker Processen Autorisaties * Toestanden Schermen Logica rol naam : string * Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Gebruikersrollen modelleren Flexibel blz 37 Inleiding Use cases Klassen gebruiker Processen Autorisaties Toestanden Schermen Logica * roltoewijzing rol naam : string 1 * van : datetime tot : datetime [0. . 1] Koppelen Realisatie Inleiding UML dynamisch getypeerd Hendrik Jan van Randen
Vragen? blz 38 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Klassen en database-ontwerp blz 41 Inleiding Use cases Klassen Processen Database ontwerp: Entiteiten Relaties Diagram Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Vertaling klassen naar database ontwerp: Object Relational Mapping Hendrik Jan van Randen
ORM: klasse Inleiding klassendiagram: Use cases Klassen Processen Autorisaties blz 41 database-ontwerp: persoon voornaam : string tussenvoegsel : string [0. . 1] achternaam : string persoon id (PK, int, not null) voornaam (varchar, not null) tussenvoegsel (varchar, null) achternaam (varchar, not null) product naam : string prijs incl. BTW: amount in € product id (PK, int, not null) naam (varchar, not null) prijsincbtwineuro (decimal, not null) Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
ORM: Een op veel associatie Inleiding klassendiagram: database-ontwerp: klant id (PK, int, not null) blz 42 Use cases Klassen Processen Autorisaties Toestanden Schermen Logica 1 * bestelling id (PK, int, not null) klantid (FK, int, not null) Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
ORM: Veel op veel associatie Inleiding klassendiagram: blz 42 database-ontwerp: Use cases student id (PK, int, not null) Klassen Processen Autorisaties Toestanden Schermen Logica student * * les id (PK, int, not null) les student_les studentid (PK, FK, int, not null) lesid (PK, FK, int, not null) Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
1 op 1 associatie - foreign key blz 43 Inleiding Use cases Klassen klassendiagram: bestelling database-ontwerp: bestelling id (PK, int, not null) Processen Autorisaties Toestanden Schermen 1 0. . 1 factuur id (PK, FK, int, not null) Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
1 op 1 associatie – 1 tabel Inleiding Use cases Klassen klassendiagram: Toestanden database-ontwerp: bestelling Processen Autorisaties blz 43 1 0. . 1 factuur bestellingenfactuur id (PK, int, not null) Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
ORM: Overerving - Delegate blz 44 Inleiding Use cases Klassen Processen klassendiagram: boekingsregel prijs inc. BTW database-ontwerp: boekingsregel id (PK, not null) prijsincbtw Autorisaties Toestanden Schermen Logica overnachting bedgrootte vervoer afstand overnachting id (PK, FK, not null) bedgrootte vervoer id (PK, FK, not null) afstand Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
ORM: Overerving - Roll Down blz 45 Inleiding Use cases Klassen Processen klassendiagram: boekingsregel prijs inc. BTW Autorisaties Toestanden Schermen database-ontwerp: overnachting bedgrootte vervoer afstand overnachting id (PK) prijsincbtw bedgrootte vervoer id (PK) prijsincbtw afstand Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
ORM: Overerving - Roll Up blz 45 Inleiding Use cases Klassen Processen klassendiagram: database-ontwerp: boekingsregel prijs inc. BTW boekingsregel id (PK) type prijsincbtw bedgrootte afstand Autorisaties Toestanden Schermen overnachting bedgrootte vervoer afstand Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
blz 46 ORM: Enumeratie – Naam literal Inleiding klassendiagram: Use cases Klassen database-ontwerp: klant privilegeniveau: privilegeniveau id (PK, int, not null) privilegeniveau (varchar, not null) Processen Autorisaties Toestanden Schermen Logica «enumeration» privilegeniveau brons zilver goud Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
ORM: Enumeratie - Afkorting blz 46 Inleiding klassendiagram: Use cases Klassen klant privilegeniveau: privilegeniveau Processen database-ontwerp: klant id (PK, int, not null) privilegeniveau (varchar, not null) Autorisaties Toestanden Schermen «enumeration» privilegeniveau brons zilver goud Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
ORM: Enumeratie Referentietabel Inleiding klassendiagram: Use cases Klassen klant privilegeniveau: privilegeniveau Processen blz 47 database-ontwerp: klant id (PK, int, not null) privilegeniveau (FK, int, not null) Autorisaties Toestanden Schermen Logica «enumeration» privilegeniveau brons zilver goud privilegeniveau id(PK, int, not null) naam (varchar, not null) Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
ORM: Enumeratie – Referentietabel met afkorting blz 47 Inleiding klassendiagram: Use cases Klassen database-ontwerp: klant privilegeniveau: privilegeniveau id (PK, int, not null) privilegeniveau (FK, varchar, not null) Processen Autorisaties Toestanden Schermen Logica «enumeration» privilegeniveau brons zilver goud privilegeniveau afkorting (PK, varchar, not null) naam (varchar, not null) Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Waarom klassendiagram? Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML blz 48 • Meer grafisch: • Overerving en abstractheid • Composieten • Afgeleide attributen • Enumeraties • Speciale attribuuttypen zoals valuta • ORM keuzen overerving en enumeraties niet nodig • Compacter want geen • Koppeltabellen • Primary keys en foreign keys Hendrik Jan van Randen
Vragen? Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Oefening Klassendiagram Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML • Maak klassendiagram met: • Klassen • Associaties • Multipliciteiten • Attributen • Indien nodig: Overerving • Verdeel de klassen evenwichtig over het diagram, zodat de letters zo groot mogelijk kunnen zijn! Hendrik Jan van Randen
Processen d. m. v. Activity Diagram blz 49 Inleiding Use cases Klassen Processen • Doel: Laten zien welke processen de objecten van een klasse doorlopen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Activity Diagram proces van bestelling: bestelling Inleiding Use cases inkoper magazijnmedewerker status : process winkelwagen Klassen bestellen Processen Autorisaties te betalen Toestanden Schermen blz 49 blz 50 eindstatus betalen… betaald versturen… Logica verstuurd Koppelen inkomende status Realisatie Inleiding UML beginstatus uitgaande status activiteit bronactiviteit status doelactiviteit Hendrik Jan van Randen
Inleiding Use cases Klassen leverancier Activities in use case diagram product manager magazijnmedewerker producten beheren proces van bestelling: inkoper magazijnmedewerker bestelling versturen… winkelwagen Processen Autorisaties winkelwagen vullen. . . Toestanden te betalen Schermen winkelwagen vullen Koppelen Realisatie Inleiding UML klant Logica betalen… betaald versturen… inkoper ERP systeem verstuurd bestelling betalen… i. Deal van bank Hendrik Jan van Randen
Voorwaarde bij handmatige activiteit proces van bestelling: Inleiding Use cases Klassen bestelling Logica magazijnmedewerker winkelwagen Autorisaties Schermen inkoper status : process Processen Toestanden blz 52 * bestelregel winkelwagen vullen. . . [aantal bestelregels > 0] te betalen… betaald versturen… Koppelen Realisatie Inleiding UML verstuurd Hendrik Jan van Randen
Automatische Keuze Inleiding aanvraag status : process Use cases Klassen Autorisaties Logica Koppelen nieuw aanvragen gereed melden Realisatie Inleiding UML medewerker leasemaatschappij afgekeurd Toestanden Schermen proces van aanvraag: garagebedrijf Processen blz 53 aangevraagd afkeuren [automatisch afgewezen] handmatig te beoordelen… [automatisch akkoord] goedgekeurd goedkeuren gereed gemeld Hendrik Jan van Randen
Handmatige Keuze – zelfde inkomende status Inleiding aanvraag status : process Use cases Klassen Autorisaties Logica Koppelen nieuw [automatisch afgewezen] gereed melden afkeuren handmatig beoordelen te beoordelen aanvragen Realisatie Inleiding UML medewerker leasemaatschappij afgekeurd Toestanden Schermen proces van aanvraag: garagebedrijf Processen blz 54 [automatisch akkoord] goedgekeurd bezig met beoordelen goedkeuren gereed gemeld Hendrik Jan van Randen
Handmatige Keuze – meer uitgaande statussen Inleiding aanvraag status : process proces van aanvraag: Use cases Klassen garagebedrijf medewerker leasemaatschappij Processen Autorisaties afgekeurd nieuw Toestanden Schermen Logica Koppelen aanvragen aangevraagd gereed melden Realisatie Inleiding UML blz 55 [automatisch afgewezen] afkeuren handmatig te beoordelen… [automatisch akkoord] goedgekeurd goedkeuren gereed gemeld Hendrik Jan van Randen
Activiteit die enige tijd duurt Inleiding aanvraag status : process «takes some time» activiteit garagebedrijf medewerker leasemaatschappij Processen Autorisaties afgekeurd nieuw Toestanden Schermen Logica Koppelen aanvragen aangevraagd gereed melden Realisatie Inleiding UML activiteit. . . proces van aanvraag: Use cases Klassen blz 56 [automatisch afgewezen] afkeuren handmatig te beoordelen… [automatisch akkoord] goedgekeurd goedkeuren gereed gemeld Hendrik Jan van Randen
factuur proces van factuur: 0. . 1 1 boekhoudsysteem Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica versturen te betalen naar klant Inleiding UML debiteurenbeheerder betaling koppelen blz 57 betaald na 1 week betalingsherinnering versturen betalingsherinnering verstuurd na 10 werkdagen aanmaning versturen Koppelen Realisatie Timer betaling aanmaning verstuurd incassoburo inschakelen… incassoburo ingeschakeld incassobureau in te schakelen na 1 week debiteur gebeld na 6 werkdagen debiteur te bellen debiteur bellen… Hendrik Jan van Randen
Activiteit zonder inkomende pijl factuur proces van factuur: boekhoudsysteem Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica versturen te betalen naar klant Inleiding UML debiteurenbeheerder betaling koppelen 0. . 1 betaling blz 58 betaald na 1 week betalingsherinnering versturen betalingsherinnering verstuurd na 10 werkdagen aanmaning versturen Koppelen Realisatie 1 aanmaning verstuurd incassoburo inschakelen… incassoburo ingeschakeld incassobureau in te schakelen na 1 week debiteur gebeld na 6 werkdagen debiteur te bellen debiteur bellen… Hendrik Jan van Randen
Parallelle activiteiten Inleiding blz 59 bestelling Use cases Processen Autorisaties te versturen winkelwagen bestelling versturen… Toestanden Koppelen Realisatie Inleiding UML factuur versturen te betalen Logica bestellen te factureren Schermen magazijnmedewerker betaling koppelen afgehandeld proces van bestelling: inkoper verstuurd Klassen betaald Hendrik Jan van Randen
Eenvoudig subproces in zelfde diagram blz 60 Inleiding bestelling 0. . 1 1 factuur Use cases proces van bestelling: Klassen te versturen winkelwagen bestelling versturen… Toestanden Koppelen Realisatie Inleiding UML proces van factuur: factuur versturen te betalen Logica bestellen te factureren Schermen betaling koppelen afgehandeld Autorisaties magazijnmedewerker verstuurd Processen inkoper betaald Hendrik Jan van Randen
Apart subproces Inleiding bestelling 1 0. . 1 blz 61 factuur Use cases proces van bestelling: Processen Autorisaties winkelwagen te versturen bestelling versturen… Toestanden Schermen Logica magazijnmedewerker bestellen te factureren «subproces» proces van factuur betaald afgehandeld inkoper verstuurd Klassen Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Signaal blz 62 signaal Inleiding proces van bestelling: Use cases Klassen winkelwagen Processen Autorisaties Toestanden Schermen Logica Koppelen bestelling 1 0. . 1 factuur afgehandeld magazijnmedewerker inkoper te besteld factuur versturen bestellen creëren factuur is betaald bestelling verstuurd versturen… betaald proces van factuur: te factureren factuur te betalen versturen betaling koppelen factuur is betaald Realisatie Inleiding UML Hendrik Jan van Randen
Signaal accepteren bij bepaalde status blz 63 Inleiding proces van bestelling: Use cases Klassen winkelwagen Processen Autorisaties Toestanden Schermen Logica Koppelen bestelling 1 0. . 1 factuur afgehandeld magazijnmedewerker inkoper te besteld factuur versturen bestellen creëren factuur is betaald bestelling verstuurd versturen… betaald proces van factuur: te factureren factuur te betalen versturen betaling koppelen factuur is betaald Realisatie Inleiding UML Hendrik Jan van Randen
Signaal accepteren onafhankelijk van de status proces van factuur: factuur 1 0. . 1 betaling blz 64 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica versturen te betalen naar klant na 1 week betalingsherinnering versturen na 10 werkdagen aanmaning versturen Inleiding UML factuur is betaald debiteurenbeheerder betalingsherinnering verstuurd Koppelen Realisatie betaling gekoppeld aanmaning verstuurd na 6 werkdagen incassoburo inschakelen… betaald incassoburo ingeschakeld incassobureau in te schakelen na 1 week debiteur gebeld debiteur te bellen debiteur bellen… Hendrik Jan van Randen
Activiteit meerdere inkomende pijlen Inleiding aanvraag status : process proces van aanvraag: Use cases Klassen garagebedrijf medewerker leasemaatschappij Processen Autorisaties afgekeurd nieuw Toestanden Schermen Logica Koppelen aanvragen aangevraagd gereed melden Realisatie Inleiding UML blz 66 afkeuren [automatisch afgewezen] handmatig te beoordelen… [automatisch akkoord] goedgekeurd goedkeuren gereed gemeld Hendrik Jan van Randen
Schermstroom komt later Use cases Inlogscherm Inloggen «popup» login incorrect Klassen Processen Autorisaties Uitloggen Inleiding [gebruikersnaam en wachtwoord zijn correct] «pseudostate» menubalk Toestanden Schermen Producten Logica Koppelen Realisatie Inleiding UML «popup» Nieuw product «popup» Product Klanten «popup» Klant Bestellingen «popup» Bestelling Hendrik Jan van Randen
Read, Update, Delete komt later Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Vragen? blz 67 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
blz 69 Oefening voor Activiteitendiagram Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML • Inventariseer van welke klassen in uw applicatie de objecten een bedrijfsproces doorlopen • Teken voor elk van deze klassen: • voor elke gebruikersrol die in het proces iets doet een zwembaan • de activiteiten • tussen deze activiteiten de statussen in de vorm van pijlen Hendrik Jan van Randen
Een consistente applicatie blz 70 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
De alomtegenwoordige taal blz 70 Onduidelijke attributen: Inleiding Use cases Klassen persoon naam : string adres : string product naam : string prijs : amount Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Duidelijke attributen: persoon voornaam : string [0. . 1] tussenvoegsel : string [0. . 1] achternaam : string straat : string huisnummer : integer huisnummertoevoeging : string [0. . 1] postcode : string plaats : string product naam : string prijs incl. btw: amount in € Hendrik Jan van Randen
Conceptuele integriteit Inleiding blz 71 bestelling Use cases proces van bestelling: Klassen bestelling versturen… te versturen winkelwagen Toestanden Koppelen Realisatie Inleiding UML factuur versturen te betalen Logica bestellen te factureren Schermen betaling koppelen afgehandeld Autorisaties magazijnmedewerker inkoper verstuurd Processen betaald Hendrik Jan van Randen
Moment van voorwaarde afdwingen - blz 72 Inleiding Use cases Klassen Altijd en direct Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Moment voorwaarde afdwingen Vóór het opslaan blz 72 bestelling 1. . * bestelregel Inleiding Use cases Klassen Processen proces van bestelling: inkoper magazijnmedewerker Autorisaties Toestanden Schermen Logica winkelwagen vullen te betalen Koppelen Realisatie Inleiding UML betalen… betaald versturen… verstuurd Hendrik Jan van Randen
blz 73 Moment voorwaarde afdwingen Vóór verwerking Inleiding proces van bestelling: Use cases Klassen Processen inkoper status : process Autorisaties Logica Koppelen winkelwagen vullen [aantal bestelregels > 0] Toestanden Schermen magazijnmedewerker bestelling * bestelregel te betalen… betaald versturen… Realisatie Inleiding UML verstuurd Hendrik Jan van Randen
Rollen & Autorisaties blz 75 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Doel: • Aangeven welke rollen gebruikers kunnen hebben, • en wat deze gebruikers kunnen (mogen) doen. Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Zwembaan Inleiding Use cases Klassen bestelling Logica inkoper magazijnmedewerker winkelwagen Autorisaties Schermen proces van bestelling: status : process Processen Toestanden blz 75 bestellen * te betalen bestelregel betalen… betaald versturen… Koppelen Realisatie Inleiding UML verstuurd Hendrik Jan van Randen
CRUD-matrix blz 76 ng li el st be Use cases Klassen klant Inleiding b l ge t uc d ro p bestelling betalen R current R winkelwage n vullen CRUD own R producten beheren R org bestelling versturen R current g lin a et b C current inkoper ERP systeem Processen t es re el Autorisaties Schermen Logica Koppelen leverancier Toestanden CRUD org R org product manager magazijnmedewerker R current Realisatie Inleiding UML Hendrik Jan van Randen
Attributen in een CRUD-matrix blz 77 li el st be Inleiding Klassen Processen klant Use cases re el t es b bestelling betalen R current winkelwage n vullen CRUD own producten beheren R org bestelling versturen R current l s rij p R R current g lin t uc d ro p R a et b C current inkoper ERP systeem Autorisaties ge ng R own R R org CRUD org Schermen Logica Koppelen Realisatie Inleiding UML leverancier Toestanden R org product manager magazijnmedewerker R current Hendrik Jan van Randen
Associaties in een CRUD-matrix blz 78 Inleiding Use cases Klassen Autorisaties Toestanden Schermen n ar va na ts aa pl vervoer boeken CR D own RU own R reizen beheren R org CRUD org reiziger reisbureau Processen er vo r ve product manager Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Status-attribuut conform zwembaan in proces blz 79 Inleiding proces van bestelling: Use cases Klassen inkoper magazijnmedewerker Processen Autorisaties Toestanden Schermen status : process winkelwagen bestellen te betalen Logica Koppelen bestelling betalen… betaald versturen… Realisatie Inleiding UML verstuurd Hendrik Jan van Randen
Objecten verwijderen blz 79 Inleiding Use cases Klassen Als sterk status-afhankelijk: Processen Autorisaties verwijderen Toestanden Schermen Logica verwijderd Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Overzicht rollen en autorisaties blz 80 ng li el st be Inleiding klant Use cases Klassen b l ge t uc d ro p bestelling betalen R current R winkelwage n vullen CRUD own R g lin a et b C current inkoper ERP systeem Processen t es re el Autorisaties Toestanden Schermen verwijderen Logica Koppelen ingangsstatus Realisatie Inleiding UML zwembaan uitgangsstatus activiteit verwijderd Hendrik Jan van Randen
Vragen? blz 80 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Oefening Rollen & Autorisaties blz 81 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen • Maak CRUD matrix voor uw applicatie • Waar nodig, aparte kolommen voor attributen en associaties • Onderscheid own / current / org • Als andere beperkingen, voetnoten Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Statussen weergeven in een toestandsdiagram Inleiding Use cases Startovergang Klassen Processen Autorisaties blz 82 bronstatus overgang inkomende overgang doelstatus uitgaande overgang Toestanden Schermen Logica Eindstatus Koppelen Realisatie Inleiding UML [voorwaarde] Hendrik Jan van Randen
Toestandsdiagram blz 82 Inleiding Use cases Klassen Processen Autorisaties bestelling statussen van bestelling: status : process Toestanden Schermen Logica Koppelen winkelwagen vullen. . . te betalen… betaald Realisatie Inleiding UML versturen… verstuurd Hendrik Jan van Randen
bestelling status : process Toestandsdiagram versus activiteitendiagram Inleiding statussen van bestelling: blz 83 proces van bestelling: Use cases inkoper magazijnmedewerker Klassen Processen winkelwagen Autorisaties winkelwagen vullen. . . Toestanden Schermen te betalen… Logica betalen… betaald versturen… Koppelen Realisatie Inleiding UML te betalen… betaald versturen… verstuurd Hendrik Jan van Randen
Gebruikersinterface weergeven in een schermstroomdiagram Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica blz 84 Doel: • Aangeven hoe gebruiker tussen de schermen van de applicatie navigeert Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Schermstroomdiagram blz 84 Schermstroom van productbeheerder: Use cases Inlogscherm Inloggen «popup» login incorrect Klassen Processen Autorisaties Uitloggen Inleiding [gebruikersnaam en wachtwoord zijn correct] «pseudostate» menubalk Toestanden Schermen Producten Logica Koppelen Realisatie Inleiding UML «popup» Nieuw product «popup» Product Klanten «popup» Klant Bestellingen «popup» Bestelling Hendrik Jan van Randen
blz 85 Startovergang bronstatus overgang doelstatus Inleiding Use cases inkomende overgang status uitgaande overgang Klassen Processen Autorisaties Eindstatus Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Automatische keuze [voorwaarde] Hendrik Jan van Randen
«Pseudostate» menubalk blz 86 Schermstroom van productbeheerder: Use cases Inlogscherm Inloggen «popup» login incorrect Klassen Processen Autorisaties Uitloggen Inleiding [gebruikersnaam en wachtwoord zijn correct] «pseudostate» menubalk Toestanden Schermen Producten Logica Koppelen Realisatie Inleiding UML «popup» Nieuw product «popup» Product Klanten «popup» Klant Bestellingen «popup» Bestelling Hendrik Jan van Randen
Pseudostate «tabbladen» blz 86 Schermstroom van productbeheerder: Use cases Inlogscherm Inloggen «popup» login incorrect Klassen Processen Autorisaties Uitloggen Inleiding [gebruikersnaam en wachtwoord zijn correct] «pseudostate» tabbladen Toestanden Schermen Producten Logica Koppelen Realisatie Inleiding UML «popup» Nieuw product «popup» Product Klanten «popup» Klant Bestellingen «popup» Bestelling Hendrik Jan van Randen
Popup scherm blz 87 Schermstroom van productbeheerder: Use cases Inlogscherm Inloggen «popup» login incorrect Klassen Processen Autorisaties Uitloggen Inleiding [gebruikersnaam en wachtwoord zijn correct] «pseudostate» menubalk Toestanden Schermen Producten Logica Koppelen Realisatie Inleiding UML «popup» Nieuw product «popup» Product Klanten «popup» Klant Bestellingen «popup» Bestelling Hendrik Jan van Randen
Rapport Use cases Inlogscherm Inloggen «popup» login incorrect Klassen Processen Autorisaties Uitloggen Inleiding blz 87 [gebruikersnaam en wachtwoord zijn correct] «pseudostate» menubalk Toestanden Schermen Producten Logica Koppelen Realisatie Inleiding UML «popup» Nieuw product «popup» Product Klanten «popup» Klant Bestellingen «popup» Bestelling Verkooprapport Hendrik Jan van Randen
Gebruikersrollen Inleiding blz 88 1. Verschillende schermstromen voor verschillende rollen Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML 2. Indien UI grotendeels gelijk: zelfde schermstroom, met constraints 3. Of gebruik kleuren voor verschillende rollen (wat indien scherm voor div rollen? ) 4. Of verwijs naar CRUD matrix Hendrik Jan van Randen
Gebruikersrollen: Apart diagram blz 88 Schermstroom van productbeheerder: Use cases Inlogscherm Inloggen «popup» login incorrect Klassen Processen Autorisaties Uitloggen Inleiding [gebruikersnaam en wachtwoord zijn correct] «pseudostate» menubalk Toestanden Schermen Producten Logica Koppelen Realisatie Inleiding UML «popup» Nieuw product «popup» Product Klanten «popup» Klant Bestellingen «popup» Bestelling Hendrik Jan van Randen
Rapport Inlogscherm Inleiding Inloggen Use cases Autorisaties Uitloggen «popup» login incorrect Klassen Processen blz 87 [gebruikersnaam en wachtwoord zijn correct] «pseudostate» menubalk Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Producten Klanten Bestellingen [use case beheer producten] «popup» Nieuw product «popup» Product «popup» Klant «popup» Bestelling Verkooprapport Hendrik Jan van Randen
Gebruikersrollen: Voorwaarde blz 88 Inlogscherm Inleiding Inloggen «popup» login incorrect Klassen Processen Autorisaties Uitloggen Use cases [gebruikersnaam en wachtwoord zijn correct] «pseudostate» menubalk Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Producten Klanten Bestellingen [rol: productbeheerder] «popup» Nieuw product «popup» Product «popup» Klant «popup» Bestelling Hendrik Jan van Randen
Later inloggen blz 89 Schermstroom van een klant van een webshop: Inleiding startscherm Use cases bestellen Klassen winkelwagen Processen betalen Autorisaties aanmelden Toestanden Schermen Logica Koppelen [ingelogd] sluiten «popup» login incorrect bevestiging betaling [gebruikersnaam en wachtwoord zijn correct] Realisatie Inleiding UML inloggen gebruikersaccount aanmaken betalen bevestigen betalen via i. Deal Hendrik Jan van Randen
Overzicht schermstroomdiagram blz 90 Scherm Inleiding naam van knop Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML [voorwaarde] «pseudostate» menubalk Hendrik Jan van Randen
Vragen? blz 90 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Oefening voor Schermstroomdiagram blz 91 Inleiding Use cases Klassen Processen Autorisaties Toestanden • Teken de schermstroomdiagrammen voor uw applicatie in de vorm van een state machine Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Gebruikersschermen blz 92 Inleiding Use cases Klassen Doel: • Aangeven wat je ziet op de schermen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Mooie vormgeving valt buiten bereik van deze cursus, dus besteed daar nu geen tijd aan! Hendrik Jan van Randen
blz 92 Aan de hand van schermstroom Schermstroom van een klant: Inleiding startscherm Use cases bestellen Klassen winkelwagen Processen betalen Autorisaties aanmelden Toestanden Schermen Logica Koppelen [ingelogd] sluiten «popup» login incorrect bevestiging betaling [gebruikersnaam en wachtwoord zijn correct] Realisatie Inleiding UML inloggen gebruikersaccount aanmaken betalen bevestigen betalen via i. Deal Hendrik Jan van Randen
blz 92 Schermelement voor attribuut Inleiding Voorbeeld: Type van het attribuut: Schermelement: Use cases amount textbox met valutateken Klassen boolean checkbox date picker vrijdag 6 april 2012 datetime or timestamp date picker met tijdbox vrijdag 6 april 2012 enumeration radiogroep of dropdown Processen Autorisaties Toestanden Schermen Logica integer textbox Koppelen string textbox Realisatie time tijdbox Inleiding UML € keuze 1 keuze 2 of keuze 3 9: 15 Dropdown keuze 1 keuze 2 keuze 3 9: 15 Hendrik Jan van Randen
blz 92 Schermelement voor enkelvoudige associatie Inleiding Use cases Klassen Processen Autorisaties Toestanden Situatie: Schermelement: Weinig elementen om uit te kiezen en genoeg ruimte beschikbaar radiogroep Weinig ruimte beschikbaar en/of element vindbaar door (deel van) naam in te typen dropdown of combobox Combobox Veel elementen om uit te kiezen veld met selecteerknop keuze 1 Schermen Logica Koppelen Voorbeeld: keuze 1 keuze 2 keuze 3. . . Realisatie Inleiding UML Hendrik Jan van Randen
Schermelement voor meervoudige associatie Inleiding klant Use cases verkoper * Klassen blz 94 0. . 1 Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Klanten First Choice N. V. Nieuwe klant vanuit zoekscherm Great Benefit V. O. F Kok aan Tafel Nederlandsch Grootste Groothandel N. V. Zwijnsteen en Hertenstam B. V. Klant toevoegen. . . Verwijder klant vanuit detailscherm Hendrik Jan van Randen
Informatie in naam van knop blz 95 Opslaan? Inleiding Wilt u de wijzigingen opslaan? Use cases Klassen Opslaan Niet opslaan Annuleren Nee Annuleren Processen Autorisaties Toestanden Schermen Opslaan? Logica Koppelen Realisatie Inleiding UML Wilt u de wijzigingen opslaan? Ja Hendrik Jan van Randen
Schermelement voor activiteit in proces blz 96 Inleiding proces van bestelling: Use cases Klassen inkoper bestelling magazijnmedewerker status : process Processen Autorisaties Toestanden winkelwagen bestellen te betalen Schermen Logica Koppelen betalen… versturen… betaald Realisatie Inleiding UML verstuurd Hendrik Jan van Randen
Opslaan: expliciet of automatisch? Inleiding Use cases blz 97 Opslaan? Wilt u de wijzigingen opslaan? Klassen Opslaan Processen Autorisaties Niet opslaan Annuleren (objecten) Toestanden Opslaan Schermen Opslaan? Logica Annuleren Koppelen Realisatie Inleiding UML Niet opslaan Opslaan (object) [er zijn niet-opgeslagen wijzigingen] Sluiten Hendrik Jan van Randen
Modale vraag of mededeling blz 98 Opslaan? Inleiding Wilt u de wijzigingen opslaan? Use cases Klassen Opslaan Niet opslaan Annuleren Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Niet-modale vraag of mededeling blz 98 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML De wijzigingen in klant Kok aan Tafel zijn opgeslagen Klanten First Choice N. V. Great Benefit V. O. F Kok aan Tafel Nederlandsch Grootste Groothandel N. V. Zwijnsteen en Hertenstam B. V. Klant toevoegen. . . Hendrik Jan van Randen
Het CRUD patroon blz 99 Klanten Inleiding Use cases Klassen Processen Autorisaties First Choice N. V. Great Benefit V. O. F Nieuw product Kok aan Tafel naam Nederlandsch Grootste Groothandel N. V. prijs incl. BTW € Zwijnsteen en Hertenstam B. V. Klant toevoegen. . . Creëren Toestanden Schermen «pseudostate» menubalk Logica Koppelen Producten Realisatie Inleiding UML «popup» Nieuw product «popup» Product Annuleren Product naam prijs incl. BTW € Opslaan Annuleren Verwijderen Hendrik Jan van Randen
Vragen? blz 101 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Oefening voor schermen Inleiding Use cases Klassen Processen Autorisaties Toestanden blz 101 • Teken de schermen van uw applicatie • Naam van elk scherm is naam blokje in schermstroomdiagram • Maak schermstroomdiagram consistent ermee • Maak alles consistent met eerder getekende diagrammen Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Koppelingen tussen systemen en tussen componenten Inleiding blz 102 Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Systeem blz 102 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Afhankelijkheid blz 102 Inleiding Use cases Klassen Processen webshop Autorisaties Toestanden Schermen i. Deal Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Componentendiagram blz 103 Inleiding Use cases Klassen controller Processen Autorisaties Toestanden Schermen model view Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Gelaagde architectuur blz 103 Inleiding Use cases diagram editor Klassen controller Processen Autorisaties Toestanden model view Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Gelaagde architectuur Inleiding blz 103 diagram editor main Use cases controller Klassen tools Processen actions Autorisaties requests Toestanden Schermen editparts Logica Koppelen Realisatie Inleiding UML model view commands model objects views Hendrik Jan van Randen
blz 105 Package-afhankelijkheidsdiagram Inleiding Use cases user interface Klassen Processen Autorisaties business logic Toestanden Schermen Logica Koppelen Realisatie Inleiding UML entities Hendrik Jan van Randen
Sequence diagram synchroon en asynchroon Inleiding Use cases Klassen patient huisarts laboratorium analysemachine A blz 107 analysemachine B onderzoek monster Processen analyseer Autorisaties Toestanden analyseer Schermen Logica Koppelen luister naar uitslag verwerk uitslag Realisatie Inleiding UML Hendrik Jan van Randen
Objecten en klassen in een sequence diagram - synchroon blz 107 Inleiding Use cases Klassen username. Textbox : Textbox the. User : User the. Event. Factory the. Event. Store : Event. Factory : Update. Event : Event. Store Processen Autorisaties Toestanden set. Username new. Update. Event new Schermen Logica updated Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Objecten en klassen in een sequence diagram – 1 asynchroon blz 108 Inleiding Use cases Klassen username. Textbox : Textbox the. User : User Processen Autorisaties Toestanden set. Username the. Event. Factory the. Event. Store : Event. Factory : Update. Event : Event. Store new. Update. Event new Schermen Logica updated Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Sequence diagram – Zichzelf aanroepen blz 110 Inleiding Use cases Klassen Processen methode Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Sequence diagram – Zichzelf aanroepen Inleiding Use cases Klassen username. Textbox : Textbox the. User : User blz 110 the. Event. Factory the. Event. Store : Event. Factory : Update. Event : Event. Store set. Username validate Processen Autorisaties Toestanden new. Update. Event new Schermen Logica Koppelen updated Realisatie Inleiding UML Hendrik Jan van Randen
Sequence diagram – Optionele stroom Inleiding username. Textbox : Textbox Use cases the. User : User blz 111 the. Event. Factory the. Event : Event. Factory : Update. Event set. Username opt [voorwaarde] validate Klassen Processen Autorisaties Toestanden opt [new name is OK] new. Update. Event new Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Sequence diagram – Alternatieve stromen Inleiding username. Textbox : Textbox Use cases the. User : User blz 112 the. Event. Factory the. Event modeless. Msg : Event. Factory : Update. Event : Msg. Box set. Username validate Klassen Processen Autorisaties alt [new name is OK] Toestanden new. Update. Event new Schermen Logica Koppelen [else] show. Error Realisatie Inleiding UML Hendrik Jan van Randen
Sequence diagram – Loop blz 113 pinautomaat client Inleiding Use cases loop (4) verwerk cijfer Klassen Processen Autorisaties loop (0, 2) Toestanden verkeerde pincode, probeer het nog eens Schermen Logica Koppelen Realisatie Inleiding UML loop (4) verwerk cijfer Hendrik Jan van Randen
Verwijzing naar ander sequence diagram Inleiding client blz 114 bank van de client pinautomaat Use cases Klassen neem geld op vraag saldo op Processen Autorisaties ref Toestanden bepaal saldo Schermen Logica Koppelen Realisatie Inleiding UML saldo contant geld Hendrik Jan van Randen
blz 115 Parallelle stromen en kritieke gebieden hulpdienst telefooncentrale beller gebelde Inleiding Use cases par bel 1234567890 Klassen beantwoord oproep Processen Autorisaties bel 9876543210 Toestanden beantwoord oproep Schermen Logica Koppelen Realisatie Inleiding UML critical bel 112 beantwoord oproep Hendrik Jan van Randen
Volgorde weergeven in een communicatiediagram blz 117 Inleiding Use cases Processen Autorisaties Toestanden 1 : set. Username username. Textbox : Textbox 2 : new. Update. Event the. User : User the. Event. Factory : Event. Factory 3: Schermen Logica Koppelen the. Event : Upd. Event w ne 4 : updated Klassen the. Event. Store : Event. Store Realisatie Inleiding UML Hendrik Jan van Randen
Vragen over de hele stof? Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Oefening Inleiding • Geef aan welke systemen een rol spelen Use cases Klassen Processen Autorisaties Toestanden • Geef de afhankelijkheden tussen deze systemen weer Schermen Logica Koppelen Realisatie Inleiding UML • Maak uw functioneel ontwerp overal consistent Hendrik Jan van Randen
Van model naar realisatie Inleiding blz 118 Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Scrum blz 118 tijd Inleiding product backlog met gebruikerswensen Use cases Klassen Processen Toestanden Sprint 1 Sprint 2 Sprint 3 Sprint 4 versie 1 versie 2 versie 3 Sprint 5 etc. Autorisaties Schermen Logica Koppelen werkende applicatie versie 4 Realisatie Inleiding UML Scrumteam heeft volledig ownership Hendrik Jan van Randen
blz 119 Product backlog en sprint backlog Inleiding Use cases product backlog: sprint backlog: Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Autorisaties Toestanden Schermen Logica Inleiding UML Demo Processen Sprint 2 Sprintplanning Daily standup etc. Retrospective Sprint 1 Demo Inleiding Sprintplanning Daily standup Daily standup etc. Retrospective Klassen Sprintplanning Daily standup Daily standup etc. Scrum - Bijeenkomsten blz 120 tijd Use cases Sprint 3 Koppelen Realisatie Hendrik Jan van Randen
Modelgedreven Ontwikkeling Sjablonen Inleiding Use cases Model Klassen Code generatie Processen blz 121 blz 122 Source code van werkende applicatie Autorisaties Toestanden Engine Schermen Logica Koppelen Model Runtime interpretatie Werkende applicatie Realisatie Inleiding UML Hendrik Jan van Randen
blz 122 Modelgedreven Ontwikkeling Inleiding modelwijzigingen Use cases Klassen Processen Autorisaties Toestanden Ontwikkelomgeving Test- omgeving Acceptatieomgeving Productieomgeving Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Vragen? blz 123 Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
Oefening Inleiding Use cases Klassen Processen Autorisaties Toestanden Schermen Logica Koppelen Realisatie Inleiding UML • Verbeter de modellen die u vandaag gemaakt heeft op die gebieden waarop u wellicht nog vragen heeft. • Maak eerste aanzet voor product backlog • Mail modellen, mockups en backlog naar uzelf ! Hendrik Jan van Randen
blz 123 Inleiding Use cases Klassen Processen Autorisaties Veel modelleerplezier! Toestanden Schermen Logica Koppelen Realisatie Inleiding UML Hendrik Jan van Randen
- Criminal cases vs civil cases
- Werkende processen wijzigen omgevingsplan
- Hvad er sygeplejeprocessen
- Regeldiagram
- Procesdecompositie
- Bio-ecologisch model van bronfenbrenner
- Interne logistieke processen
- Sedimentatie
- Proces management in de praktijk
- Pqrst sleutel
- Retoriska arbetsprocessen
- Uml 2
- Klas dojo
- Gymnasium mosbacher berg
- E klassen
- Lavagetto antonella pediatra
- Sekundarschule ägelsee
- Indeling van dieren
- Nms feldkirchen klassen
- Biologie klasse 5 fische
- Sichtbetonklassen beispiele
- Kv jan mayen
- Johannes klassen
- Anafor dikt exempel
- Generizität java
- Use case diagram crud
- Writing effective use cases
- Azure data catalog example
- Fully dressed use case
- Documenting use cases
- 5g slicing
- Stephan kranz
- High level use cases
- Oran use cases
- Cosmos cheat
- Service chaining use cases
- Use cases tutorial
- Alistair cockburn use cases
- Hyperledger use cases
- How to identify classes from use cases
- Mobile app use cases
- Mec use cases
- Sdn use cases
- Use case scenario
- Hyperledger fabric vs sawtooth
- Cockburn use case
- Sonarqube use cases
- Use cases agile
- Use cases vs.user stories
- Sonarqube use cases
- "splunk"
- Use case ranking and priority matrix
- Sd wan use case
- Couchbase use cases
- Sdn use cases
- Use case
- Use case analysis
- Uml use case visio
- Inleiding eindwerk
- Inleiding animatie
- Aaidd model
- Stageverslag inleiding
- Hoe schrijf je een inleiding
- Mpc ua
- Inleiding programmeren
- Einde presentatie
- Inleiding
- Onderdelen van een tekst
- Voorbeeld van inleiding
- Inleiding betoog schrijven
- Inleiding voorbeeld
- Economie een inleiding
- Trechtermodel inleiding
- Inleiding in de biologie vwo 4
- Slot van een tekst
- Wat is inleiding
- 2log1024
- Wat is n inhoud
- Inleiding inhoud
- Beschouwing hoofdgedachte
- Inleiding
- How you use ict today and how you will use it tomorrow
- Oyez engel v vitale
- Apush supreme court cases
- 6 cases in latin
- Forensic accountant jobs
- Pennine csa cases
- Jusicial restraint
- Managerial economics: theory, applications, and cases
- How cases reach the supreme court worksheet answers
- Test case que es
- Global marketing: contemporary theory, practice, and cases
- Factoring special cases guided notes
- Encountering the mongols comparing three cases
- Master theorem formula
- Slaughterhouse cases apush definition
- Alon global marketing download
- Sexual harassment cases in correctional centres
- What is reciprocal pronoun
- Fm cases
- Cases a l'estaque
- Comlex cdm cases
- Global marketing contemporary theory practice and cases
- Seven cases of deadlock
- Selenium ide save test cases in which format
- Norcross puppies pigs
- What are edge cases in software testing
- Deloitte trueblood
- Below you see two cases a physics student
- Image formed by convex mirror
- Juvenile justice and welfare act of 2006
- Multiplier table in mact cases
- Flow chart of court proceedings in the philippines
- Harvard business for educators
- 15th amendment importance
- Factoring cases
- Global marketing contemporary theory practice and cases
- Copper subshell configuration
- Lupong tagapagbatas
- Using pronouns correctly
- Computer misuse act cases
- Point format example
- Global marketing contemporary theory practice and cases
- Factor special cases
- Business process management cases
- Is ea id latin
- "based on the premise that"
- Environmental management: readings and cases
- Vawc cases
- Airp best cases
- Unit 3 lesson 7 factoring special cases
- Atm test cases
- Practice 9-4 multiplying special cases
- Cases of teachers violating the code of ethics in georgia
- Oblique triangle
- In extreme cases, an aggressive driver may
- Sales sample cases
- Free threat modeling tools
- Converging lens image properties
- Chapter 7 linear programming solutions
- Veterolegal definition
- What is line listing
- Mental cases wilfred owen
- Cohens vs virginia apush
- Supreme court cases graphic organizer answers
- Socialization from infancy to old age
- Slidetodoc.com
- Abuse cases in software security
- Cm cases
- Apush amendments review
- Precedent cases
- Guns
- Equivalence partitioning is
- Cases
- What is personal pronoun
- Binary search test cases
- Bpo meaning in barangay