Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij goed geïnformeerd wil zijn over de competitiegroepen. 

Brief description:

De wedstrijdleiders willen de competitiegroepen kunnen bekijken zodat ze weten welke er in het systeem staan.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider ziet alle competitiegroepen.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competitiegroepen te willen zien.


2. Systeem toont groep letter en aantal spelers van de groep. 

3. Systeem toont invulvelden voor de groep letter en aantal spelers van de groep. 



Table of Contents

Introductie

Algemene beschrijving

Dit document beschrijft de ontwerpspecificaties voor een indelingsprogramma voor Schaakvereniging UVS. Het doel van dit programma is om alles van een schaakseizoen te beheren. Per competitie zijn er rondes die moeten worden ingedeeld. Deze rondes hebben meerdere spelers waarvan de resultaten ook moeten worden verwerkt tot een ranglijst na elke ronde. Deze gegevens moeten ook worden geüpload naar de WordPress-website van Schaakvereniging UVS.

Userstories

Algemeen

US1: Als wedstrijdleider wil ik leden en gasten kunnen invoeren, updaten en verwijderen in het systeem, zodat ik ze daarna kan toevoegen aan competities.
US2: Als wedstrijdleider wil ik dat de ronde indeling uitgeprint kan worden, zodat de witspelers hierop de resultaten kunnen invullen.
US3: Als wedstrijdleider wil ik dat oude seizoenen kunnen worden bekeken, zodat deze informatie kan worden gebruikt voor statistieken.
US4: Als wedstrijdleider wil ik dat er per lid en gast een spelershistorie wordt bijgehouden.
US5: Als wedstrijdleider wil ik de historie van spelers kunnen inzien zodat oude resultaten altijd beschikbaar blijven.

Competities

US5: Als wedstrijdleider wil ik de mogelijkheid hebben om competities te beheren, zodat ik ze actueel kan houden.
US6: Als wedstrijdleider wil ik leden en gasten kunnen toevoegen aan een competitie, zodat zij kunnen gaan schaken.
US7: Als wedstrijdleider wil ik een competitie een type als periodecompetitie, meerkamp en toernooi kunnen geven , zodat deze het juiste aantal rondes kan krijgen.
US8: Als wedstrijdleider wil ik spelers kunnen indelen in verschillende categorieën of groepen binnen een competitie, zodat de competitie eerlijk en gebalanceerd is.
US9: Als wedstrijdleider wil ik het indeling van een toernooi kunnen genereren, zodat deelnemers hun indeling kunnen bekijken.
US10: Als wedstrijdleider wil ik dat alle informatie die bij een competitie hoort, op de website van de vereniging gepubliceerd kan worden, zodat actuele informatie beschikbaar is.
US11: Als wedstrijdleider wil ik het resultaat van een ronde eenvoudig kunnen invoeren, zodat deelnemers de resultaten kunnen zien.
US12: Als wedstrijdleider wil ik dat de applicatie automatisch de ranglijst bijwerkt nadat een ronde alle resultaten heeft, zodat de ranglijst up-to-date blijft.
US13: Als wedstrijdleider wil ik dat de applicatie automatisch de ratings van de spelers bijwerkt volgens de ratingformule, nadat een ronde alle resultaten heeft.
US14: Als Externe wedstrijdleider wil ik dat de resultaten van externe competities bijgehouden kunnen worden, zodat de rating van spelers altijd up-to-date kan zijn. 
US15: Als wedstrijdleider wil ik de globale ranglijst kunnen bekijken zodat duidelijk is hoe goed de leden het doen.
US16: Als wedstrijdleider wil ik de ranglijst van een competitie kunnen bekijken zodat duidelijk is hoe goed de leden het doen.

User Classes and Karakteristieken

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. Ze kunnen alles doen wat het programma zou moeten kunnen. Ze gebruiken het systeem om seizoenen, competities, leden en gasten te beheren.

Operatieomgeving

Het indelingsprogramma zal worden geprogrammeerd in Java en zal moeten werken op de ondersteunde versies van Windows en MacOS besturingssystemen. Er is een bestaande testdatabase waarop de nieuwe database gebaseerd kan worden, maar het zou ook handig zijn als het met een andere database kan werken. Daarom wordt er gebruik gemaakt van de Java Persistence API (JPA), waardoor het relatief eenvoudig wordt om een andere database aan het programma te koppelen.

Design- en Implementatiebeperkingen

