Scrumin käyttö ketterässä sovelluskehityksessä

Samankaltaiset tiedostot
Avointen ohjelmistojen käyttö ohjelmistokehityksessä

Ohjelmistoprojekteista. Datanomiopiskelijat 2.vuosi

Scrumjatkuvan palvelun DWprojektissa-case. Niina Mäkiranta & OP-scrum-tiimi Aureolis Oy

Scrum is Not Enough. Scrum ei riitä. Ari Tanninen & Marko Taipale. Nääsvillen oliopäivä 2009 Tampereen teknillinen yliopisto 9.12.

Tapahtuipa Testaajalle...

Siirtyminen ketterien menetelmien maailmaan! Maarit Laanti 24 October 2013!

Ketterä projektinhallinta

Ohjelmistoprojekti projektipäällikön näkökulmasta

Tutkittua tietoa. Tutkittua tietoa 1

Kun scrum ei riitä - skaalaa ketterä tuotekehitys SAFe lla Nestori Syynimaa Sovelto Oyj

Lyhyt johdatus ketterään testaukseen

Ketteryys pähkinänkuoressa. Kokopäivän Scrum-kurssin sisältö tislattuna ja tiivistettynä kolmeen varttiin

KOODAAKO PROJEKTIPÄÄLLIKKÖ?

Ketterä vaatimustenhallinta

ja -kehitysmenetelmistä Jyri Partanen, QA Manager Sulake Corporation

Ohjelmistoprosessit ja ohjelmistojen laatu Ohjelmistoprosessit ja ohjelmistojen laatu (4op)

1. Oppimisen ja opettamisen haasteet

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS Ti Kandidaatintyö ja seminaari

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS CT10A Kandidaatintyö ja seminaari


Kokemuksia yritysarkkitehtuurista

Projekti toteuttaa muutostarpeen

Yrittäjäkasvatuksen polku - sivusto. Yksityiskohtainen suunnittelu Huhtikuu 2018

Ketterämpi Sonera Matka on alkanut!

Scrumin käyttö sovelluskehitysprojektissa - Case: Oy Samlink Ab:n sähköisen työpöydän pilottiprojekti

KÄYTETTÄVYYSTESTAUS OSANA KETTERÄÄ KEHITYSTÄ

Ketteryys kokeilemalla. Leo Malila Kehittämispäällikkö, Kela

@Tampereen Testauspäivät ( )

PROJEKTINHALLINTA. Käyttäjälähtöinen suunnittelu

10 v. työkokemus teknologiaprojekteista, tiiminvedosta ja agile menetelmistä.

Lean Start-up Canvaksen käyttäminen projektisuunnittelussa

Ohjelmistutuotanto. Luento

Mira Grönvall ja Rami Lehtinen

SAFe menestystarina - Case Osuuspankki

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri

15224 standardi johtamisen ja laadukkaan työn tukena auditoijan näkökulma YTL Merja Huikko

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

JULKISTEN PALVELUJEN ELINKAARI; HYVÄ PALVELU EILEN, TÄNÄÄN, HUOMENNA MIHIN PALVELUT OVAT MENOSSA? Lauri Helenius, Solita Oy

IT2015 EKT ERITYISEHTOJA OHJELMISTOJEN TOIMITUKSISTA KETTERIEN MENETELMIEN PROJEKTEILLA LUONNOS

R U B I C H R F I N L A N D O Y K U M P P A N I S I D I G I T A A L I S E S S A M U U T O K S E S S A

Uudelleenkäytön jako kahteen

UCOT-Sovellusprojekti. Testausraportti

Ketterät menetelmät ja julkinen hankinta

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

Multisite -projektit uhasta mahdollisuus? Johtamiseväitä projektipäällikölle

Käyttäjätarinat perinteisessä hankkeessa. Sisältö ja käytännöt

Ohjelmistotuotanto. Luento

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

Lakki. Lisää ot sik k o osoit t am alla. Nöyrästi vain lakki kourassa... Jussi Vänskä Espotel Oy. vierailuluentosarja OTM kurssi 2010

Lohtu-projekti. Testaussuunnitelma

Sopiiko ketterät mallit joka paikkaa? K I M M O K E R Ä N E N

Helia Ohjelmointitaito Tuomas Kaipainen Mermit Business Applications Oy Mermit Business Applications

