Användarcentrerad systemdesign

Relevanta dokument
Användarcentrerad systemdesign

Agile-metoder, XP och ACSD

Kravsammanställning. Förstudie verksamhetsstödjande. Drift & Förvaltning. Affärs-/ processutveckling. Analys & Design. Konstruktion Test Införande

Användarcentrerad systemdesign

Agile. Frågor. Lyckade/misslyckade IT-projekt

Agile. Frågor. Lyckade/misslyckade IT-projekt

Användarcentrerad systemdesign

Användbarhet och användarcentrerad systemdesign. Innehåll

Användbarhet och användarcentrerad systemdesign. Innehåll

Innehåll. Användbarhet och användarcentrerad systemdesign. Användbarhet - ACSD. Användbarhet? Vad är det? ISO 9241 Part 11. Andra definitioner

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

Agil programutveckling

Fungerar Agila principer i alla typer av projekt?

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

Design för användbarhet

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

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

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

Användarcentrerad systemdesign

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

Linköpings universitet 1

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

XP-projekt: En fördjupning

RUP - Rational Unified Process

Övning / handledning Användningsfall

Användarcentrerad Systemutveckling

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

Projektarbete. Grunder

Användarcentrerad systemdesign

Användarcentrerad systemdesign

SCRUM. Marcus Bendtsen Institutionen för datavetenskap

Människa-datorinteraktion 1MD016, hösten 2011 Användarcentrerad systemdesign september 2011

Effektivt Nyttigt Självförklarande Kräver ingen manual Intuitivt Läcker design Vem som helst kan använda det. Ändamålsenligt. Farmor kan använda den!

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

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

Agil projektmetodik Varför och vad är det?

SCRUM och agil utveckling

Föreläsning 4: Designprocessen

Användarcentrerad systemdesign introduktion till begrepp, processer och arbetssätt

Föreläsning 1. Kursinformation. Utvecklingsprocessen. Kravspecifikation. Gruppindelning.

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

BESKRIVNING AV PROCESSMETODEN SCRUM

TDP023 Projekt: Agil systemutveckling

12 principer of agile practice (rörlig)

Användarcentrerad systemdesign

Note to programmers. Embrace Change! Extreme Programming? Fyra basaktiviteter. 12 Practices / sedvanor. Vad är Extreme Programming

SCRUM och mycket mer

Chaos om IT-projekt..

Föreläsning 4 Identifiera krav och behov. Att läsa: Kapitel 10 i Rogers et al.: Interaction design

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

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

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

Chaos om datorprojekt..

RUP Rational Unified Process. 17 november 2004

IT och funk0onshinder

Användarcentrerad systemdesign

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

Platina och kvalité. Rasmus Staberg, Teknisk direktör,

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

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

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

Agil användbarhetsutveckling. handhållna enheter* TNM082. Martin Karlsson * Dagens kortaste kursnamn

Design för användbarhet Användarcentrerad utvecklingsprocess

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

Projektuppgift i Användarcentrerad Systemdesign, ht 04

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

Inspel till dagens diskussioner

Symptom på problemen vid programvaruutveckling

Jämförelse mellan Extreme. Programming och andra. lättviktsprocessser. Av : Fredrik Scheja (d98fsc) Måns Holmstedt Jönsson (d99mhj)

Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions

Användbarhet i sitt sammanhang

CREATING VALUE BY SHARING KNOWLEDGE

UML: Exempel. Ett modelleringsspråk. UML: Ansvar. UML: tre huvudanvändningar. Exempel: En klass position storlek. UML Unified Modelling Language

TDDI02. På denna föreläsning: Programmeringsprojekt, Föreläsning 1. Kursinformation Vad är Software Engineering? Hur går ett projekt till?

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

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

Agile Software Development - Vad betyder det i verkligheten?

Design av användargränssnitt. Processen snarare än produkten

Agila metoder en kartläggning av teori och praktik

E-val. Användningscentrerad systemdesign enligt Constantine & Lockwood. UPPSALA UNIVERSITET Uppsala

OOA Objektorienterad Analys. Exempel på informell kravspecifikation. DD2385 Programutvecklingsteknik Några bilder till föreläsning 11 13/5 2013

FÖRELÄSNING 8 DSV2PVT

Utvärdering. Användbarhet. + beställarperspektivet! Innehåll. Varför?

Diagnos och design av Verksamhet och IT, 7, 5 HP. Föreläsning 2 Sofie Pilemalm

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

Projektledning Introduktion. Version Juha Söderqvist

En snabbare väg till framgång Ett agilt angreppssätt för BI Johan Petersson

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

Handläggningssstöd för synskadade Baserat på teorierna av Constantine & Lockwood

TDP023 Projekt: Agil systemutveckling

extreme Programming refactored - recension och analys av Kent Becks senaste definition av XP

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

Kursen handlar om. Var används datorer och andra IT-stöd? T ex: Människa-datorinteraktion (MDI) Inst. för informationsteknologi

1. (3p) Inom MDI-området framhåller man att människor lär sig via metaforer. Hur menar man att detta går till?

Praktikum i programvaruproduktion

Digitaliseringen och ledarskap

Erfarenheter av användarfall vid utvärdering i strategisk upphandling

Agila Metoder. Nils Ehrenberg

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

Transkript:

Användarcentrerad systemdesign Föreläsning 11: Agile-processer och ACSD Stefan Blomkvist Avdelningen för MDI/IT, Uppsala Universitet, Stefan.Blomkvist@hci.uu.se www.it.uu.se/edu/course /homepage/acsd/ Agile-processer & ACSD Dagens föreläsning Agile översikt Vilka problem försöker Agile-processer att lösa, vad innebär det? En Agile-process i detalj XP ACSD och Agile Är Agile och XP användarcentrerade? 1