Voor dit project zijn er weinig dingen die ons in de weg zullen zitten tijdens het werken. Het enige dat bekend is momenteel is dat de schaakvereniging geen budget heeft vrijgemaakt voor het hosten van een externe database waardoor wij de database lokaal moeten gaan ontwerpen.

 

Product functionaliteiten

De hoofdfunctionaliteiten van het indelingsprogramma zijn als volgt: de gebruiker moet een seizoen kunnen aanmaken, zodat er een competitie kan worden opgezet. 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 worden deze gebruikt om ranglijsten te genereren voor de specifieke rondes. Na afloop van een wedstrijd zal ook de rating van de spelers worden aangepast. Aan het einde van een speelronde zullen de resultaten worden geüpload naar de website van UVS.


ActorUse CaseBrief description
WedstrijdleiderBeheren spelersDe wedstrijdleider moet de mogelijkheid hebben om nieuwe leden en gasten in het systeem in te voeren, zodat ze later kunnen worden toegevoegd aan competities.
WedstrijdleiderPrinten ronde indelingDe wedstrijdleider moet de indeling van een ronde moeten kunnen uitprinten zodat de leden op locatie de indeling kunnen zien.
WedstrijdleiderSeizoenen bekijkenDe wedstrijdleider wil oude seizoenen kunnen bekijken zodat de historie van de club altijd bekeken kan worden.
WedstrijdleiderBeheren van competitiesDe wedstrijdleider wil de mogelijkheid hebben om competities te beheren, zodat deze actueel blijven.
WedstrijdleiderToevoegen van groep aan competitieDe wedstrijdleider moet groepen kunnen toevoegen aan een competitie, zodat er daarna spelers kunnen worden toegevoegd.
WedstrijdleiderToevoegen van spelers aan een competitiegroepDe wedstrijdleider moet in staat zijn om leden en gasten toe te voegen aan een competitiegroep, zodat zij ingedeeld en kunnen deelnemen aan de schaakwedstrijden.
WedstrijdleiderGegevens publiceren op websiteDe wedstrijdleider wil de ronde indeling, uitslagen en de ranglijst op de website publiceren zodat elk persoon online de gegevens kan bekijken.
WedstrijdleiderRonde resultaten invoerenDe wedstrijdleider wil resultaten van ronden kunnen invoeren zodat de ranglijst anders wordt.
WedstrijdleiderIndeling genereren voor competitieDe wedstrijdleider wil automatisch door het systeem een indeling voor de rondes van competities laten genereren.
WedstrijdleiderGlobale ranglijst bekijkenDe wedstrijdleider wil de globale ranglijst bekijken zodat duidelijk is wie het beste is.
WedstrijdleiderGroep ranglijst bekijkenDe wedstrijdleider wil de ranglijst van een groep bekijken zodat duidelijk is wie het beste is.
Extern wedstrijdleiderResultaat externe ronde invoerenDe externe wedstrijdleider wil het resultaat van een externe ronde invoeren zodat de rating van het lid aanpast


Image Added

Domein Model


Image Added

Use-casebeschrijvingen

Beheren spelers

UC 1.1: Spelers bekijken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij goed geïnformeerd wil zijn over wie de leden zijn en hoeveel leden er in totaal zijn.
De penningmeester, omdat veranderingen in het ledenaantal gevolgen kunnen voor het budget van de vereniging.
De secretaris, omdat hij de persoonsgegevens moet bijhouden van de actieve leden en dan is een digitale lijst erg handig.

Brief description:

De wedstrijdleiders willen de spelers kunnen bekijken zodat ze weten wie er in het systeem staat.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider ziet alle bekende spelers.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de spelerslijst te willen zien.


2. Systeem toont voornaam, achternaam, rating en type van de bekende spelers.

3. Systeem toont invulvelden voor de voornaam, achternaam, rating en type van de speler. 


UC 1.2: Spelers toevoegen

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij wil dat de leden goed kunnen worden ingedeeld d.m.v. het indelingsprogramma.
De penningmeester, omdat veranderingen in het ledenaantal gevolgen kunnen voor het budget van de vereniging.
De secretaris, omdat hij de persoonsgegevens moet bijhouden van de actieve leden en dan is het handig als de digitale lijst actueel is.

Brief description:

De wedstrijdleiders willen leden en gasten registreren binnen het systeem zodat zij ingedeeld kunnen worden binnen competities en toernooien

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe speler geregistreerd. 

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de spelerslijst te willen zien.



