Tema: Test First Positivist: Det som ikke kan måles, eksisterer ikke! Reduserer sjanser for defekter Gir en oppdatert ”TODO-liste” Gir trygghet til å gjøre.

Slides:



Advertisements
Liknende presentasjoner
Hva er de største problemene med softwareprosjekter?
Advertisements

TDD over BDD why and how XP meetup Johannes Brodwall, Programming artist Steria Norway.
Kan arbeidsmetodikken i IT-prosjekter overføres til rådgiverene ? VIANOVA Network Meeting 2013 Geir Andersen/Vianova Systems AS.
Uke 10 - Sortering, og hvordan lage en klasse for et klassebibliotek 21 okt. 2003, Arne Maus Inst. for informatikk, UiO.
Copyright © 2009, CIBER Norge AS 1 Scrum i ikke-utviklingsprosjekter Mario Aparicio.
Test-Drevet Utvikling Bowling med
Elementer av en utviklingsprosess
Nærhet, Kunnskap, Engasjement Smidige prosjekter... halleluja! …men hvor blir det av kunden? Erik Mong, Know IT Objectnet AS.
Smidig forvaltning – En pragmatisk tilnærming
Kontrakter i Smidig systemutvikling
Test-Drevet Utvikling Bowling med extremeprogramming.no.
Mesteparten av ketsjupen er fremdeles i flasken Geir Amsjø agile42.
Prosjektmedlem Lars-Erik Kindblad, s Prosjektmedlem Lars-Erik Kindblad, s
Hvordan gjøre mer med å gjøre mindre!
© PROGRAM UTVIKLING as Vellykkede prosjekter leverer hyppig Johannes Brodwall, Steria Chief Scientist, Utvikler, Arkitekt, Sertifisert ScrumMaster.
Tema: Introduksjon Hvorfor Velocity? Installasjon Velocity VS. JSF / JSP Eksempler Oppsumering.
Gruppe 9 Design evaluering og validering.
Grunnleggende testteori
1 KravprosessenKravprosessen Noen sentral punkter.
Patterns (mønstre) Patterns er erfaringer Patterns er best-practices Patterns er how-to Patterns er velkjent design Larman: ” ’new Pattern’ is an Oxymoron”
Hovedprinsipper i Rational Unified Process
Bendik Bygstad Høgskolen i Vestfold RUP-prosjekt Sammenhengen med UML 1.Hovedstruktur i RUP-prosjekter 2.Faser og iterasjoner 3.Sammenhengen med.
Patterns (mønstre) Patterns er erfaringer Patterns er best-practices Patterns er how-to Patterns er velkjent design Larman: ” ’new Pattern’ is an Oxymoron”
Empiriske metoder Oppgaveanalyse, observasjon
Mange IT-prosjekter kunne med fordel vært drevet mer som en Lean Startup.
Iterate.no The Lean Software Development Consultancy Prolog: Case 2 ‣ Et prosjekt fra gamledager ‣ Prosjektleder sa “Godt nok!” ‣ Kunden sa “Hva?? Skal.
Når ble pragmatisk slukt av Smidig ? Joachim Haagen Skeie, Smidig 2011.
Hva har Karl Marx, Henry Ford og Smidig til felles?
Improving Products Gruppe Presenteres av : Hege-Kristin Johansen Herman Kolås Marianne Ates Marit Finden Jonas Lillevold André Johansen Tom.
Automated Testing Tool & When to Stop Testing
Object Oriented Measurement
Velkommen Tema: Prosjektretrospektiver Johannes Brodwall
Smidig-workshop for Agresso
  © Steria Å Lytte til koden Johannes Brodwall, Chief scientist, Steria Statkraft 16. april, 2010 Du kan lytte til koden.
  © Steria Å Lytte til koden Johannes Brodwall, Chief scientist, Steria Iterate 21. mai, 2010.
