Katholieke Hogeschool Kempen S.V.M. Systeeminceptie Definitiestudie Procesanalyse Informatie-analyse Functiemodel Functioneel Ontwerp Elementaire proces analyse Gegevensanalyse Procesmodel Technisch Ontwerp Programmamodelanalyse Informatiemodel (EER-model) Conceptueel gegevensmodel (Relationeel model) Implementatieanalyse Implementatiegegevensmodel Programmamodel Bouw Programmabouw Programma’s Databasebouw Logisch databasemodel Fysiek databasemodel Katholieke Hogeschool Kempen Fase 1 - Definitiestudie • Doel: WAT wensen de gebruikers? FASE 1 Definitiestudie Techniek van Deliverable 1.1 Initialiseren project het Projectmanagement 1.2 Detailleren functies 1.3 Uitvoeren decompositie 1.4 Bepalen van de informatie- Extended Entity Relation- Informatiemodel behoeften ship Modelling 1.5 Opstellen functiemodel 1.6 Bepalen eisen 1.7 Afsluiten Definitiestudie Use-cases analyse functionele Functional Diagram Plan van Aanpak Use-case Model Decomposition Activiteitenprofiel Data Flow Diagram niet-functionele (F)URPS+model MOSCOW-techniek DFD Beschrijving van de nietfunctionele eisen Eindrapport GO / NO GO Katholieke Hogeschool Kempen Activiteit 1.1 – Initialisatie van het project • • • • • • Projectorganisatie opzetten Projectrollen bepalen Project afbakenen Planning maken / projectbeheersing Middelen vastleggen Fasering opstellen => Plan van aanpak Katholieke Hogeschool Kempen Activiteit 1.2 – Detailleren functies • Use-case analyse o o o o Toegevoegde waarden van systeem voor de gebruiker onderzoeken. Objectieven van de gebruiker staan central. Use-case is beschrijving van manier waarop een systeem gebruikt kan worden. Systeem zelf is black-box. Interactie met gebruiker staat centraal. => Geheel van alle use-case van een systeem is een USE-CASE MODEL Katholieke Hogeschool Kempen USE CASE MODEL • Doelstellingen o o o o Overeenstemming over functionele eisen Richtlijn voor verder ontwerp Basis voor tests Basis bouw en uitbouw van het systeem • Communicatie-instrument voor klant, ontwikkelaar, teams voor test, marketing, verkoop, ondersteuning, documentatie Katholieke Hogeschool Kempen Een use-case • Een use-case is een beschrijving van de interactie tussen één of meer actoren en het systeem. • Een use-case is een scenario, dat een doelstelling van een gebruiker met het systeem ondersteunt. Vb. Een rekening openen, een order plaatsen, een formulier invullen Katholieke Hogeschool Kempen Het begrip ACTOR • Een actor is een entiteit die buiten het systeem staat en direct communiceert met het systeem. • Een actor is een rol die iets of iemand in de context van een systeem speelt. Katholieke Hogeschool Kempen Het use-case diagram systeemgrens actor associatie use-case Katholieke Hogeschool Kempen Use-cases stappenplan a. Identificeer de grenzen van het systeem en vind de actoren. b. Definieer use-cases voor iedere actor. c. Bepaal per use-case de aannamen of precondities. d. Bepaal per use-case de interactie. e. Bekijk per use-case mogelijke uitzonderingen. f. Beschrijf elke use case en maak het usecase diagram. Katholieke Hogeschool Kempen De beschrijving van use-cases Naam Rekening toevoegen. Samenvatting Er wordt een nieuwe rekening aangemaakt voor een klant. Actoren Baliemedewerker. Aannamen Baliemedewerker heeft beschikking over NAW gegevens van de klant. Beschrijving (1) De baliemedewerker maakt aan het systeem bekend dat een nieuwe rekening aangemaakt moet worden en geeft de NAW gegevens van de klant. Als de klant een bedrijf is dan wordt ook het kamer van koophandel nummer ingevuld. (2) Het systeem checkt of de klant al bekend is. Is dit het geval dan worden de klantrekeningen gecontroleerd op roodstand. Als de klant roodstaat dan treedt een uitzondering op. Het systeem maakt het nieuwe rekeningnummer aan de baliemedewerker bekend. Uitzonderingen [Roodstaan] Als één rekening van de klant roodstaat dan wordt hiervan door het systeem melding gegeven. De baliemedewerker kan dan naar de use-case “Storten” overgaan om de klant de gelegenheid te geven het saldo aan te vullen. Als het saldo is aangevuld, dan wordt de rest van deze use-case uitgevoerd. Resultaat De klant heeft minstens één rekening. Katholieke Hogeschool Kempen Use-cases in UML Katholieke Hogeschool Kempen Katholieke Hogeschool Kempen Het testen van use-cases • Validatie door gebruiker • Verificatie in verdere analyse • « Walking the use case » Katholieke Hogeschool Kempen Use-case valkuilen Katholieke Hogeschool Kempen Katholieke Hogeschool Kempen Katholieke Hogeschool Kempen Katholieke Hogeschool Kempen Katholieke Hogeschool Kempen Katholieke Hogeschool Kempen Katholieke Hogeschool Kempen Oefening - frisdrankautomaat Katholieke Hogeschool Kempen Use case oefeningen – achtergrond • Use-cases = excellent tool om potentiële gebruikers te stimuleren om vanuit hun standpunt over een systeem te laten vertellen. • Achtergrond = gebruikers in het vroegste stadium bij systeemontwikkeling betrekken om zo de kans te verhogen dat het systeem uiteindelijk ook levert wat gebruikers wensen. Katholieke Hogeschool Kempen Oefening – Peru-aid Peru-aid is een non-profit organisatie die giften verzamelt van particulieren. Verzamelde giften worden geattesteerd om ze fiscaal aftrekbaar te maken voor de gever. Peru-aid omvat meerdere projecten. Giften worden geheel of gedeeltelijk aan specifieke projecten gegeven. De enige voorwaarde is dat de totale som van alle giften voor een project niet groter mag zijn dan het projectbudget. Voor elke gift aan een project krijgt de gever een bedankbrief. Zo’n bedankbrief mag uiteraard maar één keer verstuurd worden voor elke gift. Gevers, giften en projecten worden gearchiveerd zoals het hoort. Giften mogen maar één keer geattesteerd worden. Wanneer giften een specifiek project dienen, worden deze projecten op het fiscaal attest vermeld. Katholieke Hogeschool Kempen Oefening – Easyshop (achtergrond) • Hans en Jacqueline gaan samenwonen. Ze hebben een verdieping van een Brussels pand kunnen kopen, omdat ze beide goed verdienen. Jacqueline is piloot bij een luchtvaartmaatschappij en vliegt vanaf Zaventem. Hans is arts in een universitair ziekenhuis in Brussel. Beiden hebben vanwege hun werk een zeer wisselend weekschema. Ze voorzien dat er hierdoor problemen zullen ontstaan met het doen van inkopen voor de dagelijkse maaltijd. Daarom willen ze een computersysteem laten maken dat draait op hun nieuwste aanwinst: een supersnelle PC. Ze hebben zelfs al een naam voor het systeem bedacht. Het gaat EasyShop heten. Katholieke Hogeschool Kempen Oefening – Easyshop (functionele eisen) De informatici die het systeem zullen bouwen komen een avond praten over hoe het eruit moeten komen te zien. Globaal komt het hierop neer: • • • • • • Hans en Jacqueline moeten onafhankelijk van elkaar het systeem kunnen gebruiken. Ze willen per week een scherm zien waarop ze kunnen aangeven of ze wel of niet aanwezig zijn bij het diner, lunch en/of ontbijt. Bovendien moet aangegeven kunnen worden of er gasten verwacht worden. Het is de bedoeling dat elke huisgenoot alleen voor zichzelf de agenda invult. Per dag wordt bovendien aangegeven wie er kookt. Deze persoon zal uit een aantal recepten kiezen wat er die dag gegeten wordt. Op basis van de gegeven recepten plus informatie over de meest geprefereerde lunch en ontbijt van zowel Hans als Jacqueline zal het systeem één keer per week een boodschappenlijst maken. Hans of Jacqueline zal deze actie aangeven want aanwezigheid van een van hen is vereist voor de bezorging. Op dagen die niet ingevuld zijn, wordt geacht dat er niemand aanwezig zal zijn. Deze boodschappenlijst zal per fax naar de lokale supermarkt gestuurd worden waarna de supermarkt de gevraagde boodschappen thuisbrengt (tussen 17.00 en 18.00 u.). Het systeem bewaart een lijst met faxnummers van lokale supermarkten met een bezorgdienst. De gebruiker zal uit deze lijst kunnen kiezen. Het systeem zal de voorraad van het huishouden bijhouden. Wanneer de boodschappen bezorgd worden zal de gebruiker deze met de juiste hoeveelheden invoeren in het systeem. Wanneer een dag verstreken is dan gaat het systeem ervan uit dat de maaltijden die dag genuttigd zijn. Hans en Jacqueline zijn allebei geen ster in de keuken, daarom willen ze een kookboek met een groot aantal eenvoudige recepten in het systeem onderbrengen. Dit kookboek moet onafhankelijk van de agenda in te zien zijn, bijv. op het moment dat gekookt moet worden. Katholieke Hogeschool Kempen Oefening – Easyshop (niet-functionele eisen) • De systeemeisen die Hans en Jacqueline stellen zijn de volgende: 1. Het systeem moet werken op een PC. 2. Het systeem moet een faxverbinding mogelijk maken met minstens één supermarkt. 3. De beide gebruikers moeten onafhankelijk van elkaar van het systeem gebruik kunnen maken, maar ze hoeven er niet beide tegelijkertijd mee te werken. 4. Het systeem moet een grafische userinterface hebben. Katholieke Hogeschool Kempen Oplossing – Frisdrankautomaat • De “koop frisdrank” use-case o Scenario: o o o o o Precondities (aannamen) o o Klant steekt geld in automaat Klant maakt selectie Machine levert geselecteerde drank Klant neemt blikje uit toestel Dorstige klant Postcondities (resultaat) o Klant heeft blikje gekregen • Dit is slechts één scenario! Je kan onmiddellijk andere bedenken en de usecase opnieuw “beleven”.