Forprosjekt Gruppe 15 Marius Ylven Westgaard - s236797 - Anvendt Datateknologi Lise Janbu Eide - s236361 - Dataingeniør Lavanja Jeyenthiran - s236346 - Dataingeniør Kristian Pedersen - s236728 - Anvendt Datateknologi 1
Innhold 1.Presentasjon Oppdragsgiver: Prosjekttittel: Ungt Entreprenørskap AS Periode: 21.10.16-24.05.17 Gruppenummer: 15 Digitalisering av innovasjonscamp for Ungt Entreprenørskap Gruppemedlemmer: Kristian Pedersen - s236728 Lavanja Jeyenthiran - s236346 Lise Janbu Eide - s236361 Marius Ylven Westgaard - s236797 Kontaktperson: Veileder: Prosjektside: Helge Gjørven, Pedagogisk rådgiver +47 906 42 126 helge.gjorven@ue.no Kirsten Ribu, Førstelektor +47 672 38 662/ 416 48 686 kirsten.ribu@hioa.no http://student.cs.hioa.no/~s236728/gruppe15/ 1.1 Gruppen Prosjektgruppen består av Kristian Pedersen, Lavanja Jeyenthiran, Lise Janbu Eide og Marius Ylven Westgaard. Alle er studenter ved Høgskolen i Oslo og Akershus. Lavanja og Lise tilhører bachelorstudium i ingeniørfag - data, mens Kristian og Marius tilhører bachelorstudium i anvendt datateknologi. 2
1.2 Oppdragsgiver Hovedprosjektet skal utføres i samarbeid med Ungt Entreprenørskap (UE). Ungt Entreprenørskap er en ideell, landsomfattende organisasjon som i samspill med utdanningssystemet, næringslivet og andre aktører jobber for å utvikle barn og unges kreativitet, skaperglede og tro på seg selv. Ungt Entreprenørskap utvikler program og materiell som fremmer entreprenørskap i utdanningen. Ett av disse programmene er Innovasjonscamp som totalt 27.000 elever/studenter gjennomførte forrige skole/studieår. 1.3 Kontaktperson Kontaktperson ved Ungt Entreprenørskap: Helge Gjørven Pedagogisk rådgiver Tlf: +47 906 42 126 E-post: helge.gjorven@ue.no 1.4 Veileder Veileder ved Høgskolen i Oslo og Akershus: Kirsten Ribu Førstelektor ved fakultet for TKD Tlf: +47 672 38 662/ 416 48 686 E-post: kirsten.ribu@hioa.no 3
1.5 Oppgaven Ungt Entreprenørskap vil at vi skal utvikle et web-basert verktøy til bruk i innovative prosesser i innovasjonscampen for høyere utdanning. Verktøyet skal kunne brukes av både lærere og elever på både telefon og pc. De ønsker at vi skal utvikle et ferdig produkt som kan brukes med mulighet for videreutvikling. Materiellet som brukes i Innovasjonscamp er individuelt tilpasset, i tillegg til et prosessverktøy som hver gruppe får benytte. Det er dette prosessverktøyet som er utgangspunkt for digitalisering gjennom samarbeidet i denne oppgaven. UE har ingen konkrete krav for nettsiden utover at den skal inneholde alle stegene i innovasjonscamp prosessen. Løsningen skal inneholde et system hvor administratorer (UE) kan gjøre endringer i innholdet, som skal brukes til de ulike campene. Dette inkluderer å legge til/fjerne/endre faser og å endre/fjerne/legge til oppgaver/innhold under hver fase. I tillegg skal løsningen inneholde et prosessverktøy for elevene. Prosessverktøyet skal gi brukerne: Mulighet til å notere underveis. Mulighet til å lese oppgavetekst og se relaterte videoer. Mulighet til å svare på oppgaver, blant annet tekstoppgaver og quiz. Mulighet til å la brukerne tenke nytt og innovativt! 4
2.Sammendrag Vi skal i løpet av våren utvikle en nettside for Ungt Entreprenørskap (UE) som skal brukes i forbindelse med Innovasjonscamp for studenter ved høyere utdanning. Nettsiden skal ha en administrasjonsside hvor admin kan endre informasjon/innhold for å tilpasse de ulike campene. Studentene skal bruke nettsiden for å planlegge og utvikle sin idé i forbindelse med innovasjonscampen. Vår veileder under prosjektet er Kirsten Ribu ved HiOA, og vår kontaktperson ved Ungt Entreprenørskap er Helge Gjørven. UE har ingen konkrete krav til hvordan nettsiden skal se ut eller fungere, annet enn at den skal inneholde alle faser, aktiviteter (med mulighet for endring av dette) som i dag gjøres med penn og papir. Noen av teknologiene vi har tenkt å bruke er; PHP, HTML5, CSS og Javascript. 3.Dagens situasjon Ungt Entreprenørskap (UE) er en ideell organisasjon som jobber med innovasjon og entreprenørskap for unge mennesker og er en organisasjon i utvikling. I Oslo har de ambisjoner om å bli best i landet på det de driver med. Dette er en av grunnene for at de ønsker å utvikle et web-basert verktøy til sine innovasjonscamper. Hos UE finnes det ingen tilsvarende verktøy i dag. Under Innovasjonscampene bruker studentene å gjøre idéskapingen sin for hånd med penn og papir. Det er derfor UE ønsker en digital løsning. En digital løsning vil også gjøre det enklere å ta vare på informasjonen, samt at studentene ikke skal hoppe over noen steg i prosessen. Den digitale løsningen skal føre til at studentene jobber seg gjennom hele prosessen og lærer mest mulig, ikke gjøre ting kjapt for å bli ferdig. 4.Mål Hovedmålet vårt er å digitalisere innovasjonscamp for Ungt Entreprenørskap. Verktøyet skal fungere som et digitalt hjelpemiddel for å lære om innovasjon og entreprenørskap for studenter. 5
Nettsiden skal gjøre det mulig for UE å legge inn nye oppgaver og aktiviteter før det gis videre til lærere og studenter. Dette er noen av målene våre: Løsningen skal være en web-basert side, altså en nettside i en nettleser Lage en løsning som fungerer bestående av back-end og front-end Løsningen skal ha en administrator som legger inn og fjerner informasjon Løsningen skal fungere like godt på alle platformer (IOS, Android, Windows ol.) samt nettbrett, mobil og datamaskin Skal være brukervennlig og responsiv, slik at alle kan bruke den. Vi har også et mål om å utvikle et godt universelt utformet innovasjonsverktøy som kan brukes av alle. Det er viktig at nettsiden er tilpasset alle, brukervennlig, intuitiv og at den er enkel å forstå. Dette er viktig da alle mennesker har ulike behov. 5.Rammebetingelser Programmeringssråk: PHP SQL HTML5 CSS Javascript Jquery Ajax JSON Verktøy: Netbeans IDE MAMP - localhost og mysql database GitHub 6
Google Drive Med GitHub vil alle ha tilgang til nyeste versjon av løsningen, samtidig som det gir oss en bedre mulighet til å jobbe individuelt og ha kontroll på endringene som gjøres. I tillegg gir GitHub oss versjonskontroll, som sikrer oss ved eventuelle feil som innføres av ny kode. Vi lagrer alle dokumenter, skisser og annen dokumentasjon i Google Drive, som sikrer oss for problemer ved eventuelt ødelagt utstyr osv. Det at alt ligger lagret i skyen gjør også at vi har gardert oss mot sykdom, slik at vi uansett for jobber med prosjektet. Vi vil alle skrive i Netbeans, som er en veldig god editor for mange programmeringsspråk, særlig PHP. Netbeans er også godt integrert med GitHub, så det kan også øke produktiviteten vår noe. Under utvikling vil vi jobbe lokalt mot localhost (MAMP), som effektiviserer utviklingsprosessen, da vi hele tiden oppdaterer på serveren (lokalt) og kan se endringene til enhver tid. Det gjør det også enklere å arbeide individuelt. Når applikasjonen er ferdig utviklet vil Ungt Entreprenørskap stille med serverplass for bruk av applikasjonen, det samme gjelder om vi ønsker å teste applikasjonen underveis. 6.Løsninger 6.1 Arbeidsmetoder Vi kommer til å jobbe sammen på skolen, hos UE sitt kontor på Majorstuen og selvstendig hjemme Vi kommer til å ha faste dager hvor vi møtes, hver søndag blir vi enige om det blir forandringer i uken som kommer Vi kommer til å kommunisere mest via Facebook, for der har vi en gruppechat Google Drive blir brukt for å samle og dele dokumenter og filer GitHub blir brukt til å dele kode Vi kommer til å skrive loggbok gjennom hele prosjektet 7
Vi kommer til å skrive på rapporten underveis 6.2 Kravspesifikasjon Kravspesifikasjonen handler om hvilke brukerfunksjoner og generell ytelse nettsiden skal ha. Disse blir utviklet for å sikre at brukerens behov blir dekket når det gjelder brukervennlighet, funksjonalitet og ytelse. Vi kommer til å utvikle kravene hovedsakelig med god kommunikasjon med UE, slik at alle deres krav blir med i prosessen. Vi ønsker også å få vært med på en innovasjonscamp, for å observere og muligens intervjue noen elever for å avdekke nye krav. Vi har også tenkt å være med på en innovasjonscamp senere i prosjektperioden for å brukerteste løsningen og å da finne evt. nye krav og mangler i løsningen vi har kommet frem til, slik at vi kan bygge videre på det. 6.3 Back-end PHP: PHP er et programmeringsspråk, som vi bruker til å hente/lagre informasjon i databasen. Dette gjør vi via SQL i PHP. SQL: Er et programmeringsspråk som benyttes for å kontrollere informasjon til og fra en relasjonsdatabase. Vi bruker SQL til dette, da løsningen krever mye informasjon (fra databasen) til å få løsningen til å fungere slik vi ønsker. MySQL: Er en relasjonsdatabase, hvor vi oppretter tabeller basert på våre behov. Vi bruker denne typen database for å kunne ha relasjoner mellom tabeller og benytte informasjonen i databasen effektivt. MySQL er også en flerbruke database, som vil holde kontrollere og fungere med mange samtidige brukere, noe som er svært viktig i vår løsning. 8
6.4 Front-end HTML5: brukes for å bygge opp sidens struktur slik det ønskes at den skal være. Brukes for å skille mellom forskjellige seksjoner av siden, samt i mange tilfeller for å sortere tekst og bilder på nettsiden. CSS: bruker vi for å definere farger, stiler og noe dynamikk på siden. CSS brukes i hovedsak på HTML tagger for å gi de en stil og plassering. Vi vil i hovedsak skrive CSS koden selv, men også bruke noen elementer fra bootstrap rammeverket. Javascript/Jquery: Javascript brukes sammen med CSS for å skape dynamikk på siden. I tillegg brukes det til funksjoner som ikke må kjøres på server, hvor det holder at de kjøres på klient. Ajax: bruker vi for å hente informasjon fra serveren asynkront, og med det slippe å laste siden hver gang noe ny informasjon skal hentes fra serveren. Dette gjør vi med JSON, fra PHP-script. 9
7.Analyse av virkninger 7.1 Gantt- diagram Forbehold om endringer. 10
7.2 Risikoanalyse Gruppearbeid: Ved eventuell sykdom eller uenigheter i gruppa må vi ha noen klare retningslinjer, slik at prosjektet ikke stopper opp eller i verste fall kan bli avbrutt. Ved sykdom vil vi fortsatt jobbe som vanlig. Om den eller de som er syke må være hjemme og fortsatt klarer å sitte på en datamaskin, kan vi jobbe over skype eller samtale på facebook. Om dette ikke er mulig må de andre medlemmene som kan jobbe ta over oppgavene til den syke personen den aktuelle dagen. Ved splittelse eller uenigheter i gruppa vil vi med en gang ta et møte sammen for å komme til enighet. Fører ikke dette møte frem, avtaler vi et møte med veileder. Ved å avtale et møte med veileder kan vi få inn synet til en 3.part slik at det kanskje vil bli lettere å løse uenigheten. Utvikling av kode: Viktig å få et godt ER-diagram før vi starter utviklingen av nettsiden, da det kan være vanskelig å gjøre endringer på database jo større og mer komplisert koden blir. Om dette ikke blir gjort ordentlig før utviklingen starter, kan dette sette oss mange dager tilbake i utviklingen. Sikkerhet og sikkerhetskopi: Som nevnt tidligere i forprosjektet må vi hele tiden passe på at alle filer og kode er sikkerhetskopiert til en skyløsningen (Google Drive og Github). Slik at vi ikke er 100% avhengig av at utstyr skal fungere under hele prosjektperioden. Om dette gjøres rett hele veien er vi ikke avhengig av utstyr eller hverandre ved evt sykdom. 11
8. Ansvarsfordeling Navn: Marius Lise Lavanja Kristian Ansvarsområde: Back-end og Front-end kode Rapporter og skisser til nettsiden Design og Brukerundersøkelser Administrativt og Dokumentasjon av kode Ansvarsfordelingen forteller ikke hvem som skal gjøre hva, men hvem som har ansvaret for at det blir gjort. 12