OpenUP ohjelmistokehitysprosessi

Scrum ja.net ohjelmistokehityksessä

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä

Työkalut ohjelmistokehityksen tukena

Ansioluettelo, Rauno Inkinen IT-asiantuntija. Esittely. Hei,

Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen:

Liite 5. Tuote- ja palveluhinnasto

Onnistunut ohjelmistoprojekti

Project group Tete Work-time Attendance Software

Millainen osaaminen saa uudet yritykset siirtymään Tampereelle?

Tapaustutkimus: Soveltuuko Scrum vesiputousmallin korvaajaksi yrityksen sovelluskehitysprojekteihin?

Yrityksen juoksevat asiat. Lyhyt keskustelu nykyisen yrityskulttuurin vahvuuksista ja heikkouksista.

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Testiautomaatio tietovarastossa. Automaattisen regressiotestauksen periaate ja hyödyt

CT50A2601 Käyttöjärjestelmät Androidin ja Symbianin vertailu Seminaarityö

Kahdeksan vuotta oppimisratkaisujen kehitystä Lean-projektinhallintakäytännöillä ( RePa )

Ohjeistus kouluttajille

PROJEKTI- PÄÄLLIKÖSTÄ PRODUCT OWNERIKSI MEERI CEDERSTRÖM

Kokemuksia eri projektityyppien haasteista/sudenkuopista toimittajayhteistyön näkökulmasta. Pekka

Case TUHTI. Projektin tunnuslukuja. ! Suuri perusjärjestelmäuudistus! Työt alkoivat kesällä ! Java luokkia n. 5000

.NET 2006 ja sen jälkeen

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Hankinnan problematiikka

Toiminnallisen määrittelyn tarina. Esimerkki Reaktorin tavasta tehdä toiminnallista määrittelyä.

Globaalisti Hajautettu Ohjelmistokehitys Mitä, Miksi & Miten? Maria Paasivaara

PLA Mobiiliohjelmointi. Mika Saari

58160 Ohjelmoinnin harjoitustyö

Projektinhallintapäivä , Tampere Poimintoja koulutusnäkökulmasta

Onnistunut ohjelmistoprojekti

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

PROJEKTINHALLINTA. Käyttäjälähtöinen suunnittelu

Newsletter Manager Extensions - Loppuraportin tiivistelmä

Scrum-käytännöt ja käyttäjäkokemustyö ohjelmistoalan yrityksessä. Marie-Elise Kontro

ESITUTKIMUS. Polku Versio 0.1. Projektiryhmä

OppiScrum opintojen läpäisyasteen ja oppimisen omistajuuden edistäjänä

Miksi ketterä kehittäminen toimi kela.fi:ssä

HENKILÖKOHTAINEN NÄYTTÖSUUNNITELMA

Kuumemittarilla tietoa. Sanna Leppänen, Fujitsu Services Oy Kimmo Matero, Widisys Oy

LASKUAUTOMAATIORATKAISUIDEN VERSIOPÄIVITYS ICT-STRATEGIA LIIKETOIMINNAN KEHITYKSEN YTIMESSÄ 2011 KERKKO KÄMÄRÄINEN

Projektin suunnittelu. Pienryhmäopetus - 71A00300

Osaamisen hallinnan palvelu ja SAP Success Factorsin käyttöönotto. Tilaisuus klo 9-11

CS-C2130 / CS-C2140 / CS-E4910 Software Project 1 / 2 / 3 ja Accenture Luento

Harjoituskoe Vastaukset. ISTQB Ketterä testaaja 2015 Perustason sertifikaattisisällön laajennus

Ohjausryhmän six-pack

13/20: Kierrätys kannattaa koodaamisessakin

SUBSTANTIIVIT 1/6. juttu. joukkue. vaali. kaupunki. syy. alku. kokous. asukas. tapaus. kysymys. lapsi. kauppa. pankki. miljoona. keskiviikko.

Järjestelmäarkkitehtuuri (TK081702) Avoimet web-rajapinnat

Transkriptio:

Scrumin käyttö ketterässä sovelluskehityksessä 9.4.2008 Janne Kuha Manager, Java Services Descom Oy Janne Kuha Manager, Java Services janne.kuha@descom.fi Kuka? Descom Oy:llä, sitä ennen Wanadu Inc., Mountain View, CA, US 1

