UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR



Like dokumenter
prosjektarbeid Forelesning 3 - INF1050 Systemutvikling

prosjektarbeid Forelesning 3 - INF1050 Systemutvikling Eksempel Evolusjonære modeller Utviklingsprosesser Evolusjonære modeller Foranalyse

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling

Systemutviklingssprosesser, prosjektarbeid Forelesning 3 - INF1050 Systemutvikling 1. feb.2010

Arne Maus, Ifi. med takk til Gerhard Skagstein(Ifi), Rune Steinberg, (Visma), Jo Hannay (Ifi), Ian Sommerville m. fl. for lån av gamle foiler

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG

Gjennomgang av prøveeksamen. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski

GJENNOMGANG UKESOPPGAVER 9 TESTING

Inception Elaboration Construction Transition Bemanning 1 1,5 2 2 Varighet i uker Antall iterasjoner (lengde i uker i parentes) Tabell 1

Forelesning 2: Systemutviklingsprosesser

Kandidat nr. 1, 2 og 3

Løsningsforslag til Case. (Analysen)

GJENNOMGANG UKESOPPGAVER 7 REPETISJON

Kap 11 Planlegging og dokumentasjon s 310

11 Planlegging og dokumentasjon

Kravhåndtering. INF1050: Gjennomgang, uke 03

INF1510: Obligatorisk oppgave 2: prosjektforslag

UKE 9 Prosesser og prosessmodeller inkludert smidige metoder. Gruppetime INF1055

Kravspesifikasjon. Forord

Produktrapport. Produktrapport. Hjelpemiddel portal for Parkinsonforbundet

UKE 15 Prosjektledelse, planlegging og teamarbeid. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski

Prosjektmandat Hovedprosjekt. Digital Dialog (Satsningsområde 1 i Regional Digitaliseringsstrategi for )

DRI2001 Offentlige nettsteder. Litt om systemutvikling Torsdag 24 aug Arild Jansen, AFIN, UiO

Smidig metodikk, erfaringer fra NAV Fagportal

Fri programvare i helsesektoren en realitet! Presentasjon av Enkeltoppgjør

Veiledning for aktivering av. Mobil Bredbåndstelefoni

Yrkesforedrag. Yrkesforedrag

Arne Maus, Ifi. med takk til Gerhard Skagstein(Ifi), Rune Steinberg, (Visma), Jo Hannay (Ifi), Ian Sommerville m. fl. for lån av gamle foiler

Oppsummering. Thomas Lohne Aanes Thomas Amble

UKEOPPGAVER 13: KONFIGURASJONSSTYRING

DRI2001 h04 - Forelesning Systemutvikling og nettsteder

Installasjonsveiledning

DRI 2001 Systemutviklingsarbeidet et overblikk Forelesning

Prosjektirektiv for Betty, fase 3

Statusrapport. MUSIT Ny IT-arkitektur Pilot. NØKKELINFORMASJON Rapporteringstidspunkt 9. mai 2016 Rapporteringsperiode April 2016

Hensikten med denne delen av kurset. Objektets egenskaper. Objektorientering hva er det? Best practises ved programvareutvikling. Kravspesifikasjonen

Oppfølgingsdokument. Kode januar 2004 GymPack. D Oppfølgingsdokument. Periode 009 Forfatter. Hanne Johnsen

GJENNOMGANG UKESOPPGAVER 13 KONTRAKTER

ANSKAFFELSE NR 17/05028 Bilde i EPJ. Bilag 1 Konsesjonsgivers kravspesifikasjon

HVA ER DET SOM SÆRPREGER DET Å ARBEIDE MED PROSJEKT?

Testdekning og automatisering - Er 100% testdekning et mål?

Eksamen Prosjektstyring

PROSJEKTPLAN FOR INF [4 3]120-PROSJEKT: PROJECT HOSPITAL 2004

UNIVERSITETET I OSLO

UKE 10 Kravhåndtering. Gruppetime INF1055

DETALJERTE KRAV FOR DOKUMENTASJON

RF-fjernkontroll for South Mountain Technologies

Kontrakter. INF1050: Gjennomgang, uke 12

Forprosjektrapport. Utvikle en plattform for digitalisering av foosballbord.

Løsningsforslag Sluttprøve 2015

DRI 2001 Systemutviklingsarbeidet et overblikk Forelesning

UNIVERSITETET I OSLO

Software Development Plan. Software Development Plan. Forum / Nettverkssamfunn Team 2

Ny kontraktsstandard: Fleksibel utviklingskontrakt

Gruppe 43. Hoved-Prosjekt Forprosjekt

for prosjektet Digital kontaktinformasjon og fullmakter for virksomheter planleggingsfasen

