160 likes | 272 Views
Use Cases for Client. Synchronize with server Download current college/sailor lists Create regatta ICSA standard regatta (possibly) create teams/sailors Choose teams Custom regatta Create teams Create sailors Choose teams Create rotation Do scoring RP entry Regatta report Conditions
E N D
Use Cases for Client • Synchronize with server • Download current college/sailor lists • Create regatta • ICSA standard regatta • (possibly) create teams/sailors • Choose teams • Custom regatta • Create teams • Create sailors • Choose teams • Create rotation • Do scoring • RP entry • Regatta report • Conditions • Judges • Finalize regatta • Submit • Save regatta locally
UC: Synchronize with server • Precondition: none • Postcondition: list of sailors/colleges is updated on the client • User clicks “update sailors/colleges” • Select ICSA web server • Connect to remote database • Request current list of sailors and colleges • Update local database with list
UC: Create Standard Regatta • Precondition: Need list of colleges/sailors • Postcondition: regatta is created and can be used to set up a boat rotation • User enters regatta information • Regatta title • Host school • Start date • End date • Number of divisions • Max races • Current semester • Select colleges that will participate • Select teams that will participate from each college • Create any teams not available • Team name
UC: Create Custom Regatta • Precondition: none • Postcondition: regatta is created and can be used to set up a boat rotation • User enters regatta information • Regatta title • Host school • Start date • End date • Number of divisions • Max races • Create teams • Team name
UC: Create Boat Rotation • Precondition: requires a valid regatta created • Postcondition: regatta is now ready to be scored • Enter number of boats • Give ID to each boat • Select type of rotation • Enter number of races before boats are swapped if type <> none • Select direction of rotation • Possibly manually modify rotations • Needed for commandeered boats • Print rotation
UC: Scoring • Precondition: regatta and boat rotations are created • Postcondition: race is scored • Select race • Select scoring by team name or by sail number • Enter in results for each boat • Including penalties
UC: RP Entry • Precondition: done with scoring all races • Postcondition: participants are specified • Select participants • Enter races they participated in. • Enter team/division they were in for each race. • Select skipper/crew position for each race.
UC: Regatta Report • Precondition: races are completed • Postcondition: race conditions/info are recorded • Enter race conditions • Enter types of races ran • Enter judges for regatta
UC: Finalize Regatta • Precondition: races are complete, race report is done and RP entry is done • Postcondition: regatta is complete and ready for submission • Look over results, manual validation
UC: Results Submission • Precondition: regatta is finalized, internet connectivity is present • Postcondition: regatta is submitted to remote database • Select ICSA webserver • Establish connection to webserver • Perform user authentication • Query scorer for username/password • Submit to server • Submit new teams/sailors • Submit regatta information • Submit race results • Close connection
UC: Save Regatta Locally • Precondition: regatta is created • Postcondition: regatta is saved • Query user for file name/path on disk • Save current regatta information • New sailors/teams • Races and regatta info • Rp entry • Anything that’s been done…
Use Cases for Server • Accept client submissions • New sailors/teams • New regattas • Modified regattas • Authenticate with client • Validate submitted results • Send lists of colleges, teams and sailors to client
UC: Authenticate with Client • Precondition: client wants to connect • Postcondition: client is rejected or marked as authenticated • Receives client identification • Check for valid information within scorers in database • Return result of authentication
UC: Accept Client Submissions • Precondition: Client is authenticated • Postcondition: submitted results are ready for validation • Notify client to send information • Receive any new teams and sailors • Insert into database (mark as new) • Receive regatta information • Insert into database (mark as new) • If modification then insert modification and mark as modified • Notify client of success/failure
UC: Send lists to client • Precondition: client is connected and requesting lists • Postcondition: client is disconnected • Query database for list of colleges • Query database for list of teams • Query database for list of sailors • Send each list to the client
UC: Validate submitted results • Precondition: results are awaiting validation • Postcondition: results either accepted or rejected • Select a submission from list of results awaiting validation • Manually validate results by inspection of the regatta. • Notify scorer of acceptance or rejection of results