Lean MITEN POISTAA TURHA, OPPIA JA KESKITTYÄ OLENNAISEEN

Samankaltaiset tiedostot
Tuotemestari Ideoista todellisuutta. Reittiopas omaan maailmanvalloitukseen

AAN-A avp.aalto.fi. Yrittäjyys Aallossa Håkan Mitts

Hajautettu versionhallinta Gitillä

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

Testauksen tuki nopealle tuotekehitykselle. Antti Jääskeläinen Matti Vuori

Siirtyminen ketterien menetelmien maailmaan! Maarit Laanti 24 October 2013!

Toimiva työyhteisö DEMO

Jamk Innovointipäivät

TT00AA Ohjelmoinnin jatko (TT10S1ECD)

Start Upit ja TEKES: Start Up yrittämisen tuska ja ihanuus Mariachi Kasvattamo kokemuksia

Onnittelut PC SpeedCAT perheeseen liittymisestä

Grand Challenges. Smart Start-Ups? Ny Start Up erto örnberg

BISNEKSEN TAVOITTEET JA RAJOITTEET

statbeatmobile PROJECT REVIEW iteration 1

Onnistunut ohjelmistoprojekti

Facebook koulutus. Kalle Rapi Etelä-Karjalan kylät ry

Lean johtaminen ja työkalut. Työpaja

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Onnistunut ohjelmistoprojekti

Automaattinen yksikkötestaus

Reflektoiva oppiminen harjoittelussa Insinööritieteiden korkeakoulu

Kuinka helpottaa suurten projektien tuskaa pilvipalveluilla?

Automaattinen regressiotestaus ilman testitapauksia. Pekka Aho, VTT Matias Suarez, F-Secure

Markkinoinnin automaatio Lyhyt esittely. Artem Daniliants / LumoLink Digital Oy

Muistitko soittaa asiakkaallesi?

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Mihin kaikkeen voit törmätä testauspäällikön saappaissa?

Ympärillämme olevat tilaisuudet ovat toiselta nimeltään ratkaisemattomia ongelmia

Minea Ahlroth Risto Havunen PUUN JA KUOREN VÄLISSÄ

DOB-Datasta oivalluksia ja bisnestä valmennuskurssi. Palvelu- ja asiakaslogiikkaan perustuva liiketoimintamalli

Yhteisöllisen tuotekehyksen avoin verkkolaboratorio. Asta Bäck

KIELENOPPIJOITA TIEDONHANKINTA KESKIÖSSÄ KUUNTELEMALLA OPPIJA (AUDITIIVINEN) KIELEN KÄYTTÖ, VUOROVAIKUTUS NÄKEMÄLLÄ

Miten asiakas tekee valintansa?

Alkukartoitus Opiskeluvalmiudet

Työkalut ohjelmistokehityksen tukena

Test-Driven Development

SYSTEEMIJOHTAMINEN! Sami Lilja! itsmf Finland 2014! Oct ! Kalastajatorppa, Helsinki! Reaktor 2014

3. Ryhdy kirjoittamaan ja anna kaiken tulla paperille. Vääriä vastauksia ei ole.

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu

Näin suunnittelet ja rakennat oman verkkokurssin. Työkirja. TiiaKonttinen

Testauksen hallintaa teekkareille (ja muille kiinnostuneille) Arto Stenberg

Asiakastuntemus markkinoinnin ja myynnin ytimenä Katri Tanni & Kati Keronen

Test-Driven Development

Reflektoiva oppiminen harjoittelussa Insinööritieteiden korkeakoulu

Rakensimme myynnille jo omansa, joka toimii. Nyt on huollon vuoro. HUOLLON VALMENNUS- OHJELMA. yhteistyössä:

Projektin suunnittelu 71A00300

10 TAPAA KÄYTTÄÄ IDEASEINÄÄ

Tutkittua tietoa. Tutkittua tietoa 1

Ohjelmistotekniikka - Luento 2

Tapahtuipa Testaajalle...

Valitusten, riitautusten ja maksunpalautusten ratkaiseminen. Välillä jotain menee pieleen tilauksessa. Haluamme auttaa sinua, jos näin käy.

Ihmisten johtaminen, itsensä johtaminen ja organisaatiokulttuurin muutos

Testataanko huomenna?

Käyttäjätietojen hallintaratkaisujen arkkitehtuurin tehostaminen. Juha Kervinen Lead Architect, Trusteq Oy

Onko asiakas meille tärkeä? Yrityksen asiakaskeskeisyyden nykytilan kartoitus