Kapittel 5 - Advanced Hypertext Model Kapittel 6 - Overview of the WebML Development Process

Oppgave 1 Multiple Choice

SLUTTRAPPORT. gruppe 42 Nils-Kristian Liborg, Bente Brevig, Tom Olav Bruaas, Eirik Lied og Hege Lid Pedersen. 25. november 2002

Arbeidsplan. Startfasen. Aktivitet Beskrivelse Ferdig Ansvarlig (Ressurser)

Fra problem til program

Kravspesifikasjon Digital distribusjon av sakspapirer

UNIVERSITETET I OSLO

Prosjektbeskrivelse for <små og mellomstore prosjekter>

Forstudierapport. Magne Rodem og Jan-Erik Strøm. 18. juni 2006

INF1050 dagsorden 18. april 2007

Hvordan å få jernbaneteknikk med i BIM modellen. Henrik Folke Holmberg

KRAVSPESIFIKASJON FOR SOSIORAMA

Installasjonsveiledning Visma Avendo Lønn, versjon 7.60 Oktober 2011

Hovedprosjekt 2009 Polar Circle AS

AGENDA. Faseinndeling og leveranser Leveransemodell Prosjektplan utkast Arkitekturområder Interessenter og roller

Statusrapport. MUSIT Ny IT-arkitektur Pilot. NØKKELINFORMASJON Rapporteringstidspunkt 16. juni 2016 Rapporteringsperiode Mai 2016

Prøveeksamen INF1050: Gjennomgang, uke 15

Installasjonsveiledning

Forfattere: Daníelsdóttir, Drífa Meland, Maiken Mijalkovic, Biljana Svendsen, Simen H. Gruppelærer: Zarei, Amir Hossein. 5.

VEDLEGG 6 VEDLIKEHOLDSAVTALEN

Innstallasjon og oppsett av Wordpress

Kvalitetskrav til løsninger

Eksamen i fag SIF8018 Systemutvikling. Fredag 25. mai 2001 kl

Konfigurasjonsstyring

STATUSRAPPORT 3: Produksjon av nettside for Skjerdingen Høyfjellshotell.

Bilag 1 Utstyr og/eller programvare som skal vedlikeholdes Her angis det utstyr og/eller programvare som vedlikeholdstjenesten omfatter.

Prosjektdagbok hovedprosjekt våren 09

System integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,

Hovedprosjekt 2014, Høgskolen i Oslo og Akershus

GJENNOMGANG UKESOPPGAVER 3 KRAVHÅNDTERING

Installasjonsveiledning Visma Avendo, versjon 5.2

AlgDat 12. Forelesning 2. Gunnar Misund

Technical Integration Architecture Teknisk integrasjonsarkitektur

Prosjektledelse, planlegging og teamarbeid. INF1050: Gjennomgang, uke 10

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case? Use case modellering. Eksempel

INF1000 Eksamensforberedelser og -tips. Høst 2014 Siri Moe Jensen

Forprosjekt. Oppgavens tittel: Motorstyring Dato: Jon Digernes Institutt/studieretning: Program for elektro og datateknikk

Forprosjektrapport. Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren Pillbox Punchline

Installasjonsveiledning

Mangelen på Internett adresser.

A3 Virksomhetsstyring, økonomi og eierskap / A3.16 Helhetlig virksomhetsstyring A Kontinuerlig forbedring inkludert gevinstrealisering

Anskaffelsesprosess. Planlegge Avklare behov, organisere. Leveranse Kontraktsoppfølging. Konkurransegjennomføring

Hurtiginnføring PC, Mac og Android

Transkript:

