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

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

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

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

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

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

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

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

Streamade föreläsningar på webben

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

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

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

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

Programvaruutveckling - Metodik 2016 Jonas Wisbrant

Projektplan, Cykelgarage

Exercise 1b: Requirements evaluation

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

ETSA01 Ingenjörsprocessen för Programvaruutveckling Metodik

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

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

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: ETSA02 Programvaruutveckling Metodik

ETSA02 Programvaruutveckling Metodik Föreläsning 1 Jonas Wisbrant

Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik

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

Föreläsning 3 Verifiering och Validering

Föreläsning 3 Verifiering och Validering

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

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

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

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

men borde vi inte också testa kraven?

men borde vi inte också testa kraven? Robert Bornelind

LIPS Kravspecifikation. Institutionen för systemteknik Mattias Krysander

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

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

Arbeta i projekt. Anders Hessel ITP-projekt Uppsala Universitet

Testplan Cykelgarage

Projektarbete. Johan Eliasson

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

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

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

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

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

Idag. EDAA35: Utvärdering av programvarusystem. Mål. Innehåll. Kursmoment. Lärare

Kursinformation. Metodik för programvaruutveckling. Utvecklingsprocessen för programvara. Innehåll. Processmodell. Exempel

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

Före Kravspecifikationen

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

PROJEKTLEDNING. Vad är ett PROJEKT? Ett projekt:

Dokumentation och presentation av ert arbete

Testbara krav. SAST Syd Ställ gärna frågor under presentationen eller efteråt Åhörarkopior distribueras efteråt

LIPS 1, 2002 Lätt Interaktiv Projektstyrningsmodell

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

Dokumentation och presentation av ert arbete

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

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

PROJEKT Kurs om hållbar utveckling

Frågor och svar till tentamen i Kravhantering

Dokumenthantering. Tieto PPS AH016, 5.1.0, Sida 1

Rätt svar och poängsättning: 0,5p per rätt svar, max 2,5p A. 2 B. 5 C. 3 D. 6 E. 4

LiTH Autonom styrning av mobil robot Projektplan. Martin Elfstadius & Fredrik Danielsson. Version 1.0

produkters egenskaper och innehåll

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

Kurser och seminarier från AddQ Consulting

REGELVERK & HANDBÖCKER

LUNDS UNIVERSITET. Projektledning

TPFD - TestPlan Före Design BESKRIVNING AV AKTIVITETER

Kursöversikt Certifierad Mjukvarutestare

RUP - Rational Unified Process

Projektet. TNMK30 - Elektronisk publicering

Projektuppgift.

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

Card Consulting. Projektmetodik Lars Ahlgren Card Consulting

Kursplan Gränssnittsdesign, 100p Läsår

Projektledning Introduktion. Version Juha Söderqvist

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

L0009B. Moment. Introduktion till geografiska databaser: G:\L0009B\Allmänt\IntroGeoDB.pdf (F)

Dokumentation och presentation av ert arbete

Interaktionsdesign - Prototyper. Användbarhetskrav

Föreläsning 3 Användare, uppgift och omgivning. Kapitel 3-4 i Stone et al.

Agil Projektledning. En introduktion

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

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

Projektet. EDAA35 Föreläsning 7. Krav på uppgiften. Ert projektförslag. Inlämning av förslag. Egna idéer är välkomna!

Skriftlig tentamen den 25 oktober 2014 Kravhantering, ETS672, 7,5 hp

1DV405 - Databasteknik. Kursintroduktion. Så här är kursen planerad.

Projectbase en generell projektmodell

Kandidatarbete på Industriell ekonomi

Exercise 1a: Requirements and project kick-off

Ramverk för projekt och uppdrag

Föreläsning 5 Processer Vidare utveckling

Bilaga 5 b: Mall för projektplan

Föreläsning 5 Processer, vidare utveckling

Transkript:

Detta har hänt... Pratat krav Bildat projektgrupper :-) Skaffat litteratur? Kommit igång med projektwikin: Formulerar krav Genomfört en övning: Hur var den? ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning Jonas Wisbrant 2 Agenda Kursinformation V 2: Måndag: Nu Tisdag kl 24: Deadline Kravspecifikation 0.x Inför övning to: Kursinformation Projektet, wikin och deadlines Kursombud Mer om kravhantering Mer om projekt, projektplanering Dokumentgranskning P1-6 I:1 Granska ABC- video Fråga: Har ni lagt in granskningsmöte(n) för krav- och plandokument i privata kalendrar? V 3: Måndag kl 1 Föreläsning: Testning Måndag kl 24 deadline: Granskningsprotokoll + Kravspecifikation 0.99 Granskningsprotokoll + Projektplan 0.99 3 4 Man kan även lägga upp granskningsprotokollen som en PDF-fil och länka till den

Frågor från kurswebben 1. Varför läggs inte filmerna på itunes U? Undviker gärna publik spridning p g a, integritet, kvalitet och krånglighet. Inlämning imorgon ti kl 24: Kravspec 0.x Jobba gärna vidare under tiden 2. Kan man göra något åt bärbara datorer som stör andra under föreläsningarna? Förslag: De som vill anteckna, kurssurfa eller annat med dator som stör sitter långt bak. De som bara stör med datorn kan kanske göra det någon annanstans? 3. Förtydligande på vad lämplig statistik innebär (i projektuppgiften)? Beror på målsättningen för ert cykelgarage Projekthandledarna vill veta: 4. Den -siffriga nummer projektet har tillgång till representeras av siffrorna 8-12 Borde vara det, inte den! Tack! Fixat :-). Använda github (eller liknande) för codehosting med tanke på att vem som helst kommer kunna gå in och bläddra i källkoden? - Tveksamt! ==> http://cs.lth.se/utbildning/samarbete_eller_fusk/ Kravspecifikation är påbörjat och innehåller tänk Produktbeskrivning i klartext? Dokumentets struktur? Användarfall? Kontextdiagram? Återkoppling via mail & / övning 2 6 7 Inlämning måndag v3 kl 24: Krav 0.99 Utse kursombud } granskning krav Plan 0.99 Möten Fr 2012-03-30 kl 12.30 i LUCAS-rummet (E:4130) Må 2012-0-07 kl 12.30 i LUCAS-rummet (E:4130) granskning plan Återkoppling Beslut: Innehåll Form Korrigering Krav 1.0 Plan 1.0 Alfredsson, Emilia (I) Sartorius, Carolina (D) Eliasson, Anton (D) Wigren, Adam (C) Gråborg, Mikael (C) Ändringshantering 8 9

ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Kravhanteringsprocessen krav Nu vet vi hur vi formulerar funktions- och kvalitets-krav. Men... krav Hur hittar vi, analyserar och dokumenterar krav Kravhantering fortsättning krav Hur säkerställer vi att vi förstått? krav Hur ska vi prioritera? Process enligt wikipedia En samling i förväg uttänkta aktiviteter som ska användas varje gång man skapar ett visst resultat... Dataflödesdiagram 11 ER-diagram - Entity Relationship Data lagras i systemet (entitet + attribut), t ex: Student: pnr, namn, inskrivningsår Kurs: kurskod, namn, #hp Program: beteckning, namn 1 * Student Program Följer Används ofta för att modellera data i databaser * * Läser Ingår på * Kurs 12 * 13

Naturligt språk Skillnad? Fördelar: Generellt Flexibelt Lätt att använda och förstå 14 Delar i en kravspecifikation Nackdelar: Otydligt Lätt att blanda olika sorters krav Lätt att slå samman flera krav i ett 1 Spårbarhet Table of contents 1. Introduction 1.1 Purpose 1.2 Scope 1.3 Definitions, Acronyms, and Abbreviations 1.4 References 1. Overview 2. General Description 2.1 Product Perspective 2.2 Product Functions 2.3 User Characteristics 2.4 General Constraints 2. Assumptions and Dependencies 3. Specific Requirements Appendix Index Från krav till källan Mellan krav - visar beroende Från design och kod till krav Från testfall till krav [IEEE Guide to Software Requirements Specifications, ANSI/IEEE Std 830-1984] 16 17