Kokemuksia ohjelmistokehityksestä. Kai Kulju & Heikki Naski

Sähköisen markkinoinnin viisi kultaista sääntöä eurooppalaisten operaattoreiden silmin

4 ensimmäistä sähköpostiasi

Microsoft Dynamics CRM 4.0. Jani Liukkonen

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

REALTIME CUSTOMER INSIGHT Wellnator Oy

Kahdenlaista testauksen tehokkuutta

B U S I N E S S O U L U

Kilpailija-analyysi - markkinatilanne

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

Pedamuotoilulla opintojaksosta koulutuspalvelu-tuotteeksi

Näkyvyys nousuun hakukoneoptimoinnilla

Tehtävälista digitaalisten palvelujen kehittäjälle. Helsingin kaupunki - Digitaalinen Helsinki -ohjelma 2017

Start-up -firman pitkä taivallus julkaistuun PC-peliin

RIPPIKOULUTEHTÄVÄ 2019

Projektityö

Vaikuttava viritys Tavoitteet Toiminta Tulokset

Hanna Åström Lean coach, lean methodology The Rural Economy and Agricultural Society of Halland

DIGITAALISEN PALVELUPOLUN ETENEMISOPAS

Tekesin rahoitus nuorille yrityksille. Jaana Rantanen

Ohjelmistojen laadun parantaminen refaktoroinnilla Simo Mäkinen Tietojenkäsittelytieteen laitos Helsingin yliopisto

3. Arvot luovat perustan

Mistä ponnistan? oman elämän ja taustojen selvittämistä rippikoulua varten

Vaikuttavuutta hanketoimintaan yhdessä tekemällä ja toisia osallistamalla. Omia näkemyksiä ja kokemuksia kehittämisestä ja kehittämisen johtamisesta

A n ttoni Ke r k ko n e n Ke s k i s u o m a l a i n e n O y j

@Tampereen Testauspäivät ( )

Projektitoiminnan muutosjohtaminen, case Suomen messut

VINKKEJÄ OPISKELUUN. Tampereen teknillinen lukio

Uskalla kokeilla -työpaja Agenda ja tehtävät

58160 Ohjelmoinnin harjoitustyö

WEBINAARIN ISÄNNÄT. Jarno Wuorisalo Cuutio.fi. Petri Mertanen Superanalytics.fi. Tomi Grönfors Brandfors.com

LAATURAPORTTI Iteraatio 1

Kirjasto ammattilaisten silmin KIRJASTOPÄIVÄT LAURA PERJO, PENTAGON INSIGHT

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

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

MITÄ KANSAINVÄLISEN MENESTYSTARINAN TAKANA?

Sote-liikelaitoksen visio ja arvot

Tarjolla tänää: Ohjelmiston toteutuksesta. Kuinka tulla hyväksi ohjelmoijaksi? CRC-kortit. Testilähtöinen kehittäminen JOT2007. Uudelleenrakentaminen

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

VERSIONHALLINTA. PARIOHJELMOINTI Lari Ahti, 62634M Antti Kauppinen, 58390D

Matopeli C#:lla. Aram Abdulla Hassan. Ammattiopisto Tavastia. Opinnäytetyö

Opas tulostamisen kustannuksien vähentämiseen

Testaajan eettiset periaatteet

Itä-Suomen yliopiston ylioppilaskunta

KirjautuminenPro+ PIKA OPAS PRO+ KÄYTTÖÖN

Transkriptio:

Lean MITEN POISTAA TURHA, OPPIA JA KESKITTYÄ OLENNAISEEN

Esityksen sisältö Mitä on Lean? Lean työskentelynä Lean Startup Lean Canvas Customer Development Minimun Viable Product

Mitä on Lean? Ajattelutapa, jonka päämääränä on poistaa toiminnasta ja prosesseista kaikki turha, jotta tuote voidaan toimittaa asiakkaalle nopeammin ja laadukkaampana. Seitsemän pääperiaatetta, joita noudattamalla ylempi pyritään saavuttamaan 1. Hankkiudu eroon turhasta 2. Tuota laatua 3. Kasvata tietoa 4. Lykkää sitoutumista 5. Tuota nopeasti 6. Kunnioita ihmistä 7. Optimoi kokonaisuus

1. Hankkiudu eroon turhasta Bugit Automatisoidut testit Ylimääräiset ominaisuudet Keskity vain siihen mitä asiakas todella tarvitsee Tiedonkulun pituudesta johtuva ymmärryksen hämärtyminen Vältä turhia tiedonkulun askeleita Odottaminen Asiakas/asiakkaan edustaja aina saatavilla Työjonot Työn keskeytykset ja siirtymiset Keskity yhteen asiaan kerrallaan Ylimääräiset prosessit Poista menettelytavat, jotka eivät tuota lisäarvoa

