Prosessmodeller og smidig programvareutvikling

Størrelse: px
Begynne med side:

Download "Prosessmodeller og smidig programvareutvikling"

Transkript

1 1/21/14 INF1050: Systemutvikling 22. januar 2014 Prosessmodeller og smidig programvareutvikling Professor Dag Sjøberg Slide 1 INF1050/ / Dag Sjøberg Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 2 1

2 Reell prosess versus modell av prosess Systemutviklingsprosess (= faktisk, reell prosess): de aktivitetene som utføres i et utviklingsprosjekt Prosessmodell (=formell prosess) (kalles også gjennomføringsmodell) En abstrakt, forenklet representasjon av en prosess Deskriptiv beskriver en prosess slik vi mener vi utfører den Normativ (preskriptiv) beskriver en prosess slik noen mener den bør være (vanligste betydning) INF1050/ / Dag Sjøberg Slide 3 Modell versus virkelighet INF1050/ / Dag Sjøberg Slide 4 2

3 1/21/14 Formell versus reell prosess Det vi sier vi gjør eller det vi bør gjøre Det vi gjør Prosessbeskrivelse Prosessutførelse Slide 5 INF1050/ / Dag Sjøberg Nivåer av prosessmodeller Generelle prosessmodeller (fossefall, spiral, RUP, Scrum etc.) Definerte prosessmodeller (formell prosess) Firma-spesifikke prosessmodeller Prosjekt/gruppe-spesifikke prosessmodeller Prosess-samsvar Reell prosess INF1050/ / Dag Sjøberg Systemutviklingsprosess Slide 6 3

4 Hvordan tilpasse prosesser? Prosesser må tilpasses ingen prosjekter er like Mange faktorer påvirker prosessen Hva kan tilpasses? Antall faser/aktiviteter, roller, ansvarsforhold, dokumentformater, formalitet/frekvens på rapporter og gjennomganger Hvordan tilpasse? 1. Identifiser prosjektomgivelser utviklingsstrategi, risiko, krav, applikasjonsområde, type kunde etc. 2. Innhent synspunkter fra utviklere, brukere, kunder 3. Definer prosesser, aktiviteter og roller 4. Dokumenter og begrunn tilpasningene INF1050/ / Dag Sjøberg Slide 7 Myndighetene anbefaler felles prosjektmodell For å sikre kvalitet anbefaler myndighetene at offentlige virksomheter skal bruke en felles prosjektmodell. Er det lurt? Ulempe Sjelden at samme modell passer for alle type virksomheter Fordel Læring på tvers av etater Se artikkel i Aftenposten: INF1050/ / Dag Sjøberg Slide 8 4

5 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 9 Fossefallsmodellen Requirements definition System and software design Implementation and unit testing Integration and system testing Operation and maintenance I prinsippet går man ikke tilbake til tidligere hovedaktiviteter før systemet er satt i drift. INF1050/ / Fra Dag Ian Sjøberg Sommerville Slide 10 5

6 Kjennetegn ved fossefallsmodellen Plandrevet, dvs. utviklingen styres av planer. Separate faser Vanskelig å tilpasse endringer i brukerkrav underveis Best ved godt forståtte krav og når det er lite sannsynlig med mye endringer underveis Men få systemer har stabile krav Brukes mest i store prosjekter som gjerne utvikles på ulike steder. Plandreven utvikling gjør det enklere å koordinere arbeidet Men brukes også i små, godt forståtte prosjekter (jfr. de 4 bedriftene som lagde samme system) INF1050/ / Dag Sjøberg Slide 11 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 12 6

7 Inkrementer og iterasjoner i systemutvikling Et inkrement er et tillegg i funksjonaliteten et aspekt ved systemet En iterasjon er en syklus i utviklingen et aspekt ved prosessen Et nytt inkrement utvikles gjennom en ny iterasjon En ny iterasjon kan også forbedre kvaliteten på samme funksjonalitet, dvs. man lager ikke noe nytt inkrement, men bare forbedrer det eksisterende systemet INF1050/ / Dag Sjøberg Slide 13 Inkrementell utvikling Systemet utvikles gradvis i form av nye inkrementer som blir lagt til. Hvert inkrement evalueres før utviklingen av neste inkrement starter Vanlig tilnærming i smidige metoder Evalueringen gjøres av en bruker- eller kunderepresentant ( product owner ) INF1050/ / Dag Sjøberg Slide 14 7

8 Inkrementell installering Istedenfor at hele systemet leveres til kunden på en gang, leveres ett inkrement av gangen som tilsvarer en del av all funksjonalitet De viktigste kravene implementeres i de første inkrementene Når utviklingen av et inkrement er startet, så fryses kravene til det inkrementet, men kravene til senere inkrementer kan fortsatt endres INF1050/ / Dag Sjøberg Slide 15 Fordeler ved inkrementell utvikling og installering Kostnadene ved endrede brukerkrav reduseres sammenlignet med fossefallsmodellen da delene som må endres, er mindre Enklere å få tilbakemeldinger fra kunden på det som har blitt utviklet Lettere å se hvor mye som er utviklet så langt Raskere levering av deler av systemet gir verdi for kunden raskere enn ved fossefallsmodellen Den prioriterte funksjonaliteten blir testet mest Lavere risiko for total prosjektfiasko INF1050/ / Dag Sjøberg Slide 16 8

9 Utfordringer ved inkrementell utvikling og installering Store prosjekter og systemer krever en relativt stabil arkitektur som inkrementene og teamene må forholde seg til, dvs. arkitekturen kan ikke utvikles i inkrementer Strukturen til systemet har en tendens til å bli stadig verre etter hvert som inkrementer legges til Derfor stadig vanskeligere å foreta endringer hvis ikke ressurser brukes på re-strukturering (re-faktorering) INF1050/ / Dag Sjøberg Slide 17 Utviklingsstrategi Definer alle Krav først? Flere utviklingssykluser? Fossefall Ja Nei krav design kode test lever Inkrementell Ja Ja krav design design kode kode test test lever lever design kode Iterativ (evousjonær) Nei Ja krav krav design krav lever kode test lever test INF1050/ / Dag Sjøberg Slide 18 9

10 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 19 Prototyping Prototype: en foreløpig versjon av et system utviklet for å utforske: kravene til et system alternative brukergrensesnitt ulike måter å teste systemet på Potensielle fordeler: bedre match mot brukernes faktiske behov bedre brukskvalitet bedre design og vedlikeholdbarhet reduserte utviklingskostnader INF1050/ / Dag Sjøberg Slide 20 10

11 Utvikling ved bruk av prototype Prototypen bør fokusere på områder av systemet som ikke er godt forstått Det finnes egnede språk og verktøy INF1050/ / Dag Sjøberg Slide 21 Throw-away prototype Protypen bør skrotes etter at den lagd og brukt for dårlig basis for et produksjonssystem Vil kunne være umulig å møte ikke-funksjonelle krav (f.eks. ytelse, pålitelighet og sikkerhet) Prototyper er normalt udokumenterte Strukturen til prototyper er vanligvis degradert gjennom raske endringer INF1050/ / Dag Sjøberg Slide 22 11

12 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 23 Spiralmodellen Utviklingsprosessen er representert som en spiral istedenfor en sekvens med aktiviteter Hver runde i spiralen representerer en fase i prosessen, f. eks. kravspesifisering eller design Løkkene i spiralen velges etter behov. F.eks. kan man gå tilbake til tidligere aktiviteter Risikoanalyse: hva som kan gå galt, og med hvilken sannsynlighet og konsekvens, er vurdert og håndtert eksplisitt gjennom prosessen INF1050/ / Dag Sjøberg Slide 24 12

13 Boehm s spiral model of the software process Identifiser spesifikke mål for fasen Determine objectives, alternatives and constraints Plan next phase Evaluer prosjektet og planlegg neste fase REVIEW Requirements plan Life-cycle plan Development plan Integration and test plan Risk analysis Risk analysis Risk analysis Prototype 2 Risk analysis Prototype 1 Concept of Operation S/W requirements Requirement validation Design V&V Service Analyser risiko og utfør aktiviteter for å redusere de viktigste Acceptance test Prototype 3 Operational protoype Simulations, models, benchmarks Product design Integration test Evaluate alternatives, identify, resolve risks Unit test Code Detailed design Develop, verify next-level product Design, koding (programmering) etc. INF1050/ / Fra Dag Ian Sjøberg Sommerville Slide 25 Bruk av spiralmodellen Blant de mest kjente, klassiske modeller hatt stor betydning i utviklingen av tankegangen rundt iterasjoner og risikovurderinger i systemutviklingsprosessen Men brukes sjelden i konkret systemutvikling INF1050/ / Dag Sjøberg Slide 26 13

