F7 Agila metoder. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH

Relevanta dokument
F7 Agila metoder. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH

SCRUM. Vattenfallsmodellen. Analys. Design. Kod. Test. Rational Unified Process Agile. Kallas också linjär sekventiell modell.

BESKRIVNING AV PROCESSMETODEN SCRUM

SCRUM. Marcus Bendtsen Institutionen för datavetenskap

SCRUM. på fem minuter

Linköpings universitet 1 TDP029. Systemutveckling. Systemutveckling. Vanliga faser. Fler faser. Systemutvecklingsmetod

Agil mjukvaruutveckling. 1DV404, Jesper Andersson

Automation Region. Affärsdriven systemutveckling genom agila metoder. Stefan Paulsson Thomas Öberg

SCRUM. En agil projektmetod baserad på empiri - vad fungerar och vad fungerar inte?

Linköpings universitet 1

12 principer of agile practice (rörlig)

SCRUM. på fem minuter

Agil programutveckling

SCRUM och mycket mer

SCRUM på Riksarkivet. Magnus Welander /

AGILA METODER. (för oss som inte kodar) Nina Berlin

SCRUM och agil utveckling

Agila Metoder. Nils Ehrenberg

F9 del B Organisatoriskt. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson Datavetenskap, LTH

Presentation. Fredrik Runnsjö 1996 Utvecklare 2004 Testare ~2006 Scrum/Canban

Samarbetsstrukturer för att självorganisera inom givna ramar.

TDDD26 Individuell projektrapport

HÖSTTERMINEN. Scrum STF INGENJÖRSUTBILDNING AB. Vi vidareutbildar ingenjörer och tekniker. Din partner för livslångt lärande

Scrum + XP = sant. Kristian Björk D06, Lunds Tekniska Högskola dt05kb1@student.lth.se. Frederik Blauenfeldt Jeppsson. dt06fb8@student.lth.

ALM Live: Scrum + VSTS

Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions

Scrum. på fem minuter

Agilt arbetssätt i komplexa organisationer. Välkomna! Anna Picetti, IT-HUSET

XP-projekt: En fördjupning

Agil testning i SCRUM

Scrum. på fem minuter

F2 XP Extrem Programmering översikt. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Görel Hedin Datavetenskap, LTH

F2 XP Extrem Programmering översikt. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Görel Hedin Datavetenskap, LTH

Inspel till dagens diskussioner

Scrum + XP samt konsekvensanalys

CREATING VALUE BY SHARING KNOWLEDGE

Projektmetodik II. HF1005, Informationsteknik och ingenjörsmetodik för Datateknik. Projektarbete

SCRUM vs. XP en jämförelse mellan två lättviktsmetodiker

ALM Live. April 2008 Effektivare projektarbete med Visual Studio 2008

Användningscentrering i agila utvecklingsprojekt. johanna.sarna@valtech.com Valtech

Användbarhet i sitt sammanhang

Tentamen, delkurs Projektstyrning Webbutvecklare SU13, Malmö

Hur hanterar vi risk? Vad är TKO? Skillnad på agil och trad? Agil/Lean: Defer Commitment, Build knowledge, Fail fast

Översikt. Fö: Projekt: Interaktivt system. Projekt. Mål. Coachning. Praktiker att använda

TDP023 Projekt: Agil systemutveckling

KURSER OCH WORKSHOPS 2017

Användarcentrerad systemdesign

Integrerat ingenjörsprojekt

TDP023 Projekt: Agil systemutveckling

Deluppgift 2 Kravhantering a) (2p) När man diskuterar krav brukar man ange två olika typer av krav. Beskriv dessa och ge exempel.

F6 Arkitektur, Planering

Agila metoder. Idag skall vi vända på steken... Agil Ledning av IT-projekt

Projektmetodik. Översikt. Lektion 1: Metodiker. Metodiker.

Vad är agilt? Agile Islands Andreas Björk

Agile i ett större sammanhang. Thomas Nilsson CTO, Agile Developer, Coach & Mentor

Agila arbetsformer. Gemensamma värderingar

Användarcentrerad systemdesign

Agile-metoder, XP och ACSD

AGIL KRAVHANTERING. Hitta behoven bakom kraven!! Thomas Nilsson! Agile Coach & Mentor! CTO, Responsive

Configuration Management

F6 Arkitektur, Planering. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH

Scrums användning i Extreme Programming projekt. Lunds Tekniska Högskola D07 Lars-Olof Rydgren EDA

En agil systemutvecklingsprocess. Vattenfallsmodellen. Manifesto for Agile Software Development. Agila modellen.

Idag. Camilla Forsell TNM082 VT2014 TNM082, Camilla Forsell. Camilla Forsell TNM082 VT2014 TNM082, Camilla Forsell.

Metoder för Interaktionsdesign

IT-projektledning - introduktion 725G62

DevOps i Verkligheten

Sara Skärhem Martin Jansson Dalarna Science Park

Scrum. Seminar SESAM, Stockholm, Emerging requirements and Agile testing in. Jimmy Janlén.

Therese Hansson & Magnus Jonsson. Motivationsfaktorer - Test inom Agila utvecklingsprojekt

Agila metoder och motivation

Design. Vad lärde jag mig förra lekfonen? Hur bidrog jag Fll lärandet? Kravhantering sammanfa0ning 13/04/14

Agil projektmetodik Varför och vad är det?

När? Varför? För vem? Resultat? (Artefakter?)

Vad är. Domändriven design?

Förändringskontroll i XP-team. Love Johansson (d00lj), Joakim Persson (d00jp)

Scrum i praktiken Tillämpning inom Gripen demonstrator. Fredrik Lorentzon & Marcus Frejd SESAM

Lärandemål. Kursupplägg. Hantverk. Roller. Projekt med extern kund TDP027. Projekt: Agil systemutveckling. Annika Silvervarg CiltLab/HCS/IDA

Klas Karlsson CV. Kontakt. Sammanfattning. Uppdrag


Agile i ett större sammanhang

Enterprise App Store. Sammi Khayer. Igor Stevstedt. Konsultchef mobila lösningar. Teknisk Lead mobila lösningar

Kanban. Marcus Hammarberg. torsdag den 15 september 2011 (v.)

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

på ett stort spelföretag Andreas Ström

Innovation Enabled by ICT A proposal for a Vinnova national Strategic innovation Program

Arkitektur. Den Röda Tråden

EFFEKTIVA PROJEKT MED WEBBASERAD PROJEKTLEDNING

Scaled Agile Framework

Idag. Camilla Forsell TNM082 VT2013 TNM082, Camilla Forsell. Camilla Forsell TNM082 VT2013 TNM082, Camilla Forsell

Tre moment. TDP023 Projekt: Agil systemutveckling. Tidsplan - översikt. Roller. Projekt med extern kund. Scrum master

Modern utvecklingsmetodik. Användarcentrering i företag. Användarcentrering i företag. Användarcentrering i företag. Användarcentrering i företag

CHANGE WITH THE BRAIN IN MIND. Frukostseminarium 11 oktober 2018

ENIMEOS ΣOEMINE. Krav och trender. Praktisk kravhantering och annat nyttigt från industrin. Christian Ehrenborg

Reijo Soréus. NyA. Presentation för Ladok-Inkubator Göteborg

Big Room Planning NyA Scaling Scrum the SAFe way

Du fulländar mig! Om synergierna mellan agila metoder och UX. Joakim Holm Adaptiv AB. Erik Hammarström Antrop AB

Kursmål. Kursens delar. Obligatorisk närvaro

Transkript:

F7 Agila metoder EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH 1

XP - Scrum - Kanban - FDD Agila metoder: Vad innehåller SCRUM Hur skiljer sig XP och SCRUM? KANBAN - whiteboard! Lättviktig planering Vad innehåller Feature Driven Development Hur kompletterar FDD XP? 2

Scrum - översikt Scrum 4 nyckelbegrepp: - Sprints - Backlog - Daily scrum - Backlog grooming - Sprint review 3

Roller i Scrum Scrumteam består av: - Utvecklingsteam 5-10 personer, självorganiserande - Produktägare Styr över prioritering, ofta del av företaget, ibland en kund. Ekonomiskt ansvar. - Scrum master Coach, projektledare, skyddar teamet. 4

Sprint 2-4 veckor utvecklingsarbete, timebox - följer en utvald att-göra lista - planeringsfas då dessa väljs ut. - under själva Sprint ändrar man inte listan 5

Backlog Lista över att-göra. Hanteras av Produktägaren - Skapas initialt, inkl alla önskemål. - Delas i delar som skapar värde. - Kan förändras över tid - Prioriteras, urval av de mest prioriterade inför nästa Sprint. 6

