1 Introduction
1.1 1 Overall Description
Dit document beschrijft de ontwerpspecificaties voor een indelingsprogramma voor Schaakvereniging UVS. Het doel van dit programma is om alles van een seizoen binnen het schaken te beheren. Per competitie zijn er rondes die moeten worden ingedeeld in rondes. Deze rondes hebben meerdere spelers met resultaten die ook moeten worden verwerkt tot een ranglijst na elke ronde. Deze data moet ook worden ge-upload naar de WordPress website van Schaakvereniging UVS.
1.2 Userstories
Algemeen
US1: Als beheerder wil ik op de website kunnen inloggen, zodat ik competities kan beheren.
US2: Als beheerder wil ik leden en niet-leden kunnen invoeren in het systeem, zodat ik ze daarna kan toevoegen aan competities.
US3: Als beheerder wil ik dat sommige informatie uitgeprint kan worden, zodat de informatie ook fysiek beschikbaar is.
US4: Als beheerder wil ik dat oude seizoenen kunnen worden bekeken, zodat deze informatie kan worden gebruikt voor statistieken.
US5: Als beheerder wil ik dat er per lid en niet-lid een spelershistorie wordt bijgehouden.
Competities
US6: Als beheerder wil ik een competitie kunnen aanmaken, zodat ik mijn leden kan laten schaken.
US7: Als beheerder wil ik leden en niet-leden kunnen toevoegen aan een competitie, zodat zij kunnen gaan schaken.
US8: Als beheerder wil ik een competitie een type kunnen geven, zodat deze het juiste aantal rondes kan krijgen.
...
US9: Als beheerder wil ik spelers kunnen indelen in verschillende categorieën of groepen binnen een competitie, zodat de competitie eerlijk en gebalanceerd is.
US10: Als beheerder wil ik het schema van een toernooi kunnen genereren, zodat deelnemers hun schema kunnen bekijken.
US11: Als beheerder wil ik dat alle informatie die bij een competitie hoort, op de website van de vereniging gepubliceerd kan worden, zodat actuele informatie beschikbaar is.
US12: Als beheerder wil ik het resultaat van een ronde kunnen invoeren, zodat deelnemers de resultaten kunnen zien.
US13: Als beheerder wil ik dat de applicatie automatisch de ranglijst bijwerkt nadat een ronde alle resultaten heeft, zodat de ranglijst up-to-date blijft.
US14: Als beheerder wil ik dat de applicatie automatisch de ratings van de spelers bijwerkt volgens de ratingformule, nadat een ronde alle resultaten heeft.
1.3 User Classes and Characteristics
Binnen het indelingsprogramma zijn er twee gebruikers: de interne wedstrijdleider en de externe wedstrijdleider van de schaakvereniging. Deze gebruikers krijgen toegang tot het programma door in te loggen met hun eigen gegevens. Zij kunnen alles wat het programma zou moeten doen. Zij gebruiken het systeem om seizoenen, competities, leden en niet leden te beheren.
1.
...
4 Operating Environment
Het indelingsprogramma zal worden uit geprogrammeerd worden in Java en zal moeten werken op de Windows en MacOS operating systems. Er is een bestaande testdatabase waarop de nieuwe database gebaseerd kan worden maar het zou ook liever makkelijk met een andere database kunnen werken. Daarom wordt er gewerkt met de Java Persistence API (JPA). Hierdoor wordt het relatief makkelijker om een andere database aan het programma te koppelen.
1.
...
5 Design and Implementation Constraints
<Describe any items or issues that will limit the options available to the developers. These might include: hardware (e.g. specific mobile platforms), specific technologies, tools, and databases to be used; interfaces to other applications; programming language required; or communications protocols>
1.
...
6 Product Functions
De hoofdfunctionaliteiten van het indelingsprogramma zijn als volgt: De gebruiker moet een seizoen kunnen aanmaken, zodat hier een competitie aangemaakt kan worden. Binnen deze competities zijn er speelrondes die moeten worden ingedeeld in speelparen. Het aantal speelrondes verschilt per competitietype. Nadat deze speelrondes zijn gespeeld, moeten de resultaten worden ingevuld en zullen deze resultaten worden meegenomen om ranglijsten te maken voor de specifieke rondes. Na afloop van een wedstrijd zal de rating van de spelers ook worden aangepast. Aan het einde van een speelronde zullen de resultaten worden geüpload naar de website van UVS.
Actor | Use Case | Beschrijving |
---|---|---|
Wedstrijdleider |
2 Domain Model
<Provide a diagram showing important real-situation conceptual classes in the application domain. Do NOT include software classes. Describe each of the conceptual classes in a glossary.>
...