Bedrijfsbeschrijving
Arnhem
Context
Op de HAN werken docenten en tevens niet-onderwijzend personeel. Dit personeel kan ook de rol innemen van Studieloopbaanbegeleider. Studieloopbaanbegeleiders hebben regelmatig SLB lessen. Daarnaast maakt een Studieloopbaanbegeleider regelmatig een afspraak met een student voor een voortgangsgesprek. Docenten geven lessen maar hebben ook met zekere regelmaat assessmentgesprekken of feedbackgesprekken met studenten. De lessen worden ingeroosterd maar de afspraken voor de gesprekken worden individueel of met samenwerkingsgroepjes gemaakt.
Het maken van deze afspraken is een tijdrovend karwei. Ook worden afspraken nogal eens vergeten. Het zou fijn zijn wanneer er een ondersteunende applicatie zou bestaan die het maken van afspraken vergemakkelijkt en die tevens een signaalfunctie biedt.
Het maken van dit systeem is opgedeeld in 2 opdrachten:
- Opdracht 1 betreft het docenten- en beheerdersdeel
- Opdracht 2 betreft het studentendeel
De relationele databasestructuur wordt aangereikt. ORM mapping middels Eclipselink moet het team zelf realiseren.
Opdracht 1: Opdracht beheerders- en docentendeel afsprakenapplicatie.
Beheerder:
Importfunctie: Studentgegevens kunnen worden geïmporteerd.
Bij keuze van deze functie verschijnt een webpagina met een selectieveld. Op het lokale werkstation wordt een bestand geselecteerd. Na bevestiging door de beheerder wordt dit bestand ge-upload naar de server.
Het bestand dient te volgende structuur te hebben:
Studentnr;voornaam;tussenvgsl;achternaam;hanemail;klasdeelname1,klasdeelname2,etc..
Velden zijn dus gesplitst door middel van een ; en binnen het veld klasdeelnames zijn de actuele klassen gesplitst met een , .
Het programma dient aan de gebruiker enkele regels te tonen met als kop de genoemde naam zodat de beheerder kan controleren of het bestand de juiste structuur heeft. Nadat de beheerder akkoord heeft gegeven (Bij annuleren wordt het bestand van de server verwijderd), start de import.
Bij elke regel, wordt gecheckt of de betreffende persoon reeds in het systeem zit. Zo nee dan wordt een persoon gecreëerd.
Vervolgens worden de klasdeelnames toegevoegd. Indien een klas nog niet bestaat in het systeem, wordt deze toegevoegd. De code wordt dan zowel de klascode als de omschrijving. Als opleiding mag ICA worden ingevuld. Er wordt gecontroleerd of de klasdeelname al bestaat, anders wordt deze toegevoegd.
Wanneer een regel niet verwerkt kan worden, wordt deze regel weggeschreven in een logbestand. De gebruiker krijgt dan de melding dat het programma beëindigd is met fouten.
Docent/SLB-er:
Aanmeldfunctie: Een docent of studieloopbaanbegeleider die het systeem wil gebruiken kan zich als zodanig aanmelden.
De docent geeft te kennen zich aan te willen melden.
Hiervoor verstrekt hij zijn persoonsgegevens. (docent code, Naam gegevens en HAN emailadres, werkplek en telefoonnummer ) Het emailadres MOET eindigen op @han.nl. Verder geeft hij aan of hij docent is en/of Studieloopbaanbegeleider.
Behalve dat de persoonsgegevens moeten worden weggeschreven, moet nu ook een authenticatie worden aangemaakt waarbij de persoon in kwestie ook de betreffende rollen krijgt toebedeeld. Er wordt een wachtwoord gegenereerd voor deze gebruiker en hij krijgt een mailtje met dit wachtwoord.
Klassen en studenten Toevoegen:
Er moet een functie komen waarin een docent of SLB-er klassen kan toevoegen waaraan hij/zij les geeft, (Een SLB groep is gewoon als klas gedefinieerd)
Tevens moet dit gekoppeld worden aan een vak. Behalve een klas moet de docent ook herkansers kunnen toevoegen aan dit vak.
Tijdvakken vrijgeven:
Een docent moet tijdvakken kunnen definieren die beschikbaar zijn voor afspraken. Een tijdvak is er voor 1 afspraak.
De docent geeft aan waarvoor hij tijdvakken beschikbaar gaat stellen. Dit kan zijn voor 1 of meerdere klassen, voor 1 of meerdere vakken en voor 1 of meerdere afspraaksoorten.
Hierna kan de docent aangeven hoeveel minuten er voor een afspraak staat.
Vervolgens kan hij per datum een aantal starttijdstippen ingeven. Het systeem controleert op overlappingen en geeft een foutmelding.
Naast deze kernfuncties zijn er natuurlijk ook nog de nodige onderhoudsfuncties (Wat CRUD functionaliteit)
Studenten uitnodigen:
Op basis van de ingevoerde constrains kan worden bepeaald welke studenten in aanmerking komen voor een afspraak. Voor de studenten in kwestie kan een uitnodigings mail gecomponeerd worden en verstuurd.
Voor dit gebeurt, wordt gecheckt of de student al een login account heeft. Zo niet, dan wordt deze aangemaakt conform de procedure bij docent. (Natuurlijk alleen voor de rol student).
Keywords
Voor docenten en beheerder webinterface
MySQL db
JAVA Backbone
Communicatie tussen client en applicatie via webservice
Opdracht 2: Opdracht studentendeel afsprakenapplicatie
Studentdeel:
Bevat in ieder geval een android app maar ook een webinterface. (Windows 8/10 app en iPhone zou mooi zijn maar heeft lagere prioriteit)
Persoonsgegevens:
Wanneer een student dit selecteert, ziet hij zijn studentnummer, naam etc, telefoonnummer
(initieel blanco). Ook heeft hij 2 lege wachtwoordvelden. Zijn mailadres, telefoonnummer en wachtwoord kan hij wijzigen. De rest van de gegevens zijn read only.
Het wachtwoord moet aan bepaalde eisen voldoen. Ook moet het wachtwoord 2 maal indentiek worden ingegeven om de wijziging door te kunnen voeren.
Wanneer hij zijn mailadres wijzigt, geldt dit alleen voor de afsprakenapp en niet voor het authenticatiesysteem. Dit blijft op het HAN adres staan.
Maken afspraak:
Student geeft aan of de afspraak individueel is of voor een groepje waar hij deel van uitmaakt.
Student selecteert docent voor afspraak. (Systeem biedt alleen docenten waar afspraak mee mogelijk is) Student selecteert afspraaksoort.
Systeem toont de eerstvolgende dag met vrije tijdvakken.
Student kan steeds naar een volgende/vorige dag springen (Mooi als dat via een zwiep op het scherm kan). Student kan een tijdvak selecteren. Na bevestiging wordt het tijdvak gereserveerd voor de student (of zijn groepje)
De student of ieder lid van het groepje krijgt een mailbericht met de details van de afspraak. Het zou mooi zijn wanneer dat een agenda afspraak request is zodat met 1 druk op de knop de afspraak in de agenda wordt geplaatst.
Afspraakherinnering:
Er dient een functie te komen die, door een timer getriggerd,
Een te definiëren aantal uren voor dat een afspraak plaatsvindt, wordt er een herinneringsboodschap naar de student gestuurd. Dit kan in de vorm van een mailtje zijn maar eventueel ook een whatsapp bericht wanneer het telefoonnummer van de student bekend is.
Keywords
- Voor studenten een app en een webinterface
- Communicatie tussen client en applicatie via webservice
- JAVA Backbone
- MySQL db