2. Laatua sisältäpäin Laatua ei voi tarkastaa vasta tuotannon loppuvaiheessa. Koodin testaaminen sitä mukaa kun sitä kehitetään (yksikkötestit) ehkäisee tulevien muutosten aiheuttamien virheiden läpipääsyn huomaamatta

3. Kasvata tietoa Älä toista virheitä Tiedon omistajuus Tiimin muiden jäsenten ei pitäisi joutua painimaan ongelmien kanssa, jotka olet jo ratkaissut Kaiken tiedon tulee olla kaikkien saatavilla Keksi keinoja, joiden avulla tiimi voi kasvattaa yhteistä tietoaan Kommentoi koodia kattavasti Perustele valintasi ja päätöksesi

4. Lykkää sitoutumista Tee päätökset vasta, kun tarpeeksi tietoa on saatavilla Älä kuitenkaan odota liian pitkään Odota viime hetkeen ennen kuin sitoudut peruuttamattomaan päätökseen Kasvata tänä aikana tietoa mahdollisimman paljon (tutki vaihtoehtoja, ominaisuuksia yms.) Mahdollisuuksien mukaan kokeile eri vaihtoehtoja ennen sitoutumista

5. Julkaise usein Kehitä ominaisuuksia tarpeeksi pienissä osissa Asiakkaalla on mahdollisuus nähdä ja antaa palautetta ominaisuuksista Näin myös tarvittavat muutokset ovat pieniä Lopputulos vastaa paremmin asiakkaiden tarpeita samalla, kun turhia ominaisuuksia on karsiutunut pois

6. Anna arvoa ihmisille Sitoutuneet, ajattelevat ihmiset tuottavat parhaan tuloksen Kaikilla on mahdollisuus löytää ja korjata puutteita omassa työssään ja sitä ympäröivissä prosesseissa (poistaa turhaa) Kuuntele niitä, jotka tuntevat asiansa

7. Optimoi kokonaisuus Älä keskity vain yksittäisten toimintojen optimointiin, vaan tarkastele aina kokonaisuutta

Lean työskentelynä 1. Lähdekoodin hallinta 2. Automatisoitu testaus 3. CI continuous integration 4. Vähemmän koodia 5. Nopeat iteraatiot 6. Asiakaskontakti

Lähdekoodin hallinta Lähdekoodin hallinta (Source Code Management, SCM) tarkoittaa kaiken lähdekoodin säilyttämistä yhdessä keskusrepositoryssa, joka ylläpitää jokaisen tiedoston versiohistoriaa Mahdollistaa paluun aikaisempaan toimivaan versioon, jos jotain menee rikki Mahdollistaa tehokkaan yhteistyön tiimin jäsenten välillä Keskitetyssä SCM:ssä (esim. Subversion) on yksi jaettu repository, josta kehittäjät hakevat uusimman version ohjelmistosta ja muokkaavat koodia lokaalisti omalla koneellaan ennen työntämistä takaisin repositoryyn Keskitetyssä SCM:ssä kaikki muutokset jota kehittäjä tekee paikallisesti, jäävät versioimatta. Vain SCM:ään pushatut muutokset versioidaan Hajautetussa SCM:ssä (Esim. GIT, Mercurial) kehittäjä kloonaa tai lataa kopion koko repositorysta versiohistorioineen. Hajautetussa SCM:ssä kaikki kehittäjän paikallisesti tekemät muutokset versioidaan, koska koko SCM on paikallisessa ympäristössä Jossain määrin turvallisempi kuin keskitetty SCM

Automatisoitu testaus Automatisoitu testaus on paras tapa suojata tuote virheiltä Olennainen osa laadukkaan tuotteen tuottamisessa Vähentää turhaa työtä Automatisoituun testaukseen kuuluu mm. yksikkötestaus, integrointitestaus, hyväksymistestaus, suorituskykytestaus Kaikilla testausmuodoilla on yhteistä Testit tekee kehittäjä/koodari Ne voidaan ajaa automatisoidusti Testien epäonnistuminen havaitaan automaattisesti Kehittäjä saa tiedon testien epäonnistumisesta Mitä aikaisemmin virheet huomataan koodissa, sitä vähemmän niiden korjaaminen vie aikaa. Tämä kasvattaa luottamusta tuotteen laatuun.