4. De wedstrijdleider vult de voornaam, achternaam, rating en type van de nieuwe speler in.



2. Systeem toont voornaam, achternaam, rating en type van de bekende spelers.

3. Systeem toont invulvelden voor de voornaam, achternaam, rating en type van de speler. 


5. Systeem registreert de nieuwe Speler.


UC 1.3: Spelers verwijderen

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij wil dat de leden goed kunnen worden ingedeeld d.m.v. het indelingsprogramma.
De penningmeester, omdat inactieve of niet betalende spelers een negatieve invloed hebben op het verwachte budget.
De secretaris, omdat er met inactieve spelers geen accurate toernooiplanning gemaakt kan worden

Brief description:

De wedstrijdleiders willen spelers kunnen verwijderen omdat zij niet meer actief zijn bij de vereniging.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider heeft een speler verwijderd. 

Main Success Scenario (Basic Flow): 

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de spelerslijst te willen zien.


4. De wedstrijdleider geeft aan een speler te willen verwijderen.


6. De wedstrijdleider bevestigt de keuze  .

 
2. Systeem toont voornaam, achternaam, rating en type van de bekende spelers

3. Systeem toont invulvelden voor de voornaam, achternaam, rating en type van de speler. 


5. Systeem vraagt of de gebruiker het zeker weet.


7. [keuze = ja] Systeem verwijdert de gekozen speler.

Extensions (Alternative Flow): Keuze is nee.


 

7a Speler wordt niet verwijdert.
Usecase verwijderen stopt.


UC 1.4: Spelers bewerken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij wil dat de gegevens van de leden correct in het systeem staan zodat er geen misverstanden kunnen ontstaan..
De secretaris, omdat incorrecte persoonsgegevens van de leden niet goed is voor de communicatie tussen de vereniging en de leden. 

Brief description:

De wedstrijdleiders willen leden en gasten kunnen bewerken omdat de gegevens van de speler anders is.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider heeft de gegevens van een speler aangepast.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de spelerslijst te willen zien.



4. De wedstrijdleider geeft aan een speler te willen bewerken.


6. De wedstrijdleider past de gegevens aan en geeft aan te willen opslaan.


2. Systeem toont voornaam, achternaam, rating en type van de bekende spelers

3. Systeem toont invulvelden voor de voornaam, achternaam, rating en type van de speler. 


5. Systeem toont de voornaam, achternaam, type en de rating van de speler. 


7. Systeem slaat de nieuwe gegevens op.

System Sequence Diagram 

Omdat deze vier usecases allemaal CRUD zijn is er voor gekozen om alleen het aanmaken van een speler uit te werken in een system sequence diagram. De wedstrijdleider vraagt als eerste alle spelers en de invulvelden op, het systeem laat deze vervolgens zien in een tabel. Daarna vult de wedstrijdleider de velden in en maakt een nieuwe speler aan.

Image Added

Beheren van competities

Use Case 2.1: Competitie aanmaken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat activiteiten als competities nieuwe mensen aantrekken om bij de vereniging te betrekken.
De penningmeester, omdat activiteiten soms financiële aspecten hebben, zoals inschrijfgeld of prijsgeld.
De secretaris, omdat hij verantwoordelijk is voor het administratieve werk rondom de competities. 

Brief description:

De wedstrijdleider moet een nieuwe competitie kunnen aanmaken, zodat deze kan worden ingezet voor het organiseren van schaakwedstrijden.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe competitie aangemaakt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.


3. De wedstrijdleider geeft aan een competitie te willen toevoegen.


5. De wedstrijdleider vult de gegevens in voor de competitie.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.

4. Systeem toont invulvelden voor de naam, soort competitie, aantal rondes, aantal keer dezelfde kleur, aantal punten voor winst, verlies, remise, oneven en vrijgesteld.


6. Systeem maakt een nieuwe competitie aan.


Use Case 2.2: Competities bekijken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

Spelers, omdat zij met een duidelijk overzicht gemakkelijk kunnen zien welke competities er zijn voor een inschrijving.
Sponsoren, omdat zij met een overzicht gemakkelijk kunnen zien welke activiteit wanneer is. Hiermee kunnen ze mogelijk reclame maken voor de activiteit zoals flyers.
Voorzitters, omdat hij wilt weten welke competities relevant zijn voor de leden.

Brief description:

De wedstrijdleider wilt de competities kunnen bekijken zodat hij alle competities in een ogenblik kan zien.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe competitie aangemaakt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.


