Detta har hänt... Sammanfattning - Krav. Agenda F2. Föreläsning 2: Projektplanering & granskning

Relevanta dokument
Detta har hänt... Föreläsning 2: Projektplanering & granskning. Pratat och provat kravhantering. Bildat projektgrupper :-) Skaffat litteratur?

INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT

Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning

Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning

Detta har hänt... Agenda. Kursinformation. Kursinformation

Detta har hänt... Kursinformation. Agenda. Kursinformation

Detta har hänt... Föreläsning 2: Projektplanering & Granskning Bildat projektgrupper. Pratat och provat kravhantering. Skaffat litteratur?

Specifikationer i kompendiet Övningar på moodle.cs.lth.se Support Onsdag kl i E: (84?) Frågestund: F3

Utmaning. Föreläsning 1: Kursen & Projektuppgift Utvecklingsprojekt & Kravhantering. Agenda F1. Jonas Wisbrant - kort CV

Streamade föreläsningar på webben

Streamade föreläsningar på webben. Föreläsning 1: Kursen & Projektuppgift. Utvecklingsprojekt & Kravhantering. Utmaning. Jonas Wisbrant - kort CV

Streamade föreläsningar på webben

Exercise 1b: Requirements Evaluation ETSA01 INGENJÖRSPROCESSEN 1 - METODIK VT15

Agenda. Föreläsning 6: Utvärdering och om tentamen. Kursinformation

Agenda. Kursinformation. Manual för systemstart... Föreläsning 6: Utvärdering och om tentamen

Exercise 1b: Requirements evaluation

Agenda. Projektbeskrivning avsnitt 8: Acceptanstest - MS4 i korthet. Kursinformation

INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT

Medan vi väntar: Diskutera

Exercise 1b: Requirements evaluation

Programvaruutveckling - Metodik 2016 Jonas Wisbrant

Projektplan, Cykelgarage

Streamade föreläsningar på webben. Medan vi väntar: Diskutera. Utmaning. Föreläsning 1: Projektuppgift & kravhantering. Om man utvecklar ett system...

Föreläsning 3 Verifiering och Validering

Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik

Agenda. Kursinformation. Manual för systemstart. Föreläsning 6: Summering och om tentamen. Målgrupp:

Föreläsning 6. Utvärdering, om tenta, avrundning

Föreläsning 6. Utvärdering, om tenta, avrundning. Agenda. Kursinformation. Schemalagda kursmoment. Jonas Wisbrant. Kursinformation

Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik Jonas Wisbrant

ETSA01 Ingenjörsprocessen för Programvaruutveckling Metodik. Föreläsning 1 Markus Borg. Flickr: carlcollins.

Föreläsning 3 Verifiering och Validering

Är instruktionerna oklara, projektet rörigt och allmänt frustrerande?

INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT. Övning 2 Riskhantering, intressenter och kravgranskning.

Föreläsning 4 Arkitektur, design, kodning

konfiguration och version och variant?

Agenda. Föreläsning 6: Summering och om tentamen Kursinformation

ETSA01 Ingenjörsprocessen för Programvaruutveckling Metodik

LIPS 1, 2002 Lätt Interaktiv Projektstyrningsmodell

Dokumentation och presentation av ert arbete

Detta har hänt... Kursinformation. Utse kursombud - nytt försök. Föreläsning 3: Test, Konfigurationer. Pratat och skapat krav och plan

Projektarbete. Johan Eliasson

Föreläsning 4 Arkitektur, design, kodning

men borde vi inte också testa kraven?

Innehåll (3) Innehåll (2) Innehåll (5) Innehåll (4) Innehåll (6) Innehåll (7) Dokumenthistorik. beställare, Översiktlig beskrivning av projektet

men borde vi inte också testa kraven? Robert Bornelind

Var är vi? Föreläsning 4 Arkitektur, design, kodning. Agenda. Kursinformation. Produktlinjer. Konfigurationshantering - forts. Detta har hänt...

Föreläsning 3: Test, Konfigurationer. Övning 2 Riskhantering, intressenter och kravgranskning.

Detta har hänt... Jonas Wisbrant - kort CV. Kursombud - nytt försök. Föreläsning 3: Test, Konfigurationer. Pratat och skapat krav och plan

Välkomna till KMM! KMM. KMM - lärandemål Efter fullgjord kurs ska ni bland annat kunna:

Testplan Cykelgarage

Före Kravspecifikationen