CI-continuous integration eli jatkuva integraatio 1. Kehittäjä hakee repositorysta uusimman version ohjelmiston koodista 2. Kehittäjä toteuttaa muutokset koodiin ja luo muutoksille automatisoidut testit 3. Kehittäjä integroi koodin muun koodin yhteyteen 4. Repositorysta haetaan muutokset ja ajetaan testit 5. Kun kaikki testit on menneet läpi kehittäjän paikallisessa ympäristössä, pushaa kehittäjä oman koodinsa repositoryyn 6. CI-palvelin huomaa tehdyt muutokset, hakee koodit ja suorittaa testit omassa ympäristössään

CI-continuous integration eli jatkuva integraatio Osana CI:tä on myös ohjelmiston buildaus tyhjältä pöydältä palvelimelle, josta tuote on esim. asiakkaan tarkasteltavissa ja arvioitavissa CI:n tarkoituksena on integroida pieniä muutoksia usein (päivittäin) Tämä poistaa tarpeen ns. integraatiovaiheelle Kehittäjät saavat välittömästi tietoa muutosten mahdollisesti aiheuttamista ongelmista Kasvattaa ohjelmiston tilan näkyvyyttä asiakkaalle

Vähemmän koodia Mitä suurempi on codebase (kooditietokanta), sen enemmän sen ylläpito ja virheenetsintä vie aikaa. Tarkastele aina kriittisesti toimenpiteitä, jotka lisäävät codebasen kokoa Poista tarpeeton ja ylimääräinen koodi Keskity olennaisiin ominaisuuksiin Kehittäjältä menee aikaa oppia kirjoittamaan vähemmän koodia Noudata sovittuja käytäntöjä (Best Practises)

Nopeat iteraatiot Nopeat iteraatiot vähentävät turhaa työtä antamalla asiakkaalle usein tilaisuuden tarkastella ja antaa palautetta Iteraatioiden lyhyys mahdollistaa nopeat muutokset ja korjaukset

Asiakaskontakti Tarkoituksena on luoda ohjelmisto, jota asiakas käyttää, joten asiakkaan osuutta tuotteen kehittämisessä ei voi liioitella Asiakas/käyttäjä on paras tiedonlähde Pidä asiakas ajan tasalla Kannusta asiakasta palautteeseen ja keskusteluun Reagoi asiakaspalautteeseen Pidä huoli seuraavista: Asiakasyhteyshenkilö on yhteistyökykyinen ja tulee toimeen tiimin kanssa AY ymmärtää loppukäyttäjän tarpeet AY on sitoutunut ja motivoitunut AY tietää tarpeeksi ollakseen hyödyksi AY:llä on valtuudet tehdä päätöksiä!

Kanban

Lean startup Lean Startup on filosofia ja kokoelma toimivia, käytännöllisiä menetelmiä. Sen avulla opit rakentamaan sellaista, joka toimii ja josta asiakkaat ovat valmiita maksamaan, olitpa sitten kehittämässä uutta tuotetta, palvelua tai prosessia. Se kasvattaa mahdollisuuksiasi menestyvään startupiin Lean Startup perustuu siihen, että kaikki oletukset testataan systemaattisesti mahdollisimman aikaisessa vaiheessa oikeiden asiakkaiden ja käyttäjien kanssa. Kurssia muutetaan sen mukaan, mitä asiakkailta opitaan.

Miten olla startupin kanssa lean? Testaa visiosi mittaamalla asiakkaittesi käyttäytymistä Keskustele asiakkaittesi kanssa koko tuotekehityksen ajan Validoi sekä tuotteesi, että asiakaskuntasi (älä arvaile) Noudata lean-prosessia alusta lähtien Keskity oikeisiin asioihin

Miten lean auttaa minua? Löydät ensin ongelman, jota lähteä ratkaisemaan Löydät ensimmäiset käyttäjät early adopters Millainen on tuotteesi versio 1.0

Kolme tärkeintä asiaa 1. Keskustele ideastasi ainakin yhden ihmisen kanssa 2. Dokumentoi ideasi 3. Testaa ideasi

Lean canvas 1 3 2 7 1 6 4 5 5

1. Ongelmat ja asiakassegmentit Listaa 3 tärkeintä ongelmaa jota pyrit ratkaisemaan Listaa nykyiset ratkaisut Tunnista käyttäjäroolit Pilko suuret asiakassegmentit pienempiin Luo jokaiselle asiakassegmentille oma lean canvas Tarkenna keitä ovat varhaisen vaiheen käyttäjät