Repetition: Vad går fel i systemutvecklingen? Dålig användbarhet CHAOS Levereras aldrig eller försent Dyrare än beräknat Låg kvalitet Saknar funktioner eller har onödiga funktioner Beror bl.a. på: Svårt att planera och styra projekt Falskt funktionsrik Allting förändras verksamhet, krav, teknik Kostnaden för förändringar 2

Hur möter man problemen Olika angreppssätt genom tiderna. Mode i metoder och processsor. Sunt att vara skeptisk. Koda & fixa Ingenjörsmässiga & formella metoder Vattenfall, strukturerad programmering OO, RUP Agila metoder Vad är Agila processer? Ramverk med värden och principer för SU FDD som delas av olika metoder Crystal (Cockburn) Adaptive Software Development (Highsmith) Scrum extreme Programming DSDM (Stapledon) (Beck) 3

Agile nyckelprinciper Fungerande system före fullständig dokumentation Kundsamarbete före kontraktsförhandlingar Reagera på förändringar före att följa planer Individer och kommunikation före processer och verktyg The Agile Manifesto, 2000, agilemanifesto.org Communication Effectiveness Kommunikation är effektivast interaktivt, ansikte-till-ansikte Paper 2 people on email Videotape Richness of communication channel 2 people at whiteboard 2 people on phone 4

XP Vad ingår i en process? 5

Vad är extremeprogrammering? Rå hacking utan metod. Mer eller mindre kaotiskt. Strukturerad hacking med fokus på programmering och att leverera buggfria program. En avsiktlig och disciplinerad process för att utveckla fungerande system efter kundens önskemål (enligt XP:s förespråkare) XP bakgrund Bygger på praxis och väletablerade metoder. Kent Beck (2000) Senaste trenden i software engineering Användbarhet och ACSD är ett frågetecken 6

Målet med XP-processen Utveckla system som kunden vill ha, fungerar tekniskt och levereras när det behövs. Kan ändras efter nya och ändrade kundkrav även sent i projektet Dvs vi reducerar riskerna med en process som är Enkel & lätt, Snabbrörlig & anpassningsbar och rolig för projektgruppen Vad är extremt? Välkända arbetssätt praktiseras till det extrema Test är bra testa hela tiden, testa före kodning. Låt användarna testa (enhetstest, testa-först, funktionell test) Kodgranskning är bra granska kod hela tiden (parprogrammering) Iteration är bra arbeta i extrema iterationer (planeringsspelet) Enkelhet är bra enklast möjliga lösning som fungerar (refaktorering) Prata med användare är bra låt användare och utvecklare dela rum. 7

Fyra Värden Gemensam värdegrund med andra Agile-metoder. 1. Kommunikation 2. Enkelhet 3. Återkoppling 4. Mod Grundläggande aktiviteter i processen Kodning Kod är den enda nödvändiga artefakten. Testning Det som inte kan bevisas fungera i tester fungerar inte heller. Lyssna programmerare vet inget om verksamheten. Designa arkitektur och kod. 8

XP-processen i praktiken Ett system utvecklas iterativt inkrementellt, dvs fungerande system levereras stegvis med mer och mer funktionalitet. Varje sådan fas i utvecklingen kallas en leveranscykel (release cycle) och pågår 3-4 månader. Användarberättelser (user stories) Något som kunden vill att systemet ska göra. Berättelser ska vara testbara (Beck 2000). 9

Användarberättelser - exempel Brygg kaffe När man startar bryggning, koka vattnet tills klart Håll kaffet varmt #1 #2 När kannan innehåller kaffe, sätt på värme. När kannan är tom, stäng av värmen. När kannan tas bort, stäng av värmen Avbryt bryggning om kannan #3 tas bort, stoppa vattnet, stäng av värmen. Om kannan sätts tillbaka, fortsätt bryggning Planeringsspelet (the planning game) Story card 10

Estimera & prioritera användarberättelser Övning: användarberättelser Tvättmaskin Användare: Skriv några user stories för de viktigaste funktionerna Programmerare: Uppskatta tid (ideal programmeringstid) Användare: Prioritera Båda: Åtagande, vilket system får man efter varje 2-veckors iteration Fundera över Hur kan berättelserna användas? Kan de användas? Vad säger de om användarns behov Skillnader jämfört med use cases & krav 11

Iteration 12

Frälsningen är här? XP Är Agile / XP en användarcentrerad process? For me, UCD is an iterative process whose goal is the development of usable systems, achieved through involvement of potential users of a system in system design. Karat, J. (1996) 13

Technology-driven design vs. user-centered systems design Technology-driven design philosophy Technology/developer-driven Component focus Individual contribution Focus on internal architecture Quality measured by product defects and performance (system quality) Implementation prior to usability validation Solutions are directed by functional requirements Var befinner sig XP? User-centered systems design philosophy User-driven Solution focus Multidisciplinary teamwork including users, developers, customers, usability experts Focus on usability attributes: effectiveness, efficiency and satisfaction Quality defined by usability (quality in use) Implementation of user-validated solutions only Understanding the context of use: user, work task, work environment Var är användaren? 14

Är Agile användarcentrerat? Nej? Nackdelar: Fokus på kodning, teknik och att leverera program, men saknar explicit fokus på användbarhet och ACSD. Involverar kunder, inte nödvändigtvis representativa användare Små inkrement - ingen helhetssyn på design av interaktionen Är Agile användarcentrerat? Ja, kanske? Fördelar: Krav i användarberättelser, skrivs av användare Direkt kommunikation med användare Prototyper & enkla designrepresentationer Iterativt & inkrementell utveckling Kontinuerlig test & utvärdering av riktiga system av utvecklare och riktiga användare Förändring är möjligt & naturligt Anpassningsbar process 15