Use Case 2.3: Competitie bewerken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

Secretaris, omdat zij actuele informatie willen over de competities zodat er geen misverstanden ontstaan.
Voorzitters, omdat hij wilt weten welke competities relevant zijn voor de leden.
Penningmeester, omdat met veranderingen aan de competitie het inschrijfgeld of prijzengeld mogelijk kan veranderen.

Brief description:

De wedstrijdleider moet een nieuwe competitie kunnen aanmaken, zodat deze kan worden ingezet voor het organiseren van schaakwedstrijden.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een competitie bijgewerkt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.

3. De wedstrijdleider geeft aan een competitie te willen bewerken.

5. De wedstrijdleider vult de bewerkte gegevens van de competitie in.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.

4. Systeem toont invulvelden voor de naam, soort competitie, aantal rondes, aantal keer dezelfde kleur, aantal punten voor winst, verlies, remise, oneven en vrijgesteld.

6. Systeem bewerkt de competitie met de nieuwe gegevens.


Use Case 2.4: Competitie verwijderen

Primary actor: Wedstrijdleider

Stakeholders and Interests:

Secretaris, omdat zij geen inactieve of incorrecte informatie over de competities willen zodat er geen onduidelijkheden komen.
Voorzitters, omdat hij wilt dat de oude informatie weggehaald wordt zodat er focus kan gelegd worden op nieuwe competities.

Brief description:

De wedstrijdleider moet een competitie kunnen verwijderen als deze niet meer nodig zijn binnen het systeem.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe competitie aangemaakt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.


3. De wedstrijdleider geeft aan een competitie te willen verwijderen.


7. De wedstrijdleider bevestigt de keuze.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.


4. Systeem vraagt of de gebruiker het zeker weet.


6. [keuze = ja] Systeem verwijderd de gekozen competitie.

Extensions (Alternative Flow): Keuze is nee.



6a Competitie wordt niet verwijdert.
Usecase verwijderen stopt.


System Sequence Diagram 

Omdat deze vier usecases allemaal CRUD zijn is er voor gekozen om alleen het aanmaken van een speler uit te werken in een system sequence diagram, zodat toch duidelijk is hoe het werkt. De wedstrijdleider wil een nieuwe competitie aanmaken, daarom wordt de createCompetition functie aangeroepen.

Image Added


Beheren van competitiegroepen

UC 3.1: Competitiegroepen bekijken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij goed geïnformeerd wil zijn over de competitiegroepen. 

Brief description:

De wedstrijdleiders willen de competitiegroepen kunnen bekijken zodat ze weten welke er in het systeem staan.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider ziet alle competitiegroepen.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competitiegroepen te willen zien.


2. Systeem toont groep letter en aantal spelers van de groep. 

3. Systeem toont invulvelden voor de groep letter en aantal spelers van de groep. 



Table of Contents

Introductie

Algemene beschrijving

Dit document beschrijft de ontwerpspecificaties voor een indelingsprogramma voor Schaakvereniging UVS. Het doel van dit programma is om alles van een schaakseizoen te beheren. Per competitie zijn er rondes die moeten worden ingedeeld. Deze rondes hebben meerdere spelers waarvan de resultaten ook moeten worden verwerkt tot een ranglijst na elke ronde. Deze gegevens moeten ook worden geüpload naar de WordPress-website van Schaakvereniging UVS.

Userstories

Algemeen

US1: Als wedstrijdleider wil ik leden en gasten kunnen invoeren, updaten en verwijderen in het systeem, zodat ik ze daarna kan toevoegen aan competities.
US2: Als wedstrijdleider wil ik dat de ronde indeling uitgeprint kan worden, zodat de witspelers hierop de resultaten kunnen invullen.
US3: Als wedstrijdleider wil ik dat oude seizoenen kunnen worden bekeken, zodat deze informatie kan worden gebruikt voor statistieken.
US4: Als wedstrijdleider wil ik dat er per lid en gast een spelershistorie wordt bijgehouden.
US5: Als wedstrijdleider wil ik de historie van spelers kunnen inzien zodat oude resultaten altijd beschikbaar blijven.

Competities