Kurs-PM fo r HI1028, Projektkurs inom programvaruutveckling, VT16

Kravspecifikation Cykelgarage

Exempel på verklig projektplan

Exercise 4a: Test 2 ETSA01 INGENJÖRSPROCESSEN 1 - METODIK VT15. Lund University Computer Science ETSA01 Ingenjörsprocessen - Metodik VT15 Exercise 1

Kursprogram, ETSF20 Programvaruutveckling för stora projekt (PUSP), 7,5 hp

Projektkunskap & ledning Lektion 1

Examensarbete Verklighetsbaserat utvecklings- och projektarbete - Automationsteknik med mekatronik

Arbeta i projekt. Anders Hessel ITP-projekt Uppsala Universitet

Agil Projektledning. En introduktion

Hemtentamen: ETSA02 Programvaruutveckling Metodik

Projektplanering. Projektplanen. Om inte projektet planeras noga, kommer det garanterat att misslyckas

Föreläsning 5 Processer Vidare utveckling

Projectbase en generell projektmodell

Innehåll. Projekt Greed. Projekt definition. Projekt Greed En introduktion till projektmodellen LIPs

Dokumentation och presentation av ert arbete

Kursöversikt Certifierad Mjukvarutestare

Föreläsning 4: Konfigurationer, Plattformar & Design I Programvaruutveckling - Metodik 2016 Jonas Wisbrant

Card Consulting. Projektmetodik Lars Ahlgren Card Consulting

Diskutera medan vi väntar

LIPS Kravspecifikation. Institutionen för systemteknik Mattias Krysander

Innehåll. Kravhantering. Kravhantering TDDD06 Introduktion till kravhantering. Vad är kravhantering?

Teknisk fysik Institutionen för fysik Maria Hamrin Krister Wiklund. Hej,

TPFD - TestPlan Före Design BESKRIVNING AV AKTIVITETER

Föreläsning 3. Programvaruutveckling för Stora System. Målsättning i programvaruprojekt. Fel och risker. Christin Lindholm

Metoder för Interaktionsdesign

Kursprogram, ETS032 Programvaruutveckling för stora system (PUSS), 7,5 hp

Riktlinjer Projektmodell fo r Kungä lvs kommun

PROJEKT Kurs om hållbar utveckling

Kurser och seminarier från AddQ Consulting


Projektplan. LiTH Segmentering av MR-bilder med ITK Anders Eklund. Version 1.0. Status. Bilder och grafik projektkurs, CDIO MCIV LIPs

Guide till projektmodell - ProjectBase

Utöver projektdirektivet ska en teknisk dokumentation för projektet arbetas fram.

Projektmodell. 1. Riktlinjer projektmodell 1 (6)

ETSA02 Programvaruutveckling Metodik Föreläsning 1 Jonas Wisbrant

TDDI02. Programmeringsprojekt, Föreläsning 2. Filip Strömbäck. Med utgångspunkt i tidigare slides av Jonas Lindgren

Sänk kostnaderna genom a/ ställa rä/ krav och testa effektivt

Upprop & Lediga tjänster

LUNDS UNIVERSITET. Projektorganisation, -integration och - omfattning

Dokumentation och presentation av ert arbete

Projekthandledning (PH) Grundsystemet (GS) Utvecklingsmiljön (UM)

TDDI02. Programmeringsprojekt. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU

LUNDS UNIVERSITET. Projektledning

Projektstyrning - kortversionen Jan-Åke Olofsson

1. Etablera projektet

PROJEKTLEDNING. Vad är ett PROJEKT? Ett projekt:

Kursprogram: ETSN05 Programvaruutveckling för stora system, 2014 (7,5 hp)

INFÖRANDE, AVSLUT OCH UPPFÖLJNING. Agneta Bränberg

Transkript:

Föreläsning 2: ering & granskning Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant Detta har hänt... Pratat och provat kravhantering Bildat projektgrupper :-) Skaffat litteratur? Kommit igång med Projektwebben Genomfört en dubbel workshop Hur var den? L1:, funktionella krav, kvalitetskrav fb1: Fått återkoppling? Förstått återkoppling? 60 61 Sammanfattning - Agenda F2 Viktigt eftersom tidiga faser påverkar mycket kan finnas på olika abstraktionsnivåer påverkar ofta hela produkten Egenskaper hos krav: korrekt, komplett, otvetydig, verifierbar, konsistent, prioriterad, spårbar, genomförbar Spårbarhet: källakrav, krav-krav, krav-design/kod, krav-test är en viktig del i arbetet med produktledning och produktplanering Kursen Kursmål Kursombud ering Projekt eller utvecklingsprojekt? ering Strukturerad dokumentgranskning Projektuppgiften Återkoppling L1 Projektens projektplan Inför övning 2 62 63