Descom? Liiketoiminta aluuet Lotus Notes/Domino Java/Java EE Portlet/Portal development Support Services Toimittanut yli 250 sovellusta, joilla yli 600 000 käyttäjää kuudella mantereella. Perustettu 1997 2006 liikevaihto n. 5.5M Noin 50 työntekijää IBM Premier Business Partner Viimeaikoina Vuoden 2006 IBM ohjelmistokumppani Jyväskylän vuoden yrittäjä 2007 Scrumin käyttö ketterässä sovelluskehityksessä 9.4.2008 Janne Kuha Manager, Java Services Descom Oy 2

Sisältö Mitä on Agile? Agile menetelmien tunnusmerkkejä Agile vs. perinteinen Scrum Roolit Välineet Prosessin eteneminen Sprint Päivittäinen Scrum palaveri Scrum visualisointi Testauksen merkitys alusta lähtien Haasteet MITÄ ON AGILE? Varmaankin useimmat kuulleet Agile menetelmistä, usein suomennettu termillä ketterät menetelmät. Agile Manifest (vapaasti suomennettuna) korostaa: Yksilöitä ja vuorovaikutusta enemmän kuin prosesseja ja työkaluja Toimivaa ohjelmistoa enemmän kuin kattava dokumentaatiota Yhteistyötä asiakkaan kanssa enemmän kuin sopimusneuvotteluita Muutoksiin vastaamista enemmän kuin suunnitelman noudattamista Vaikkakin oikealla olevilla asioilla on arvoa, me arvostamme vasemmalla olevia asioita enemmän. 3

Agile menetelmien tunnusmerkkejä Useimmissa menetelmissä on myös määritelty, että sovelluskehitys on iteratiivista, vaikka sitä ei erityisesti mainitakaan Agilemanifestissä. Asiakas määrittele mikä on hänelle tärkeintä. Läheinen yhteistyö asiakkaan kanssa. Matala organisaatio suhteessa projektitiimiin. Suhtautuminen t muutoksiin toteutustiimin t t tii i puolelta. llt Agile menetelmät (ainakin Agile manifestin mukaiset) puolestaan ottavat sen näkemyksen, että muutoksia tulee ja ne hyväksytään osana projektin etenemistä. Agile vs. perinteinen Ero Agile menetelmien käytöstä verrattuna perinteisempiin ohjelmistokehitysmenetelmiin on, että Agile menetelmiä käytettäessä rajalliset resurssit suunnataan sinne, missä niistä on eniten hyötyä. Käytännön tasolla siis toimiva ja laadukas ohjelmisto on se mihin keskitytään ja kaikki epäoleellinen pyritään jättämään pois. Ei tietenkään tarkoita, että asiakasvaatimuksista joustetaan (esimerkiksi dokumentaatio). 4

Scrum Tarjoaa hyvän lähtökohdan ja kehyksen sovelluksien kehittämisellä ottamatta liikaa kantaa siihen mitä työkaluja tai millä tavalla erityisesti sovelluksia kehitetään. Voidaan yhdistää muihin ketteriin sovelluskehitysmenetelmiin, joista tunnetuin extreme Programming. Scrum on sovelluskehitysmalli, jonka tarkoituksena on tarjota sovelluskehitysprojektista asiakkaalle paras mahdollinen hyöty. Muutoksiin vastaaminen. Scrum tarjoaa oivan pohjan sille, miten vaatimukset priorisoidaan ja miten sovelluksen kehittäminen etenee. Suomessa eniten Scrum osaajia suhteessa väkilukuun. Scrum roolit Product Owner Tekee päätökset projektin prioriteettien suhteen. Määrittelee vaatimukset. Yleensä asiakkaan edustaja Scrum tiimi Yhdessä Product Ownerin kanssa määrittelevät Sprinttien sisällöt. Tiimi on itseorganisoituva ja yhteinen vastuut tuotoksista. Scrum Master Toimii valmentajana tiimille. Huolehtii, ettei tiimin työlle ole esteitä. Eri asia kuin projektipäällikkö 5