US5: Als wedstrijdleider wil ik de mogelijkheid hebben om competities te beheren, zodat ik ze actueel kan houden.
US6: Als wedstrijdleider wil ik leden en gasten kunnen toevoegen aan een competitie, zodat zij kunnen gaan schaken.
US7: Als wedstrijdleider wil ik een competitie een type als periodecompetitie, meerkamp en toernooi kunnen geven , zodat deze het juiste aantal rondes kan krijgen.
US8: Als wedstrijdleider wil ik spelers kunnen indelen in verschillende categorieën of groepen binnen een competitie, zodat de competitie eerlijk en gebalanceerd is.
US9: Als wedstrijdleider wil ik het indeling van een toernooi kunnen genereren, zodat deelnemers hun indeling kunnen bekijken.
US10: Als wedstrijdleider wil ik dat alle informatie die bij een competitie hoort, op de website van de vereniging gepubliceerd kan worden, zodat actuele informatie beschikbaar is.
US11: Als wedstrijdleider wil ik het resultaat van een ronde eenvoudig kunnen invoeren, zodat deelnemers de resultaten kunnen zien.
US12: Als wedstrijdleider wil ik dat de applicatie automatisch de ranglijst bijwerkt nadat een ronde alle resultaten heeft, zodat de ranglijst up-to-date blijft.
US13: Als wedstrijdleider wil ik dat de applicatie automatisch de ratings van de spelers bijwerkt volgens de ratingformule, nadat een ronde alle resultaten heeft.
US14: Als Externe wedstrijdleider wil ik dat de resultaten van externe competities bijgehouden kunnen worden, zodat de rating van spelers altijd up-to-date kan zijn. 
US15: Als wedstrijdleider wil ik de globale ranglijst kunnen bekijken zodat duidelijk is hoe goed de leden het doen.
US16: Als wedstrijdleider wil ik de ranglijst van een competitie kunnen bekijken zodat duidelijk is hoe goed de leden het doen.

User Classes and Karakteristieken

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. Ze kunnen alles doen wat het programma zou moeten kunnen. Ze gebruiken het systeem om seizoenen, competities, leden en gasten te beheren.

Operatieomgeving

Het indelingsprogramma zal worden geprogrammeerd in Java en zal moeten werken op de ondersteunde versies van Windows en MacOS besturingssystemen. Er is een bestaande testdatabase waarop de nieuwe database gebaseerd kan worden, maar het zou ook handig zijn als het met een andere database kan werken. Daarom wordt er gebruik gemaakt van de Java Persistence API (JPA), waardoor het relatief eenvoudig wordt om een andere database aan het programma te koppelen.

Design- en Implementatiebeperkingen

Voor dit project zijn er weinig dingen die ons in de weg zullen zitten tijdens het werken. Het enige dat bekend is momenteel is dat de schaakvereniging geen budget heeft vrijgemaakt voor het hosten van een externe database waardoor wij de database lokaal moeten gaan ontwerpen.

 

Product functionaliteiten

De hoofdfunctionaliteiten van het indelingsprogramma zijn als volgt: de gebruiker moet een seizoen kunnen aanmaken, zodat er een competitie kan worden opgezet. 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 worden deze gebruikt om ranglijsten te genereren voor de specifieke rondes. Na afloop van een wedstrijd zal ook de rating van de spelers worden aangepast. Aan het einde van een speelronde zullen de resultaten worden geüpload naar de website van UVS.


ActorUse CaseBrief description
WedstrijdleiderBeheren spelersDe wedstrijdleider moet de mogelijkheid hebben om nieuwe leden en gasten in het systeem in te voeren, zodat ze later kunnen worden toegevoegd aan competities.
WedstrijdleiderPrinten ronde indelingDe wedstrijdleider moet de indeling van een ronde moeten kunnen uitprinten zodat de leden op locatie de indeling kunnen zien.
WedstrijdleiderSeizoenen bekijkenDe wedstrijdleider wil oude seizoenen kunnen bekijken zodat de historie van de club altijd bekeken kan worden.
WedstrijdleiderBeheren van competitiesDe wedstrijdleider wil de mogelijkheid hebben om competities te beheren, zodat deze actueel blijven.
WedstrijdleiderToevoegen van groep aan competitieDe wedstrijdleider moet groepen kunnen toevoegen aan een competitie, zodat er daarna spelers kunnen worden toegevoegd.
WedstrijdleiderToevoegen van spelers aan een competitiegroepDe wedstrijdleider moet in staat zijn om leden en gasten toe te voegen aan een competitiegroep, zodat zij ingedeeld en kunnen deelnemen aan de schaakwedstrijden.
WedstrijdleiderGegevens publiceren op websiteDe wedstrijdleider wil de ronde indeling, uitslagen en de ranglijst op de website publiceren zodat elk persoon online de gegevens kan bekijken.
WedstrijdleiderRonde resultaten invoerenDe wedstrijdleider wil resultaten van ronden kunnen invoeren zodat de ranglijst anders wordt.
WedstrijdleiderIndeling genereren voor competitieDe wedstrijdleider wil automatisch door het systeem een indeling voor de rondes van competities laten genereren.
WedstrijdleiderGlobale ranglijst bekijkenDe wedstrijdleider wil de globale ranglijst bekijken zodat duidelijk is wie het beste is.
WedstrijdleiderGroep ranglijst bekijkenDe wedstrijdleider wil de ranglijst van een groep bekijken zodat duidelijk is wie het beste is.
Extern wedstrijdleiderResultaat externe ronde invoerenDe externe wedstrijdleider wil het resultaat van een externe ronde invoeren zodat de rating van het lid aanpast