Daily Scrum Typiskt morgonmöte - Synkronisera utvecklingen - Identifiera och lösa problem - tre frågor som alla svarar på: Vad har du gjort sedan förra mötet? Vad tänker du göra inför nästa möte? Är det något som hindrar dig från det? 7

Backlog grooming Underhåll av backloggen Involverar hela teamet - Estimera tidsåtgång - Bryta ner att göra i minder delar som passar i en Sprint. Görs regelbundet 8

Sprint review Sprint avslutas med demo av resultatet för: - Produktägare, Kunder, Företagsledning etc. Retrospective - som förberedelse för nästa Sprint 9

Burndown chart 10

11

Roller i Scrum Scrumteam består av: XP motsvarighet - Utvecklingsteam - Team 5-10 personer, självorganiserande - Produktägare - Kund Styr över prioritering, ofta -del Användare av företaget, ibland en kund. Ekonomiskt ansvar. - Scrum master - Coach Coach, projektledare, skyddar teamet. 12

Sprint 2-4 veckor utvecklingsarbete, timebox - följer en utvald attgöra lista - planeringsfas då dessa väljs ut. - under själva Sprint ändrar man inte listan XP motsvarighet - Iteration - Story - Prioritering - Embrace change! 13

Lista över att-göra. Backlog Hanteras av Produktägaren - Skapas initialt, inkl alla - Skapas efter önskemål. hand - Delas i delar som skapar värde. - Kan förändras över tid - Prioriteras, urval av de mest prioriterade inför nästa Sprint. XP motsvarighet - De Stories vi har - Prioritering 14

Daily Scrum Typiskt morgonmöte - Synkronisera utvecklingen - Identifiera och lösa problem XP motsvarighet - Stand up meeting - tre frågor som alla svarar på: Vad har du gjort sedan förra mötet? Vad tänker du göra inför nästa möte? Är det något som hindrar dig från det? - 15

Backlog grooming XP motsvarighet Underhåll av backloggen Involverar hela teamet - Planeringsmöte - Estimera tidsåtgång - Bryta ner att göra i minder delar som passar i en Sprint. Görs regelbundet - Görs hela tiden 16

Sprint review XP motsvarighet Sprint avslutas med demo av resultatet - Release för: - Produktägare, Kunder, företagsledning - Acceptanstester etc. Retrospective - som förberedelse för nästa Sprint - Planning game 17

Burndown chart XP motsvarighet - Kvarvarande stories tar aldrig slut. 18

Feedback - Scrum-XP 19

Scrum vs XP

KANBAN Generell metod för att hantera arbetsflöden Begränsa parallella uppgifter Fokusera Identifiera flaskhalsar Mät och utvecklas Fokusera på att avsluta saker. Förbättra löpande På enklast möjliga sätt. 21

Gemensam överblick 22

I ett projekt Begränsa backloggen - annars tar prioriteringen för mycket energi Lägg till fler steg: - utveckling, test, integration, acceptanstester Förbättra löpande Det finns naturligtvis digitala varianter, men enkelhet och direkt kommunikation har också ett värde! 23

Feature Driven Design FDD kan uppfattas/tolkas/användas på olika sätt: Här presenteras som en metod för hantera lite större projekt: - Flera Team av XP-programmerar som arbetar på samma produkt. - Kan också uppfattas som komplement till XP, passar väl samman, mer explicit OO fokus. Rötter i tidigt arbete i OO metodik, t ex: - P. Coad & Ed. Yourdon: Object Oriented Design, 1991 - P Coad, E Lefebvre, and Jeff De Luca: Java modelling in Color with UML, 1999 24

Feature - Produktbeskrivning? What are product features? Product features are characteristics of your product that describe its appearance, components, and capabilities. A product feature is a slice of business functionality that has a corresponding benefit or set of benefits for that product's end user. To offer maximum value, product features must be prioritized effectively. Features should be added based on quantifiable ways that they will add value for the product s end users. Product features should also be prioritized based on how well they achieve business objectives. www.aha.io 25

FDD - Översikt 5 Processer (faser efter varandra) - Overall object model - Feature list - Planning by feature - Designing by feature - Building by feature Feature - vad kan det vara? 26

Feature in FDD Har någon relation med Story i (XP) - User value - capture functionality Feature betyder oftast något större än en Story - kan ge upphov till ett antal relaterade stories Före Smart-phone fanns - Feature-phone - T ex en mobil man kunde fotografera med - Kamera-feature - ett antal stories: ta bild, bläddra bilder, ladda upp bilder 27