14 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 27 Rational Unified Process (RUP) Ikke en konkret prosessmodell, men et rammeverk for å bygge arkitektur/uml-modeller (se senere forelesninger) Programvarebedrifter eller team kan ta utgangspunkt i RUP for å skreddersy en modell for sin utvikling Benytter seg av prinsipper fra prosessmodellene beskrevet tidligere i forelesningen Vanligvis beskrevet med fokus på faser, disipliner (aktiviteter) og anbefalt god praksis INF1050/ / Dag Sjøberg Slide 28 14

15 Fire faser i RUP Hver fase er iterativ med Phase resultater iterationsom utvikles i inkrementer Inception Elaboration Construction Transition Innledning/idé (lag business case) (inception) Lag overordnet målsetting, behovsanalyse, budsjett, prosjektplan Identifisere funksjonelle krav og modellere use cases (brukstilfeller) Utdypning (elaboration) Fortsett med å forstå problemområdet, lag use cases Start design av arkitektur, lag arkitektur prototype Ferdigstill prosjektplanen Konstruksjon (construction) Design-programmer-test, typisk i flere iterasjoner Installering/driftssetting (transition) Overfør systemet til sitt produksjonsmiljø og sett det i drift; gi nødvendig opplæring til sluttbrukerne og vedlikeholdere; valider systemet i forhold til kvalitetskrav spesifisert i innledningen etc. INF1050/ / Dag Sjøberg Slide 29 Anbefalte praksiser i RUP Utvikle systemet i iterasjoner I hver iterasjon, legg til et nytt inkrement. Først lag de inkrementene som kunden har prioritert høyest Sørg for god håndtering av krav Dokumenter kundekrav nøye og sørg for dokumentasjon av endringer i kravene Bruk komponent-basert arkitektur Organiser systemets arkitektur som en mengde gjenbrukbare komponenter Lag visuelle modeller av programvaren Bruk grafiske UML-modeller for å presentere statiske og dynamiske sider ved systemet Verifiser kvaliteten Sjekk at programvaren tilfredsstiller organisasjonens kvalitetsstandarder Kontroller endringer i programvaren Bruk endringshåndteringsverktøy og konfigurasjonsstyringsverktøy INF1050/ / Dag Sjøberg Slide 30 15

16 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 31 Gjenbruksbasert utvikling Eksisterende programvare gjenbrukes i større eller mindre grad utviklingen av nye systemer Komponentbasert utvikling Samling av komponenter i en pakke som del av komponentrammeverk som.net eller J2EE eller andre typer komponent-biblioteker Selvstendige programvare-systemer som er utviklet for bruk i et spesielt miljø Service-orientert (tjenesteorientert) utvikling Web-services som er utviklet i henhold til en standard og som kan kalles fra andre steder Service-orientert arkitektur (SOA): Forelesning 12. mars INF1050/ / Dag Sjøberg Slide 32 16

17 Hvilken prosess er best? Sommerville skriver: There are no right or wrong software processes Ikke eksakt fagfelt; man mangler fortsatt sikker kunnskap om hvordan ulike prosesser fungerer i ulike situasjoner MEN: opplagt at noen prosesser er bedre enn andre avhengig av hva slags system som skal utvikles og i hvilken kontekst det skal foregå INF1050/ / Dag Sjøberg Slide 33 Quiz For å redusere belastningen på nettet Alle med mobiltelefon: Skru av nett-tilgang og bruk mobilnettet isteden De som har laptop og nettbrett, stopp alt nettbruk annet enn Kahoot Gå til kahoot.it på mobil, nettbrett, PC etc. Pass på at mobilen ikke lukker seg Tast inn Game pin Lag Nick name ). Brukernavnet sensitivt for små og store bokstaver. Navnet blir synlig Det samme brukernavnet må benyttes resten av semesteret De som blir kastet ut og må logge seg inn igjen, får nullet ut sin poengsum i øyeblikket, men etterpå blir resultatet likevel summert på samme navn INF1050/ / Dag Sjøberg Slide 34 17

18 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 35 Behov for smidighet Den klassiske ingeniørtilnærmingen med fokus på planlegging og dokumenter (jfr. fossefall) har vist seg ofte å ikke være egnet Derfor er smidige metoder blitt vanlige Vektlegging av kode fremfor (omfattende) design og dokumentasjon Vektlegging av samarbeid med kunde fremfor kontraktsforhandlinger Raskere levering av kode og raske endringer tilpasset endrede brukerkrav INF1050/ / Dag Sjøberg Slide 36 18

19 Plandrevne (tunge) prosesser Smidige (lette) prosesser Prosessaktivitetene planlagt på forhånd. Progresjon måles i henhold til planen En tung prosess inkluderer mange aktiviteter og ofte roller. Krever formelle, detaljerte og konsistente prosjektdokumenter Ofte for-tunge, dvs. vektlegger aktiviteter som gjøres tidlig i prosessen (planlegging, analyse & design) Planleggingen gjøres litt etter litt (inkrementelt) Enklere å endre prosessen for å tilpasse endrede krav fra kunden Fokuserer mer på fundamentale prinsipper (f.eks. kontinuerlig testing ). Har færre formelle dokumenter og er ofte mer iterative INF1050/ / Dag Sjøberg Slide 37 En samling software-guruer i 2001: Agile Manifesto 12 prinsipper* *http://agilemanifesto.org og INF1050/ / Dag Sjøberg Slide 38 19

20 Agile Manifesto 2001 (forts.) *http://agilemanifesto.org og INF1050/ / Dag Sjøberg Slide 39 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 40 20

21 Ekstrem programmering (XP) Ekstrem ved at: Hele systemet kan bygges (rekompileres) opp til flere ganger daglig Inkrementer av systemet leveres til kunden annenhver uke Alle tester må kjøres før hver bygging* Byggingen aksepteres bare hvis testene er vellykkede *Bygging: Alle komponentene til systemet kompileres og linkes til hverandre og til data og biblioteker som er nødvendige for å lage et kjørbart system INF1050/ / Dag Sjøberg Slide 41 Praksiser i XP Praksis Inkrementell planlegging Små releaser Enkelt design Test-først utvikling Refaktorering Parprogrammering Kollektivt eierskap Kontinuerlig integrasjon Holdbart tempo Kunde på stedet Beskrivelse Kravene skrives som brukerhistorier som typisk tilsvarer en utviklingsoppgave. Hvilke som skal inkluderes i en release blir bestemt ut fra prioritet og tilgjengelig tid. Lag først det minste settet av funksjonalitet som gir verdi for kunden. Lever hyppig nye inkrementer med funksjonalitet. Bare design så mye som strengt tatt nødvendig. Bruk et automatisk testrammeverk til å skrive tester for ny funksjonalitet FØR funksjonaliteten selv implementeres. Forbedre koden kontinuerlig når muligheter for forbedring oppdages. Programmer i par. Alle par skal jobbe på og ta ansvar for alle deler av koden ikke ha lokale eksperter på deler av koden. Umiddelbart etter at en oppgave er ferdig, må den tilhørende koden integreres i hele systemet. Alle enhetstester må kjøres. Ikke jobb mye overtid fordi konsekvensen er dårligere kode og lavere produktivitet i lengden. Representant for sluttbruker eller kunde bør være tilgjengelig for utviklingsteamet hele tiden. INF1050/ / Dag Sjøberg Slide 42 21

22 Brukerhistorie (user story) Én eller flere setninger som beskriver hva brukeren av et system ønsker å få ut av systemet på formen: Som en <rolle> ønsker jeg <funksjon> for å oppnå <verdi> Kort beskrivelse, passer på et kort eller gul lapp INF1050/ / Dag Sjøberg Slide 43 Refaktorering (omstrukturering) Se etter forbedringsmuligheter og implementer dem selv om ikke umiddelbart behov for dem Koden mer forståelig og enklere å endre, og mindre behov for dokumentasjon Noen endringer krever at arkitekturen omstruktureres (kostbart) Eksempler på refaktorering Reorganisering av klassehierarki for å fjerne duplisert kode Forbedre navn på attributter og metoder Erstatte kode med kall til metoder i et programbibliotek INF1050/ / Dag Sjøberg Slide 44 22

23 Parprogrammering - kan brukes uavhengig av smidig To programmerere utvikler kode sammen: Fører skriver på tastaturet Navigatør observerer arbeidet til føreren og ser etter feil og svakheter ser etter alternativer noterer ting som må gjøres slår opp referanser 45 INF1050/ / Dag Sjøberg Slide 45 Hva er kost-nytten ved parprogramming? Sommerville skriver i boka s. 70: However, studies with more experienced programmers (Arisholm et al., 2007*; Parish et al., 2004) did not replicate these results. They found that there was a significant loss of productivity compared with two programmers working alone. Dette eksperimentet vil bli gjennomgått på metode-forelesningen 9. april. *E. Arisholm, H.E. Gallis, T. Dybå and D.I.K. Sjøberg. Evaluating Pair Programming with Respect to System Complexity and Programmer Expertise, IEEE Transactions on Software Engineering 33(2): 65-86, 2007 INF1050/ / Dag Sjøberg Slide 46 23