Image Added

Domein Model


Image Added

Use-casebeschrijvingen

Beheren spelers

UC 1.1: Spelers bekijken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij goed geïnformeerd wil zijn over wie de leden zijn en hoeveel leden er in totaal zijn.
De penningmeester, omdat veranderingen in het ledenaantal gevolgen kunnen voor het budget van de vereniging.
De secretaris, omdat hij de persoonsgegevens moet bijhouden van de actieve leden en dan is een digitale lijst erg handig.

Brief description:

De wedstrijdleiders willen de spelers kunnen bekijken zodat ze weten wie er in het systeem staat.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider ziet alle bekende spelers.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de spelerslijst te willen zien.


2. Systeem toont voornaam, achternaam, rating en type van de bekende spelers.

3. Systeem toont invulvelden voor de voornaam, achternaam, rating en type van de speler. 


UC 1.2: Spelers toevoegen

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij wil dat de leden goed kunnen worden ingedeeld d.m.v. het indelingsprogramma.
De penningmeester, omdat veranderingen in het ledenaantal gevolgen kunnen voor het budget van de vereniging.
De secretaris, omdat hij de persoonsgegevens moet bijhouden van de actieve leden en dan is het handig als de digitale lijst actueel is.

Brief description:

De wedstrijdleiders willen leden en gasten registreren binnen het systeem zodat zij ingedeeld kunnen worden binnen competities en toernooien

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe speler geregistreerd. 

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de spelerslijst te willen zien.



4. De wedstrijdleider vult de voornaam, achternaam, rating en type van de nieuwe speler in.



2. Systeem toont voornaam, achternaam, rating en type van de bekende spelers.

3. Systeem toont invulvelden voor de voornaam, achternaam, rating en type van de speler. 


5. Systeem registreert de nieuwe Speler.


UC 1.3: Spelers verwijderen

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij wil dat de leden goed kunnen worden ingedeeld d.m.v. het indelingsprogramma.
De penningmeester, omdat inactieve of niet betalende spelers een negatieve invloed hebben op het verwachte budget.
De secretaris, omdat er met inactieve spelers geen accurate toernooiplanning gemaakt kan worden

Brief description:

De wedstrijdleiders willen spelers kunnen verwijderen omdat zij niet meer actief zijn bij de vereniging.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider heeft een speler verwijderd. 

Main Success Scenario (Basic Flow): 

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de spelerslijst te willen zien.


4. De wedstrijdleider geeft aan een speler te willen verwijderen.


6. De wedstrijdleider bevestigt de keuze  .

 
2. Systeem toont voornaam, achternaam, rating en type van de bekende spelers

3. Systeem toont invulvelden voor de voornaam, achternaam, rating en type van de speler. 


5. Systeem vraagt of de gebruiker het zeker weet.


7. [keuze = ja] Systeem verwijdert de gekozen speler.

Extensions (Alternative Flow): Keuze is nee.


 

7a Speler wordt niet verwijdert.
Usecase verwijderen stopt.


UC 1.4: Spelers bewerken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij wil dat de gegevens van de leden correct in het systeem staan zodat er geen misverstanden kunnen ontstaan..
De secretaris, omdat incorrecte persoonsgegevens van de leden niet goed is voor de communicatie tussen de vereniging en de leden. 

Brief description:

De wedstrijdleiders willen leden en gasten kunnen bewerken omdat de gegevens van de speler anders is.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider heeft de gegevens van een speler aangepast.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de spelerslijst te willen zien.



