Hovedprosjekt i informasjonsteknologi våren 2014 Oslo 28.03.2014 Gruppe 32 - Erik M. Forsman, Lars H. Nordli og Simen A. Hansen Fremdriftsplan Generelt om tidsberegning Som grunnlag for vår tidsberegninger har vi tatt for oss at hovedprosjektet for oss tilsvarer 20 studiepoeng som for oss er ⅔ av uken. Gitt at en arbeidsuke er 37,5 timer gir dette oss 25 arbeidstimer i uken hver til hovedprosjektet, totalt 75 arbeidstimer i uken. Fristen for levering av prosjektrapport er satt til 27. mai 2014 klokken 12.00. For å gi oss selv rom for avvik og utarbeidelse av prosjektrapport setter vi som en tidsfrist for selve produktet til å være ferdig i løpet av uke 17 (med siste arbeidsdag fredag 25. april). Gruppen anser seg ferdig med planleggingsfasen i løpet av denne uken (uke 5, med siste arbeidsdag fredag 31. januar) da dette også skal presenteres for veileder denne uken. Dette gir oss fra og med første dag etter planleggingsfasen (mandag 3. februar, uke 6) frem til nevnte tidsfrist for produktet totalt 12 uker. Dette gir hele gruppen totalt 900 arbeidstimer samlet. Ettersom vi skal utføre enhetstesting av siden som er meget viktig, samt at en del dokumentasjon vil bli gjort i løpet av denne tiden anslår vi at ⅔ (66,67%) av tiden vil gå med på direkte koding og utvikling av produktet. Dermed sitter vi igjen med 600 timer til planlegging for den spesifikke tidsberegningen under. De resterende 300 timene vil gå til enhetstesting av systemet. Vi ser for oss at nevnte 25 timer per gruppemedlem fordeler seg på følgende måte i uken uten at selve tidspunktene er låst for alle uker. Dag Tidspunkt Timeantall Mandager 09:30 15:00 5,5 timer Tirsdager 08:30 15:00 6,5 timer Torsdager 08:30 15:00 6,5 timer Fredager 08:30 15:00 6,5 timer Totalt 25 timer Grov tidsplan Tidsperiode Antall uker Antall arbeidstimer for hele gruppen Arbeidsoppgave 3. Februar 28.Mars 8 600 Implementering med tidvis dokumentasjon om arbeidet underveis. 31.Mars 25.April 4 300 Enhetstesting med dokumentasjon av testene som gjøres, samt eventuelle utbedringer basert på testresultater. 28.April 16.Mai 3 225 Sette sammen og skrive ferdig dokumentasjon. 19.Mai 27. Mai 1 uke og 2 dager 105 Periode satt av til finskriving/dobbelsjekking og “buffer”periode om overnevnte perioder ikke holder tidsrammene. 2.Juni 10. Juni* 1 uke og 2 dager 105 Lage klar presentasjon av prosjektet. Totalt 1335 * Presentasjon i tidsrommet 10.Juni til 13.Juni Om planning poker og krav Vi har tatt utgangspunkt i de funksjonelle kravene fra kravspesifikasjonen og listet disse opp i prioritert rekkefølge også innenfor hver enkelt prioriteringsgrad (AD). Vi regner med en feilmargin i tidsberegningen på 10% hvilket gir oss 540 timer å planlegge arbeid på. For å få et best mulig tidsestimat har vi benyttet os av planning poker hvor hver gruppemedlem hver for seg estimerte timer oppgaven ville ta. Videre setter vi ingen konkrete tidsestimater på de ikkefunksjonelle kravene ettersom det er vanskelig å sette direkte tidsestimater på dette. Vi setter imidlertid av en arbeidsuke (75 timer) til å dekke dette strødd utover prosjektet. Ideelt er det da 465 timer som står igjen til skjemaet under. Setter videre opp en sprint (75 timer per sprint) ved endt sprint slik at vi har mulighet til å ta med punkter som ikke ble ferdig i sist sprint. Markerer sprintene med hver sin farge i tabellen nedenfor. Tidsberegning Tidsberegning (i hele timer) # PRI Krav 1 A 26 A 11 A 12 A 6 A Utdyping av krav E L S Snitt* #Sprint Herunder opprettes tilhørende databasedel for brukerhåndtering. Samt bestemme hashfunksjoner En bruker skal kunne logge og lagring av dette i inn database 15 12 18 15 Systemet skal analysere et Herunder faller testing av PDFskjema for digital pdftk og bashscripting for utfylling av felter. å få dette til å fungere 20 25 25 23 Herunder faller En kunde skal kunne være strukur/modell på kunde og privatperson eller tilhørende databasedel for bedriftskunde håndtering av bruker 7 8 5 7 En kunde skal ha en kundestatus 2 3 2 2 Herunder faller databasedel for roller og En bruker skal ha en rolle handlinger de forskjellige 5 5 5 5 rollene skal ha tilgang på 32 A 7 A 10 A 13 A 14 A 3 A 2 A 52 A 20 A 24 A 23 A En bruker skal kunne endre passord Herhunder faller sikring på sider som begrenser En bruker skal ikke kunne synlighet/muligheter i utføre uautoriserte henhold til hvilken rolle handlinger/operasjoner man har Herunder faller stuktur/modell for bruker En bruker skal kunne legge og tilhørede databasedel til en kunde for håndtering av kunde Herunder faller opprettelse av unik visningsside for En kunde skal ha en profil hver kunde Herunder faller henting av En kundeprofil skal kundeinformasjon fra inneholde detaljer om databasen tilknyttet den kunden spesifikke kunden Herunder faller en unik side for hver bruker og henting av informasjon fra En bruker skal ha en profil databasen tilknyttet den som viser personalia spesifikke brukeren Herunder faller opprettelse av hendelser(actions) i En admin skal kunne legge databasen som tilegnes til en ny bruker adminbruker Herunder faller struktur/modell av En bruker skal kunne kontrakten samt opprette en kontrakt med en databasedel for håndtering kunde av kontrakter En kontrakt skal ha en Herunder faller database kontraktstatus del for å endre kundestatus Herunder faller opplasting av PDFfiler som analyseres. Databasedel En bruker skal kunne legge for maler og lagring av til en generell PDFmal felter En bruker skal kunne legge Herunder faller opplasting til PDFmal tilknyttet en av PDFfiler og database 7 9 8 8 12 15 15 14 15 12 12 13 8 9 10 9 2 2 2 2 8 8 10 9 14 15 15 15 20 24 25 23 3 4 4 20 25 25 23 5 5 2 4 4 ** ** kunde 27 A 18 A 19 A 28 A 4 A 15 A 29 A 31 A 30 A del som knytter denne malen til en spesifikk kunde Herunder faller databasedel for logging av hendelser, samt en generell loggedel som blir Systemet skal logge kalt hver kan det gjøres hendelser gjort på bruker og endringer i systemet for å av hvem sikre at alt blir logget 15 8 10 Herunder faller En kontrakt skal kunne funksjonalitet for å laste inneholde en utfylt versjon opp riktige maler og av malene. klargjøre disse for utfylling 7 5 5 Herunder faller funksjonalitet for opplasting av statiske vedlegg som skal tilhøre kontrakten, men ikke editeres. En kontrakt skal kunne Databasedel for dette må inneholde vedlegg også implementeres 4 5 4 Systemet skal logge Herunder faller hendelser gjort på kunde og databasedel for av hvem kundespesifikke logger 10 7 8 Brukerprofilen skal vise Herunder listing av logg hendelseslogg for brukeren tilknyttet spesfikk bruker 5 2 4 En kundeprofil skal vise Herunder av logg tilknyttet hendelsesloggen for kunden speslisting fikk kunde 3 2 2 Systemet skal kombinere kundeinformasjon og Herunder faller automatisk generere opp en eller flere utfylling av de feltene i PDFdokumenter, basert på malen som allerede er denne informasjonen lagret i databasen 15 17 20 En bruker skal kunne velge Herunder faller det visuelle kontrakttype ved opprettelse brukergrensesnittet ved av kontrakt opprettelse av kontrakten 8 6 5 Herunder faller det å sette paramentre for kontrakten Systemet skal filtrere ut som videre benyttes til å hvilke PDFmaler som skal analysere hvilke fylles ut avhengig av dokumenter som trengs i handlingen som velges kontrakttypen og vise disse 8 6 5 11 6 ** 4 8 4 2 17 6 6 ** 8 A 9 A 5 A 17 A 21 A 34 A 36 A 22 A Herunder faller aksessliste for kundeforholdet i tillegg til hvilke handlinger man har tilgang på. Dette gjelder modellering og database del både for Systemet skal forhindre aksessliste og handlinger uautorisert tilgang til man kan utføre på en kundeinformasjon kunde. 20 25 20 Herunder faller sikker lagring av dokumentene og en funksjon all visning går Systemet skal forhindre gjennom som alle uautorisert tilgang til sikkerhetsmekanismer blir kontrakter og vedlegg gjennomgått før visning 10 5 5 Herunder faller funksjonalitet for å hente ut En admin skal kunne endre rolleinformasjon og endre på brukerpersonalia og rolle handlinger roller har 5 4 4 En kundeprofil skal vise de Herunder faller visning av funksjoner innlogget bruker valg basert på har i henhold til tilgangsnivåer samt tilgangsnivåer. hindring av "urlinjection" 8 5 6 Herunder faller sikkerhetsmekanismer som sikrer at en kontrakt En kontrakt som er signert ikke kan endres når den skal ikke kunne endres. først er signert 5 1 3 Herunder faller sikker Systemet skal lagre ferdige lagring av ferdige PDF i et arkiv kontrakter 5 3 3 Herunder printing av alle dokumenter som faller under kontrakten, utfylte Systemet skal kunne printe maler så vel som vedlegg ut ferdige PDF og kopi av legitimasjon 5 2 4 Herunder faller sikkerhetsmekanismer som knytter signatur mot En signatur skal ikke kunne en enkelt kontrakt og ikke gjenbrukes på fler kan misbrukes til bruk på kontrakter andre kontrakter for 5 4 5 22 7 4 6 3 4 4 5 16 A 53 A 33 A 35 A 38 A 25 A 54 A 56 A 57 A samme kunde Herunder faller søking i En kundeprofil viser alle databasen etter kontrakter og maler kundespesifikke maler og tilhørende kunden liste disse opp Herunder faller Systemet skal kunne søke databasespørringer som etter kunder/prosjekter etter endres i henhold til de valg gitte kriterier brukeren setter på søket Herunder faller kartlegging om muligheter på nåværende webhotell for å få en sikker Systemet skal bruke httpsoverføring av filer og SSLkryptering i all informasjon slik at dette interaksjon med bruker ikke overføres i klartekst Herunder listing av Systemet skal tilby kundens kontrakter og muligheten å laste ned alle mulighet til å laste ned dokumentene knyttet til en dette som en "kundeprofil" i kunde zip eller lignende Systemet skal kunne sende Herunder funksjonalitet om mail til kunden nå er å sende ut mail når en kontrakt er laget med kontrakt er signert som en kunden slags kvittering Herunder funksjonalitet for å bytte ut eksisterende mal En bruker skal kunne om det er gjort endringer i oppdatere malversjon den Herunder funksjonalitet for å endre aksesslister En bruker med tilgang skal tilknyttet en kunde slik at kunne redigere tilgang til andre bruker får nye kunde rettigheter Herunder en sperre for innlogging for å forhindre En bruker skal bli blokkert "brute force attack" på etter x antall feilinnlogginger systemet Herunder mailfunksjonalitet som sender ut et generert En bruker skal kunne få et passord som fungerer i et midlertidig passord på mail døgn 8 5 7 15 13 10 13 15 18 15 16 20 19 15 18 10 14 8 11 25 30 25 27 15 16 10 14 5 8 5 5 5 18 17 15 17 ** 40 B 41 B 55 B 39 B Herunder manuelle oppføringer i loggen slik at systemet kan benyttes til En bruker skal kunne legge logging av samtaler/ til manuelle oppføringer i notiser som ønskes lagret kundelogg mot kunden 15 14 20 Herunder valg som Systemet skal tilby telefon/epost /merknad kategorier for manuelle tilknyttet manuelle oppføringer oppføringer 8 10 8 Herunder endring og etablering av nye roller og En admin skal kunne hvilke muligheter disse redigere roller rollene skal ha 15 18 15 Åpner for at bruker kan En bruker skal kunne endre egen profil, ikke bare redigere egen profil admin 4 2 5 Tot funksjonelle krav Ikke funksjonelle krav Totalt alle krav 16 9 16 4 468 75 543 * Nærmeste hele time ** Har blitt overført videre til annen sprint. Nærmere spesifisering kommer frem i avsnittet om oppsummering av sprinter nedenfor. Om sprintene Etter endt sprint på Fredager oppsummerer vi sprinten og fyller ut skjemaet nedenfor både for nylig tilbakelagt sprint, samt planlegger neste ukes sprint. Vedplanlegging av sprint legges også sprinten med tilhørende oppgaver inn på scrumbrettet hvor oppgavene deles mellom gruppemedlemmene. Mer spesifikk fremgang fremkommer kun på Trello (Scrumbrett Implementering). Fargekodene som benyttes her går igjen på Trello slik at man enkelt kan bruke denne fremdriftsplanen mot Trello. For å dokumentere fremdrift i Scrumbrettet tar vi skjermbilder av scrumbrette i midten av hver sprint med unntak av kolonnen “Ferdig”. https://trello.com/b/kkLlQAv2/scrumbrettimplementering (Krever innlogging og tilgang) Sprinter # Antall timer* Prosent ferdig Timer overført til neste sprint Ukenr Oppsummering 1 70,0 6 Gruppen har dekket alle punktene i 100% sprinten, samt gjort innlendende arbeid på oppgaver/krav som ikke var en del av sprinten. Velger av den grunn å ha et noe større timeantall på kommende sprint ettersom deler av kravene er påbegynte. På dette stadiet har vi en kjørende prototype med meget begrenset funksjonalitet. 0 2 95 7 Gruppen utfører alle punktene i 94,73% sprinten, men det gjenstår et par underpunkter på det ene kortet tilknyttet brukers profil.(#3) Overfører derfor 5 timer til neste sprint. 5 ** 3 75 8 Gruppen utfører alle planlagte krav med unntak av to krav, #23 som er planlagt for 4 timer samt krav #18 planlagt for 6 timer. Sistnevnte krav flyttet da kravet avhenger av andre deler som ikke er på plass. Begge flyttet til neste sprint. 86,67% 10** 4 77 9 Gruppen utfører de fleste av punktene 79,22% satt av til denne sprinten. Et av kravene i denne sprinten, #29, ble i midlertid en del vanskeligere enn først anslått i tidsestimeringen. Punktet vil ha en estimert tid ytterligere legger til 10 timer på dette punktet. Disse ytterligere timene må derfor overføres til neste sprint. Det andre punktet som ikke ble fullført i denne sprinten er #18, dette punktet er dirkekte avhengig av #29, og er derfor ikke påbegynt i det hele tatt. Dette punktet må overføres i sin helhet til neste sprint. 16** 5 71 10 Gruppen utfører alle punkter, også 85,92% krav #18 selv om vi ikke har fått testet dette ettersom det ikke kan bli gjørt før krav #29 er ferdig. Punkt #29 er fortsatt ikke ferdigstilt ettersom vi har møtt på komplikasjoner med gjenbruk av kode for dette punktet. Skal ha møte med oppdragsgiver for å få avklart spørsmål tilknyttet dette kravet. Må derfor legge til ytterligere 10 timer for å dekke dette kravet i neste sprint. Planlegger neste sprint med 8 timer mindre enn en planlagt sprint for å jobbe mer med å ferdigstille en prototype til oppdragsgiver. 10** 6 67 11 Gruppen utfører alle krav satt. Også 100% krav #29 som har blitt overført over flere sprinter. I tillegg blir et testmiljø satt opp riktig for en prototype som oppdragsgiver kan aksessere for å se konkret fremdrift. I tillegg testet vi fremgangsmåten for å kryptere overføringer i systemet ved hjelp av SSLteknologi, slik at dette er kjent ved levering til oppdragsgivers servermiljø. 0 7 79 12 Gruppen utfører alle krav i sprinten, 93,67% med unntak av #38 som etter et kort møte med oppdragsgiver også vil dekke mail til samarbeidspartnere i tillegg til kunden. Avventer maler fra oppdragsgiver før dette kan ferdigstilles, og overfører 5 timer til neste sprint. Til kommende sprint er alle krav Bkrav. Imidlertid er mange av disse kravene påbegynt i forbindelse med tidligere krav, men ettersom sprint 8 blir siste planlagte arbeidsuke med selve produktet, gjenstår mye arbeid med å ferdigstille alle funksjoner og “sy sammen” produktet til en helhet før testingen 5** kan starte neste uke. 8 60 13 Gruppen gjør ferdig de resterende 100% krav satt. Er imidlertid noe mindre funksjonalitet som gjenstår som vi tar sikte på å ordne i forbindelse med testingen og bufferperioden satt av til 1927.Mai. Herunder: ● Laste opp utfylt utgave av vedlegg. ● Kontonummer på kunder. ● Unik XFDFfil for hver bruker. ● Kalender på kunder. ● Logge hendelser ● Mindre oppgaver i hver enkelts “Todo”kort ● Oppsett av tjenester på oppdragsgivers miljøer. (Mail, webserver, SSL) * Sum av timesnitt fra fargemarkerte krav pluss eventuelle timer overført fra foregående sprint, i tillegg til del av ikkefunksjonelle krav (75/8 ≈ 10) ** Timer overført til neste sprint illustreres både i dette skjemaet og på Trello med rød farge i tillegg til original sprintfarge. Skjermdump av sprinter Figur 1: Scrumbrett per 28.01.2014 kun med oppstartsfasen Figur 2:Scrumbrett per 07.02.2014 Sprint 1 ferdig, og Sprint 2 planlagt for kommende uke Figur 3:Scrumbrett per 14.02.2014 Sprint 2 ferdig, og Sprint 3 planlagt for kommende uke Figur 4:Scrumbrett per 21.02.2014 Sprint 3 ferdig, og Sprint 4 planlagt for kommende uke Figur 5:Scrumbrett per 28.02.2014 Sprint 4 ferdig, og Sprint 5 planlagt for kommende uke Figur 6:Scrumbrett per 07.03.2014 Sprint 5 ferdig, og Sprint 6 planlagt for kommende uke Figur 7:Scrumbrett per 14.03.2014 Sprint 6 ferdig, og Sprint 7 planlagt for kommende uke Figur 8:Scrumbrett per 21.03.2014 Sprint 7 ferdig, og Sprint 8 planlagt for kommende uke Figur 9:Scrumbrett per 28.03.2014 Sprint 8 ferdig. Sprintbrett ferdig.
© Copyright 2024