24 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 47 Prosessfokuserte metoder Fokus på prosjektledelse av iterativ utvikling fremfor mer tekniske praksiser To hovedretninger 1. Velg noen prioriterte oppgaver og jobb med dem i faste tidsintervaller (tidsbokser*) med definerte oppstarts- og avslutningsaktiviteter (Scrum) 2. Fokuserer på at oppgaver skal flyte uten avbrudd gjennom de nødvendige aktivitetene til de er ferdige (Kanban) *Tidsboks: en fast tidsperiode som et gitt arbeid skal være ferdig innenfor INF1050/ / Dag Sjøberg Slide 48 24

25 Scrum tre faser Planleggingsfasen: overordnede mål for prosjektet etableres og programvarearkitekturen designes Gjennomføringsfasen: en serie med iterasjoner (kalt sprint ), der hver iterasjon leverer et inkrement av systemet Avslutningsfasen: nødvendig dokumentasjon som hjelpfunksjoner og brukermanualer fullføres, og man oppsummerer hva man har lært i prosjektet INF1050/ / Dag Sjøberg Slide 49 Scrum I sprint-planleggingsmøtet evalueres oppgavelisten (backlog) som er en samling av brukerhistorier. Mål for sprinten settes inkl. prioriteter og risiko. Kunden kan sette nye krav el. gi nye oppgaver Planlegging Outline planning and architectural design Input: Product backlog liste av arbeidsoppgaver (Work Items) som skal utføres i prosjektet Resultatene evalueres mot målene som ble satt i sprint-planleggingsmøtet, og presenteres for kunden ( retrospective ) Gjennomføring Assess Select Review Develop Sprint cycle Tidsboks: 2-4 uker Utviklingsteam og kunde velger egenskaper og funksjonalitet som skal utvikles i sprinten Avslutning Project closure Lag dokumentasjon (hjelpefunksjoner, brukermanualer) og oppsummer hva man lærte Design, koding, testing. Utviklingsteamet isoleres fra kunden og organisasjonen, dvs. all kommunikasjonen skjer via Product Owner eller Scrum Master for å unngå forstyrrelser INF1050/ / Dag Sjøberg Slide 50 25

26 Visualisering Noter en oppgave eller arbeidspakke på en gul lapp og sett den på en tavle User stories US5 US4 US3 US1 US2 INF1050/ / Dag Sjøberg Slide 51 (Antatte) fordeler ved Scrum Systemet blir delt opp i en mengde forståelige og håndterbare deler Ustabile krav hindrer ikke progresjon i prosjektgjennomføringen Hele teamet observerer hva som skjer i prosjektet, og kommunikasjon innen teamet blir god Kundene får inkrementer levert til avtalt tid og får fortløpende tilbakemelding på hvordan deler av systemet fungerer Tillit mellom kunder og utviklere etableres tidlig og en positiv kultur skapes Kryss-funksjonelle team (kompetansene på ulike områder finnes innen teamet) sikrer framdrift og reduserer risiko Mer om teamarbeid i Scrum på forelesningen 26. mars INF1050/ / Dag Sjøberg Slide 52 26

27 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 53 Prosessprinsipp: Timeboxing versus task-boxing / task-flyt Scrum Ikke alltid greit å dele inn oppgaver eller features av systemet tilpasset sprintene, f.eks. vedlikehold, videreutvikling og support Kanban Definerer et sett med oppgaver eller features og lever så snart man er ferdig. Oppgaver skal flyte uten avbrudd gjennom de nødvendige aktivitetene til de er ferdige (oppgaveboksing) INF1050/ / Dag Sjøberg Slide 54 27

28 Flytbasert utvikling INF1050/ / Dag Sjøberg Slide 55 Fokus på flyt Flyt av materialer, folk og penger: arbeidskraft var billig, hadde nok folk, OK om folk i periode ikke hadde noe å gjøre Tilpasset høyden til hva de kunne produsere ikke omvendt Tett samarbeid mellom arkitekter, bygningsarbeidere og underleverandører Erfarne arbeidere Fast pris kontrakt Fokus på materialflyt (500 lastebiler om dagen) ingen mellomlagring Dekobling (modularisering): ulike systemer skulle være uavhengige Tid var penger: Hver dag forsinket kostet $ ($ i dag) INF1050/ / Dag Sjøberg Slide 56 28

29 1/21/14 Kanban Fokus på gjennomstrømningshastighet på arbeidspakkene = antall brukerhistorier (features) implementert per tidsenhet Begrense antall arbeidspakker som det jobbes med i parallell (WIP = Work In Progress) for å hindre flaskehalser Antakelse: Jo høyere WIP, jo saktere flyter arbeidspakken gjennom arbeidsprosessene Når en pakke er ferdig, kan man etterspørre en ny som man begynner å jobbe med (pull) Slakk i tidsplanen er OK, dvs. en utvikler vil kunne vente hvis det optimaliserer overordnet flyt Mindre fokus på estimering INF1050/ / Dag Sjøberg Slide 57 Forskjell på Scrum-tavle og Kanban-tavle Max WIP From: Kanban and Scrum - making the most of both by Henrik Kniberg and Mattias Skarin on Dec 21, 2009 INF1050/ / Dag Sjøberg Slide 58 29

30 Fordeler ved Kanban Flaskehalser i prosessen blir synlige Fokus på å bli ferdig med oppgaver som hindrer gjennomstrømning fremfor å begynne på flere oppgaver som vil hope seg opp Kan drive smidig utvikling uten å bruke tidsbokser Spesielt for drifts- og supportoppgaver og vedlikeholdsoppgaver vil veldefinerte sprinter ofte ikke gi mye mening Gunstig der det er svært vanskelig å estimere oppgavene INF1050/ / Dag Sjøberg Slide 59 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 60 30

31 Kanban en teknikk fra Lean (slank) production INF1050/ / Dag Sjøberg Slide 61 Lean den japanske skolen, primært Toyota Kontinuerlig læring og forbedring (Kaizen) Forbedre helheten, dvs. ikke sub-optimalisere Ved feil, stopp samlebåndet og finn årsaken til feilen fremfor å samle og rette opp alle feil i bolker Just-in-time -prinsippet: Ikke lag noe før noen etterspør det Komponentbasert produksjon (samme understell etc. på ulike biltyper) Kundefokus Unngå waste Fjerning av mellomlagring INF1050/ / Dag Sjøberg Slide 62 31

32 Waste Alt som krever ressurser tid arbeidsinnsats rom lager (unngå mellomlagring) utstyr penger som ikke gir verdi for kunden Verdi = det kunden ønsker og er villig til å betale for INF1050/ / Dag Sjøberg Slide 63 Resultat Toyota færrest feil og raskest produksjon Skyldes også hard jobbing De mest produktive bedriftene brukte færrest ressurser på ledelse og administrasjon ( lean management ) INF1050/ / Dag Sjøberg Slide 64 32

33 Den norske/nordiske modellen Selvstyrte (autonome) team Læring, redundans/jobbrotasjon Medvirkning og arbeidsmiljø Livskvalitet Samarbeid ledelse, arbeidstakerorganisasjoner og myndigheter Hydro, Volvo og mange flere B. Gustavsen, T.U. Quale, B.A. Sørensen, M. Midtbø og P.H. Engelstad. Innovasjonssamarbeid mellom bedrifter og forskning den norske modellen. Gyldendal 2010 INF1050/ / Dag Sjøberg Slide 65 Bilproduksjon vs. programvareutvikling Bilindustri er produksjon av fysiske produkter, mens programvareutvikling fokuserer på kode (tekst) Likevel, lean prinsippene kan anvendes i programvareutvikling Lean management er et hett tema i mange sektorer som ikke driver produktutvikling Offentlig forvaltning (f.eks. helsevesen, universiteter) Privat sektor INF1050/ / Dag Sjøberg Slide 66 33