4. De wedstrijdleider geeft aan een speler te willen bewerken.


6. De wedstrijdleider past de gegevens aan en geeft aan te willen opslaan.


2. Systeem toont voornaam, achternaam, rating en type van de bekende spelers

3. Systeem toont invulvelden voor de voornaam, achternaam, rating en type van de speler. 


5. Systeem toont de voornaam, achternaam, type en de rating van de speler. 


7. Systeem slaat de nieuwe gegevens op.

System Sequence Diagram 

Omdat deze vier usecases allemaal CRUD zijn is er voor gekozen om alleen het aanmaken van een speler uit te werken in een system sequence diagram. De wedstrijdleider vraagt als eerste alle spelers en de invulvelden op, het systeem laat deze vervolgens zien in een tabel. Daarna vult de wedstrijdleider de velden in en maakt een nieuwe speler aan.

Image Added

Beheren van competities

Use Case 2.1: Competitie aanmaken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat activiteiten als competities nieuwe mensen aantrekken om bij de vereniging te betrekken.
De penningmeester, omdat activiteiten soms financiële aspecten hebben, zoals inschrijfgeld of prijsgeld.
De secretaris, omdat hij verantwoordelijk is voor het administratieve werk rondom de competities. 

Brief description:

De wedstrijdleider moet een nieuwe competitie kunnen aanmaken, zodat deze kan worden ingezet voor het organiseren van schaakwedstrijden.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe competitie aangemaakt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.


3. De wedstrijdleider geeft aan een competitie te willen toevoegen.


5. De wedstrijdleider vult de gegevens in voor de competitie.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.

4. Systeem toont invulvelden voor de naam, soort competitie, aantal rondes, aantal keer dezelfde kleur, aantal punten voor winst, verlies, remise, oneven en vrijgesteld.


6. Systeem maakt een nieuwe competitie aan.


Use Case 2.2: Competities bekijken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

Spelers, omdat zij met een duidelijk overzicht gemakkelijk kunnen zien welke competities er zijn voor een inschrijving.
Sponsoren, omdat zij met een overzicht gemakkelijk kunnen zien welke activiteit wanneer is. Hiermee kunnen ze mogelijk reclame maken voor de activiteit zoals flyers.
Voorzitters, omdat hij wilt weten welke competities relevant zijn voor de leden.

Brief description:

De wedstrijdleider wilt de competities kunnen bekijken zodat hij alle competities in een ogenblik kan zien.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe competitie aangemaakt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.


Use Case 2.3: Competitie bewerken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

Secretaris, omdat zij actuele informatie willen over de competities zodat er geen misverstanden ontstaan.
Voorzitters, omdat hij wilt weten welke competities relevant zijn voor de leden.
Penningmeester, omdat met veranderingen aan de competitie het inschrijfgeld of prijzengeld mogelijk kan veranderen.

Brief description:

De wedstrijdleider moet een nieuwe competitie kunnen aanmaken, zodat deze kan worden ingezet voor het organiseren van schaakwedstrijden.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een competitie bijgewerkt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.

3. De wedstrijdleider geeft aan een competitie te willen bewerken.

5. De wedstrijdleider vult de bewerkte gegevens van de competitie in.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.

4. Systeem toont invulvelden voor de naam, soort competitie, aantal rondes, aantal keer dezelfde kleur, aantal punten voor winst, verlies, remise, oneven en vrijgesteld.

6. Systeem bewerkt de competitie met de nieuwe gegevens.


Use Case 2.4: Competitie verwijderen

Primary actor: Wedstrijdleider

Stakeholders and Interests:

Secretaris, omdat zij geen inactieve of incorrecte informatie over de competities willen zodat er geen onduidelijkheden komen.
Voorzitters, omdat hij wilt dat de oude informatie weggehaald wordt zodat er focus kan gelegd worden op nieuwe competities.

Brief description:

De wedstrijdleider moet een competitie kunnen verwijderen als deze niet meer nodig zijn binnen het systeem.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe competitie aangemaakt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.


3. De wedstrijdleider geeft aan een competitie te willen verwijderen.


7. De wedstrijdleider bevestigt de keuze.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.


4. Systeem vraagt of de gebruiker het zeker weet.


6. [keuze = ja] Systeem verwijderd de gekozen competitie.

Extensions (Alternative Flow): Keuze is nee.



6a Competitie wordt niet verwijdert.
Usecase verwijderen stopt.