Roller i FDD FDD defines a collection of main roles, including: - Project Manager, - Chief Architect, - Development Manager, - Chief Programmer, - Class Owner, and - Domain Expert Supporting roles - Domain Manager - Release Manager - Language Guru - Build Engineer - Toolsmith - System Administrator - Tester - Deployer - Technical Writer 28

1 Overall Object Model Modellera domänen som objekt (Klasser). Gemensam aktivitet: - utvecklare, kunder, domänexperter. Olika grupper kan modellera olika delar av domänen Jämkas ihop, alternativ väljs, till en gemensam modell 29

2 Compile Feature List Arbetet med att ta fram objektmodellen resulterar också i förståelse för vad produkten skall erbjuda. Bryts ner i en lista av features - Ge värde till kunden - Typiskt 2-3 veckors impl-arbete dela upp - Ofta uttryckt som en lista med aktiviter användaren kan göra. Beskrivs som att allt görs i början, men kan också göras löpande, nya Features efter hand. 30

3 Planning by Feature Överordnad planering I vilken ordning skall Features förverkligas Vem skall göra vad - Fördela på team - (Fördela på utvecklare) Uppskatta arbetsinsatser, fördela, risker om saker fallerar etc. 31

4. Designing by Feature Passar väl med ett utvecklingsteam Vilken feature är viktigast - Dela upp i Stories - Backlog (Att Göra) Chief programmer - driver design Domän-expert - hjälper till med förståelse, Analys 32

5. Building by Feature Äntligen kan man börja skriva kod! Utgå från Features (en i taget) FDD har inte synpunkter hur man gör här Många XP tekniker passar bra in - Unittester - Användartester - Bryta ner i Stories 33

FDD - iterativt/agilt? Features Delar 1 Overall Object Model 2 Feature List 3 Planning Feature Krav Krav Design Design Impl 4 Design by Feature 5 Build by Feature Impl Test Test Krav Design Impl Test Krav Design Impl Test Krav Design Impl Test Tid

Roller i FDD FDD-team består av: - Experter - Stort antal fixerade roller XP motsvarighet - Team - Självorganiserande - Domän expert - Expertroller delas mellan Featureteams - konsult - Kund - Användare - Coach 35

Object Model i FDD Object Model - Förstå Domänen - Viktiga klasser XP motsvarighet - Metaphor - Initial arkitektur - Zero feature release Färdig Model - Hur underhålls den? - Simple design - Refactor 36

Feature List i FDD Features Funktionen - Identifiera features Business expert XP motsvarighet - Identifiera Stories iterationer användare Produktföretag Extern beställare, - kända användare 37

Planning by Feature i FDD Vilken ordning - Chief programmer Feature XP motsvarighet - Planning game kund/användare - Iteration (om man vill) Releaseplan Frequent Releases User feed-back 38

Design by Feature i FDD Feature selection - Chief programmer Design decisions - Chief programmer XP motsvarighet - Stand up meeting Simple design Refactor 39

Building by F i FDD Programmering - Class owners i varje featureteam? - Koordination? Hur uppdateras gemensam arch? XP motsvarighet - Stories, - Detaljplanering - Collective ownership Simple Design Refactor Iterationer Releaser 40

FDD vs XP

FDD vs XP Viktiga skillnader: Initial design och arkitektur - Simple, Refactor Fixerade roller, experter - Självorganiserande Class owner - Collective ownership Mindre uttalat samspel med kund/användare Feed-back som metod saknas Större sammanhang, tolkar som: - Stora linjer fastlagda, inte alla detaljer 42

Sammanfattning Scrum och XP överlappar runt planering - även om saker heter lite olika XP erbjuder mycket mer struktur för det praktiska programmeringsarbete FDD mer fokus på OO, överordnad planering - kompletterande tekniker för större projekt. KANBAN och dess enkla tavelteknik används ofta i Agila projekt för att skapa överblick. 43

Läsanvisningar http://www.scrumguides.org/docs/scrumguide/ v2016/2016-scrum-guide-us.pdf#zoom=100 SCRUM på fem minuter, www.softhouse.se KANBAN in five minutes, www.softhouse.se FDD https://apiumhub.com/tech-blog-barcelona/featuredriven-development/ 44