34 Plan Kap. 2: Begrepet prosessmodell Prosessmodeller og prinsipper for utvikling Fossefallsmodellen Inkrementell og iterativ utvikling Prototyping Spiralmodellen Rational Unified Process (RUP) Gjenbruksbasert utvikling Kap. 3 Begreper og prinsipper innen smidig utvikling Programmeringsfokuserte smidige metoder Ekstrem programmering (XP) Prosessfokuserte smidige metoder Tidsboksbasert (Scrum) Flytbasert (Kanban) Lean systemutvikling Oppsummering smidige metoder INF1050/ / Dag Sjøberg Slide 67 Utfordringer ved smidige metoder Vanskelig å opprettholde kundens interesse i prosjektet hele tiden Utviklerne vil kunne mangle det intense engasjement som kreves Vanskelig å prioritere endringer hvis mange interessenter (stakeholders) Krever ekstra tid å stadig gjøre endringer og opprettholde enkelhet Kontrakter kan være et vanskelig tema (se forelesning 23. april) INF1050/ / Dag Sjøberg Slide 68 34

35 Utfordringer ved utvikling av store systemer Hvordan skalerer smidige metoder i store, langvarige prosjekter med mange utviklingsteam som kanskje jobber distribuert, kanskje innen ulike kulturer og tidssoner med hvert sitt del-system som skal kommunisere med hverandre? Krav til kommunikasjon mellom del-systemer vanskeliggjør fleksibilitet og inkrementell utvikling. Lite fokus på integrering av del-systemer. Store systemer tar lang tid å utvikle. Vanskelig å ha fokuserte team hele tiden som kjenner prosessen og produktet godt. Folk begynner i andre prosjekter og jobber. Store systemer har mange interessenter som kan være vanskelig å involvere i utviklingsprosessen. Design og system-dokumentasjon viktig i store systemer, ikke bare kode. INF1050/ / Dag Sjøberg Slide 69 Merk: Sommerville diskuterer ikke flytbasert utvikling (Kanban) Temaet er likevel viktig INF1050/ / Dag Sjøberg Slide 70 35

36 Oppsummering Smidige metoder er kommet for å bli Finnes mange måter å være smidig på Mer om smidig i forelesningen om prosjektledelse 26. mars og studier av smidig utvikling 9. april. NF5181 Prosessforbedring og smidige metoder i systemutvikling INF1050/ / Dag Sjøberg Slide 71 Quiz INF1050/ / Dag Sjøberg Slide 72 36

Prosessmodeller og smidig programvareutvikling

Prosessmodeller og smidig programvareutvikling 24/01/17 INF1050: Systemutvikling 24. januar 2017 Prosessmodeller og smidig programvareutvikling Professor Dag Sjøberg INF1050/ 24.1.2017 / Dag Sjøberg Slide 1 Smakebit på mastergradskurset Smarte prosesser

Detaljer

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG INF1050 V16 HVA ER EN SYSTEMUTVIKLINGSPROSESS? De aktivitetene som utføres for å utvikle et IT-system Eksempler på aktiviteter:

Detaljer

Prosessmodeller og smidig programvareutvikling. INF1050: Gjennomgang, uke 02

Prosessmodeller og smidig programvareutvikling. INF1050: Gjennomgang, uke 02 Prosessmodeller og smidig programvareutvikling INF1050: Gjennomgang, uke 02 Kompetansemål Prosessmodeller Kunne redegjøre for hva som kjennetegner ulike prosessmodeller Vurdere prosesser for utvikling

Detaljer

UKE 9 Prosesser og prosessmodeller inkludert smidige metoder. Gruppetime INF1055

UKE 9 Prosesser og prosessmodeller inkludert smidige metoder. Gruppetime INF1055 UKE 9 Prosesser og prosessmodeller inkludert smidige metoder Gruppetime INF1055 Hva skal vi i dag? Introduksjon til modul B - systemutvikling (kap. 1, 2 og 3) Prosesser og prosessmodeller + smidig utvikling

Detaljer

GJENNOMGANG UKESOPPGAVER 7 REPETISJON

GJENNOMGANG UKESOPPGAVER 7 REPETISJON GJENNOMGANG UKESOPPGAVER 7 REPETISJON INF1050 V16 KRISTIN BRÆNDEN DAGENS TEMA Oppgaver hentet fra tidligere eksamensoppgaver om temaene vi har gått gjennom til nå DAGENS PLAN Gjennomgang av oppgaver Repetisjon

Detaljer

Velkommen til andre del av INF1055 Introduksjon til systemutvikling Prosesser og prosessmodeller

Velkommen til andre del av INF1055 Introduksjon til systemutvikling Prosesser og prosessmodeller 21/03/17 Velkommen til andre del av INF1055 Introduksjon til systemutvikling Prosesser og prosessmodeller Professor Dag Sjøberg INF1050/ 22.3.2017 / Dag Sjøberg Slide 1 Dag Sjøberg (dagsj@ifi.uio.no) Professor

Detaljer

1. Hvilke type krav angår sikkerhet og pålitelighet?

1. Hvilke type krav angår sikkerhet og pålitelighet? 1. Hvilke type krav angår sikkerhet og pålitelighet? a) Funksjonelle b) Ikke-funksjonelle Svar: b), IS side 88, lærebok s.96 2. Verdien av etnografi er at den hjelper til å oppdage som reflekterer hvordan

Detaljer

1. Hvilke type krav angår sikkerhet og pålitelighet?

1. Hvilke type krav angår sikkerhet og pålitelighet? 1. Hvilke type krav angår sikkerhet og pålitelighet? a) Funksjonelle b) Ikke-funksjonelle Svar: b) 2. Verdien av etnografi er at den hjelper til å oppdage som reflekterer hvordan folk faktisk jobber a)

Detaljer

Systemutviklingsmetoder

Systemutviklingsmetoder Systemutviklingsmetoder Kapittel 2, 4, 5 07.01.2004 Kirsten Ribu 1 I dag Et eksempel på et system med kravspesifikasjon Utviklingsmodeller: Strukturert systemutvikling (Fossefall-modellen) Evolusjonær

Detaljer

Ledelse av systemutviklingsprosjekter

Ledelse av systemutviklingsprosjekter INF 5700, 28. september 2012 Ledelse av systemutviklingsprosjekter Professor Dag Sjøberg INF5700/ 28.9.2012, Dag Sjøberg Slide 1 INF5700/ 28.9.2012, Dag Sjøberg Slide 2 Plan for forelesningen Ledelsesaktiviteter

Detaljer

Undervisning i Smidige metoder ved Universitetet i Oslo

Undervisning i Smidige metoder ved Universitetet i Oslo Undervisning i Smidige metoder ved Universitetet i Oslo Dag Sjøberg Professor ved Ins4tu7 for informa4kk Universitetet i Oslo Dag Sjøberg, Universitetet i Oslo 1 Planer for undervisning Kurs INF1050 Systemutvikling/software

Detaljer

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

Hensikten med denne delen av kurset. Objektets egenskaper. Objektorientering hva er det? Best practises ved programvareutvikling. Kravspesifikasjonen Hensikten med denne delen av kurset Objektorientert systemutvikling Rational Unified Process (RUP) Gurholt og Hasle kap. 6 UML Distilled kap. 2 Å lære modellerings- og designprinsipper og øve opp teknikker

Detaljer

Løsningsforslag: Oblig 1. INF1050: Gjennomgang, uke 12

Løsningsforslag: Oblig 1. INF1050: Gjennomgang, uke 12 Løsningsforslag: Oblig 1 INF1050: Gjennomgang, uke 12 Obligatorisk oppgave 1: Pensum Bakgrunn for systemet Aktører og interessenter Utviklingsprosesser Kravhåndtering og kravspesifikasjon Use case-modellering

Detaljer

Kravhåndtering. INF1050: Gjennomgang, uke 03

Kravhåndtering. INF1050: Gjennomgang, uke 03 Kravhåndtering INF1050: Gjennomgang, uke 03 Kompetansemål Kravhåndtering Anvende metoder og teknikker for å Innhente / Analysere / Spesifisere krav Ulike typer krav Funksjonelle krav Ikke-funksjonelle

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF1050 Eksamensdag: 2. juni 2014 Tid for eksamen: 09:00-13:00 Oppgavesettet er på 4 sider Vedlegg: Ingen Tillatte hjelpemidler:

Detaljer

Prøveeksamen INF1050: Gjennomgang, uke 15

Prøveeksamen INF1050: Gjennomgang, uke 15 Prøveeksamen 2016 INF1050: Gjennomgang, uke 15 Overblikk Multiple choice Modellering Aktivitetsdiagram Sekvensdiagram Klassediagram Tilstandsdiagram Krav Ikke-funksjonelle krav og målbarhet Smidig metodikk

Detaljer

GJENNOMGANG UKESOPPGAVER 3 KRAVHÅNDTERING

GJENNOMGANG UKESOPPGAVER 3 KRAVHÅNDTERING GJENNOMGANG UKESOPPGAVER 3 KRAVHÅNDTERING INF1050 V16 HVA ER KRAVHÅNDTERING? Kravhåndtering er prosessen å identifisere, analysere og spesifisere kravene til et nytt system eller et system som skal forbedres

Detaljer