INF 1050 UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR Oppgave 1 a) Foranalyse: Foranalysen kan med fordel gjøres i to trinn. Den første er å undersøke finansiering og øvrige overordnede rammer. Den neste er å utarbeide prosjektplanen. Det er ikke viktig å dele dette inn i to trinn men det kan være en nyttig todeling. Trinn 1: For det første må vi undersøke hvor mye penger det er hensiktsmessig å investere i utviklingen vurdert i forhold til forventet inntekt (lønnsomhetsvurdering). Det innebærer at vi må definere en finansiell ramme som vi ikke kan overskride. Videre må vi sette opp de viktigste resultatmålene. Resultatmålene må gjerne baseres på f. eks. noen sentrale overordnede krav. Resultatmålene må knyttes til forventet inntekt. Siden vi har planer om å utplassere terminaler på flyplassene bør vi ha en initial forståelse av kostnader og funksjon for disse. Videre bør det gjøres en enkel vurdering av øvrige teknologier og verktøy som skal benyttes. Innledningsvis bør vi som minimum ha en overordnet forståelse for at alle komponentene vil fungere sammen. Andre momenter som kan vurderes her er: dato for ferdigstilling av prosjektet, dato for installasjon av terminaler, ressurser, etc. Leveransen fra trinn 1 er gjerne en rapport og gjerne et prosjektmandat som beskriver de overordnede økonomiske og øvrige rammer for prosjektet. Begrepet prosjektmandat er ikke noe dere trenger å bruke tid på, men det er nå det det heter. Trinn 2: Basert på resultatene over, skrives en fullstendig prosjektplan. Hovedmilepælene bør være sluttdato for alle fasene. Leveransen fra trinn 2 er prosjektplanen. Kravinnsamling: Resultatet av kravinnsamlingen blir da normalt en detaljert kravspesifikasjon. Kravene kan innhentes fra flere ulike interessenter (stake holders), noe som kan diskuteres med gruppebarna. Referer til at stake holders ble diskutert i forrige gruppeoppgave. Tradisjonelt vil kravspesifikasjonen bli skrevet av prosjektdeltagerne og sendt rundt til øvrige interessenter for godkjennelse. Merk spesielt at alle kravene til terminalene bestemmes her. (Terminalene er nytt hardware spesifikt til dette systemet, i motsetning til web browsere og mobiltelefoner som eksisterer uavhengig av dette systemet. Leveranse: Fullstendig kravspesifikasjon Design: Basert på kravene skal det lages en skisse av arkitekturen. Det er rimelig å anta at kravene detaljeres og at det benyttes en eller annen teknikk for dette (merk at dere foreløpig 1

ikke her har lært de ulike UML diagrammene og notasjonen for dette). Med utgangspunkt i skissene skrives en detaljert systemspesifikasjon. Nå kan vi anta at alle kravene og designet av terminalene er ferdig og dette vil oversendes den eksterne leverandøren for produksjon. Web-klient (browser) Terminal 1 Terminal n Web-tjener Integrasjonskomponent Terminal-tjener Applikasjonstjener Mobil 1 Mobil m Database Integrasjonskomponent Mobilnett-tjener For å gjøre denne delen mer konkret må dere fullføre systemskissen i oppgaven med f. eks en komponent for kommunikasjon med mobilnettet og en for kommunikasjon med terminalene. Begge disse kan f. eks. knyttes til applikasjonstjeneren. Deretter knyttes komponenten for terminal kommunikasjon med terminaler og tilsvarende knyttes komponenten for mobil med mobil telefoner. Dette blir da et veldig enkelt men konkret eksempel på design. Merk: Hensikten med designfasen er å lage en modell som er akkurat passe detaljert og som samtidig utelater ting som er uvesentlige for å lage systemet. Andre typer modeller er f.eks. t banerutenettet som er en modell som gir tilstrekkelig info for å komme seg fra A til B, selv om avstander osv. er abstrahert vekk. Leveranse: Arkitekturskisse og systemspesifikasjon Programmering: All kode skrives. Den eksterne leverandøren produserer alle terminalene. Leveranse: systemet med programkode og terminaler, samt annet nødvendig utstyr. Test: Terminalene installeres på flyplassene, programvaren installeres og hele systemet testes. Alle feil som avdekkes rettes. Drift: Systemet settes i drift og er tilgjengelig på nett og terminalene kan tas i bruk. b) Foranalyse: Til tross for at XP er en lettvektsprosess kan det være vanskelig å få aksept for en oppstart uten en første overordnet lønnsomhetsvurdering som beskrevet for fossefall. Vi bør 2

