Stijn Hoppenbrouwers Software Engineering les 3 Domeinmodellen (en eventueel Bedrijfsregels) Op te leveren • Requirements (procesmodellen, use cases, domeinmodellen, bedrijfsregels) • Interface ontwerp, • Implementatie (met Cordys Process Factory), • Gebruikersdocumentatie, • Testontwerp- en rapporten (technisch en gebruikstest), • Evaluaties (proces, produkt) 2 Gezamenlijke voorbeeldoefening? • Proces kiezen: – Iets kopen in een webwinkel – Koffie zetten – Boek lenen in bibliotheek • Maak (schets) procesmodel en UCs 3 Domeinmodellen: detaillering informatiestructuur • Iemand bekend met UML-CD? ER? ORM/FCO-IM? • We nemen hier als voorbeeld versimpeld ORM, typisch “Nijmegen”. Maar gelijkenis met basaal UML-CD of ER is groot! 4 5 6 7 “Rollen en Bollen” Boek Lener Persoon DVD Item leent / wordt geleend door Naam wordt aangeduid met / duidt aan 8 Verwoordingen • “Persoon wordt aangeduid met precies 1 Naam” • “Naam duidt 1 of meer Personen aan” • “Item wordt geleend door 0 of meer Personen” • “een Boek is een Item” • Concepten: de woorden en hoe je ze samen mag gebruiken • Constraints (“inperkingen”): welke feitelijke invullingen van de woorden (voorbeelden) je (niet) kunt vinden • Samen: “formele datastructuur”; voeg “primary key” toe en je hebt de specs voor een database (nou ja…) 9 Bedrijfsregels • Term: bijv. “Item”; definitie “Een item is een specifiek en uniek fysiek voorwerp dat in de bibliotheek te leen wordt aangeboden” • Feittype: bijv “Persoon leent 0 of meer Items” • Regel: “Een Persoon mag geen Items lenen als hij een Uitstaande Boete heeft”. • In de praktijk moet je zo’n regel meestal nog wel ”uitprogrammeren” (tenzij je gebruik maakt van en “Rule Engine” 10 Idee eigen systeem?