Kap. 2 Prosessen. Utviklingsmodeller -2. Utviklingsmodeller. Utviklingsmodeller -4. Utviklingsmodeller - 3. Software Engineering - definisjoner

Kap. 2 Prosessen. Utviklingsmodeller -2. Utviklingsmodeller. Utviklingsmodeller -4. Utviklingsmodeller - 3. Software Engineering - definisjoner Software Engineering - definisjoner Kap. 2 Prosessen Utviklingsprosessen Modeller for utvikling Bauer: Etablering og bruk av gode ingeniørmessige prinsipper for å fremskaffe økonomisk programvare som er

Detaljer

Konfigurasjonsstyring

Konfigurasjonsstyring INF1050: Systemutvikling 28. mars 2017 Konfigurasjonsstyring Yngve Lindsjørn ynglin@ifi.uio.no INF1050 Systemutvikling ->Konfigurasjonsstyring 1 Temaer i dagens forelesning Versjonshåndtering Systembygging

Detaljer

Prosjektledelse - fra innsiden

Prosjektledelse - fra innsiden Prosjektledelse - fra innsiden Presentasjon hos UiO 31.08.2012 Ida Lau Borch, fagansvarlig i Metier AS Det ligger et fantastisk potensial i det å være best i prosjektledelse og -styring Prosjekteierstyring

Detaljer

Prosjektledelse, prosjektplanlegging, teamarbeid

Prosjektledelse, prosjektplanlegging, teamarbeid SKK modul B 03. Mai 2017 Prosjektledelse, prosjektplanlegging, teamarbeid Yngve Lindsjørn ynglin@ifi.uio.no INF1055 > SKK -> Prosjektledelse og teamarbeid 1 Temaer i dagens forelesning Prosjektstyring/Prosjektledelse

Detaljer

UKE 10 Kravhåndtering. Gruppetime INF1055

UKE 10 Kravhåndtering. Gruppetime INF1055 UKE 10 Kravhåndtering Gruppetime INF1055 Hva skal vi i dag? Kravhåndtering - kapittel 4 Ukesoppgaver: Smidig programvareutvikling og kravhåndtering Krav KRAV KOMPETANSEMÅL: Kravhåndtering: anvende metoder

Detaljer

Eksamen 2012 INF1050 Lars- Martin Hejll Universitetet i OSLO

Eksamen 2012 INF1050 Lars- Martin Hejll Universitetet i OSLO Eksamen 2012 INF1050 Lars- Martin Hejll Universitetet i OSLO Høgskolen i Telemark 2 Lars- Martin Hejll Høgskolen I Telemark Oppgave 1 Spørsmål fra pensum (20%) 1. Nødvendige aktiviteter i systemutvikling:

Detaljer

UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR

UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR 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

Detaljer

Kontrakter. INF1050: Gjennomgang, uke 12

Kontrakter. INF1050: Gjennomgang, uke 12 Kontrakter INF1050: Gjennomgang, uke 12 Kompetansemål Kontrakter I plandrevet utvikling I smidig utvikling Behov for smidige kontrakter Kontraktsmodeller PS2000 Del I: Kontrakter Grunnleggende: Hva? Plandrevet

Detaljer

Presentasjon 1, Requirement engineering process

Presentasjon 1, Requirement engineering process Presentasjon 1, Requirement ing process Prosessodeller Hvorfor bruke prosessmodeller? En prosessmodell er en forenklet beskrivelse av en prosess En prosessmodell er vanligvis lagd ut fra et bestemt perspektiv

Detaljer

Løsningsforslag Sluttprøve 2015

Løsningsforslag Sluttprøve 2015 Høgskolen i Telemark Løsningsforslag Sluttprøve 2015 Emne: IA4412 Systemutvikling og dokumentasjon Fagansvarlig: Hans- Petter Halvorsen, Olav Dæhli Klasse: IA2, A- vei Dato: 2015.05.27 Time: 09:00-12:00

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Bokmål Kandidat nummer: UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Prøveeksamen i: INF1050 Eksamensdag: 0. mai, 2011 Tid for eksamen: 00:00 00:00 Oppgavesettet er på 6 sider Vedlegg:

Detaljer

Ulike typer prosessmodeller. Systemutvikling. Utviklingsmodeller. Prosessmodell - faser

Ulike typer prosessmodeller. Systemutvikling. Utviklingsmodeller. Prosessmodell - faser 1 Ulike typer prosessmodeller Systemutvikling Oppsummering av hovedområdene i kurset LO 135A Kirsten Ribu 19.05.2004 De røde er viktige i kurset: Evolusjonær (prototyping) Inkrementell (RUP) XP fossefall

Detaljer

Smidig innhold Hvordan smidige metoder hjelper oss å lage kvalitetsinnhold. Ove Dalen

Smidig innhold Hvordan smidige metoder hjelper oss å lage kvalitetsinnhold. Ove Dalen Smidig innhold Hvordan smidige metoder hjelper oss å lage kvalitetsinnhold Ove Dalen There is a lack of discipline in many web publishing processes because managers in charge of websites often don't respect

Detaljer

Scrum. -nøkkelbegreper og noen personlige erfaringer

Scrum. -nøkkelbegreper og noen personlige erfaringer Scrum -nøkkelbegreper og noen personlige erfaringer Agile Manifesto Manifest for smidig systemutvikling Vi oppdager stadig nye og bedre måter å utvikle systemer på, både ved å gjøre det selv og ved å hjelpe

Detaljer

Oppsummering : IMT2243 Systemutvikling. Hensikt med kurset. Innfallsvinkel : Tom Røise 29.04.2009. IMT2243 : Systemutvikling 1

Oppsummering : IMT2243 Systemutvikling. Hensikt med kurset. Innfallsvinkel : Tom Røise 29.04.2009. IMT2243 : Systemutvikling 1 Oppsummering : IMT2243 Systemutvikling Målformuleringen i emnebeskrivelsens : Studentene skal ha forståelse for grunnleggende administrative og teknologiske aspekter ved spesifisering, utvikling, innføring

Detaljer

GJENNOMGANG OBLIGATORISK OPPGAVE 1

GJENNOMGANG OBLIGATORISK OPPGAVE 1 GJENNOMGANG OBLIGATORISK OPPGAVE 1 INF1050 V16 KRISTIN BRÆNDEN 1 Systemet for utleie av markasykler ønsker a benytte seg av en eksisterende betalingsløsning, og valget har falt pa det samme betalingssystemet

Detaljer

prosjektarbeid Forelesning 3 - INF1050 Systemutvikling

prosjektarbeid Forelesning 3 - INF1050 Systemutvikling Systemutviklingssprosesser, prosjektarbeid Forelesning 3 - INF1050 Systemutvikling 28.1.2009 Rune Steinberg International Development Manager ERP INF1050 Systemutvikling Vår 2009 - Copyright Rune Steinberg

Detaljer

Introduksjon,l SCRUM. EB og TMG 2010 1

Introduksjon,l SCRUM. EB og TMG 2010 1 Introduksjon,l SCRUM EB og TMG 2010 1 Hva er Scrum? Kilde: http:/image.google.com EB og TMG 2010 2 Kompleksitet Kilde: http://www.coderfriendly.com/ EB og TMG 2010 3 SCRUM - kortversjonen Scrum er en smidig

Detaljer

Systemutvikling (Software Engineering) Professor Alf Inge Wang

Systemutvikling (Software Engineering) Professor Alf Inge Wang 1 Systemutvikling (Software Engineering) Professor Alf Inge Wang 2 Undervisningsmål og henvisning Målet med timen er: Få kunnskap om hva systemutvikling er Forstå hva en utviklingsprosess består av Få

Detaljer

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

prosjektarbeid Forelesning 3 - INF1050 Systemutvikling Eksempel Evolusjonære modeller Utviklingsprosesser Evolusjonære modeller Foranalyse Evolusjonære modeller Foranalyse Systemutviklingssprosesser, prosjektarbeid Forelesning 3 - INF1050 Systemutvikling 28.1.2009 Rune Steinberg International Development Manager ERP Iterasjonsplan Iterasjon

Detaljer

Oppsummering : IMT2243 Systemutvikling. Hensikt med kurset. Innfallsvinkel : Tom Røise 30.04.2007. IMT2243 : Systemutvikling 1

Oppsummering : IMT2243 Systemutvikling. Hensikt med kurset. Innfallsvinkel : Tom Røise 30.04.2007. IMT2243 : Systemutvikling 1 Oppsummering : IMT2243 Systemutvikling Målformuleringen i emnebeskrivelsens : Studentene skal ha forståelse for grunnleggende administrative og teknologiske aspekter ved spesifisering, utvikling, innføring

Detaljer

CONNECTING BUSINESS & TECHNOLOGY KURS OG SERTIFISERINGER - SCRUM