System Sequence Diagram 

Omdat deze vier usecases allemaal CRUD zijn is er voor gekozen om alleen het aanmaken van een speler uit te werken in een system sequence diagram, zodat toch duidelijk is hoe het werkt. De wedstrijdleider wil een nieuwe competitie aanmaken, daarom wordt de createCompetition functie aangeroepen.

Image Added


Beheren van competitiegroepen

UC 3.1: Competitiegroepen bekijken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De voorzitter, omdat hij goed geïnformeerd wil zijn over de competitiegroepen. 

Brief description:

De wedstrijdleiders willen de competitiegroepen kunnen bekijken zodat ze weten welke er in het systeem staan.

De secretaris, omdat hij verantwoordelijk is voor het administratieve werk rondom de competities. 

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open. 

Postconditions (Success Guarantee): De wedstrijdleider ziet alle competitiegroepen.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competitiegroepen te willen zien.


2. Systeem toont groep letter en aantal spelers van de groep. 

3. Systeem toont invulvelden voor de groep letter en aantal spelers van de groep. 


Use Case 2.1: Competitiegroep aanmaken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

De wedstrijdleiders willen de competitiegroepen kunnen bekijken zodat ze weten welke er in het systeem staan.
De secretaris, omdat hij verantwoordelijk is voor het administratieve werk rondom de competities. 

Brief description:

De wedstrijdleider moet een nieuwe competitie kunnen aanmaken, zodat deze kan worden ingezet voor het organiseren van schaakwedstrijden.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe competitie aangemaakt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.


3. De wedstrijdleider geeft aan een competitie te willen toevoegen.


5. De wedstrijdleider vult de gegevens in voor de competitie.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.

4. Systeem toont invulvelden voor de naam, soort competitie, aantal rondes, aantal keer dezelfde kleur, aantal punten voor winst, verlies, remise, oneven en vrijgesteld.


6. Systeem maakt een nieuwe competitie aan.


Use Case 2.3: Competitiegroep bewerken

Primary actor: Wedstrijdleider

Stakeholders and Interests:

Secretaris, omdat zij actuele informatie willen over de competities zodat er geen misverstanden ontstaan.
Voorzitters, omdat hij wilt weten welke competities relevant zijn voor de leden.
Penningmeester, omdat met veranderingen aan de competitie het inschrijfgeld of prijzengeld mogelijk kan veranderen.

Brief description:

De wedstrijdleider moet een nieuwe competitie kunnen aanmaken, zodat deze kan worden ingezet voor het organiseren van schaakwedstrijden.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een competitie bijgewerkt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.

3. De wedstrijdleider geeft aan een competitie te willen bewerken.

5. De wedstrijdleider vult de bewerkte gegevens van de competitie in.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.

4. Systeem toont invulvelden voor de naam, soort competitie, aantal rondes, aantal keer dezelfde kleur, aantal punten voor winst, verlies, remise, oneven en vrijgesteld.

6. Systeem bewerkt de competitie met de nieuwe gegevens.


Use Case 2.4: Competitiegroep verwijderen

Primary actor: Wedstrijdleider

Stakeholders and Interests:

Secretaris, omdat zij geen inactieve of incorrecte informatie over de competities willen zodat er geen onduidelijkheden komen.
Voorzitters, omdat hij wilt dat de oude informatie weggehaald wordt zodat er focus kan gelegd worden op nieuwe competities.

Brief description:

De wedstrijdleider moet een competitie kunnen verwijderen als deze niet meer nodig zijn binnen het systeem.

Preconditions: De wedstrijdleider heeft KlukKluk geopend en heeft het hoofdscherm open.

Postconditions (Success Guarantee): De wedstrijdleider heeft een nieuwe competitie aangemaakt.

Main Success Scenario (Basic Flow):

Actor Action

System Responsibility

1. De wedstrijdleider geeft aan de competities te willen zien.


3. De wedstrijdleider geeft aan een competitie te willen verwijderen.


7. De wedstrijdleider bevestigt de keuze.


2. Systeem toont de naam, competitie type en aantal spelers van de bestaande competities.


4. Systeem vraagt of de gebruiker het zeker weet.


6. [keuze = ja] Systeem verwijderd de gekozen competitie.

Extensions (Alternative Flow): Keuze is nee.



6a Competitie wordt niet verwijdert.
Usecase verwijderen stopt.


Andere functionele eisen (optional)

...