Arkitektur og smidighet
Tema: Test First Positivist: Det som ikke kan måles, eksisterer ikke! Reduserer sjanser for defekter! Gir en oppdatert ”TODO-liste” Gir trygghet til å.
1. Vår høyeste prioritet er å tilfredsstille kunden gjennom å levere et verdifullt, kjørende system tidlig og kontinuerlig.
Hvordan gjøre FINN.no raskere?
Prosjektbase for Vox – et fleksibelt IT-prosjekt (case fra virkeligheten) NSP Temadag 18.februar 2004 Ola Grumstad, PMP, Daglig leder HolteProsjekt Solutions.
Scrum er noe helt annet enn det vi har trodd Dagfinn Reiersøl.
kunder i aktive prosjekt/forvaltning, 6 interne product owner proxys, to team og tre backlogger – kan det likevel ligne på Scrum? Kristin Wulff,
Tema: Prosjektretrospektiver
Onsdag 13. mars Sam Eyde vgs
VI LAGER EN PLATEBUTIKK
Hvorfor bruke tid på testing ?
Å omfavne forandringer med ekstrem programmering(XP) Brukt i In140 Skrevet av Ola Bø Bygger på Kent Becks artikkel "Embracing change with extreme programming."
Eziz Annagurban Veiledere: Sven-Olai Høyland Carsten Helgesen
Kontinuerlig kvalitetskontroll. Hvordan komme helt i mål.
PUG-NORWAY OKTOBER 2008 THOMAS SKJØRTEN, HILDE ANDREASSEN UML og OpenEdge OOABL.
Maintenance problems - Measuring Maintenance characteristics Software Engineering Gruppe 2 Carl-Erik Herheim Leendert Wienhofen Thomas Julsen Kjartan Haugen.
Prosjektledelse In 140 Forelesning Nr 18 a Sommerville kap
BUCS Utfordringer og valg av fokus Tor Stålhane. Rammebetingelser Første spørreundersøkelse viser at det vi gjør må kunne: Brukes sammen med UML Passe.
De 222 mest brukte ordene i det norske språket..
JIRA dreper smidigheten din
Kapittel 1.4 Modul I Kvalitetsledelse
Object  Klassen i java  Alle klasser arver fra denne om ikke noe annet blir spesifisert  ArrayList.add(Object instans)  Alle elementer formes til Object.
Kap. 23 – Software Engineering How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A. Olsen,
Digital bestillingsprosess for Armering, direkte fra modell
Title: «How to use different tools and/or machines in the workshop»
Hva er XP ? Ikke ekstrem, men heller meget forsiktig
Game Design (spilldesign Våren 2018)
Design driven Innovation Programme (DIP)
Dagfinn Bergsager Universitetet i Oslo SMIDIG 2016
Hovedfunn: (uttrekk) Dokumentasjon av kvalitet Kartleggingsundersøkelse Nasjonal platform for ledelse Kun 40% opplever at eget foretak evner.
Eksamen i INF5261: Utvikling av mobile systemer og tjenester
Hvordan få forståelse for smidige metoder i organisasjonen – eller Mellommenneskelige og ”myke” utfordringer i smidige prosjekter Vidar Moe, mars 2006.
IN3030 – Effektiv parallellprogrammering Uke 1 2. del, våren 2019
- Endelig forslag til ønsketsituasjon
Utskrift av presentasjonen:

Tema: Test First Positivist: Det som ikke kan måles, eksisterer ikke! Reduserer sjanser for defekter Gir en oppdatert ”TODO-liste” Gir trygghet til å gjøre senere endringer Tvinger fram et lavere koblet design  Forbedrer designet rett ut fra startgropen Gir ”Just-in-Time” Analyse

Tema: Tester De beste testene tester enheter Dersom testene ikke har fanger nok feil: Oppnevn en prosjekt-sabotør (test testene) Dersom feil oppstår i senere i prosessen Kartlegg hvilken enhet som oppfører seg feil Introduser tester som verifiserer mot dette Påvis feilen med enhetstest før rettning For å teste at en klasse kaller de riktige metodene på en annen: Bruk ”Mock objects” for å teste rekkefølgen på kallene

En enkel test /** Verify that modify updates indexes. */ public void testModifyKeyField() throws DatabaseException { populateDatabase(10, "hello", "world"); final String oldKeyName = "hello8"; final String newKeyName = "goodbye7"; DataInfo record = db.find(oldKeyName); assert(record != null); record.getValues()[0] = newKeyName; db.modify(record); assert(db.find(oldKeyName) == null); assert(db.find(newKeyName) != null); }