CONNECTING BUSINESS & TECHNOLOGY KURS OG SERTIFISERINGER - SCRUM CONNECTING BUSINESS & TECHNOLOGY KURS OG SERTIFISERINGER - SCRUM Scrum Master og Product Owner i Høst 2015 1 Om Scrum Scrum er et populært rammeverk laget med henblikk på å utvikle komplekse informasjonssystemer.

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Bokmål Kandidat nummer: UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF1050 Eksamensdag: 31. Mai, 2011 Tid for eksamen: 09:00-13:00 Oppgavesettet er på 6 sider Vedlegg:

Detaljer

Oppsummering av hovedområdene i kurset LO 135A Kirsten Ribu

Oppsummering av hovedområdene i kurset LO 135A Kirsten Ribu Systemutvikling Oppsummering av hovedområdene i kurset LO 135A Kirsten Ribu 19.05.2004 1 Ulike typer prosessmodeller De røde er viktige i kurset: Evolusjonær (prototyping) Inkrementell (RUP) XP fossefall

Detaljer

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11 Konfigurasjonsstyring INF1050: Gjennomgang, uke 11 Kompetansemål Konfigurasjonsstyring Hva og hvorfor? I en smidig sammenheng Endringshåndtering Versjonhåndtering Systembygging Release -håndtering Del

Detaljer

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling 21.1.2009 Rune Steinberg International Development Manager ERP INF1050 Systemutvikling Vår 2009 - Copyright Rune Steinberg 2009 1 Innledning

Detaljer

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling

Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling Innledning Læringsmål Systemutviklingsprosesser Forelesning 2 - INF1050 Systemutvikling 21.1.2009 Forstå hvorfor systemutviklingsprosessen er viktig Forstå de viktigste prinsippene for ulike prosesser

Detaljer

Prosjektledelse, prosjektplanlegging, teamarbeid

Prosjektledelse, prosjektplanlegging, teamarbeid INF1050: Systemutvikling 21. mars 2017 Prosjektledelse, prosjektplanlegging, teamarbeid Yngve Lindsjørn ynglin@ifi.uio.no INF1050 Systemutvikling ->Prosjektledelse og teamarbeid 1 Temaer i dagens forelesning

Detaljer

Systemutvikling - oppsummering. Alexander Nossum blog.eksplisitt.net 22. mai 2006

Systemutvikling - oppsummering. Alexander Nossum blog.eksplisitt.net 22. mai 2006 Systemutvikling - oppsummering Alexander Nossum alexander@nossum.net blog.eksplisitt.net 22. mai 2006 INNHOLD 2 Innhold 1 Utviklingsprosessmodeller 3 1.1 Fossefall/waterfall................................

Detaljer

Prosjektledelse - fra innsiden av et utviklingsprosjekt. Presentasjon hos UiO Ida Lau Borch, prosjektleder i Bouvet ASA

Prosjektledelse - fra innsiden av et utviklingsprosjekt. Presentasjon hos UiO Ida Lau Borch, prosjektleder i Bouvet ASA Prosjektledelse - fra innsiden av et utviklingsprosjekt Presentasjon hos UiO 09.09.2011 Ida Lau Borch, prosjektleder i Bouvet ASA Agenda De umulige IT-prosjektene Hvordan vi gjør det Utfordringer og lykkestunder

Detaljer

Scrum. en beskrivelse V 2012.12.13

Scrum. en beskrivelse V 2012.12.13 Scrum en beskrivelse Scrum prinsipper Verdier fra Agile Manifesto Scrum er det mest kjente av de smidige (Agile) rammeverkene. Scrum er også kilden til mye av tankegodset bak verdiene og prinsippene i

Detaljer

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

Systemutviklingssprosesser, prosjektarbeid Forelesning 3 - INF1050 Systemutvikling 1. feb.2010 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

Detaljer

Bruk av HP Quality Center med smidige utviklingsmetoder. HP Sofware Norge

Bruk av HP Quality Center med smidige utviklingsmetoder. HP Sofware Norge Bruk av HP Quality Center med smidige utviklingsmetoder Kjell Lillemoen HP Sofware Norge QC og smidige metoder Agenda Smidig terminologi Smidig metoder og verktøy Hvilke krav bør vi stille QC med Scrum

Detaljer

Prosjektledelse, prosjektplanlegging, teamarbeid

Prosjektledelse, prosjektplanlegging, teamarbeid INF1050: Systemutvikling 25. mars 2015 Prosjektledelse, prosjektplanlegging, teamarbeid Universitetslektor Yngve Lindsjørn INF1050 Systemutvikling ->Prosjektledelse og teamarbeid 1 Temaer i dagens forelesning

Detaljer

Eksamen 2013 Løsningsforslag

Eksamen 2013 Løsningsforslag Eksamen 2013 Løsningsforslag Oppgave 1. Multiple choice 1b# 2a# 3b# 4c# 5b# 6a# 7a# 8b# 9d# 10b# Oppgave 2 - Bibliotek - Utlån av bøker a) Måle størrelse eller mengde funksjonalitet Denne oppgaven ser

Detaljer

SCRUM EB og TMG 2010

SCRUM EB og TMG 2010 SCRUM Hovedmål Mer om roller i SCRUM Es/mering av innhold i sprinter Visualisering av fremdri; ved burndown Scrum Daily SCRUM 24h Product backlog Sprint backlog 1 uke Sprint Delprodukt / delleveranse Roller

Detaljer

SCRUM Smidig prosjektledelse og utvikling. 10 september 2009 JOSÉ MANUEL REDONDO LOPERA AVDELINGSLEDER PROSJEKT OG RESSURSANSVARLIG

SCRUM Smidig prosjektledelse og utvikling. 10 september 2009 JOSÉ MANUEL REDONDO LOPERA AVDELINGSLEDER PROSJEKT OG RESSURSANSVARLIG SCRUM Smidig prosjektledelse og utvikling 10 september 2009 JOSÉ MANUEL REDONDO LOPERA AVDELINGSLEDER PROSJEKT OG RESSURSANSVARLIG HVORDAN SPISER DU EN ELEFANT? EN BIT AV GANGEN 'HOW WILL YOU LIVE, RAMBO?'

Detaljer

UKE 16 Kontrakter. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski

UKE 16 Kontrakter. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski UKE 16 Kontrakter Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski Hva skal vi i dag? OBS!! Siste ordinære gruppetime Kontrakter Ukesoppgaver Gjennomgang av oblig 4 Kontrakter Kompetansemål - Kontrakter

Detaljer

GJENNOMGANG UKESOPPGAVER 9 TESTING

GJENNOMGANG UKESOPPGAVER 9 TESTING GJENNOMGANG UKESOPPGAVER 9 TESTING INF1050 V16 KRISTIN BRÆNDEN 1 A) Testing viser feil som du oppdager under kjøring av testen. Forklar hvorfor testing ikke kan vise at det ikke er flere gjenstående feil.

Detaljer

Kap 11 Planlegging og dokumentasjon s 310

Kap 11 Planlegging og dokumentasjon s 310 Kap 11 Planlegging og dokumentasjon s 310 11.1 Ulike arbeidsmetoder Systemutvikling Som systemutvikler er du i stand til å omsette din innsikt i brukerbehov til praktiske programbaserte løsninger. Samarbeid:

Detaljer

Oppgaver uke 42. Systemutvikling

Oppgaver uke 42. Systemutvikling Oppgaver uke 42 søndag 16. oktober 2016 13.55 Systemutvikling 1. Hva er systemutvikling? Systemutvikling er prosessen hvor man lager og opprettholder informasjonssystemer. Systemutvikling involverer alle

Detaljer

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

UKE 15 Prosjektledelse, planlegging og teamarbeid. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski UKE 15 Prosjektledelse, planlegging og teamarbeid Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski Hva skal vi i dag? Se på oblig 5 Prosjektledelse og teamarbeid (kap. 22) Prosjektplanlegging og

Detaljer

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

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 Evolusjonære modeller Systemutviklingssprosesser, prosjektarbeid Forelesning 3 - INF1050 Systemutvikling 1. feb.2010 Foranalyse Iterasjonsplan Iterasjon 1 Analyse og Design Arne Maus, Ifi med takk til

Detaljer

Eksamen INF1050: Gjennomgang, uke 15

Eksamen INF1050: Gjennomgang, uke 15 Eksamen 2012 INF1050: Gjennomgang, uke 15 Overblikk Varierte spørsmål fra pensum Modellering Use case Tekstlig beskrivelse Sekvensdiagram Klassediagram Krav Empiriske metoder Smidig metodikk Varierte spørsmål

Detaljer

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

