Forum / Nettverkssamfunn Team 2 1
Innholdsfortegnelse 1 Introduksjon... 3 2 Team & Organisering... 3 3 Brainstorming, tanker og utførelse... 4 3.1 Bruker Registrering og metoder... 4 3.2 Generering av Kategorier og emner... 4 4 Software Prosess Modell... 4 5 Risikoanalyse... 5 6 Prosjekt Organisering... 5 7 Validering/Testplan... 5 8 Utstyr, programmer & notasjon... 6 9 Referanser... 7 10 Vedlegg... 8 2
1 Introduksjon Ideen bak prosjektet er å lage en webside, mer spesifikt et forum som er beregnet for studenter, hvor studenter som sliter med forståelsen av konsepter i f.eks. realfag eller sliter med oppgaver har muligheten til å poste tråder om dette. Medlemmer kan her sende svar til trådene for å gi hjelp. Medlemmer som svarer på tråder får muligheten til å få titler på nettsiden, som for eksempel hjelper, master hjelper og lignende ut i fra hvor mange poster de har postet og hvor mange likes de har fått på postene sine. Dette grener seg inn i at medlemmer som hjelper mye til vil kunne bli moderatorer av forumet. Tidsrammen på dette prosjektet er 18 uker, og for hver uke leveres ukas oppdrag. Da det ikke trengs noe innkjøp av programvare på grunn av at skolen dekker dette, så trengs det altså ikke noe budsjett. Det eneste som trengs av hardware for å fullføre prosjektet er en PC med installert Visual Studios og SQL database. Figur 1-1: Bildet viser enkel prosjektmodell. 2 Team & Organisering Hvert gruppemedlem har ulike styrker og ferdigheter, men for å lære mest mulig under prosjektet så vil det også rulleres på roller underveis. De primære rollene vil være programmerer, prosjektleder, GUI designer, programvare arkitekt og programvare tester. Vi vil anvende SCRUM metoden, som er en smidig programvareutviklingsmetode. Den går ut på at det er en scrum master og et utviklingsteam som har daglige møter, i vårt tilfelle to møter i uka, på maks 15 minutter, hvor det planlegges hva som skal gjøres de neste 24 timene. Det vil også være sprinter på 14-30 dager hvor det planlegges hva som skal gjøres i sprintet, og etter sprinten så går man gjennom det man har gjort [1]. 3
3 Brainstorming, tanker og utførelse Skjelettet av produktet: Det aller første som må lages, er et utkast av hvilke hovedkomponenter nettsiden skal inneholde. Deretter må det lages enkle skjeletter for å skape et bilde av hvordan siden skal se ut, helt elementært. Deretter implementeres metoder og samkjøring mot database for å få funksjonalitet i siden. Når skjelettet og metodene står ferdige kan vi til slutt begynne med finjustering og design (sminke opp siden) til å få den til å se ut slik vi ønsker. 3.1 Bruker Registrering og metoder Registrering av bruker skjer primært med tilkopling til epost Generer et fire sifret tilfeldig tall som blir lagret i SQL-database. Sender tallet til registrert epost. Når eposten sendes, starter en timer, denne timeren skal slette det genererte tallet etter 300 sekunder. Sammenlikner input i tekstboks med brukerens sertifiserings ID, sendt på epost. Alle brukere skal ha en personlig side, hvor man kan endre informasjon og se emner og kommentarer fra brukeren. Det skal være mulig å sende personlig melding til brukere via brukersiden. 3.2 Generering av Kategorier og emner Generering av kategorier og emner Kategorier skal kun genereres av administratorbrukere Emner skal kunne registreres av alle registrerte brukere, gitt at brukeren ikke er låst. Alle emner skal være åpne for lesing. Det skal være mulig å slette kategorier og emner. Kommentarfelt Registrerte brukere skal kunne kommentere på emner. Det skal også være mulig å stenge et emne for kommentarer 4 Software Prosess Modell Vil etter hvert komme i form av en Waterfall modell 4
5 Risikoanalyse Under prosjektutviklingen er det mye som kan gå galt. En av de største truslene er potensielle angrep fra hackere som kan stjele informasjon eller korruptere systemet de har satt sin sikt på. På et forum er det også trussel for tap av data så dermed må dette helst settes over i en back-up server. Dermed blir disse to punktene hovedprioriteter. Under vil det tillegges en tabell med enkel oversikt over prosjektets risikoer som følger en forenklet versjon av FMECA (Failure mode, effects, and criticality analysis) [2]. Risiko Kritikalitet Alvorlighetsgrad Sannsynlighet Hacking 100% Høy Veldig Sannsynlig Tap av data 100% Høy Veldig Sannsynlig Systemet blir ikke 83% Høy Sannsynlig ferdig i tide Vedlikehold av 83% Høy Veldig Sannsynlig systemet Vedlikehold av 67% Middels Sannsynlig Forumet Teamet har ikke de nødvendige ferdighetene 33% Lav Usannsynlig Tabell 5-1: Fargekodet Risikoanalyse for prosjektet, Rød (Alvorlig), Gul (Middelsalvorlighet), Grønn (Lav alvorlighet). 6 Prosjekt Organisering Her henvises det til vedlegg 1 og 2 som er et Gantt-chart og en Work Breakdown Structure(WBS) for informasjon om hvordan prosjektet er planlagt så langt. 7 Validering/Testplan Vil komme fortløpende når Test stadiet er iverksatt. 5
8 Utstyr, programmer & notasjon For å få til dette prosjektet så må det brukes software, under er det en liste over hva slags programmerer som vil bli brukt i dette prosjektet. Det blir ikke brukt noe hardware bortsett fra PCer m/windows 10. PC m/ Windows 10 Operativsystem SQL Server 2016 for oppsett av Databaser Erwin for bruk til Database modellering Visual Studio 2017 Enterprise for programmering av tilkoblinger mellom Webside og databaser og programmering i.net API Azure DevOps og OneDrive for kommunikasjon i teamet gjennom utviklingsprosessen Word 2016 for utførelse av rapportskriving Microsoft Project 2016 for utvikling av Gantt-diagram Visio 2016 for utvikling av Work Breakdown Structure (WBS), System arkitektur & UML diagrammer Utover I prosjektet vil det tas I bruk UpperCamelCase notasjon for identifikatorer og lowercamelcase for bruk til parametere og variabler Det vil også tas I bruk ungarsk notasjon til bruk for klasser. Eksempel: LoginButton -> BtnLogin All navngivning I SQL blir gjort med små bokstaver 6
9 Referanser [1] H.P Halvorsen, Software Development A practical approach, 2017 [2] Wikipedia, FMECA, Hentet fra: https://en.wikipedia.org/wiki/failure_mode,_effects,_and_criticality_analysis, Lastet ned: 15.01.18 7
10 Vedlegg Vedlegger vil henvises på de neste sidene i form av et Gantt-chart og en Work Breakdown Structure (WBS). 8