Produkt- mål 64 Kursmål - beställningen i bild Projekt- plan täckning 65 Kursmål - beställningen i text Kunskap och förståelse kunna definiera grundläggande begrepp inom utveckling av stora programvarusystem. kunna beskriva de vanligaste processerna för utveckling av stora programvarusystem. kunna förklara de viktigaste momenten i kravhanteringsprocessen. kunna förklara hur testning går till. kunna beskriva vad en arkitekturdesign är. kunna beskriva de viktigaste stegen i projektplanering och projektuppföljning. kunna beskriva hur organisationer planerar och genomför en serie av projekt. Färdighet och förmåga kunna utveckla projektplan, kravspecifikation och testplan för ett mindre projekt. kunna granska projektplan, kravspecifikation och testplan för ett mindre projekt. kunna skriftligen formulera text i projektdokumentation. Värderingsförmåga och förhållningssätt förstå komplexiteten i uppgiften att utveckla ett programvarusystem. ha förståelse för ingenjörens yrkesroll. Utse kursombud Möten Fr 2013-04-04 kl 12.30-13.10 i Glasburen (E:2405) Må 2013-05-05 kl 12.30-13.10 i Glasburen (E:2405) Beslut: Projekt vs. utvecklingsprojekt? Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant 66 67

Hur svårt det är att koka pasta... Projekt är något mer eller mindre unikt Från beställares synvinkel: en investering som ska gå med vinst avstämningspunkter för att se om det går som man tänkt sig Från utförares synvinkel: en teknisk uppgift som ska bli klar i tid avstämningspunkter för att visa att man klarar att utföra uppgiften UTMANING: Vi bygger inte ytterligare ett hus, gipsar nästa ben eller kokar pasta igen...... vi gör innovation på beställning. beror på om man gjort det förut... och var man börjar 68 69 Photo attribution: nuchylee at http://www.freedigitalphotos.net/ Utvecklingsprojekt vs. en-gång-till-projekt Likheter Skillnader Planering och uppföljning Hög komplexitet Samarbete Kan ändra sent... Produkt- mål Projekt- plan täckning Utvecklingsprojekt är något som man gör när man inte vet från början exakt hur det ska gå till 70

Ska vi börja med projektplanen eller kravspecifikationen? Fas 1 Specifikation Fas 2 specifikation Testplan dokument Beroende av varandra en är en del av produkten. Sista versionen måste sparas. ering och projektplaner Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant Fas 3 Implementation och enhetstest Fas 4 Exekverbar källkod Dokumenterat genomförda systemtest Planen hör till organisationen. Erfarenheterna bör sparas. 72 73 Produkt- mål Projekt- plan ering - vem, vad, när, hur (mycket) täckning Diskussion: Förklara för varandra Vad är det för skillnad mellan projektets:? Projektmål 74 75

täckning er mb pte Se n g itio nin defin lan t p nts jec me g Pro quire e 1 tin Re eston nning sign tes g nit ildin Mil t pla el de d u bu s Te h-lev e 2 on an stem Hig eston ntati d sy n e Mil lem on a p Im grati e 3 g Inte eston testin Mil stem e 4 Sy eston Mil 76 Bekräfta System täckning Godkänna 77 Signaler i projektet er Specifikationer Visioner Pengar Frågor Förväntningar Protokoll Förtydliganden Beslut Produkten Arbetsnedbrytning: aktiviteter, leverabler, milstolpar Avtal Förslag Testresultat Plan Prototyper Acceptans : när varje aktivitet påbörjas och avslutas, när varje milstolpe ska uppnås Media Inledning: projektmodell, utvecklad produkt, målsättningar, begränsningar Projektorganisation: utvecklingsorganisationen, andra intressenter Hårdvara och programvara: som krävs för projektets genomförande Uppföljning och rapportering: hur detta ska ske? LundMeddelande University Computer Science metodik Aktör B Jonas Wisbrant ETSA01 Ingenjörsprocessen Riskanalys Återkoppling 79 Data Behov Typiskt innehåll i en projektplan täckning 78 U Meddelande tv e pr ckl oj ar ek en t s Aktör A Specifikation & plan st pr äll oj ar ek en t s O (20 ed ish fin ber r te m Da epte mbe r 7 s Septe mbe 21 Septe ber 21 Octo ber 20 Octo ber 20 Octo ber r 20 ovem mbe r 9 N Nove mbe r 16 Nove mbe r 16 Nove mbe 23 Nove 23 Visioner & krav Be er b cto r ) 07 be em Intressentanalys v No täckning ering V-modellen för Kommunikation programvaruutvecking i projektet över tiden