Forfattere: Daníelsdóttir, Drífa Meland, Maiken Mijalkovic, Biljana Svendsen, Simen H. Gruppelærer: Zarei, Amir Hossein. 5. 2 Forfattere: Daníelsdóttir, Drífa Meland, Maiken Mijalkovic, Biljana Svendsen, Simen H. Gruppelærer: Zarei, Amir Hossein 5. april 2017 Innhold 1 Klassediagram 2 Sekvensdiagram 2.1 Oppgave 2a 2.2 Oppgave

Detaljer

Forskningsmetoder. INF1050: Gjennomgang, uke 13

Forskningsmetoder. INF1050: Gjennomgang, uke 13 Forskningsmetoder INF1050: Gjennomgang, uke 13 Kompetansemål Forskningsmetoder Hva? Hvorfor? Empiriske forskningsmetoder Eksperiment Case-studier Etnografi Aksjonsforskning Spørreskjema Systematisk litteraturstudie

Detaljer

Obligatorisk oppgave 1: Foranalyse og Kravhåndtering Lars- Martin Hejll 5611 Systemutvikling

Obligatorisk oppgave 1: Foranalyse og Kravhåndtering Lars- Martin Hejll 5611 Systemutvikling Obligatorisk oppgave 1: Foranalyse og Kravhåndtering LarsMartin Hejll 5611 Systemutvikling Høgskolen i Telemark Oppgave 1: Bakgrunn for systemet LarsMartin Hejll A) Ved å sentralisere bookingsystemet til

Detaljer

Smidig utvikling NTNU 10.01.2014 Tor-Erik Mathisen tor-erik.mathisen@accenture.com

Smidig utvikling NTNU 10.01.2014 Tor-Erik Mathisen tor-erik.mathisen@accenture.com Smidig utvikling NTNU 10.01.2014 Tor-Erik Mathisen tor-erik.mathisen@accenture.com Accenture, its logo, and High Performance Delivered are trademarks of Accenture. Agenda Hvorfor Hva Scrum Prosjekteksempel

Detaljer

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

Inception Elaboration Construction Transition Bemanning 1 1,5 2 2 Varighet i uker Antall iterasjoner (lengde i uker i parentes) Tabell 1 Innhold Innledning... 2 Faseplan... 2 Iterasjonsplanlegging... 3 Oppstartsfasen... 3 Artefaktene i oppstartsfasen... 4 Utdypingsfasen... 5 Konstruksjonsfasen... 5 Overføringsfasen... 6 Litteratur... 7

Detaljer

Forskningsmetoder / Evaluering av systemutvikling Pensum: kap. 12 i lærebok (artikkel) + kap

Forskningsmetoder / Evaluering av systemutvikling Pensum: kap. 12 i lærebok (artikkel) + kap INF1050: Systemutvikling, 18. april 2017 Forskningsmetoder / Evaluering av systemutvikling Pensum: kap. 12 i lærebok + 3.5 (artikkel) + kap. 4.3.1 Professor Dag Sjøberg INF1050/ 18.4.2017 / Dag Sjøberg

Detaljer

Neste generasjon ERP-prosjekter

Neste generasjon ERP-prosjekter Neste generasjon ERP-prosjekter Jan-Olav Arnegård 27. okt 2016 Nøkkeltall 2015 22 Land der vi er direkte representert 36 BearingPoint-kontorer 67 Kontorer der vi er representert via vår globale alliansepartnere

Detaljer

Nyttestyring og viktigheten av den gode kunde. Magne Jørgensen

Nyttestyring og viktigheten av den gode kunde. Magne Jørgensen Nyttestyring og viktigheten av den gode kunde Magne Jørgensen Hva er et vellykket IT-prosjekt? Suksess er kontekstavhengig, men bør minimum inkludere: Oppnådd nytte (gevinster, verdi, måloppnåelse, ROI)

Detaljer

Smidig metodikk, erfaringer fra NAV Fagportal

Smidig metodikk, erfaringer fra NAV Fagportal Smidig metodikk, erfaringer fra NAV Fagportal Gry Hilde Nilsen, NAV Morten Tveit, Fornebu Consulting NAV, 08.03.2011 Side 1 Smidig gjennomføring i NAV Fagportal Individer og samspill framfor prosesser

Detaljer

I dag. Prosjektstyring og prosjektgjennomføring. Hva er et prosjekt? Oppdeling i. Planlegging. arbeidsoppgaver. Hva er en prosess? En prosessmodell?

I dag. Prosjektstyring og prosjektgjennomføring. Hva er et prosjekt? Oppdeling i. Planlegging. arbeidsoppgaver. Hva er en prosess? En prosessmodell? Prosjektstyring og prosjektgjennomføring Prosesser, tidsplanlegging, risikostyring G&H: kap 16, 17,19 I dag Prosessmodeller og prosjekter Prosjektplanlegging, inkl. tidsplanlegging Risikostyring Kirsten

Detaljer

Modellering av krav. INF1050: Systemutvikling 11. februar 2015. Universitetslektor Yngve Lindsjørn

Modellering av krav. INF1050: Systemutvikling 11. februar 2015. Universitetslektor Yngve Lindsjørn INF1050: Systemutvikling 11. februar 2015 Modellering av krav Universitetslektor Yngve Lindsjørn INF1050 ->Systemutvikling-> Modellering av krav / Yngve Lindsjørn 1 Temaer i dagens forelesning Modellering

Detaljer

AlgDat 12. Forelesning 2. Gunnar Misund

AlgDat 12. Forelesning 2. Gunnar Misund AlgDat 12 Forelesning 2 Forrige forelesning Følg med på hiof.no/algdat, ikke minst beskjedsida! Algdat: Fundamentalt, klassisk, morsomt,...krevende :) Pensum: Forelesningene, oppgavene (pluss deler av

Detaljer

Together. Free your energies Moden og modig! Ansvarsfull og fleksibel!

Together. Free your energies Moden og modig! Ansvarsfull og fleksibel! Moden og modig! Ansvarsfull og fleksibel! Anine Ragnif og Bodil Rabben 13. Mai 2009 Agile Hvorfor? Gjennomsnittlig overskridelse i arbeidsmengde var 24% for prosjektene som benyttet en fleksibel metodikk,

Detaljer

Prøv å skrive alle svar på alle spørsmål i det tomme rom i disse sidene. Hvis du trenger mer plass, bruk ekstra sider.

Prøv å skrive alle svar på alle spørsmål i det tomme rom i disse sidene. Hvis du trenger mer plass, bruk ekstra sider. 1 For hver del, alle sub deler teller likt. Prøv å skrive alle svar på alle spørsmål i det tomme rom i disse sidene. Hvis du trenger mer plass, bruk ekstra sider. For hvert spørsmål, hvis du trenger å

Detaljer

GJENNOMGANG UKESOPPGAVER 13 KONTRAKTER

GJENNOMGANG UKESOPPGAVER 13 KONTRAKTER GJENNOMGANG UKESOPPGAVER 13 KONTRAKTER INF1050 V16 KRISTIN BRÆNDEN Kontrakter En kontrakt er en avtale som mellom partene etablerer en bindende forpliktelse til å gjøre eller å unnlate å gjøre noe Smidig

Detaljer

Lykke til! Eksamen i fag TDT4140 Systemutvikling 28.11.2012 9.00. NTNU Norges teknisk-naturvitenskapelige universitet

Lykke til! Eksamen i fag TDT4140 Systemutvikling 28.11.2012 9.00. NTNU Norges teknisk-naturvitenskapelige universitet Side 1 av 10 NTNU Norges teknisk-naturvitenskapelige universitet BOKMÅL Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Sensurfrist:

Detaljer

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

Prosjektledelse, planlegging og teamarbeid. INF1050: Gjennomgang, uke 10 Prosjektledelse, planlegging og teamarbeid INF1050: Gjennomgang, uke 10 Kompetansemål Prosjektstyring og prosjektledelse Hva og hvorfor? Risikohåndtering Ledelse av mennesker og motivasjon Teamarbeid og

Detaljer

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

PROSJEKTPLAN FOR INF [4 3]120-PROSJEKT: PROJECT HOSPITAL 2004 PROSJEKTPLAN FOR INF [4 3]120-PROSJEKT: PROJECT HOSPITAL 2004 VERSJON: PROSJEKTPLAN (1.0) 24. SEPTEMBER, 2004 prosjektplan.doc GRUPPE 12 PROSJEKTPLAN: PROSJEKTLEDELSE: USE CASE: KVALITETSSIKRING: ANDRÉ

Detaljer

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

Hensikten med denne delen av kurset. Objektorientering hva er det? Objektets egenskaper. Best practises ved programvareutvikling Objektorientert systemutvikling, litt UML og Rational Unified Process (RUP) UML Distilled kap. 2 Hensikten med denne delen av kurset Å lære og øve på modelleringsteknikker Å lære om gode designprinsipper

Detaljer

A Study of Industrial, Component-Based Development, Ericsson

A Study of Industrial, Component-Based Development, Ericsson A Study of Industrial, Component-Based Development, Ericsson SIF8094 Fordypningsprosjekt Ole Morten Killi Henrik Schwarz Stein-Roar Skånhaug NTNU, 12. des. 2002 Oppgaven Studie av state-of-the-art : utviklingsprosesser

Detaljer

Forelesning IMT mars 2011

Forelesning IMT mars 2011 Forelesning IMT2243 17.mars 2011 Dagens : Kvalitetssikring i systemutviklingsprosjekter Konfigurasjonsstyring Teorigjennomgang Demonstrasjon av Subversion SVN v/jon Langseth Pensum : Sommerville kap. 24.1

Detaljer

Erfaringer fra bruk av Scrum i PS2000-prosjekter NSP temadag Agile metoder i prosjekt 13.05.2009. Motivasjon av kunder og Nyttige verktøy

Erfaringer fra bruk av Scrum i PS2000-prosjekter NSP temadag Agile metoder i prosjekt 13.05.2009. Motivasjon av kunder og Nyttige verktøy Erfaringer fra bruk av Scrum i PS2000-prosjekter NSP temadag Agile metoder i prosjekt 13.05.2009 Motivasjon av kunder og Nyttige verktøy 2009-05-20 Computas AS 2008 Computas-metodikk fra da til nå Computas

Detaljer

INF1050 dagsorden 18. april 2007

INF1050 dagsorden 18. april 2007 INF1050 dagsorden 18. april 2007 Tema: Systemutviklingsprosessen Hvilke utviklingsmodeller kan vi velge mellom? Hvilke elementer inngår? Hvilke kriterier skal vi benytte for valg av modell? INF1050-systemutviklingsprosessen,

Detaljer

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

Gjennomgang av prøveeksamen. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski Gjennomgang av prøveeksamen Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski OPPGAVE 1: MUlTIPLE CHOICE SPØRSMÅL 1.1 Hva er et funksjonelt krav? a) Teksten på skjermen skal være svart med hvit bakgrunn.