kraven Kontrollera att kravspecifikationen är korrekt och av hög kvalitet Tidiga faser är viktiga Exempel på metoder: Granskning (vanligast) Utveckla testfall Verktygsstöd för formellt skrivna krav [Alan Davis] 18 Bra egenskaper hos en kravspecifikation Korrekt Komplett Otvetydig Verifierbar Konsistent Prioriterad 19 Checklista för granskning för kursens projekt 1. Saknas några krav? 2. Är samtliga krav nödvändiga? 3. Finns det några motstridiga krav? 4. Kan samtliga krav verifieras?. Är samtliga krav tydligt formulerade eller kan några krav misstolkas? 6. Finns samtliga nödvändiga definitioner? 7. Är det möjligt för dokumentets målgrupp att förstå dokumentet? Genomförbar Modifierbar Spårbar 8. Följer kravspecifikationen sin dokumentmall? 9. Är något krav formulerat för detaljerat?.har något krav formulerats på för hög abstraktionsnivå? 11.Är all texter och illustrationer nödvändiga? Guidat alternativ 12.Har samtliga krav unika identifierare? 20 21

Kravprioritering Exempel, prioritering Omöjligt att implementera alla bra idéer! Jämför krav med avseende på: Värde för kund Kostnad att implementera Ledtid att implementera Risk Värde för nya kunder 13 Värde 6 1 4 2 3 7 8 9 11 12 14 Kostnad 22 Krav och projekt i ett större perspektiv 23 Sammanfattning - Krav Viktigt eftersom tidiga faser påverkar mycket Krav kan finnas på olika abstraktionsnivåer Produktledning Kvalitetskrav påverkar ofta hela produkten Plattform Krav Design Impl Test Kravhanteringsprocessen: identifiera, analysera, dokumentera, validera Egenskaper hos krav: korrekt, komplett, otvetydig, verifierbar, konsistent, prioriterad, genomförbar, modifierbar, spårbar Produkter Krav Krav Krav Design Impl Design Impl Design Impl Test Test Test 24 Spårbarhet: källakrav, krav-krav, krav-design/kod Krav är en viktig del i arbetet med produktledning och produktplanering Mer om krav i Kravhantering (ETS170) 2

Diskussion: Förklara för varandra ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Vad är det för skillnad mellan projektets: Affärsmål Projektmål Produktmål Om projektplanering och projektplaner 26 Signaler i projektet Aktör A Specifikationer Pengar Protokoll Beslut Förslag Prototyper Frågor Förtydliganden Meddelande Media Visioner & krav Specifikation & plan Produkten Testresultat Acceptans Meddelande Aktör B Bekräfta System Godkänna Återkoppling 28 tv e pr ck oj lar ek e t ns Plan Data Kommunikation i projektet över tiden U Behov Idéer Visioner Förväntningar Krav Avtal Be s pr täll oj ar ek en t s?

Typiskt innehåll i en projektplan Fyra viktiga metoder inom projektplanering Projektorganisation: utvecklingsorganisationen, andra intressenter t Underleverantör U Be Inledning: projektmodell, utvecklad produkt, målsättningar, begränsningar Visio Spec Bekr Syst God Intressentanalys Kostnadsskattning Hårdvara och programvara som krävs för projektets genomförande Arbetsnedbrytning: aktiviteter, leverabler, milstolpar September Tidplan: när varje aktivitet påbörjas och avslutas, när varje milstolpe ska uppnås Schemaläggning Uppföljning och rapportering: hur detta ska ske? Riskanalys Aktör A 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 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 Riskhantering Meddelande Media Meddelande Aktör B Återkoppling 30 Intressentanalys (stakeholders) Beställare 31 Kostnadsskattning Utvecklare Kundansvarig Sponsor IT-funktion Projektledare Slutanvändare Persontid viktigaste (dvs dyraste) faktorn Alltid svårt att veta, men viktigt ändå Olika angreppssätt Utvecklare Expertbedömning Algoritmiska modeller Underleverantör Vad vill varje intressent? Konflikter? Gränssnitt Mer i Ingenjörsprocessen - ekonomi och kvalitet [ETSF01] 32 33

