Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 2de jaar Toegepaste Informatica
Webapplicatie in PHP Zwembadbeheer Analyse- en ontwerprapport
Teamnr: 52 Glenn VAN LOOCK (2Ti5) Joey LEMMENS (2Ti5) Robin DE CNODDER (2Ti5)
Academiejaar 2010 – 2011 1
Inhoudsopgave 1
Inleiding ................................................................................................................ 3
2
Functionele eisen ................................................................................................... 4
2.1
Use case diagram .............................................................................. Fout! Bladwijzer niet gedefinieerd.
2.1
Use case beschrijvingen.......................................................................................................................... 5
2.2.1
Zwemfeestje reserveren ......................................................................................................................... 5
2.2.2
Zwemles inschrijven ............................................................................................................................... 8
2.2.3
Algemene informatie over het zwembad opvragen .............................................................................. 11
2.2.4
Contact opnemen ................................................................................................................................. 12
2.2.5
Inloggen ............................................................................................................................................... 13
2.2.6
Zwemlessen beheren ........................................................................................................................... 15
2.2.7
Wachtlijst beheren ............................................................................................................................... 19
2.2.8
Zwemmersaantallen beheren ............................................................................................................... 21
2.2.9
Schoolzwemlessen beheren ................................................................................................................. 23
2.2.10
Schoolzwemmers ingeven .................................................................................................................... 27
2.2.11
Zwemfeestjes beheren......................................................................................................................... 29
2.2.12
Facturen beheren ................................................................................................................................ 33
2.2.13
Openingsuren beheren ........................................................................................................................ 37
2.2.14
Tarieven beheren ................................................................................................................................. 39
2.2.15
Menu’s beheren................................................................................................................................... 40
2.2.16
Webpagina beheren (algemene informatie) ......................................................................................... 42
2.2.17
Controle zwemwater beheren.............................................................................................................. 45
2.2.18
Nieuwsberichten beheren .................................................................................................................... 47
3
Niet-functionele eisen .......................................................................................... 50
3.1
Scalability ............................................................................................................................................. 50
3.2
Implementatie...................................................................................................................................... 50
3.3
Security ................................................................................................................................................ 50
3.4
Criticality .............................................................................................................................................. 50
3.5
Interfaces ............................................................................................................................................. 50
3.6
Usability ............................................................................................................................................... 50
4
Datamodel ............................................................................................................51
5
MoSCoW .............................................................................................................. 54
6
Planning .............................................................................................................. 55
2
1
Inleiding
Met deze webapplicatie willen we alle beheerderstaken van het zwembad vereenvoudigen voor het hotelbestuur van Kempenrust. Dit omvat onder andere het proces van de reservaties voor zwemfeestjes, het beheren van de tarieven, het beheren van de zwemmersaantallen, het ingeven van de waarden van het zwembad, etc. Op dit moment gebeurt alles manueel: de klant moet zelf lijsten opmaken voor de reservaties, facturen moeten handmatig worden samengesteld, kortom veel te veel papierwerk. Daarom heeft de klant beroep gedaan op ons om alle processen te vereenvoudigen. De webapplicatie zal door twee groepen van gebruikers gebruikt kunnen worden namelijk, de beheerder van het systeem en alle webgebruikers die zich willen inschrijven voor een zwemles, een zwemfeest te reserveren of de algemene informatie over het zwembad op te vragen.
3
2
Functionele eisen
4
2.1
Use case beschrijvingen
2.2.1 Zwemfeestje reserveren Naam: zwemfeestje reserveren Samenvatting: de actor ziet de verschillende data waarvoor hij kan reserveren. Na het selecteren en het invullen van de persoonlijke gegevens, kan hij dit verzenden. Actor(en): zwemmer (general public) Preconditie: de actor moet op de knop “reserveren zwemfeest” hebben geklikt. Scenario: ACTOR
SYSTEEM 1. Toont een invulformulier en de beschikbare reservatiedata in een kalendervorm.
2. Actor vult persoonlijke gegevens in en selecteert een datum.
ALTERNATIEF
(1) 3. Systeem toont voor de geselecteerde datum de beschikbare uren.
4. Actor selecteert een uur of verschillende uren en klikt op volgende.
(1) 5. Controleert de ingevoerde gegevens en de gebruiker wordt doorgestuurd naar de bevestigingspagina.
6. Actor klikt op versturen.
(1) (2) 7. Systeem stuurt de actor door naar de eindpagina en stuurt een bevestigingsemail naar de actor. Het systeem schrijft gegevens weg en plaats een melding op de administratorpagina dat er een gebruiker een zwemfeestje heeft gereserveerd.
ALTERNATIEVE UITZONDERING (1)
(2)
VERKLARING Actor wil de reservatie annuleren. Actor wil zijn gegevens aanpassen.
ACTIE Systeem annuleert en de wordt doorgestuurd naar de startpagina. Systeem stuurt de actor terug door naar de vorige pagina en begint terug bij stap 2.
5
Prototype:
De actor klikt op de knop Volgende waarna hij wordt doorgestuurd naar een pagina waar de actor zijn gegevens kan controleren.
6
Postconditie: de actor heeft een zwemfeestje gereserveerd. 7
2.2.2 Zwemles inschrijven Naam: zwemles inschrijven Samenvatting: een zwemmer kan zich inschrijven via de webapplicatie om zwemlessen te volgen en de hotelbestuurder kan zien wie, wanneer en hoeveel zwemmers er per les zijn ingeschreven. Actor(en): zwemmer (general public) Preconditie: de actor moet de gegevens van zichzelf of diegene die hij wil inschrijven hebben ingegeven en moet zijn ingelogd in het systeem. Scenario: ACTOR
SYSTEEM 1. Toont een invulformulier.
2. Actor vult zijn persoonlijke gegevens in het inschrijvingsformulier in en selecteert vervolgens een weekdag en voorkeur uur waarvoor de actor de zwemlessen wil volgen. Vervolgens klikt de actor op volgende.
ALTERNATIEF (1)
3. Controleert de ingevoerde gegevens en de gebruiker wordt doorgestuurd naar de bevestigingspagina. 4. Actor klikt op versturen.
(1) (2) 5. Gegevens worden weggeschreven en het systeem stuurt de actor door naar de eindpagina. Er wordt ook een melding geplaatst op de administratorpagina.
6. Actor ziet dat hij zich heeft ingeschreven en gaat terug naar de startpagina. ALTERNATIEVE UITZONDERING (1) (2)
VERKLARING Actor bedenkt zich en wil terug. Actor wil zijn gegevens aanpassen.
ACTIE Actor komt terug op de beginpagina. Systeem stuurt de actor terug door naar de vorige pagina en begint terug bij stap 2.
8
Prototype:
De actor klikt op de knop Volgende.
9
Actor klikt op de knop Versturen.
Postconditie: de zwemmer is ingeschreven in een zwemles.
10
2.2.3 Algemene informatie over het zwembad opvragen Naam: algemene informatie over het zwembad opvragen Samenvatting: de actor ziet de algemene informatie over het zwembad zoals de openingsuren en de tarieven. Actor(en): zwemmer (general public) Preconditie: de actor klikt op de knop om de algemene informatie over het zwembad op te vragen. Scenario: ACTOR
SYSTEEM 1. Toont de algemene informatie.
ALTERNATIEF
Prototype:
Postconditie: de actor ziet de webpagina met de algemene informatie over het zwembad.
11
2.2.4 Contact opnemen Naam: contact opnemen Samenvatting: de actor kan het zwembad contacteren bij problemen met reservaties of inschrijvingen, een klacht indienen, etc. Actor(en): zwemmer (general public) Preconditie: de actor klikt op de knop contact. Scenario: ACTOR
SYSTEEM 1. Toont een formulier
2. Actor vult het formulier volledig in en klikt vervolgens op versturen.
ALTERNATIEF (1)
3. Het systeem stuurt een email naar de administrator en geeft vervolgens een melding dat alles goed verzonden is. 4. De actor ziet de melding en klikt op ok. 5. Het systeem stuurt de actor automatisch door naar de startpagina. ALTERNATIEVE UITZONDERING (1)
VERKLARING Actor bedenkt zich en wil terug.
ACTIE Actor komt terug op de beginpagina.
12
Prototype:
De melding die de actor krijgt als hij op Versturen klikt.
2.2.5 Inloggen Naam: inloggen Samenvatting: de actor vult gebruikersnaam en paswoord in om zo toegang te krijgen tot het systeem. Indien je geen gebruikersnaam en paswoord hebt, kan je niet in het systeem en dus ook maar beperkte delen gebruiken. Actor(en): het hotelbestuur Preconditie: actor heeft gebruikersnaam en paswoord. 13
Scenario: ACTOR 1. Geeft gebruikersnaam en wachtwoord in en drukt op de knop inloggen.
SYSTEEM
ALTERNATIEF (1)
2. Controleert combinatie gebruikersnaam en wachtwoord en kijkt of deze in de database staan. Verwijst dan gebruiker door naar het startscherm. ALTERNATIEVE
VERKLARING
ACTIE
UITZONDERING
(1)
Is wachtwoord vergeten.
Actor klikt op link wachtwoord vergeten en systeem opent een pop-up om nieuw wachtwoord of gebruikersnaam op te vragen.
Prototype:
Als de actor op de link Wachtwoord vergeten? klikt opent het volgend pop-up venster.
Postconditie: de actor is ingelogd. 14
2.2.6 Zwemlessen beheren Naam: zwemlessen beheren Samenvatting: de hotelbestuurder kan de openbare zwemlessen beheren. Hij kan zwemlessen bekijken, aanpassen, stopzetten, ingeven en de aanvragen bekijken. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op zwemlessen beheren hebben geklikt.
Beschrijving: De administrator ziet een algemeen overzicht van de verschillende zwemlessen die doorgaan op een bepaald uur. Hij kan de details opvragen over een bepaald persoon waarna hij ook de volgende geplande lessen ziet. De administrator kan hier ook een nieuwe zwemles aanmaken. Ook moet hij hier het vast patroon van zwemlessen ingeven onder het tabblad Zwemlessen.
15
Prototype:
Wanneer de actor op Details klikt krijgt hij het volgende scherm.
16
De actor kan hier kiezen om een zwemmer uit te schrijven, stopzetten. Wanneer hij op Nieuw klikt krijgt hij het volgende scherm.
17
Wanneer de actor op Zwemlessen klikt krijgt hij het volgende scherm.
18
Hier kan de actor de uren opgeven wanneer zwemlessen wekelijks doorgaan. Als hij op het +-teken klikt krijgt hij een nieuwe rij voor een extra zwemlesreeks toe te voegen.
2.2.7 Wachtlijst beheren Naam: wachtlijst beheren Samenvatting: de hotelbestuurder kan de wachtlijst voor zwemlessen bekijken en personen op de wachtlijst accepteren indien er een plaatsje vrijkomt. Details van een persoon op de wachtlijst kan ook bekeken worden. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op wachtlijst beheren hebben geklikt.
19
Beschrijving: De administrator ziet een algemeen overzicht van alle aanvragen van zwemlessen door particuliere gebruikers. Wanneer de administrator een selectievakje aanvinkt en op accepteren klikt dan wordt de persoon automatisch aan de dichtstbijzijnde zwemlesreeks gekoppeld. Prototype:
Als de actor op Details klikt dan krijgt hij het volgende scherm.
20
Postconditie: de wachtlijst is beheerd. Een persoon op de wachtlijst is geaccepteerd of details zijn bekeken.
2.2.8 Zwemmersaantallen beheren Naam: zwemmersaantallen beheren Samenvatting: actor kan zwemmersaantallen per dag ingeven, hij moet een keuze aangeven over welk soort zwemmer het gaat. Actor(en): hotelbestuur Precondititie: actor klikt op knop Part. – abonnees
21
Beschrijving: De administrator ziet een maandoverzicht van alle particuliere zwemmers en abonnees. Hij kan een nieuw record ingeven, maar kan ook een record aanpassen of verwijderen mocht hij iets fout hebben gedaan. Prototype:
Postconditie: De aantallen van particulieren en abonnes zijn ingegeven, aangepast of verwijdert. 22
2.2.9 Schoolzwemlessen beheren Naam: schoolzwemlessen beheren Samenvatting: de hotelbestuurder kan de zwemfeestjes beheren. Hij zal een overzicht van zwemfeestjes te zien krijgen hieruit kan hij details opvragen, zwemfeestje annuleren of aanpassen. Zwemfeestjes kunnen ook gearchiveerd worden. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op zwemfeestjes beheren hebben geklikt.
Beschrijving: De actor ziet een overzicht van alle schoolzwemlessen die gepland zijn. Door op details te klikken kan de actor alle details bekijken van een bepaalde schoolzwemles. Hij kan ook nieuwe zwemlessen ingeven en schoolzwemlessen aanpassen.
23
Prototype:
Als de actor op Details klikt dan krijgt hij het volgende scherm.
24
De actor kan hier klassen verwijderen. Klikt hij in het tabblad op Aanpassen krijgt hij het volgende scherm.
25
Hier kan de actor klassen aanpassen of nieuwe klassen toevoegen. Hij bepaald hier ook op welke weekdag en uur een bepaalde klas komt zwemmen. Bij het klikken op het tabblad Nieuw kan de actor een nieuwe school inschrijven in een zwemles en klassen aanmaken.
26
Postconditie: de schoolzwemlessen zijn beheerd. Een overzicht of details zijn getoond. Scholen en klassen zijn toegevoegd of aangepast.
2.2.10 Schoolzwemmers ingeven Naam: schoolzwemmers ingeven Samenvatting: de hotelbestuurder kan de zwemfeestjes beheren. Hij zal een overzicht van zwemfeestjes te zien krijgen hieruit kan hij details opvragen, zwemfeestje annuleren of aanpassen. Zwemfeestjes kunnen ook gearchiveerd worden. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op zwemfeestjes beheren hebben geklikt. Beschrijving: de administrator ziet onmiddellijk een overzicht. Hij kan een nieuwe lijn schoolzwemmersaantallen toevoegen en aanpassen. Voor het gebruiksgemak kan de administrator hier ook een factuur maken. 27
Prototype:
De actor moet elke keer wanneer er een school komt hier een lijn aan gegevens toevoegen. Hij moet de juiste school selecteren met de bijhorende klas en het aantal leerlingen (het aantal leerlingen kan variëren). 28
Ook heeft de actor hier de mogelijkheid om een factuur aan te maken. Wanneer hij op maak! zou klikken wordt hij naar Facturen beheren gestuurd. Postconditie: De schoolzwemmers zijn ingegeven, aangepast of een factuur werd gecreëerd.
2.2.11 Zwemfeestjes beheren Naam: zwemfeestjes beheren Samenvatting: de hotelbestuurder kan de zwemfeestjes beheren. Hij zal een overzicht van zwemfeestjes te zien krijgen hieruit kan hij details opvragen, zwemfeestje annuleren of aanpassen. Zwemfeestjes kunnen ook gearchiveerd worden. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op zwemfeestjes beheren hebben geklikt.
Beschrijving: De administrator ziet een overzicht van de reeds gereserveerde zwemfeestjes. Per zwemfeestje kan hij de details opvragen, hier kan hij de gegevens ook eventueel aanpassen. De administrator kan ook zelf een nieuw zwemfeestje maken en onder het tabblad Aanvragen komen de aanvragen van de particuliere gebruikers. De administrator moet deze aanvragen goedkeuren.
29
Prototype:
Als de actor op Details klikt krijgt hij het volgende scherm.
30
Wanneer de actor een nieuw zwemfeestje wilt toevoegen klikt hij op Nieuw.
31
Al de verschillende aanvragen kan de actor opvragen door op de knop Aanvragen te klikken. Hij krijgt onmiddellijk de eerste aanvraag te zien. Het gebeurt niet vaak dat er twee reservaties op een week gebeuren. Mocht dit zo zijn kan de actor op de knop Volgende (>>) klikken.
32
Postconditie: de zwemfeestjes zijn beheerd. Een nieuw zwemfeestje is ingegeven, aangepast, verwijderd of gearchiveerd. De details van een zwemfeestje wordt getoond of een overzicht wordt weergegeven.
2.2.12 Facturen beheren Naam: facturen beheren Samenvatting: de hotelbestuurder kan alle facturen van de scholen bekijken. Door op een knop te drukken kan hij de facturen versturen naar de scholen. Hij kan de facturen archiveren en details bekijken van een factuur. Actoren: hotelbestuurder Preconditie: actor is aangemeld en moet op facturen beheren hebben geklikt. 33
Beschrijving: De administrator ziet een algemeen overzicht van alle aanwezige facturen. Hij kan de details van een factuur bekijken en dit ook aanpassen mocht er ergens iets fout zijn. Hij heeft hier ook de mogelijkheid om een factuur te maken. Prototype:
Wanneer de actor op Details klikt krijgt hij het onderstaande scherm.
34
De actor kan dit factuur aanpassen door op het tabblad Aanpassen te klikken. Hij krijgt vervolgens het onderstaande scherm te zien.
35
Een nieuw factuur maakt de actor door op het tabblad Nieuw te klikken.
36
Postconditie: De facturen zijn beheerd. Een factuur kan verzonden, gearchiveerd of details ervan kunnen zijn opgevraagd.
2.2.13 Openingsuren beheren Naam: openingsuren beheren Samenvatting: de hotelbestuurder kan de openingsuren bekijken en aanpassen. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op openingsuren beheren hebben geklikt.
37
Scenario: ACTOR
SYSTEEM 1. Toont de openingsuren.
ALTERNATIEF
2. Actor vult het formulier volledig in of past de openingsuren aan. Vervolgens klikt hij op de knop Bevestigen. 3. Het systeem schrijft de gegevens weg en toont een melding dat dat alles goed is aangepast. Prototype:
Postconditie: de openingsuren zijn ingegeven of aangepast. 38
2.2.14 Tarieven beheren Naam: tarieven beheren Samenvatting: de hotelbestuurder kan de tarieven bekijken en aanpassen. Ook kan een nieuw tarief toegevoegd worden. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op tarieven beheren hebben geklikt.
Beschrijving: De administrator ziet een overzicht van alle tarieven. Als hij een selectievakje aanvinkt dan kan hij het geselecteerde tarief verwijderen. Tevens kan hij hier op elk moment een aanpassing in brengen door het tekstveld aan te passen en op bevestigen te klikken. De administrator kan een nieuw tarief aanmaken door op het tabblad nieuw te klikken. Prototype:
39
Als de actor op het tabblad Nieuw klikt dan krijgt hij het volgende scherm.
Postconditie: de tarieven zijn beheerd. Een tarief werd aangepast, verwijdert of een nieuw werd toegevoegd.
2.2.15 Menu’s beheren Naam: menu’s beheren. Samenvatting: de hotelbestuurder kan de menu’s voor zwemfeestjes bekijken en aanpassen. Ook kan een nieuw menu toegevoegd worden. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op menu’s beheren hebben geklikt.
40
Beschrijving: De administrator ziet een overzicht van alle tarieven. Als hij een selectievakje aanvinkt dan kan hij het geselecteerde tarief verwijderen. Tevens kan hij hier op elk moment een aanpassing in brengen door het tekstveld aan te passen en op bevestigen te klikken. De administrator kan een nieuw tarief aanmaken door op het tabblad nieuw te klikken. Prototype:
Postconditie: De menu’s werden beheerd, een nieuw menu werd toegevoegd, aangepast of verwijderd. 41
2.2.16 Webpagina beheren (algemene informatie) Naam: webpagina beheren Samenvatting: de hotelbestuurder kan de inhoud van de webpagina’s wijzigen, bekijken, verwijderden. Actor(en): hotelbestuurder Preconditie: actor is aangemeld en moet op webpagina’s beheren hebben geklikt.
Beschrijving: De administrator ziet in de eerste instantie hoe de webpagina er voor een gewone gebruiker uitziet. Hij kan de inhoud hiervan aanpassen waarna de webpagina zal worden aangepast.
42
Prototype:
43
Postconditie: de webpagina’s zijn beheerd. De informatie op de webpagina kan verwijderd, aangepast of de actor kan de informatie hebben opgevraagd.
44
2.2.17 Controle zwemwater beheren Naam: zwembadwater beheren Samenvatting: hotelbestuurder kan na controle van het zwembadwater de gegevens ingeven in de applicatie. Hij kan ze dan ook bekijken, aanpassen en archiveren. Hij kan ook gegevens opvragen van één bepaalde dag. Actoren: hotelbestuurder Preconditie: actor is aangemeld en moet op zwembadwater beheren hebben geklikt.
Beschrijving: De administrator krijgt een algemeen weekoverzicht waar hij onmiddellijk nieuwe waarden kan ingeven. Reeds ingegeven waarden kan je altijd nog aanpassen door een andere waarde in te geven en op de knop Bevestigen te klikken.
45
Prototype:
Postconditie: De informatie over het zwembadwater is beheerd. Gegevens kunnen ingegeven, aangepast of gearchiveerd zijn. Verder kunnen de gegevens van een bepaalde dag zijn getoond.
46
2.2.18 Nieuwsberichten beheren Naam: nieuwsberichten beheren Samenvatting: hotelbestuurder kan na controle van het zwembadwater de gegevens ingeven in de applicatie. Hij kan ze dan ook bekijken, aanpassen en archiveren. Hij kan ook gegevens opvragen van één bepaalde dag. Actoren: hotelbestuurder Preconditie: actor is aangemeld en moet op nieuwsberichten beheren hebben geklikt.
Beschrijving: De administrator ziet een overzicht van de nieuwsberichten. Hij kan een nieuwsbericht aanpassen of verwijderen door het te selecteren. Hij kan hier ook een nieuw nieuwsbericht maken. De nieuwsberichten komen automatisch op de startpagina van de gewone internetgebruikers.
47
Prototype:
De actor kan een selectievakje aanvinken en het geselecteerde bericht verwijderen of aanpassen. Wanneer hij op het tabblad Nieuw klikt dan krijgt hij onderstaand scherm.
48
Postconditie: De nieuwsberichten zijn beheerd. Een nieuwsbericht werd aangepast, verwijdert, een nieuw werd toegevoegd.
49
3
Niet-functionele eisen
3.1
Scalability
Het systeem zal in het beste geval tien gebruikers tegelijkertijd moeten behandelen.
3.2 Implementatie Het systeem zal vooral compatibel worden gemaakt voor Google Chrome 7 of hoger. Indien het mogelijk is zal er ook ondersteuning zijn voor Mozilla Firefox 4 gebruikers. We gaan ook werken met het Database Management Systeem van Microsoft namelijk, SQL Server 2008.
3.3 Security Het mag niet voorvallen dat een webgebruiker zich kan inloggen waardoor hij administratorrechten krijgt. De paswoorden moeten dus in een geëncrypteerde vorm in de database moeten zitten.
3.4 Criticality Mocht er om de een of andere reden een usecase uitvallen, kan onze klant terugvallen op het papieren systeem.
3.5 Interfaces Automatisch gegenereerde e-mails zullen verstuurd moeten worden naar verschillende mailservers. Wanneer reservering voor zwemfeestjes worden gemaakt, moet er een bevestigingsmail worden verstuurd. Facturen moeten ook probleemloos in de mailbox van de school terechtkomen.
3.6 Usability Het systeem moet voor elke gebruiker makkelijk zijn om zich een weg te banen in de webapplicatie. Er moet dus een gebruiksvriendelijke userinterface zijn en over een logische administratorinterface beschikken.
50
4
Datamodel
51
Login id gebruikersnaam passwoord emailadres Menu id menu prijs omschrijving Zwemfeest id naam aantalPersonen datum uur menuId FK1 NA DTR kalenderitemId FK3 NNA DTC Kalenderitem Id Startuur Stopuur Datum Zwemles id datum kalenderitemId FK2 NNA DTC zwemlesdataId FK5 NNA DTR Zwemlesreeks id zwemlesId FK6 NNA DTC Zwemlesvraag id naam adres postcode zwemlesreeksId FK7 NA DTS
School id naam adres postcode gemeente Klas Id klasnaam aantalLeerlingen schoolId FK8 NNA DTC Factuur id schoolId FK9 NNA DTC klasfactuurId FK10 NNA DTC factuurdatum trimester schooljaar Klasfactuur id klasId FK11 NNA DTC zwemmersaantalId FK12 NNA DTR Zwemlesdata id weekdag beginuur einduur max personen Openingsuur id weekdag beginuur einduur Nieuwsbericht id titel bericht
Zwemmersaantal id datum type zwemmer toegepastePrijs aantal zwemmers tariefId FK13 NNA DTR Tarief id tariefOmschrijving actuele prijs Controle Zwemwater id datum uur temp. water temp. hal helderheid PH vrije chloor totale chloor gebonden chloor waterverbruik aantal bezoekers spoelen filter reinigen bodem levering chemicaliën Webpagina id paginatitel paginainhoud Klasreservatie kalenderitemId FK4 NNA DTC klasId FK14 NNA DTC weekdag trimester schooljaar
52
Relatieoverzicht R1: R2: R3: R4: R5: R6: R7: R8: R9: R10: R11: R12: R13: R14:
één zwemfeest heeft steeds maar één menu één menu kan in meerdere zwemfeesten voorkomen één kalenderitem bevat maar één zwemles een zwemles komt steeds maar één keer voor in een kalenderitem één zwemfeest bevat één kalenderitem één kalenderitem kan één zwemfeest bevatten één kalenderitem kan een klasreservatie bevatten één klasreservatie kan in meerdere kalenderitems voorkomen een bepaalde zwemles bevat komt maar in een zwemlesdata voor één zwemlesdata kan in meerdere zwemlessen voorkomen één zwemles bevat meerdere zwemlesreeks één zwemlesreeks bevat steeds één zwemles één zwemlesvraag kan meerdere zwemlesreeksen hebben één zwemlesreeks heeft één zwemlesvraag één school bevat meerdere klassen één klas heeft maar één school één klasfactuur heeft één klas één klas kan meerdere klasfacturen hebben een klasfactuur kan aan meerdere facturen gekoppeld zijn een bepaald factuur kan maar aan één klasfactuur toebehoren één school heeft meerdere factuur één factuur heeft één school één klasfactuur kan meerdere zwemmersaantallen hebben een bepaalde zwemmersaantal behoort toe aan een klasfactuur een bepaald zwemmersaantal heeft slechts één tarief één tarief heeft kan in meerdere zwemmersaantallen voorkomen één klas heeft kan meerdere klasreservaties hebben een klasreservatie behoort steeds toe aan één klas
53
5
MoSCoW
We geven de allerhoogste prioriteit aan de schoolzwemlessen met het automatisch genereren van een factuur samen met de zwemlessen. Uiteraard krijgt het inloggen ook een zeer hoge prioriteit anders zou iedereen in het systeem kunnen. De zwemfeestjes krijgen een lagere prioriteit samen met het beheren van de tarieven de webpagina. Het beheer van de menu’s, nieuwsberichten en openingsuren krijgen een lage prioriteit. Een gedetailleerder overzicht vindt u in de onderstaande tabel.
Letter
Verklaring
Usecase
M
Must have this
S
Should have this
C
Could have this
Facturen beheren Inloggen Schoolzwemlessen beheren Schoolzwemmers ingeven Wachtlijst beheren Zwemles inschrijven Zwemlessen beheren Algemene informatie over het zwembad opvragen Tarieven beheren Webpagina beheren (algemene informatie) Zwemfeestje reserveren Zwemfeestjes beheren Zwemmersaantallen beheren Contact opnemen Controle zwemwater beheren Menu’s beheren Nieuwsberichten beheren Openingsuren beheren
W
Would like to have it
Tabel 1 MoSCoW analyse
54
6
Planning
Week ? Week 50 Week 51 Week 52 Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8 Week 9 Week 10 Week 11 Week 12 Week 13 Week 14 Week 15 Week 16
Datum 13/12 – 19/12 20/12 – 26/12 27/12 – 2/1 3/1 – 9/1 10/1 – 16/1 17/1 – 23/1 24/1 – 30/1 31/1 – 6/2 7/2 – 13/2 14/2 – 20/2 21/2 – 27/2 28/2 – 6/3 7/3 – 13/3 14/3 – 20/3 21/3 – 27/3 28/3 – 3/4 4/4 – 10/4 11/4 – 17/4 18/4 – 24/4
Wat te doen CSS en Datamodel Integratieweek: Schoolzwemlessen beheren Vakantie BLOK BLOK Examenweek 1 Examenweek 3 Examenweek 3 Inloggen – Schoolzwemmers ingeven – Zwemles inschrijven Zwemles inschrijven - Zwemlessen beheren Facturen beheren – Wachtlijst beheren – Tarieven beheren Openingsuren ingeven – zwemfeestje reserveren Zwemfeestje beheren – Zwemmersaantallen beheren BUFFER BUFFER Algemene info opvragen – Webpagina beheren – Menu’s beheren Contact opnemen – Controle zwemwater beheren BUFFER BUFFER
55