Detaljer

User Story Mapping gir en nyttigere backlog

User Story Mapping gir en nyttigere backlog User Story Mapping gir en nyttigere backlog Workshop, Smidig 2011 Nils Christian Haugen nch@scienta.no Christian Stensholt christian.stensholt@bouvet.no 1 Agenda Intro til User Story Mapping (15 min) Demo

Detaljer

I dag Prosjektstyring og prosjektgjennomføring

I dag Prosjektstyring og prosjektgjennomføring I dag Prosjektstyring og prosjektgjennomføring Prosesser, tidsplanlegging, risikostyring Kirsten Ribu 28.01.2004 Prosessmodeller og prosjekter Prosjektplanlegging, inkl. tidsplanlegging Risikostyring Gurholt

Detaljer

Systemutvikling. Universitetet i Oslo, Institutt for informatikk Vår 2017

Systemutvikling. Universitetet i Oslo, Institutt for informatikk Vår 2017 Systemutvikling Universitetet i Oslo, Institutt for informatikk Vår 2017 Dagens plan Introduksjon Emnets oppbygging Praktisk om ukesoppgaver og obligatoriske oppgaver Gjennomgang av ukesoppgaver Registrering

Detaljer

Et IT-prosjekt = et prosjekt uten styring, er det virkelig slik det er?

Et IT-prosjekt = et prosjekt uten styring, er det virkelig slik det er? Et IT-prosjekt = et prosjekt uten styring, er det virkelig slik det er? Presentasjon hos UiO 03.09.2010 Christian Stensholt, prosjektleder i Bouvet ASA Agenda Innledning: De umulige IT-prosjektene Hva

Detaljer

Prosjektstyring og prosjektgjennomføring

Prosjektstyring og prosjektgjennomføring Prosjektstyring og prosjektgjennomføring Prosesser, tidsplanlegging, risikostyring G&H: kap 16, 17,19 Kirsten Ribu 02.09.2005 1 I dag Prosessmodeller og prosjekter Prosjektplanlegging, inkl. tidsplanlegging

Detaljer

Smidig prosjektmetodikk hva skal til for å lykkes Temadag smidige prosjekter 22.10.2008 Oslo Jon Tysdahl

Smidig prosjektmetodikk hva skal til for å lykkes Temadag smidige prosjekter 22.10.2008 Oslo Jon Tysdahl Smidig prosjektmetodikk hva skal til for å lykkes Temadag smidige prosjekter 22.10.2008 Oslo Jon Tysdahl Jon Tysdahl Hovedfag informatikk Mellomfag i arbeids og organisasjonspsykologi Lang erfaring som

Detaljer

t Institutt for informatikk Erik Arisholm 13. mai 2009 INF1050-oppsummering-1

t Institutt for informatikk Erik Arisholm 13. mai 2009 INF1050-oppsummering-1 Oppsummering INF1050 Systemutvikling t INF1050-oppsummering-1 INF1050 dagsorden Erfaringer fra V09 Kort oppsummering: Hvordan utvikles et informasjonssystem? Kanskje noen eksamenstips, og litt teknikk

Detaljer

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

DRI2001 Offentlige nettsteder. Litt om systemutvikling Torsdag 24 aug Arild Jansen, AFIN, UiO DRI 2001 13.9 : Introduksjon til systemutvikling. Introduksjon til systemutvikling Systemutvikling og nettstedsutvikling Om ulike typer offentlige nettsteder Kvalitetskrav til offentlige nettsteder Litt

Detaljer

Hva kreves av en god byggherre? «Store utbyggingsprosjekter», 23. okt 2014

Hva kreves av en god byggherre? «Store utbyggingsprosjekter», 23. okt 2014 Hva kreves av en god byggherre? «Store utbyggingsprosjekter», 23. okt 2014 Paul Torgersen Leder Metier Consulting 20. oktober 2014 Side 2 Innhold Hva er prosjektsuksess? Hva kjennetegner de beste? Mine

Detaljer

Kanban. Anine Ragnif

Kanban. Anine Ragnif Kanban Anine Ragnif Hvorfor spille KANBAN-spillet? Prinsipper for KANBAN Forstå KANBAN rask og effektivt Mekanismer for god arbeidsflyt Morsom læring Kanban 2014 2 Historikk Kanban har sin opprinnelse

Detaljer

SCRUMGUIDEN. Et hjelpemiddel for deg som ønsker å komme i gang med Scrum

SCRUMGUIDEN. Et hjelpemiddel for deg som ønsker å komme i gang med Scrum SCRUMGUIDEN Et hjelpemiddel for deg som ønsker å komme i gang med Scrum Til brukere av Scrumguiden, Scrum er et rammeverk av regler og prinsipper som støtter smidig systemutvikling. Scrumguiden er basert

Detaljer

Kravspesifikasjon. Dagens forelesning. Mal for kravspesifikasjon. Hvordan finne fram til kravene? Kravspesifikasjon og objektorientert analyse

Kravspesifikasjon. Dagens forelesning. Mal for kravspesifikasjon. Hvordan finne fram til kravene? Kravspesifikasjon og objektorientert analyse Dagens forelesning Kravspesifikasjon Kravspesifikasjon og objektorientert analyse Hva skal systemet gjøre? Hvem og hva påvirker krav? Motivasjon: Hvorfor trenger vi UML? Noen resultater fra et UML-eksperiment

Detaljer

Kravspesifikasjon med UML use case modellering. Erik Arisholm 25.02.2009

Kravspesifikasjon med UML use case modellering. Erik Arisholm 25.02.2009 Kravspesifikasjon med UML use case modellering Erik Arisholm 25.02.2009 Unified Modeling Language (UML) Notasjon som støtter opp under modellbasert systemutvikling objektorientert analyse ( hva systemet

Detaljer

Inf1055 Modul B 26 april 2017:

Inf1055 Modul B 26 april 2017: Inf1055 Modul B 26 april 2017: Del 1: - Testing Yngve Lindsjørn ynglin@ifi.uio.no 1 Oversikt - Testing Hva er testing? Validering &Verifisering Testfaser Enhetstesting Integrasjonstesting Systemtesting

Detaljer

Innebygd informasjonssikkerhet hvordan ivareta sikkerhet i prosjekter?

Innebygd informasjonssikkerhet hvordan ivareta sikkerhet i prosjekter? Innebygd informasjonssikkerhet hvordan ivareta sikkerhet i prosjekter? Lillian Røstad Seksjonssjef Seksjon for informasjonssikkerhet Direktoratet for forvaltning og IKT Seksjon for informasjonssikkerhet

Detaljer