Tema: Spikes Hva gjør man dersom man skal estimere hvor lang tid det vil ta å lage et hull i isen? Slår en tynn stake gjennom den Spike er et lite program som lages for å teste noe og som så kastes Typer: Performance Spike (gjør kall mot webserveren) Arkitektur Spike Estimerings-spike (for å vite mer om hvor lang tid noe kommer til å ta)

XP & Design XP gjør ikke en stor designjobb på forhånd XP fokuserer på Enkelhet Betyr dette at XP er ”imot design”? NEI!: Istedet designer man når man vet hva man skal designe Et enkelt program betyr det dette er mulig Grundig testing gir trygghet Et design som ikke er uttrykket i kode eksisterer ikke! Et design som ikke utvikles kontinuelig smuldrer opp

Tema: Refactoring Ideal: Programmet skal: Passere alle tester Si alt som må sies Ikke gjenta seg selv Ha færrest mulig klasser og metoder Refactoring beskriver en bevegelse i denne retningen Understøttes av enhetstestene Angriper ”code-smells” (Ender ofte opp på Patterns)

Tema: Planlegging User Stories gir en uformell beskrivelse Samtale med kunden gir mer utfyllende info Akseptanse-tester verifiserer forståelsen Dette er primær tilbakemelding til kunden Forrige iterasjoner gir Project Velocity (Starter på 1 User Story enheter/3 person- uke) Engineering Tasks gir uformelle TODO Daglige Stand-up møter viser status Et prosjektmedlem bør være ”Tracker”

Tema: XP og CMM CMM er ikke en prosess, men et prosess- forbedrings rammeverk XP fokuserer på mange av de samme tingene som CMM: Kvalitetsikring, metoder, måling, forbedring XP passer relativt bra inn i CMM rammeverket For mer info – se

Tema: XP og CMM, level 3-5 SEI Level Three – Defined XP Passer som hånd i hanske 12 extreme practices User Stories + Tester SEI Level Four – Managed Flere kvantitive målinger og mål kan trenges SEI Level Five – Optimizing Når defekter oppstår, skriver man tester for å demonstrere dem

Cost of Anticipatory Design Invested Cost and Design Complexity Time ’A’ needed’B’ needed Cost of A Cost of B

Tema: Parvis Programmering To programmere sitter ved samme maskin Den med tastaturet tenker kortsiktig (sjåfør), den andre tenker langsiktig og gir konstant review (kartleser) Rollene byttes ofte Parene rokeres ofte (oftere enn daglig)

Tema: The Agile Alliance Fra We value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan Stiftet februar i år Samler blant annet SCRUM, FDD, DSDM, XP, Crystal under en paraply

Tema: XP og dokumenter Et dokument som produseres må enten: La utviklingen gå raskere, (eksempel: Kommuniserer programmet til nye prosjektmedlemmer), eller Være ønsket av kunden, og satt av tid for i iterasjonsplanen Det vil si: Dokumentasjon stiller på samme linje som program som en leverbar enhet

Tema: Iterativ utvikling Mange prosjekter er 90% ferdig i 90% av sin levetid Integrasjon og testing er uforutsigbare – dvs. høy risiko Generelt: Mangel på feedback -> høy risiko I XP er en iterasjon en timebox på 1-4 uker (2 uker anbefales) Funksjonalitet som ikke er levert fullstendig ved slutten av en iterasjon regnes som ikke levert Brukes til tracking og estimering Synliggjør prosjektutviklingen

Tema: Akseptansetester Tester at en User Story er levert Formål: Kunden må ha tillit til at ønsket funksjonalitet faktisk er tilstedet Kan være manuelle, men automatiske tester er alltid et stort pluss! Kan skrives av: Kunde Programmerere under kundes kontrol Et eget QA team under kundes kontrol

Ting som ikke er med XP som Just-In-Time metodikk Er XP nytt (naturligvis ikke) Er XP stabilt (naturligvis ikke – f.eks. The planning game er nå vurdert til å være for kompetiv) Steve McConnell: Lack of quality is what is driving the cost up! Steve McConnell: Good people is an important driver for project success?

The Planning Game Kunder og utviklere finner ut hva som skal lages ”Business people make business decissions, technical people make technical decissions” Resultat: Release-plan Ved hver iterasjon bestemmer kunden hva som skal være med User Stories: Estimerbare biter funksjonalitet