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

Relevanta dokument
TDP023 Projekt: Agil systemutveckling

SCRUM och agil utveckling

Linköpings universitet 1

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

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

Mönster. Ulf Cederling Växjö University Slide 1

Effekter av införande av agila metoder. Daniel Sundmark Mälardalens högskola

Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions

SCRUM. Marcus Bendtsen Institutionen för datavetenskap

Examensarbete Introduk)on - Slutsatser Anne Håkansson annehak@kth.se Studierektor Examensarbeten ICT-skolan, KTH

Kvalitetsarbete I Landstinget i Kalmar län. 24 oktober 2007 Eva Arvidsson

Klicka här för att ändra format

IAK115 Kritiskt tänkande och teori inom arkitektur och design 1&2, 4 hp (H15)

Kursplan. MT1051 3D CAD Grundläggande. 7,5 högskolepoäng, Grundnivå 1. 3D-CAD Basic Course

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

Adding active and blended learning to an introductory mechanics course

IAK116 Perception/Färg, Ljus, Rum 1, 6 hp (VT16)

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

TDP023 Projekt: Agil systemutveckling

PRODUCT MANAGEMENT. Klicka här för att ändra format. Klicka här för att ändra format på underrubrik i bakgrunden

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

Introduktion till vetenskaplig metodik. Johan Åberg

Writing with context. Att skriva med sammanhang

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

Användarcentrerad systemdesign

RUP är en omfattande process, ett processramverk. RUP bör införas stegvis. RUP måste anpassas. till organisationen till projektet

Ett hållbart boende A sustainable living. Mikael Hassel. Handledare/ Supervisor. Examiner. Katarina Lundeberg/Fredric Benesch

Användarcentrerad systemdesign

Isolda Purchase - EDI

CHANGE WITH THE BRAIN IN MIND. Frukostseminarium 11 oktober 2018

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

Kursplan. AB1029 Introduktion till Professionell kommunikation - mer än bara samtal. 7,5 högskolepoäng, Grundnivå 1

Design för användbarhet

Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE

Swedish framework for qualification

Flervariabel Analys för Civilingenjörsutbildning i datateknik

Läkemedelsverkets Farmakovigilansdag

Kanban är inte din process. (låt mig berätta varför) #DevLin Mars 2012

Kontextuell utforskning, 8 hp, H15 (IDK213 KONT)

FÖRBERED UNDERLAG FÖR BEDÖMNING SÅ HÄR

A metadata registry for Japanese construction field

Beijer Electronics AB 2000, MA00336A,

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

Preschool Kindergarten

Health café. Self help groups. Learning café. Focus on support to people with chronic diseases and their families

Materialplanering och styrning på grundnivå. 7,5 högskolepoäng

Datavetenskap. Beteendevetenskap MDI. Design

Agile-metoder, XP och ACSD

1. How many hours per week have you on average spent on the course, including scheduled time?

Botnia-Atlantica Information Meeting

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

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

Välkommen in på min hemsida. Som företagsnamnet antyder så sysslar jag med teknisk design och konstruktion i 3D cad.

Testning som beslutsstöd

Stad + Data = Makt. Kart/GIS-dag SamGIS Skåne 6 december 2017

Datavetenskapligt program, N1COS

Design för användbarhet Designexempel, hur tänkte man vid designen?

Methods to increase work-related activities within the curricula. S Nyberg and Pr U Edlund KTH SoTL 2017

The present situation on the application of ICT in precision agriculture in Sweden

System arbetssystem informationssystem

Collaborative Product Development:

The Swedish National Patient Overview (NPO)

Isometries of the plane

Module 1: Functions, Limits, Continuity

Datavetenskapligt program, N1COS

Att fastställa krav. Annakarin Nyberg

Kursplan. FÖ1038 Ledarskap och organisationsbeteende. 7,5 högskolepoäng, Grundnivå 1. Leadership and Organisational Behaviour

Säkerhetsfunktioner rstå varandra? Finns behov av att avvika från normal säkerhetsfunktion s vissa betingelser under uppstart, ändringar i processen

Kursplan. AB1030 Att arbeta i projekt. 7,5 högskolepoäng, Grundnivå 1. Working in projects

SWESIAQ Swedish Chapter of International Society of Indoor Air Quality and Climate

Workplan Food. Spring term 2016 Year 7. Name:

2.1 Installation of driver using Internet Installation of driver from disk... 3

Taking Flight! Migrating to SAS 9.2!

Innovation in the health sector through public procurement and regulation

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

Ämnesområden. Examensarbete inom datavetenskap (1DV41E) Martin Fredriksson