definere overordnede funksjonelle og tekniske mål som henger sammen med lønnsomhetsvurderingen. Hvor mye innsats vi skal legge i dette avhenger normalt av hvor langt oppdragsgiver er villig til å la oss gå uten å studere alle detaljene. En ekstrem variant er å begynne rett på, dvs. nærmest hoppe over foranalysen. For hver iterasjon: Hver iterasjon har en fast lengde (1 2 uker). Hver fase i iterasjonen har en avslutningsdato. Iterasjonsplan: Kunden/representant for bruker er en del av utviklingsteamet og jobber sammen med utviklere for å definere en liste med de viktigste kravene (bruksscenarier) på små kort (ca 1 2 dager). Hver iterasjon har en fast lengde, og når vi har nok bruksscenarier, lages en prioritert liste over kortene, og utviklingen begynner. De viktigste kortene tas først. Viktighet måles gjerne i hvor stor verdi kortet har for bruker/kunde. Utviklerne må også merke seg hvilke kort som har stor betydning for arkitekturen. Disse bør gjerne tas tidlig. Dersom terminalene vurderes som viktig (noe som er naturlig), skal kravene for disse defineres. Leveranse: en bunke med kort som hver beskriver et bruksscenario. Flere eksempler på bruksscenarier er rimelig enkelt å komme opp med. Her er noen flere: 1. Bruker (passasjer) registrerer brukernavn og passord på mobilen og dette skal kun være nødvendig ved første gangs bruk 2. Bruker (passasjer) skal kunne registrere tilbakemeldinger kun for de flyturene brukeren har fløyet Design: Tegninger av enkle arkitekturskisser på tavlen (det gjorde dere i oppgave a). Designkrav til en terminal prototype beskrives.. Leveranse: Arkitekturskisser, skisser av skjermbilder, samt skisse til terminal prototype. Programmering: Koden for kortene utvikles, enkle automatiske tester utvikles, arkitektur bygges om ved behov. Ny programkode integreres med tidligere programkode slik at vi har ett fungerende system. Deler av terminal prototypen utvikles integreres med resten av systemet og utplasseres på en flyplass. Test: Bruker/kunde tester og evaluerer det delvis ferdigstilte systemet ved å utføre de oppgavene som ble beskrevet i bruksscenariene. Iterasjonen fortsetter til systemet er klar til bruk. Merk at utstyr og infrastruktur for mottak av tilbakemelding pr mobiltelefon blir tilsvarende som med terminalene. c) Kan nærmest tas direkte fra boka og forelesningene. Et viktig moment er terminalene. Henvis gjerne til eksempelet med sporveienes billettstasjoner. Utplassering av slike terminaler på ulike flyplasser er åpenbart en utfordring og spesielt fordi vi må knytte sammen terminaler i flere land. Flyplassene kan stille ulike krav til sikkerhet og 3

infrastruktur, og det er ikke sikkert vi klarer å fange opp alle disse kravene i første omgang. Dette vil også påvirke risikoen ved bruk av XP fordi kravene til en terminal prototype som utplasseres på en flyplass kanskje ikke vil tilfredsstille kravene til en terminal på en annen flyplass. Hva er best måte å løse dette på? Oppgave 2: a) Prosjektet må ha en styringsgruppe. Styringsgruppen styres gjerne av den som er ansvarlig for at prosjektet lykkes. Samme person er gjerne ansvarlig for at prosjektet ikke overskrider planlagt budsjett. Videre bør styringsgruppen inneholde en representant fra driftsavdelingen, markedsføring, og kundebehandling. Prosjektlederen rapporterer til styringsgruppen. Vi vil sannsynligvis behøve ett team som arbeider med terminaler, ett for mobil, ett for web klienten. Hvert team bør ha en team/gruppe leder som rapporterer til prosjektlederen. b) Koordinering av utvikling og utplassering av terminaler og tilsvarende for infrastruktur for mobil må håndteres. Her vil tid og kostnadsrammen være sentral. Selve utviklingen av terminalene (hardware) gjøres av andre, men leveransene må koordineres med resten av prosjektet. Se forøvrig forelesning 3 og beskrivelsen av faktorene: Kostnadsramme Tidsramme Personalramme (antall prosjektdeltagere og kompetanse) Utstyrsramme (maskiner, programvare, nettverk, etc) Krav til leveransene Offentlige krav (lover, retningslinjer, etc) Produksjonstekniske krav Forøvrig er kommunikasjon mellom en sentral tjener og de utplasserte terminalene viktig å ta hensyn til. Er det behov for øvrig nettverk eller tillatelser? c) Overordnede milepæler bør som minimum være start og stopp av hver fase i fossefallsmodellen: Foranalyse, kravinnsamling, design, programmering, test. I tillegg er det hensiktsmessig å ta med driftsetting som siste milepæl. d) Koordinering av leveransen og utplassering av terminalene kan være en risiko. Vil programvaren som utvikles på de ulike plattformene (terminal, mobil, web klient, og tjener) fungere i sammen i ett nettverk? Videre er krav til sikkerhet på de ulike flyplassene og øvrige krav knyttet til infrastrukturen sentral. Løsningen er sterkt distribuert og ytelse (svartid) kan bli et sentralt spørsmål. Vet vi f. eks. hvor mange brukere som vil bruke systemet samtidig? Er vi sikre på at tjeneren klarer belastningen? Oppgave 3: Se eget nettverkdiagram under laget med oppstart 01.01.08. Merk at lørdag og søndag ikke er arbeidsdager. Rad nr 2 og 3 i kolonne 1 i hver aktivitet er tidligst start og tidligst slutt. f. eks. er tidligst start i G 03.01.08 og tidligst slutt 09.01.08. Senest start og slutt er i kolonne 2 slik at g får senest start 08.01.08 og senest slutt 14.01.08. Den kritiske veien blir: A, C, E, F, H. 4

Varighet Tidligst start Tidligst slutt Senest start Senest slutt *** 5