1. Ymmärrä ongelma, jota yrität ratkaista Pyri selvittämään onko ongelma ratkaisemisen arvoinen Miten asiakkaasi pyrkivät tällä hetkellä ratkaisemaan tätä ongelmaa 2. Validoi idea ratkaisustasi Ennen itse tuotteen rakentamista, demoa asiakkaillesi visiosi tuotteesta (video, rautalankamalli, html/css-pohjainen demo) 3. Kvalitatiivinen validointi Kuuntele asiakkaittesi palautetta, määritä MVP (minimal viable product) 4. Kvantitatiivinen validointi Jos asiakkaasi validoivat visiotasi, etene tuotekehitykseen

Kysy itseltäsi: 1. Onko ratkaisuni jotain sellaista mitä asiakkaani haluavat? 2. Onko ongelma, jota yritän ratkaista, ratkaistavissa? 3. Maksaako kukaan ratkaisustani?

3. Ratkaisu 3 tärkeintä tuoteominaisuutta ratkaisemaan kolmea tärkeintä ongelmaa

7. Epäreilu kilpailuetu Vaikein kohta täyttää Oikea epäreilu kilpailuetu on sellainen, jota ei voi helposti kopioida tai ostaa Tiimi, ihmiset, kontaktit, kokemus

Mitä sitten? Perusteet lean canvasin valintaan: 1. Asiakkaan korkein kipuaste 2. Mahdollisuudet saada asiakkaisiin yhteys 3. Hinta eli mikä asiakassegmentti on valmis maksamaan tuotteesta korkeimman hinnan

Tiimi Tiimissä on syytä olla seuraavat taidot: Tuotekehitys (koodarit jne) Design Markkinointi Älä ulkoista ylläolevia!

Landing page Tuotenimi Arvolupaus Kerää sähköposteja Muista metriikka (Google Analytics, Mixpanel)

Customer Development eli asiakkaiden haastattelu Älä tee kyselyitä, koska Oletat osaavasi kysyä oikeita kysymyksiä Oletat tietäväsi oikeat vastaukset Et näe asiakastasi Haastattele kasvotusten Haastattele neutraalissa paikassa Anna haastattelulle aikaa Käytä haastattelukäsikirjoitusta Ota kaveri mukaan haastatteluun, jotta et missaa mitään Älä nauhoita

Ongelmahaastattelun rakenne 1. Valmistele haastateltavasi (2min) 2. Selvitä haastateltavasi tausta (testaa asiakassegmenttiäsi) (2min) 3. Esittele oletuksesi kolmesta ongelmasta, jota tuotteesi pyrkii ratkaisemaan (esim. tarinamuodossa) (2min) 4. Tiivistä vielä 3 ongelmaasi (4min) 5. Anna haastateltavasi puhua (15min) 6. Lopettele (2min) 7. Dokumentoi tulokset

Ongelmahaastattelun tulosten analyysi Käy läpi haastattelun tuloksia viikoittain Löydä aikaiset käyttäjäsi Tarkista ongelmaoletuksesi Ymmärrä miten asiakkaasi ratkaisevat ongelmansa tällä hetkellä Löydä toistettavat termit Tunnista väylät aikaisiin käyttäjiisi

Rakenna tuotteestasi demo Visuaalinen keino kommunikoida käyttäjälle miten ajattelit ratkaista ongelman Testaa uniikki arvolupaus Testaa hinnoittelu

Ratkaisuhaastattelun rakenne 1. Valmistele haastateltavasi (2min) 2. Selvitä haastateltavasi tausta (testaa asiakassegmenttiäsi, voi hypätä yli, jos olet haastatellut jo aiemmin) (2min) 3. Esittele oletuksesi kolmesta ongelmasta, jota tuotteesi pyrkii ratkaisemaan (esim. tarinamuodossa) (2min) 4. Demo (15min) 5. Testaa hinnoittelu (3min) 6. Lopettelu 7. Dokumentoi tulokset

Tuote 1.0 eli Minimun Viable Product (MVP) Perustele jokainen ominaisuus Aloita tärkeimmästä ongelmasta (suurin kipuaste haastateltavilta) Poista kaikki olisi kiva olla -ominaisuudet Arvioi ominaisuuksia, joita kohderyhmäsi on korostanut Veloita tuotteestasi Keskity oppimiseen, älä optimointiin

Kiitos Hibbs, Jewett, Sullivan:The Art of Lean Software Development Ash Mayrua: Running Lean A systematic process for iterating your web application from Plan A to a plan that works