Riskhantering Schemaläggning Aktivitetsnätverk för kritisk väg Aktivitet A1 Tid (d) Beroenden A2 A3 A1 A4 2 A3 A A6 1 Sannolikhet 1 A hög A6 start Riskprocess A1 2 A3 A4 slut Strategier A3, A låg Gantt-diagram September October 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 A2 låg [1] November 34 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 Typiskt innehåll i en projektplan Risk Konsekvens hög [] S K Prio (S x K) Reducera konsekvens Minska risk Alternativ (plan B) Strategi Hårdvara försenad 2 Ont om persontid 4 2 8 Undersöka alternativ Konstruera simulator Minska scope Strulig beställare 1 Andas... 3 Sammanfattning projektplanering Inledning: projektmodell, utvecklad produkt, affärsmål, begränsningar Programvaruprojekt speciella eftersom de är en av, komplexa, och eftersom det går att ändra sent Projektorganisation: utvecklingsorganisationen, andra intressenter Projektplanen beskriver t ex projektorganisation, arbetsnedbrytning, tidplan och riskanalys, mm. Hårdvara, programvara och andra resurser som krävs för projektets genomförande Kostnadsskattning kan göras baserat på expertbedömningar eller algoritmiska modeller Arbetsnedbrytning: aktiviteter, leverabler, milstolpar Riskhantering sker i fyra steg: identifiera risker, bedöm risker, behandla risker, följ upp risker Tidplan: 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 36 37

Granskningar grundläggande idé Alla dokument kan granskas (krav, test, design, kod, testfall, ) Hitta fel tidigt utan att exekvera kod d.v.s statisk testning ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Dokumentgranskning (statisk testning) Läs dokument på ett strukturerat sätt Rätt personer ska läsa Personerna ska läsa på rätt sätt Alla viktiga delar av dokumenten ska läsas 38 Granskningsprocessen Introduktion Planering ABC-video: Krav & plan: Nu före individuell hranskning Test & design: Granskningsmöte Omarbete Uppföljning ti/on Ö2 - - TBD TBD Roller Moderator Sekreterare Författare Granskare 39 Lästekniker (individuell granskning) Individuell granskning före möte före omarbete före nästa måndag 24 MS1 TBD före 3/ MS2 Tips: Planera in det mötet idag! 40 Ad-hoc - Upp till granskaren Checklist-baserad - Stöd av en checklista - Kan t ex ha tagits fram av organisationen Scenario-baserad - Följ ett användningsscenario under granskningen Perspektiv-baserad - Granska som en specifik roll: användare, testare, operatör, utvecklare, etc 41

Hur lång tid tar det? Hur många lejon finns det i skogen? Planering och introduktion:? Hur vet man om det är värt det? Individuell granskning*: Krav: sid/h Design: 4 sid/h Kod: LOC/h (utan kommentarer) Testplan: 4 sid/h Antal personer på ett granskningsmöte: 4- personer x?h Omarbete och uppföljning:?h Planering Introduktion Individuell granskning Granskningsmöte Omarbete Uppföljning Lejonen kan vara fel och jägarna kan vara granskare * Ebenau, et.al., Software Inspection Process 42 Med två granskare Sammanfattning - Granskning A N = totalt antal fel (som man vill veta) Systematisk metod för att identifiera problem i material som inte kan exekveras Tar tid men lönar sig i allmänhet NA = antal fel som granskare A hittar Under stabila förhållanden kan man uppskatt hur många fel som finns kvar NB = antal fel som granskare B hittar NAB = antal fel som båda hittar 43 Granskning är bra B Andel som granskare A hittar = NAB/NB Planering Andel som granskare A hittar = NA/N Introduktion Individuell granskning Granskningsmöte Omarbete Uppföljning NA/N = NAB/NB --> N = NA* NB/NAB 44 4

Att göra inför övning 2 P.1-6 Risker och intressenter I:1: Granska ABC-video inför granskningsmöte torsdag morgon Tisdag kl 24: Deadline krav 0.x Måndag v3: Föreläsning om testning 4 x deadline Torsdag v 3: Återkoppling 4 dag Påskuppehållet: Vem gör vad? Onsdag v 4: MS1 46