Module 6: Integrals and applications

Syns du, finns du? Examensarbete 15 hp kandidatnivå Medie- och kommunikationsvetenskap

Protokoll Föreningsutskottet

Introduktion till vetenskaplig metodik. Johan Åberg

Fortsatt Luftvärdighet

Kursplan. NA1032 Makroekonomi, introduktion. 7,5 högskolepoäng, Grundnivå 1. Introductory Macroeconomics

Anders Persson Philosophy of Science (FOR001F) Response rate = 0 % Survey Results. Relative Frequencies of answers Std. Dev.

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

FK Electrodynamics I

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

On the Establishment of UCSD i n in Organisations Åsa Cajander Uppsala Universitet Universitet

Kursutvärderare: IT-kansliet/Christina Waller. General opinions: 1. What is your general feeling about the course? Antal svar: 17 Medelvärde: 2.

Fujitsu Day Göteborg 8 oktober

Vässa kraven och förbättra samarbetet med hjälp av Behaviour Driven Development Anna Fallqvist Eriksson

The Finite Element Method, FHL064

12.6 Heat equation, Wave equation

ALM Live. April 2008 Effektivare projektarbete med Visual Studio 2008

Kursplan. IK1004 Java - Grafiska användargränssnitt med Swing. 7,5 högskolepoäng, Grundnivå 1. Java - GUI Programming with Swing - Undergraduate Level

ISTQB Testarens ledstjärna

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

CVUSD Online Education. Summer School 2010

Politikerdag 2013 Från GIS till Geografisk förståelse. Lars Backhans

Agil mjukvaruutveckling. 1DV404, Jesper Andersson

Transkript:

Lärandemål TDP027 Projekt: Agil systemutveckling Efter genomgången kurs ska studenten kunna: utveckla en grafisk interaktiv tillämpning ihop med en beställare (kunder) utveckla programvara baserat på agila metodikens grundvärderingar förstå agil utvecklingsmetodik i förhållande till andra metodiker Annika Silvervarg CiltLab/HCS/IDA Hantverk Kursupplägg Kunnande i att arbeta med hjälp av agil metodik både individuellt, i par och i grupp. Förmåga att kommunicera och fungera socialt på ett bra sätt i ett projekt och team. Kunna ta fram programvara på enklast möjliga vis för att lösa givna krav. Kunna ta och ge återkoppling på ett konstruktivt och givande sätt. Arbeta i hög fart med god kvalitet och leverera innovativa tillfredställande resultat. Arbeta direkt med källkod snarare än dokumentation och att vara öppen för kontinuerliga förändringar. Projekt 8 hp Individuell rapport 2 hp Kopplat till projektarbetet och teorier om utvecklingsmetoden Learning by doing and reflecting Projekt med extern kund Roller 4 projekt att välja mellan Intresseanmälan görs i webformulär efter denna föreläsning Projekt kan kräva underskrift av sekretessvillkor Liknande villkor som för uppsatsarbeten med företagskunder och kursen Företagsprojekt Kunden äger det utvecklade systemet 4 utvecklingsteam Ca 5-6 studenter per team Extern kund (1 per team) Intern scrum master för varje team 1