Scrum välineet Product Backlog Lista sovelluksien kaikista toiminnallisuuksista, jotka halutaan toteuttaa. Toisin sanoen sovelluksen toteuttamattomat asiat. Yleensä sitä karkeammalla tasolla, mitä pidemmällä tulevaisuudessa asiat ovat. Sprint Backlog Lupaus siitä, mitä toteutustiimi aikoo toteuttaa seuraavan Sprintin i aikana. Sisältää tarkempiin osiin jaettuna Product Backlogista valitut asiat. Seurataan yleensä Sprint Burn Down graafin avulla. Molemmat priorisoituja listoja Vaiheet Product Backlogin luonti Sprint Planning Sprintit n kappaletta Päivittäinen Scrum palaveri Tuotoksien esittely Sprint Review Prosessin eteneminen 6

Sprint Yleensä noin neljän viikon (2 6vk) pituinen iteraatio, jonka aikana on tarkoitus kehittää sovellukseen joku joukko ominaisuuksia. Tehtävät toteutetaan prioriteettijärjestyksessä Sprintin jälkeen sovellus tulisi olla vietävissä tuotantoon, ts. (Kaikki) tehtävät toteutettu ja tiedossa Asiakkaan hyväksymä Testattu Dokumentoitu Valmis tuotantoon Ennen ja jälkeen Sprint Planning ja Sprint Review Päivittäinen Scrum palaveri Yleensä päivän alussa lyhyt palaveri, jonka avulla kyseisen päivän sisältö tulee kaikille selville. Pyritään kunkin osalta vastaamaan kolmeen kysymykseen Mitä teit eilen? Mitä teet tänään? Oliko esteitä, ongelmia tai haasteita? Palaverissa ei kuitenkaan pyritä ratkaisemaan näitä ongelmia. Kesto maksimissaan 15 minuuttia. 7

Scrum visualisointi Projektin tilan selvittäminen Burn Down graafi on helppo tapa seurata 100 projektin etenemistä 90 80 yleisellä tasolla. 70 60 Usein kullakin tiimillä on 50 40 oman tyylisensä graafi, joka 30 20 toistuu sprintistätoiseen. Scrum Burn Down graafi 10 0 1 2 3 4 5 6 7 8 9 10 Peruslinja Työmäärä jäljellä Testauksen merkitys alusta lähtien Useat Agile menetelmät myös määrittelevät, että laatu pitäisi rakentaa sisään sovellukseen, eikä jättää loppuun esimerkiksi testausvaiheeseen. Asiakkaan tarpeisiin vastaaminen ei siis voi myöskään onnistua puolivillaisella toteutuksella. Joka tapauksessa ohjelmiston ensimmäisessä versiossa tulee olemaan virheitä, oli testausta kuinkapaljon tahansa. 8

Haasteet Suomalaisessa liiketoimintakulttuurissa on usein se valitettava oletus, että asiakkaan riskien minimoimiseksi asiakkaan tulisi ostaa ohjelmistoja kiinteillä tarjouksilla. Kiinteä tarjouksia (fixed bid) on tietysti monenlaisia, mutta tässä kirjassa sillä tarkoitetaan tarjousta jolla kiinteät vaatimukset, kiinteä hinta ja usein vielä kiinteä aikataulu. Tarjouksessa on määritelty jollakin tasolla alustavat vaatimukset ja asiakas vaatii että toteuttava ohjelmistoyritys vastaa tarjoukseen sitovalla kustannusarviolla ja aikataululla. Muutoksia tulee joka tapauksessa. Kirja tulossa ;) Tehokas Java EE sovellustuotanto sovelluskehykset, kehitysmallit ja agileperiaatteet. Teos on suunnattu sovelluskehittäjille, jotka hallitsevat Java kielen perusteet ja joilla on halu siirtyä seuraavalle tasolle. Teos pohjautuu ketteriin (Agile) periaatteisiin ja sovelluskehyksiin, joiden avulla Java EE sovelluksia voidaan rakentaa ammattimaisemmin. Tietokantojen tehokas käsittely (mm. Hibernate ja Java Persistence API) Sovelluslogiikan rakentaminen (mm. Spring Framework Web palveluiden rakentaminen (mm. Wicket) Testaus (JUnit) Tärkeät kehitystyökalut (Maven, Eclipse ja Subversion) Docendo / WsoyPRO 9