Forprosjektrapport ElevApp Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren 2017 Gruppe 14 Mirko Grimm, s236630 Andreas Krutnes, s236656 Japple John Regalario, s236621
Innholdsfortegnelse 1 Presentasjon... 2 2 Sammendrag... 3 3 Dagens situasjon... 3 4 Mål og rammebetingelser... 4 5 Løsninger og alternativer... 4 6 Analyse av virkninger... 5 7 Arbeids- og fremdriftsplan... 6 7.1 Arbeidsplan faser... 6 7.2 Fremdriftsplan... 7
Oppgave Sonans Gruppen ønsker seg en mobilapplikasjon som vil bistå elevene i løpet av skoleåret, spesielt i forhold til studentbevis, timeplan og fravær skal appen gjør hverdags skolelivet enklere. 1.Presentasjon Prosjekttittel: ElevApp Periode: Januar - Mai 2017 Gruppenummer: 14 Mirko Grimm, s236630 Andreas Krutnes, s236656 Japple John Regalario, s236621 Talsmann: Intern veileder: Oppdragsgiver: Ekstern veileder: Andreas Krutnes Thor E Hasle Sonans Gruppen Ole Tobias Norli OleTobias.Norli@sonans.no Prosjektside: http://student.cs.hioa.no/~s236656/bacheloroppgave/
2.Sammendrag Denne oppgaven tar for seg det å lage en mobilapplikasjon som vil bistå elevene i løpet av skoleåret. Applikasjon skal blant annet innholde timeplan, studentbevis og funskjonalitet for registrering av fravær som skal verifiseres gjennom geolokalisering. Dette gjøres ved interaksjon gjennom appen. For å gjøre applikasjon tilgjenglig både for Android og ios skal vi bruke et rammeverk kalt Nativescript sammen med Angular 2. Utviklingen skjer i samarbeid med Sonans Gruppen. 3. Dagens Situasjon Sonans Gruppen har skoler og virksomheter som er til for alle. I dag er det 3 av 10 som faller fra videregående opplæring og ca. 600 000 som i dag står utenfor ordinært arbeidsliv i Norge. Med over 15 000 elever og deltakere på sonans skolene og kurs bidrar de til et bedre liv for mange. Sonans gir flere gode muligheter for enkelt individer og betydelige kostnadsbesparelser for samfunnet som helhet ved at de fleste kommer inn på høyere utdanning eller tilbake i arbeid. Sonans verdier er målbevissthet, kompetanse, engasjement og trygghet, og derfor er deres hovedmål å forbedre hverdags skolelivet for elever. En mobilapplikasjon for elever vil følgelig forbedre opplevelse for studenter. 4. Mål og rammebetingelser Målet med dette prosjektet er å lage en moderne og brukervennlig mobilapplikasjon for Sonans- elever. Vi ønsker at kundene skal kunne begynne å bruke og teste ut den nye løsningen ved prosjektets slutt. Punkter som er viktige i utviklingen av løsningen er: Brukervennlighet og tilgjengelighet, inkludert ryddig og responsivt design Sikkerhet Kodekvalitet med tanke på videreutvikling og vedlikehold Appen som utvikles installeres på ios- og Android-enheter.
Programmeringsspråk -Nativescript rammeverket består av: Typescript En variasjon av HTML En variasjon av CSS Javascript Teknologier Prosjektstyringsverktøy: Trello Versjonskontroll: Git Utviklingsmetodikk: Scrum Fjernkommunikasjon: Slack Utviklingsprogram: Visual Code og Android Emulator 5.Løsninger og alternativer Via Mobilapplikasjonen skal hver elev, kunne logge seg inn og se forelesningene sine denne dagen. Dessuten skal brukeren navigerer fra startsiden til andre funksjoner. I tillegg skal appen kunne vise studentbevis som er godkjent av Ruter og NSB i henhold til deres retningslinjer. Hvis studenter ikke har et bilde i systemet, skal det være funksjonalitet for å ta portrettbilde på telefonen og sende inn til godkjenning hos Sonans (denne godkjenningsprosessen står Sonans for selv). Via appen skal elever også se timeplanen sin for hele uka, her presenteres data om lærerens navn, fagets navn, klokkeslett for timen, dag, hvilket rom og fagkode. I tillegg skal startsiden ha en knapp som skal være klikkbar når man har/når klokka nærmer seg en undervisningstime og godkjenner gjennom geolokalisering at elever sitter i timen. Dersom eleven ikke gjør dette, vil det bli oppført fravær. For å oppnå dette vil vi lage en mobilapplikasjon i Nativescript rammeverk for å utvikle en app som kan installeres på ios- og Android-enheter. Man benytter Typescript, HTML, CSS og Angular 2 i apputvilkingen. Vi vil benytte GitHub til versjonskontroll og Visual Code til utvikling av appen. En allerede eksisterende database vil ligge i sonans systemet, men gjennom
utviklingen skal det ikke brukes. Vi har bestemt oss for å bruke en alternativ dummy-database baserer seg på JSON-objekter. Flere av teknologiene listet opp ovenfor har vi valgt med utgangspunkt i oppdragsgivers forslag. Men vi har stått fritt til å velge det meste selv. Vi har valgt Nativescript med utgangspunkt i at det er viktig for oppdragsgiver med en app som støtter plattformen for både Android og ios slik at elever ikke behøver å kjøpe en bestemt mobiltelefon. Vi håper å få testet løsningen godt og vil gjøre mye generell testing underveis i programmeringsprosessen, men av mer profesjonell testing vil vi vektlegge enhetstesting. Det vil også være viktig å få testet appen underveis i utviklingsprosessen. Oppdragsgiver er dessuten opptatt av ytelsestesting så vi vil se på dette også i den grad vi får tid til det. 6. Analyse av virkninger Løsningen vi foreslår vil forbedre elevers opplevelse, slik at det blir enklere for brukere å organisere hverdagen hos Sonans. Med vår moderne løsning kan også produktet bli videreutvliket, som er positivt for oppdragsgiver. For prosjektgruppen blir det utfordringer med ukjente teknologier som Nativescript. En annen utfordring blir det å jobbe i et så stort prosjekt med tanke på at vi ikke har mye erfaring med liknende arbeid. Dette inkluderer planlegging, arbeidsfordeling og utviklingsmetodikk. 7 Arbeids- og fremdriftsplan 7.1Arbeidsplan Planlegging/design I denne fasen av prosjektet skal planleggingen skje. Her skal kravspesifikasjonen skrives ferdig, skisser skal tegnes av hvordan appen skal se ut. Det skal settes opp midlertidige planer om hvordan det videre arbeidet skal skje med når og hva som skal gjøres videre, men denne planen vil jobbes med gjennom hele prosjektperioden.
Forberedelser Denne fasen av prosjektet går ut på å få installert alt av programvare som trengs for å gjennomføre prosjektet, altså å sette opp utviklingsmiljøet. Programmering I programmeringsfasen skjer selve kodingen. Her skal alt av front-end og delvis backend til appen lages. Testing Testing skjer for å sikre et godt og effektivt system som fungerer på en god måte uten avbrytelser (minimalt med bugs). Testing av kode skal skje gjennom hele prosjektet. Tester skal bli laget og gjennomført samtidig som metodene utvikles. Det blir også en periode hvor det meste av koden er ferdig og hvor hele systemet skal testes for å sikre at alle systemets komponenter fungerer bra sammen, noe som bl.a. innebærer at det ikke oppstår avbrytelser, at alvorlige bugs fjernes, og at systemet ikke krasjer. Dokumentasjon Dokumentasjon skal skrives gjennom hele prosjektet for å få fordelt arbeidsmengden. En prosjektdagbok skal holdes oppdatert gjennom hele prosessen. I tillegg til denne forprosjektrapporten skal det leveres en omfattende sluttrapport.