Roll Kund Roll Scrum master Extern person som beställer arbetet I denna kurs agerar kunden i princip som en product owner (i mån av tid) Ser till att user stories finns i backlog (framförallt inför sprint start) Prioriterar user stories inför sprint start Deltar i demo vid sprint end och avgör vilka stories som får godkänt och gör ev ändringar ac user stories, prioriteringar etc Är också utvecklare Denna roll kan roteras inom gruppen Ansvarar för kontakten med kund Ser till att burn-down-chart upprättas Ansvarar för scrum-möten och att de blir till, samt uppdatering av burn-down-chart och tabellen med tasks och stories Håller i sprint start Håller i sprint end (demo + retrospective) Fyller i sprintformuläret efter varje sprint Roll Utvecklare Tidsplan Deltar aktivt i sprint start & sprint end Deltar aktivt i scrum-möten Utvecklar och testar valda tasks Kommer i tid till planerade möten och utvecklingstider v3-4: Introduktion + Sprint 0 v5-6: Sprint 1 v7-8: Sprint 2 v9-10: Sprint 3 v14-15: Sprint 4 v16-17: Sprint 5 v18-20: Sprint 6 v21: Reflektion och individuell rapport Litteratur Examination Kursbok Pieter Jongerius et al. Get Agile! Scrum for UX, design & development. BIS Publishers, 2013. Henrik Kniberg. Scrum and XP from the trenches. Forskningsartiklar Williams, L., Kessler, R.R., Cunningham, W., Jeffries, R. Strengthening the case for pair programming, IEEE Software, 17(4), pp. 19-25, 2000. Jones, D.L., and Fleming, S.D. What use is a backseat driver? A qualitative investigation of pair programming. In Proceedings pf the IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 103-110, 15-19 September, 2013. Kai Stapel, Eric Knauss, Kurt Schneider, and Matthias Becker. Towards Understanding Communication Structure in Pair Programming. In Agile Processes in Software Engineering and Extreme Programming, Lecture Notes in Business Information Processing Volume 48, pp. 117-131, 2010. Kjetil Molokken-Ostvold, Nils Christian Haugen, Hans Christian Benestad. Using planning poker for combining expert estimates in software projects, The Journal of Systems and Software 81, pp. 2106-2117, 2008. Siva Dorairaj, James Noble, and Petra Malik. Understanding Team Dynamics in Distributed Agile Software Development. In Agile Processes in Software Engineering and Extreme Programming LectureNotes in Business Information Processing Volume 111, pp. 47-61, 2012. Aktivt deltagande i projektarbetet (8hp) Individuell reflektionsrapport (2hp) Deadline 4/6, kl 25.59 Del 1 Läs och sammanfatta/analysera tre forskningsartiklar Del 2 Skriv en vetenskaplig diskussion som kopplar observationer från projektarbetet till de lästa artiklarna OBS: För dagbok under projektets gång för att ha bra underlag för skrivandet 2

Ändringar Ändrat schemat för mer sammanhållen tid Lite större grupper 2 tillfällen för coachning/handledning (efter sprint 2 + 4) SYSTEM DEVELOPMENT System System development model In wide sense: Technology, information, services, products, people, organisations and/or cultures working together to form a unit In this course: software systems, i.e. computer system used by one or many human users An abstract representation of the work done during system development, often a very simplified and schematic view Describe how we work Process Tools and techniques Something that you do Something that happens over time where purpose of the participants is to create or change something Prescribe how we should work Designed for a specific task or function Independent of the overall method Is used to create or change something Techniques are different ways of using tools Examples Interviews, observations User stories, personas Scenarios, use cases Prototypes 3

Development method System development models Systematic, structured way of developing systems Software engineering System engineering Method = model/process + tools and techniques Describe the order of different phases and the result/outcome of them Criteria for moving from one phase to another Common phases: Analysis Design Implementation Common phases Forgotten phases Analysis what is the problem? Task what are the work task and how are the performed? User needs what is the problem, what do you need? Information what information is handled? Usability what is important to the user? Vision and goal what do you want to achieve? Design how should we solve the problems? Implementation - realization of solution Selling, background Analysis Design Implementation Test Delivery Education Support Historical overview of system development models Code and Fix Code and fix Waterfall model Incremental development Iterative development Code Fix 4

Code and Fix Code and fix Code and fix development is not so much a deliberate strategy Without much in the way of a design, programmers immediately begin producing code At some point, testing begins (often late in the development cycle), and the inevitable bugs must then be fixed before the product can be shipped Waterfall Waterfall model The waterfall model is a sequential software development model in which development is seen as flowing steadily downwards through the phases: Requirements analysis Design Implementation Testing (validation) Integration and Maintenance The origin of the term "waterfall" is often cited to (Royce 1970) although Royce did not use the term "waterfall" in this article. Ironically, Royce was presenting this model as an example of a flawed, non-working model Incremental Incremental development Incremental development is a strategy in which the various parts of the system are developed at different times or rates, and integrated as they are completed Overall architecture Increments Integration The alternative to incremental development is to develop the entire system with a "big bang" integration It does not imply, require nor preclude iterative development or waterfall development - both of those are rework strategies that can be used within an increment 5

Iterative Iterative development Iterative development is a rework scheduling strategy in which time is set aside to revise and improve parts of the system The output from an iteration is examined for modification, and especially for revising the targets of the successive iterations It does not presuppose incremental development, but works very well with it Most people saying "iterative" development mean that they do both incremental and iterative development What is Agile? AGILE SYSTEM DEVELOPMENT 70 s Adaptive Software Development 90 s Lightweight methods 2001 Agile manifesto Manifesto for Agile Software Development Key features of Agile User stories Product backlog Sprints (Iterations) Daily standup meeting Burndown chart Testdriven development Retrospective 6

User stories Product backlog Sprints Standup meeting (SCRUM) Yesterday I Today I will I have some problems with. Burn down chart Retrospective 7