Fyra viktiga metoder inom projektplanering Intressentanalys (stakeholders) Utvecklare Beställare Organisationer täckning Underleverantör Intressentanalys täckning Kostnadsskattning Kundansvarig Sponsor Schemaläggning Riskhantering 80 Projektledare IT-funktion September Project planning Requirements definition Milestone 1 Test planning High-level design Milestone 2 Implementation and unit testing Integration and system building Milestone 3 System testing Milestone 4 October November Date finished (2007) 7 september 21 September 21 September 20 October 20 October 20 October 9 November 16 November 16 November 23 November 23 November Slutanvändare Utvecklare Underleverantör Vad vill varje intressent? Affärs-, produkt och projektmål Konflikter? Kommunikationsbehov 81 Gränssnitt Persontid viktigaste (dvs dyraste) faktorn Alltid svårt att veta, men viktigt ändå Olika angreppssätt Expertbedömning Algoritmiska modeller 82 Schemaläggning Aktivitet A1 Tid (d) Beroenden 5 A2 5 A3 10 A1 A4 2 A3 A5 10 A6 15 täckning Kostnadsskattning täckning Aktivitetsnätverk för kritisk väg 10 15 A5 A6 5 start A1 10 2 A3 A4 A3, A5 slut 5 A2 Gantt-diagram September Project planning Requirements definition Milestone 1 Test planning High-level design Milestone 2 Implementation and unit testing Integration and system building Milestone 3 System testing Milestone 4 83 October November Date finished (2007) 7 september 21 September 21 September 20 October 20 October 20 October 9 November 16 November 16 November 23 November 23 November

täckning täckning täckning täckning Riskhantering Prioritera för given funktionalitet: Tidpunkt, kostnad eller kvalitet Riskprocess hög Sannolikhet låg låg [1] Konsekvens hög [5] Strategier Reducera konsekvens Minska risk Alternativ (plan B) Tidpunkt När ska vi leverera? Ju större osäkerhet desto svårare att fixera......prioritera en eller två...... lova aldrig alla tre. Risk S K Prio (S x K) Strategi Hårdvara försenad 2 5 10 Undersöka alternativ Konstruera simulator Kostnad Vad kan det få kosta? Kvalitet Hur bra ska det bli? Ont om persontid 4 2 8 Minska scope Strulig beställare 5 1 5 Andas... 84 85 Typiskt innehåll i en projektplan Sammanfattning projektplanering Inledning: projektmodell, utvecklad produkt, affärsmål, begränsningar Projektorganisation: utvecklingsorganisationen, andra intressenter Hårdvara, programvara och andra resurser som krävs för projektets genomförande Arbetsnedbrytning: aktiviteter, leverabler, milstolpar : när varje aktivitet påbörjas och avslutas, när varje milstolpe ska uppnås Uppföljning och rapportering: hur detta ska ske? Riskanalys Programvaruprojekt speciella eftersom de är en av, komplexa, och eftersom det går att ändra sent en beskriver t ex projektorganisation, arbetsnedbrytning, tidplan och riskanalys, mm. Kostnadsskattning kan göras baserat på expertbedömningar eller algoritmiska modeller Riskhantering sker i fyra steg: identifiera risker, bedöm risker, behandla risker, följ upp risker Tidpunkt - kostnad - kvalitet: Välj max 2 86 87

täckning täckning Statisk testning - dokumentgranskning Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant ar grundläggande idé Hitta fel tidigt utan att exekvera kod d.v.s statisk testning Alla dokument kan granskas (krav, test, design, kod, testfall, ) Läs dokument på ett strukturerat sätt Rätt personer ska läsa Personerna ska läsa täckning på rätt sätt Alla viktiga delar av dokumenten ska läsas 88 89 sprocessen Lästekniker vid individuell granskning Planering Individuell granskning Introduktion smöte Omarbete Uppföljning Ad-hoc - Upp till granskaren ABC-video: Nu ti/on Ö2 - - Checklist-baserad - Stöd av en checklista - Kan t ex ha tagits fram av organisationen - specifikation Test & design: TBD TBD TBD före deadline Roller Moderator Författare före individuell granskning före möte Sekreterare Granskare före omarbete före nästa måndag 24 Förslag: senast fredag 0.99 MS2 Scenario-baserad - Följ ett användningsscenario under granskningen Perspektiv-baserad - Granska som en specifik roll: användare, testare, operatör, utvecklare, etc 90 91

Introduktion Har vi hittat problemen - eller hur många lejon finns det i skogen? Planering Vad kostar det? täckning Individuell granskning smöte Omarbete täckning Lejonen kan vara fel och jägarna kan vara granskare Uppföljning Planering och introduktion:? Hur vet man om det är värt det? Individuell granskning: : 5 sid/h : 4 sid/h Kod: 150 LOC/h (utan kommentarer) Testplan: 4 sid/h Antal personer på ett granskningsmöte: 4-10 personer x?h Omarbete och uppföljning: 92?h 93 - sammanfattning täckning Med två granskare täckning A N = totalt antal fel (som man vill veta) Planering NA = antal fel som granskare A hittar Introduktion Individuell granskning smöte Omarbete Uppföljning NB = antal fel som granskare B hittar Systematisk metod för att identifiera problem i material som inte kan exekveras NAB = antal fel som båda hittar B Andel som granskare A hittar = NAB/NB Tar tid men lönar sig i allmänhet Andel som granskare A hittar = NA/N Under stabila förhållanden kan man uppskatt hur många fel som finns kvar NA/N = NAB/NB --> N = NA* NB/NAB är bra X 94

Projektuppgiften - storyn Utveckla och leverera programvara till ett organiserat garage som förvarar cyklar. - - Installationsmanual Projektuppgiften - forts 95 Uppdrag 96 = electronic lock Barcode printer PC = pincode terminal Fas 1 Specifikation Testplan & testspecifikation srapporter dokument Manual Testrapporter Vi vet att det ska vidareutvecklas av någon annan: - specifikation - Testspecifikation - - Exekverbar applikation Plattformar dokument Good version Extra exit door Bicycle garage Fas 3 Implementation och enhetstest Exit door Fas 4 Aktörer Individual inspection Exekverbar källkod Dokumenterat genomförda systemtest Inspection meeting Inspection protocoll Dokumentmiljö 0.99 Supervisor review Supervisor feedback 1.0 Projekthandledare Projektgrupp 97 QA från IP3 Projektwebb för dokumenten Java/swing för programvaran 0.x 0.9 Testplan Utvecklingsmiljö Fas 2 Entry door specifikation specifikation = barcode reader Operator Arbetsgivaren och beställare vill ha insyn: - - sprotokoll - Testrapporter från systemtest Projektintern granskning inför L3 Faser och leverabler Målmiljö Leverabler 98 Better version 0.0991

i Projektet? Exempel rubriker Roller och arbetsfördelning - Inte projektledare > smart med koordinator Äkta tidplan (med estimerad arbetstid) - Möten - Planerade arbetspass - Fri projekttid Risklista: - Riskminimering - Plan B Något som fungerar För projektgruppen För projekthandledaren Kan ha fler rubriker Kan vara - flera dokument - flera flikar - flera applikationer Beskriv då tydligt vad som är vad Projektens projektplan Datum och tider Inledning: projektmodell, utvecklad produkt, målsättningar, 1. Med externa beroenden begränsningar 2. Egna möten 3.Egen Projektorganisation: verksamhet utvecklingsorganisationen, andra intressenter Hårdvara och programvara: som krävs för projektets genomförande Arbetsnedbrytning: aktiviteter, leverabler, milstolpar : när varje aktivitet påbörjas och avslutas, när varje milstolpe ska uppnås Uppföljning och rapportering: hur detta ska ske? Riskanalys Vem gör och ansvarar för vad Projektledare =>koordinator 99 100 för projekten - idé att utgår ifrån Att göra inför övning 2 P.1-6 och intressenter I:1: Granska ABC-video och notera brister inför granskningsmöte torsdag morgon Onsdag kl 15: Mjuk deadline krav 0.x Övning 2: muntlig fb2@ö2 Måndag v16: Föreläsning om testning 3 x hård deadline Torsdag v 16: fb3@ö3 4 dag 101 102

Frågor om projekt som sådana? kursprojektets projektplan? kursprojektets kravspecifikation? 103