Johdatus ohjelmistotuotantoon

Save this PDF as:
 WORD  PNG  TXT  JPG

Koko: px
Aloita esitys sivulta:

Download "Johdatus ohjelmistotuotantoon"

Transkriptio

1 Johdatus ohjelmistotuotantoon Luento nro 3, Kari Systä (materiaali osin Ilkka Haikalalta ja Marko Leppäseltä) JOTU/K.Systä 1

2 Tiedotettavaa Viikkoharjoitusryhmiä on vähennetty yhdellä (to klo on poistettu???) JOTU/K.Systä 2

3 Viikkoharjoitusryhmät JOTU/K.Systä 3

4 Alustava luentoaikataulu 26.8: Johdanto + historiaa, mitä on ohjelmistotuotanto 2.9: Ohjelmistojen roolista ja ohjelmistotyön määrästä, ohjelmistotyypit 9.9: Miten ohjelmistotyö organisoidaan (vaihejako ja prosessi-mallit) 16.9: vaatimusmäärittelyt 23.9: projektitoiminta 30.9: Yleiset notaatiot erityisesti UML 7.10: Esimerkkiprojekti (mahdollisesti vierailuluento) 21.10: Asiakasroolista 28.10: Käyttäjä ja käyttäjäkokemus ohjelmistoprojektissa 4.11: Tiedon mallintaminen 11.11: Ohjelmisto osana laitetta : Ohjelmisto osana laitetta : IPR, sopimukset, open source 2.12: Kertausta JOTU/K.Systä 4

5 Tarve/idea Esiselvitys unohdetaan Tehdään itse Teetetään Ostetaan Vaatimusmäärittelyt Toimittajan valinta Räätälöidään Suunnittelu Toteutus Testaus Käyttöönotto Ylläpito Poisto JOTU/K.Systä 5

6 Ohjelmiston rakentaminen projektina Asiakas - toimittaja Tarvitaan yhteisymmärrys siitä mitä halutaan Mitä se maksaa Koska se on valmis Asiakas ymmärrettävä laajasti Sisäinen Varsinaisen asiakkaan edustaja (esim. markkinointi) Tämä kurssi on suunniteltu (myös) tuleville asiakkaille Asiakkaalle projekti on usein osa isompaa kokonaisuutta (hanketta) Ohjelmiston lisäksi laite, liiketoimintamuutos, Elinkaari: esiselvitys, määrittely, toteutus, käyttöönotto, ylläpito, käytöstä poisto JOTU/K.Systä

7 Erilaisia projekteja - tuote Toimittaja määrittely toteutus testaus paketointi tutkimus myynti Asiakas JOTU/K.Systä

8 Erilaisia projekteja asiakaskohtainen Toimittaja tutkimus toteutus testaus tarjous määrittely käyttöönotto määrittely käyttöönotto tarjouspyyntö Asiakas JOTU/K.Systä

9 Erilaisia projekteja asiakaskohtainen Toimittaja Toimittaja tutkimus toteutus testaus Määrittely tarjous tarjous käyttöönotto käyttöönotto Määritelyn tilaus Asiakas Tarjouspyyntö tilaus JOTU/K.Systä

10 Erilaisia projekteja - tuote Toimittaja määrittely toteutus testaus paketointi tutkimus myynti Asiakas JOTU/K.Systä

11 Vesiputousmalli Määrittely Suunnittelu Toteutus Testaus JOTU/K.Systä 11

12 Royce, JOTU/K.Systä 12

13 Tämä kulunut kuva on pakko näyttää JOTU/K.Systä

14 Miksi tuo ei toimi Oletus 1: kunnon vaatimukset saa tehtyä kun niihin vaan panostaa Mutta: asiakkaan tarpeet muuttuu projektin aikanakin Mutta: ohjelmisto on abstrakti kunnes sen näkee käytännössä Oletus 2: muutokset ovat pieniä Mutta: eivät ole (ja kohdistuvat juuri sinne minne ei pitänyt) Oletus 3: integrointi on vain palasten kokoon laittamista Mutta: komponenttien tekijät olivat vain ihmisiä Oletus 4: aikataulu pitää Oikeasti hyvin harvoin JOTU/K.Systä 14

15 Iteratiiviset, ketterät yms Toimittaja tutkimus tot tot tot tot tarjous määr. test demo test demo test demo test käyt.otto määr. demo demo demo käyt.otto tarjouspyyntö Asiakas tarjous Demo tarkoittaa yhdessä käyttäjän kanssa tehtävää uudelleen pohdintaa JOTU/K.Systä

16 Ketterät prosessit ja menetelmät Vain oleellinen on tärkeää Asiakas- ja tuotekeskeisyys Kehittäminen tapahtuu asiakkaan kanssa yhteistyössä Valmius jatkuvaan muutokseen Iteratiivisuus Dokumentaation sijaan korostetaan henkilökohtaista kommunikaatiota kykyä demonstroida valmiita ominaisuuksia kykyä muuttaa toteutettua järjestelmää palautteen perusteella Osaamisen, ammattitaidon ja vastuuntunnon korostaminen Esimerkiksi extreme Programming (XP) test driven development (TDD) pariohjelmointi Scrum JOTU/K.Systä

17 Asiakasomistajuus Tuo bonusta! Lainaan Heimo Laukkasen (Affecto) esitystä: hyvä asiakas Pystyy luomaan ja tarjoamaan ympäristön, jossa onnistuminen on mahdollista ja epäonnistumisista opitaan Ohjaa toimintaa selkeästi ja tavoitteellisesti, sekä oikeilla mekanismeilla Kuuntelee ja käyttää toimittajien osaamista hyödykseen On onnistumassa ja oppimassa yhdessä Hyvä asiakas on haastava rooli Tällä kurssilla tullaan asiakkaan roolia katsomaan monesta eri näkökulmasta JOTU/K.Systä

18 Kehitysprosessit: erilaisia variaatioita samasta teemasta Testaus, laadunvarmistus Asiakkaan ongelma asiakasvaatimukset Määrittely ohjelmistovaatimukset, määrittely Suunnittelu tekniset vaatimukset, suunnittelu Toteutus asiakastoimitus Seuraava versio Hyväksymistestaus JOTU/K.Systä

19 Tarve/idea Esiselvitys unohdetaan Tehdään itse Teetetään Ostetaan Määritellään itse Tilataan määrittely Räätälöidään Tarjouskilpailu Määrittely Päätös Tarjouskilpailu Suunnittelu Toteutus Testaus JOTU/K.Systä 19

20 Kehitysprosessit: erilaisia variaatioita samasta teemasta Testaus, laadunvarmistus Asiakkaan ongelma asiakasvaatimukset Määrittely Suunnittelu ohjelmistovaatimukset, määrittely tekniset vaatimukset, suunnittelu Toteutus asiakastoimitus Seuraava versio Hyväksymistestaus JOTU/K.Systä

21 Vaatimusten tyyppejä Toiminnallinen vaatimus (functional requirement), esimerkiksi ohjelmassa on tuki oikeinkirjoituksen tarkastamiselle. Ei-toiminnallinen vaatimus (non-functional requirement), esimerkiksi ohjelman käyttöliittymä on dokumentin WS-100, UI-tyyliopas mukainen. Reunaehdot (constraints), esimerkiksi ohjelmisto on toteutettava Windows-ympäristöön C++-kielellä JOTU/K.Systä 21

22 Määrittely (Seuraava luento on kokonaan tästä aiheesta) Fred Brooks on yksi alamme tunnetuimpia asiantuntijoita. Hän julkaisi vuonna 1987 paljon huomiota saaneen artikkelinsa No Silver Bullet:Essence and Accidents of Software Engineering [Brooks 1987]. Siinä hän toteaa: The hardest single part of building a software system is deciding what to build. No other part of the conceptual work is as difficult in establishing the detailed technical requirements, including the interfaces to people, to machines, and to other software systems. No other part of the work so cripples the results if done wrong. No other part is more difficult to rectify later. Monet tutkimukset (ks. esim [Leffingwell ja Widrig 2003]) osoittavat, että ohjelmistoprojektien epäonnistumisen syyt juontavat juurensa yli 60-prosenttisesti huonoon vaatimustenkäsittelyyn JOTU/K.Systä 22

23 Kaksi erilaista johtopäätöstä 1. Kannattaa käyttää alussa paljon aikaa vaatimusten miettimiseen ja kirjaamiseen ennen kuin kirjoittaa yhtäkään koodiriviä. 2. Vaatimukset tai ainakin ymmärrys niistä muuttuu projektin aikana kuitenkin. Joten parasta iteroida palanen kerrallaan JOTU/K.Systä 23

24 Kehitysprosessit: erilaisia variaatioita samasta teemasta Testaus, laadunvarmistus Asiakkaan ongelma asiakasvaatimukset Määrittely Suunnittelu ohjelmistovaatimukset, määrittely tekniset vaatimukset, suunnittelu Toteutus asiakastoimitus Seuraava versio Hyväksymistestaus JOTU/K.Systä

25 Suunnittelu (Architecture design) Ohjelmiston tekniset ominaisuudet Ohjelmiston jako osiin Osien riippuvuuksien määrittely Osien rajapintojen määrittely Wikipedia: The software architecture of a system is the set of structures needed to reason about the system, which comprise software elements, relations among them, and properties of both. The term also refers to documentation of a system's "software architecture." Documenting software architecture facilitates communication between stakeholders, documents early decisions about high-level design, and allows reuse of design components and patterns between projects JOTU/K.Systä 25

26 Ohjelmistoarkkitehtuureja opetetaan erillisellä kurssilla OHJ-3200 Ohjelmistoarkkitehtuurit, periodit Tavoitteet: Kurssin tavoitteena on antaa opiskelijoille yleiskuva ohjelmistoarkkitehtuureihin liittyvistä käsitteistä ja tekniikoista sekä valmiudet laadukkaiden ohjelmistojen rakentamiseen ja arviointiin JOTU/K.Systä 26

27 Kehitysprosessit: erilaisia variaatioita samasta teemasta Testaus, laadunvarmistus Asiakkaan ongelma asiakasvaatimukset Määrittely ohjelmistovaatimukset, määrittely Suunnittelu tekniset vaatimukset, suunnittelu Toteutus asiakastoimitus Seuraava versio Hyväksymistestaus JOTU/K.Systä

28 Työn kulku tuotekehitysprojektissa (esimerkki) kehitystiimi 1) muutettavat kompone ntit Versionhallinta Työn tasks Change alla tasks tasks olevat komponentit 2) muutetut komponentit testing OK uusi "baseline" 3) palaute Koostaminen (build) & automaattiset testit "Sopiva kooste" "release candidate" Järjestelmätestaus testing OK julkaisu (release) build manager" testaajat JOTU/K.Systä 28

29 Mitä on ohjelmistotuotanto? Vaatimusmäärittelyä Asiakas Taitavaa ohjelmointia Elinkaarimallit Yhteispeliä, yhteistä peliä Algoritmit Tietorakenteet Ohjelmointikielet Arkkitehtuurit Laadunvarmistusta Projektinhallinta Kehittäjä Testaus Validointi JOTU/K.Systä

30 Kehitysprosessit: erilaisia variaatioita samasta teemasta Testaus, laadunvarmistus Asiakkaan ongelma asiakasvaatimukset Määrittely ohjelmistovaatimukset, määrittely Suunnittelu tekniset vaatimukset, suunnittelu Toteutus asiakastoimitus Seuraava versio Hyväksymistestaus JOTU/K.Systä

31 Testaus Testaus on virheiden etsimistä Virhe (error, mistake, bug) on poikkeama spesifikaatiosta. Johdonmukainen testaus ilman spesifikaatiota on siis mahdotonta, sillä lopputuloksen oikeellisuutta ei voida todeta. Debuggaus on puolestaan löydetyn virheen paikallistamista. Ohjelmissa arvioidaan yleensä olevan ohjelmoinnin jälkeen yksi virhe muutamaa kymmentä ohjelmariviä kohden. Jopa pitkään käytössä olleissa ohjelmissa arvioidaan yleensä olevan noin yksi virhe tuhatta ohjelmariviä kohden. On myös arvioitu, että noin 5 % ohjelmavirheistä on sellaisia, ettei niitä "koskaan" edes havaita, sillä vaikka virheellinen kohta suoritettaisiinkin JOTU/K.Systä 31

32 V-malli Määrittely Järjestelmätestaus Arkkitehtuurisuunnittelu Yksityiskohtainen suunnittelu Yksikkötestaus Integrointitestaus JOTU/K.Systä 32

33 Joitain testauksen termejä Testisuunnitelma: koska testataan, kuka testaa, mitä testataan; testitapaukset. Testipeti: ohjelmistorunko jonka avulla testejä on helppo suorittaa Testiautomaatio: testitapausten automaattinen suoritus ja tulosten vertailu Regressiotestaus: testataan vanhatkin ominaisuudet uudelleen uusien lisäämisen jälkeen. Kuormitustesti: kaatuuko systeemi kuorman alla. Luotettavuustesti: miten toipuu häiriötilanteista. Käytettävyystesti: miten loppukäyttäjä näkee järjestelmän JOTU/K.Systä 33

34 Testauksen voi järjestää monella tavalla Esimerkkinä test-driven development Lisää testi OK Aja testi EI Lisää koodi Aja testi EI OK JOTU/K.Systä 34

35 Esimerkki oikeinkirjoituksen tarkistus Oikein ja väärin kirjoitettua OK Tarkistaako EI Lisää koodi Aja testi EI OK JOTU/K.Systä 35

36 Kehitysprosessit: erilaisia variaatioita samasta teemasta Testaus, laadunvarmistus Asiakkaan ongelma asiakasvaatimukset Määrittely Suunnittelu ohjelmistovaatimukset, määrittely tekniset vaatimukset, suunnittelu Toteutus asiakastoimitus Seuraava versio Hyväksymistestaus JOTU/K.Systä

37 Hyväksymistestaus Saatiinko sitä mitä tilattiin? Asiakkaan rooli on suuri JOTU/K.Systä 37

38 Miksi ketterä (agile)? Jatkuva näkyvyys (ei korjaa ongelmia, mutta tuo ne näkyväksi) Mahdollisuus muutoksiin Aiempi bisnesarvo Matalammat riskit JOTU/K.Systä 38

39 Agile -manifesti Helmikuu tekijää We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to 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 That is, while there is value in the items on the right, we value the items on the left more JOTU/K.Systä 39

40 Manifesti Suomeksi Me etsimme parempia keinoja ohjelmistojen kehittämiseen tekemällä sitä itse ja auttamalla siinä muita. Tässä työssämme olemme päätyneet arvostamaan Yksilöitä ja vuorovaikutusta enemmän kuin prosesseja ja työkaluja Toimivaa sovellusta enemmän kuin kokonaisvaltaista dokumentaatiota Asiakasyhteistyötä enemmän kuin sopimusneuvotteluita Muutokseen reagoimista enemmän kuin suunnitelman noudattamista. Vaikka oikeallakin puolella on arvoa, me arvostamme vasemmalla olevia asioita enemmän JOTU/K.Systä 40

41 Scrum Ketterän ja iteratiivisen kehityksen prosessikehys Jeff Sutherland, John Scumniotales, and Jeff McKenna OOPSLA JOTU/K.Systä 41

42 Scrum-roolit Siat Scrum master Product owner Tiimin jäsenet Kanat Sidosryhmät (asiakas, myyjä ) Johtajat JOTU/K.Systä 42

43 Done -> 100% tehty Burndown -kaavio Velocity -> paljonko tehtävää voidaan yhteen sprinttiin saada mahtumaan Kaaviosta vähennetään tehtävän tunnit, jos tehtävä 100% valmis Jos tehtävä kasvaa, lisätään kaavioon tunteja JOTU/K.Systä 43

44 Timeboxing Projektin osittainen kiinteän mittainen aikasiivu, jolla on omat deadlinensä, vaihetuotteensa ja resurssinsa TB1 TB2 TB3 Riskinhallintametodi Nopea palaute Jäykistää vaatimustenhallintaa JOTU/K.Systä 44

45 Kompromissikolmio Aika Resurssit Ominaisuudet JOTU/K.Systä 45

Harjoitukset - muistutus

Harjoitukset - muistutus Harjoitukset - muistutus Muistakaa ilmoittautua IDLE:ssä! Ryhmät Ma 16.00-18.00 TB207, Hannu Ranta Ti 10.00-12.00 TB207, Marie-Elise Kontro Ti 12.00-14.00 TB207, Marie-Elise Kontro Ke 08.00-10.00 TB207,

Lisätiedot

Johdatus ohjelmistotuotantoon

Johdatus ohjelmistotuotantoon Johdatus ohjelmistotuotantoon Luento nro 3, 8.9.2014 Kari Systä 8.9.2014 JOTU/K.Systä 1 Viikkoharjoitusryhmät Tiistai klo 10-12 ilm. 22/28, oli 16. Tiistai klo 12-14 ilm. 28/28, oli 21. Keskiviikko klo

Lisätiedot

Ohjelmistoposesseista

Ohjelmistoposesseista Ohjelmistoposesseista Luento nro 6, 23.9.2015 Kari Systä 28.9.2015 JOTU/K.Systä 1 Sisältöä Käytännön asioista kurssista Kertausta Ohjelmistoprosesseista 28.9.2015 JOTU/K.Systä 2 Kurssin tilannetta Asiakaspalaverit

Lisätiedot

Projektin vaiheet 17.9.2012

Projektin vaiheet 17.9.2012 Projektin vaiheet 1 17.9.2012 Prosessi, teknologia ja ihmiset Prosessi Teknologia Teknologia Prosessi Prosessi Teknologia Ihmiset Ihmiset Ihmiset 2 17.9.2012 Hanke vs. projekti vs. prosessi Usein softaa

Lisätiedot

Lyhyt johdatus ketterään testaukseen

Lyhyt johdatus ketterään testaukseen TTY:n Testauspäivät, Tampere 15.8.2006 Lyhyt johdatus ketterään testaukseen eli Ketterän ohjelmistokehityksen laatukäytäntöjä Juha Itkonen SoberIT Teknillinen korkeakoulu Juha.Itkonen@tkk.fi Ketterä ohjelmistokehitys

Lisätiedot

Johdatus ohjelmistotuotantoon

Johdatus ohjelmistotuotantoon Johdatus ohjelmistotuotantoon Luento 9. 28.10.2013 Käyttäjä ja käyttäjäkokemus ohjelmistoprojektissa Kati Kuusinen Tutkija Agile UX kati.kuusinen@tut.fi Luentoaikataulu 26.8: Johdanto + historiaa, mitä

Lisätiedot

Johdatus ohjelmistotuotantoon

Johdatus ohjelmistotuotantoon Johdatus ohjelmistotuotantoon Luento 21.9.2015 Käyttäjä ja käyttäjäkokemus ohjelmistoprojektissa Kati Kuusinen Thomas Olsson Tutkijatohtori Agile UX Dr. Ubicomp kati.kuusinen thomas.olsson@tut.fi Kurssin

Lisätiedot

Kuka käyttää? 2 2012

Kuka käyttää? 2 2012 Agile Iteratiivinen ja inkrementaalinen Minimaalinen suunnittelu, pieniä tehtäviä Timeboxing Mahdollisimman paljon tuottavaa työtä Julkaise ajoissa ja usein Aloita pienestä Kehitä iteratiivisesti, muutosmahdollisuudet

Lisätiedot

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Copyright by Haikala. Ohjelmistotuotannon osa-alueet Copyright by Haikala Ohjelmistotuotannon osa-alueet Ohjelmiston elinkaari 1. Esitutkimus, tarvekartoitus, kokonaissuunnittelu, järjestelmäsuunnittelu (feasibility study, requirement study, preliminary

Lisätiedot

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit Ohjelmiston testaus ja laatu Ohjelmistotekniikka elinkaarimallit Vesiputousmalli - 1 Esitutkimus Määrittely mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot millainen järjestelmä täyttää

Lisätiedot

Ohjelmistotekniikka - Luento 2

Ohjelmistotekniikka - Luento 2 Ohjelmistotekniikka - Luento 2 Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento 2: Prosessimallit

Lisätiedot

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus Yhteenveto Ohjelmistotuotanto vs. muut insinööritieteet Monimutkaisuus Näkymättömyys (Usein näennäinen) luotettavuus ja edullisuus Muunnettavuus Epäjatkuvuus virhetilanteissa Skaalautumattomuus Copyright

Lisätiedot

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Ohjelmistojen mallintaminen. Luento 11, 7.12. Ohjelmistojen mallintaminen Luento 11, 7.12. Viime viikolla... Oliosuunnittelun yleiset periaatteet Single responsibility eli luokilla vain yksi vastuu Program to an interface, not to concrete implementation,

Lisätiedot

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

Globaalisti Hajautettu Ohjelmistokehitys Mitä, Miksi & Miten? Maria Paasivaara Globaalisti Hajautettu Ohjelmistokehitys Mitä, Miksi & Miten? Maria Paasivaara Mitä? Mitä? Yrityksen sisäinen Mitä? Yrityksen sisäinen Alihankinta Mitä? Yrityksen sisäinen Open Source -kehitys Alihankinta

Lisätiedot

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen Ohjelmistotekniikka - Luento 2 Jouni Lappalainen Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento

Lisätiedot

Projektityö

Projektityö Projektityö 24.9.2010 Ohjelmistojen kehitysmalleista Vaatimusten määrittely ja kerääminen Lähteinä (vaatimusten määrittely): Haikala ja Märijärvi, Ohjelmistotuotanto, Talentum, 2005. Luvut 3, 4, 5, 6-10

Lisätiedot

2. Ohjelmistotuotantoprosessi

2. Ohjelmistotuotantoprosessi 2. Ohjelmistotuotantoprosessi Peruskäsitteet: prosessimalli: mahdollisimman yleisesti sovellettavissa oleva ohjeisto ohjelmistojen tuottamiseen ohjelmistotuotantoprosessi: yrityksessä käytössä oleva tapa

Lisätiedot

Ohjelmistotuotanto, prosessit Syksy Ohjelmistotuotantoprosessi. Prosessimalli. Prosessimallien perustehtävät. Prosessimallin vaihejako

Ohjelmistotuotanto, prosessit Syksy Ohjelmistotuotantoprosessi. Prosessimalli. Prosessimallien perustehtävät. Prosessimallin vaihejako 2. Ohjelmistotuotantoprosessi peruskäsitteet: prosessimalli: mahdollisimman yleisesti sovellettavissa oleva ohjeisto ohjelmistojen tuottamiseen ohjelmistotuotantoprosessi: yrityksessä käytössä oleva tapa

Lisätiedot

Ville Isomöttönen. Agile. Jyväskylän Yliopisto Sivu 1 Tietotekniikan laitos

Ville Isomöttönen. Agile. Jyväskylän Yliopisto Sivu 1 Tietotekniikan laitos Agile Jyväskylän Yliopisto Sivu 1 Tietotekniikan laitos Manifesto of Agile Software Development(2001): We are uncovering better ways of developing software by doing it and helping others doit.throughthisworkwehavecometovalue:

Lisätiedot

Tutkittua tietoa. Tutkittua tietoa 1

Tutkittua tietoa. Tutkittua tietoa 1 Tutkittua tietoa T. Dybå, T. Dingsøyr: Empirical Studies of Agile Software Development : A Systematic Review. Information and Software Technology 50, 2008, 833-859. J.E. Hannay, T. Dybå, E. Arisholm, D.I.K.

Lisätiedot

Prosessimalli. 2. Ohjelmistotuotantoprosessi. Prosessimallin vaihejako. Prosessimallien perustehtävät. Ohjelmiston suunnittelu. Vaatimusmäärittely

Prosessimalli. 2. Ohjelmistotuotantoprosessi. Prosessimallin vaihejako. Prosessimallien perustehtävät. Ohjelmiston suunnittelu. Vaatimusmäärittely 2. Ohjelmistotuotantoprosessi Peruskäsitteet: prosessimalli: mahdollisimman yleisesti sovellettavissa oleva ohjeisto ohjelmistojen tuottamiseen ohjelmistotuotantoprosessi: yrityksessä käytössä oleva tapa

Lisätiedot

Ohjelmistoprosessit ja ohjelmistojen laatu kevät 2009

Ohjelmistoprosessit ja ohjelmistojen laatu kevät 2009 7. Iteratiivinen ohjelmistokehitys Iteratiivinen (ja evoluutio-)ohjelmistokehitys (iterative and evolutionary software development) on prosessimallien perhe, missä ohjelmiston elinkaari muodostuu useasta

Lisätiedot

Ohjelmistoarkkitehtuurit Kevät 2016 Johdantoa

Ohjelmistoarkkitehtuurit Kevät 2016 Johdantoa Ohjelmistoarkkitehtuurit Kevät 2016 Johdantoa Samuel Lahtinen http://www.cs.tut.fi/~ohar/ 8.1.2014 1 1 Johdanto 1.1 Mikä on ohjelmistoarkkitehtuuri? 1.2 Ohjelmistoarkkitehtuuri ja laatuvaatimukset 1.3

Lisätiedot

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

Scrum is Not Enough. Scrum ei riitä. Ari Tanninen & Marko Taipale. Nääsvillen oliopäivä 2009 Tampereen teknillinen yliopisto 9.12. Scrum is Not Enough Scrum ei riitä Ari Tanninen & Marko Taipale Nääsvillen oliopäivä 2009 Tampereen teknillinen yliopisto 9.12.2009 Ari Tanninen Vanhempi ohjelmistoinsinööri Marko Taipale Teknologiajohtaja,

Lisätiedot

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA Ohjelmointitekniikka lyhyesti Survival Kit. Vesiputousmalli ELINKAARIMALLEISTA. Ohjelmiston elinkaari Ohjelmiston elinkaarella (life cycle) tarkoitetaan aikaa, joka kuluu ohjelmiston kehittämisen aloittamisesta

Lisätiedot

Projektityö

Projektityö Projektityö 21.10.2005 Projektisuunnitelma Työn ositus Projektisuunnitelman sisältö Kurssin luennoitsija ja projektiryhmien ohjaaja: Timo Poranen (email: tp@cs.uta.fi, työhuone: B1042) Kurssin kotisivut:

Lisätiedot

Projektitoiminta JOTU 23.09.2013. 23.9.2013 JOTU2013/K.Systä 1

Projektitoiminta JOTU 23.09.2013. 23.9.2013 JOTU2013/K.Systä 1 Projektitoiminta JOTU 23.09.2013 23.9.2013 JOTU2013/K.Systä 1 Tiedotuksia Harjoitusryhmiin muodostamisesta: jo ette ole ryhmässä tehkää yhden hengenryhmiä Marko sitten yhdistää Ne joilla ei ole ryhmää

Lisätiedot

Ohjelmistotuotanto historiallinen perspektiivi. 25.11.2013 JOTU2013/K.Systä 1

Ohjelmistotuotanto historiallinen perspektiivi. 25.11.2013 JOTU2013/K.Systä 1 Ohjelmistotuotanto historiallinen perspektiivi 25.11.2013 JOTU2013/K.Systä 1 Alustava luentoaikataulu 26.8: Johdanto + historiaa, mitä on ohjelmistotuotanto 2.9: Ohjelmistojen roolista ja ohjelmistotyön

Lisätiedot

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

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä Arkkitehtuuritietoisku eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä Esikysymys Kuinka moni aikoo suunnitella projektityönsä arkkitehtuurin? Onko tämä arkkitehtuuria?

Lisätiedot

OTM viikoilla 18 ja 19

OTM viikoilla 18 ja 19 OTM viikoilla 18 ja 19 Ma 27.5: Vierailuluento Risto Kurki-Suonio (Juridiikka) Vappu peruutettu: luento peruutettu vappuaattona harjoitukset kuitenkin normaalisti Ma 4.5: Viimeinen varsinainen luento tuotteenhallinta

Lisätiedot

Tapahtuipa Testaajalle...

Tapahtuipa Testaajalle... Tapahtuipa Testaajalle... - eli testaus tosielämässä 09.10.2007 Juhani Snellman Qentinel Oy 2007 Agenda Minä ja mistä tulen Testauksen konteksti Tapauksia tosielämästä ja työkaluja 2 Minä Juhani Snellman

Lisätiedot

Agile. Jyväskylän Yliopisto Sivu 1 Tietotekniikan laitos

Agile. Jyväskylän Yliopisto Sivu 1 Tietotekniikan laitos Agile Jyväskylän Yliopisto Sivu 1 Tietotekniikan laitos Manifesto of Agile Software Development (2001): We are uncovering better ways of developing software by doing it and helping others do it. Through

Lisätiedot

ITK130 Ohjelmistoprosessi

ITK130 Ohjelmistoprosessi ITK130 Ohjelmistoprosessi Ohjelmistotuotteen elinkaari Ohjelmistoprosessimalli Koodaa ja korjaa Miksi ohjelmistoprosesseja? Prosessimallin tavoitteet Prosessi ongelmaratkaisuna Prosessi, musta laatikko

Lisätiedot

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

PROJEKTI- PÄÄLLIKÖSTÄ PRODUCT OWNERIKSI MEERI CEDERSTRÖM PROJEKTI- PÄÄLLIKÖSTÄ PRODUCT OWNERIKSI MEERI CEDERSTRÖM TAUSTA Otaniemi UX (User Experience) Teknologiaa kaikille Silta tekniikan ja bisneksen välillä Testaaja (Tanska) Scrum Käyttöliittymäsuunnittelija

Lisätiedot

Työkalut ohjelmistokehityksen tukena

Työkalut ohjelmistokehityksen tukena 1 Työkalut ohjelmistokehityksen tukena Johdanto 2 Työkaluja eli ohjelmistotyötä tukevia ohjelmistoja käytetään ohjelmistoalan yrityksissä nykypäivänä paljon. Työkalut auttavat ohjelmistoalan ihmisiä suunnittelemaan

Lisätiedot

Ohjelmistoprojektien hallinta Vaihejakomallit

Ohjelmistoprojektien hallinta Vaihejakomallit Ohjelmistoprojektien hallinta Vaihejakomallit Vaihejakomallit TAVOITE: YMMÄRTÄÄ eri vaihejakomallien etujajahaittoja 2 Erilaisia malleja Tee ja korjaa (Code-and-Fix) Vesiputousmalli (Waterfall) Vesiputousmalli

Lisätiedot

Ohjelmistoprojekteista. Datanomiopiskelijat 2.vuosi

Ohjelmistoprojekteista. Datanomiopiskelijat 2.vuosi Ohjelmistoprojekteista Datanomiopiskelijat 2.vuosi Yleistä projekteista Projekti on selkeästi asetettuihin tavoitteisiin pyrkivä, ajallisesti rajattu kertaluonteinen hanke, jonka toteuttamisesta vastaa

Lisätiedot

Testaaminen ohjelmiston kehitysprosessin aikana

Testaaminen ohjelmiston kehitysprosessin aikana Testaaminen ohjelmiston kehitysprosessin aikana 04.02.2004 http://cs.joensuu.fi/tsoft/ Sisällys 1. Johdanto 2. Yksikkö- ja integrointitestaus 3. Järjestelmätestaus 4. Hyväksymistestaus http://cs.joensuu.fi/tsoft/

Lisätiedot

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa:

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa: Testaus käsite Sekalaista asiaa Sami Kollanus 15.11.2006 Jos ajatellaan, että = V&V, voidaan erottaa: Staattinen Dynaaminen Toisaalta voidaan määritellä Myersin (1979) mukaan: Testaus on ohjelman suoritusta,

Lisätiedot

Standardi IEC Ohjelmisto

Standardi IEC Ohjelmisto Sundcon Oy Standardi IEC 61508 3 Ohjelmisto muutokset Matti Sundquist Sundcon Oy www.sundcon.fi Standardi IEC 61508 3 (1) Standardissa di esitetään vaatimukset niiden tietojen ja menettelytapojen valmisteluun,

Lisätiedot

T Projektikatselmus

T Projektikatselmus T-76.115 Projektikatselmus Projektityöryhmä GenCode I3-iteraatio 17.3.2004 Agenda Tavoitteiden toteutuminen (5 min) Resurssien käyttö (5 min) Iteraation tulokset (10 min) Riskit (5min) +Kokemuksia työskentelymenetelmistä

Lisätiedot

Laadukas vaatimustenhallinta. Pekka Mäkinen Copyright SoftQA Oy www.softqa.fi

Laadukas vaatimustenhallinta. Pekka Mäkinen Copyright SoftQA Oy www.softqa.fi Laadukas vaatimustenhallinta Pekka Mäkinen www.softqa.fi Esityksen perusajatuksia Vaatimuksilla on elinkaari ja ne muuttuvat. Tuotteen elinkaari vaikuttaa vaatimuksiin. Vaatimusten keruussa ja -hallinnassa

Lisätiedot

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

Ketteryys pähkinänkuoressa. Kokopäivän Scrum-kurssin sisältö tislattuna ja tiivistettynä kolmeen varttiin Ketteryys pähkinänkuoressa Kokopäivän Scrum-kurssin sisältö tislattuna ja tiivistettynä kolmeen varttiin Empiirinen prosessinhallinta Iteraatiot ja inkrementit riskienhallinnassa Imuohjaus Ketteryyden

Lisätiedot

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1 Ohjelmistoarkkitehtuurit Syksy 2009 Kai Koskimies Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1 Tervetuloa Kuopion yliopisto, Oulun yliopisto (Kajaani), Tampereen yliopisto, Turun yliopisto,

Lisätiedot

statbeatmobile PROJECT REVIEW iteration 1

statbeatmobile PROJECT REVIEW iteration 1 statbeatmobile PROJECT REVIEW iteration 1 agenda Projekti Status Käytännöt Tulokset Katsaus eteenpäin PROJEKTI / mikä on statbeat? Sosiaalinen joukkueurheilupalvelu Keskustelu, fanit, kavereiden joukkueet,

Lisätiedot

Ohjelmistojen suunnittelu

Ohjelmistojen suunnittelu Ohjelmistojen suunnittelu 581259 Ohjelmistotuotanto 154 Ohjelmistojen suunnittelu Software design is a creative activity in which you identify software components and their relationships, based on a customer

Lisätiedot

Testausta vai määrittelyä? Hyväksymistestaus ja jatkuva integraatio ketterässä ohjelmistokehityksessä

Testausta vai määrittelyä? Hyväksymistestaus ja jatkuva integraatio ketterässä ohjelmistokehityksessä Testausta vai määrittelyä? Hyväksymistestaus ja jatkuva integraatio ketterässä ohjelmistokehityksessä Public 27.10.2008 Ixonos Oyj Juha Inkinen Työnantaja: Ixonos marraskuusta 2007, sitäennen Nokia Networks

Lisätiedot

Ketterä vaatimustenhallinta

Ketterä vaatimustenhallinta Ketterä vaatimustenhallinta ja miksi se on useimmiten hyvä asia K A R I A L HO C E O I M P R OV EIT OY Sisältö ImproveIt Oy Perinteinen vaatimushallinta Ketterä vaatimustenhallinta Monenlaista softakehitystä

Lisätiedot

7. Iteratiivinen ohjelmistokehitys

7. Iteratiivinen ohjelmistokehitys 7. Iteratiivinen ohjelmistokehitys Iteratiivinen (ja evoluutio-)ohjelmistokehitys (iterative and evolutionary software development) on prosessimallien perhe, missä ohjelmiston elinkaari muodostuu useasta

Lisätiedot

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

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Koskelo Helsinki 16.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Tom Bertell Johan

Lisätiedot

Helia Ohjelmointitaito 14.3.2005 Tuomas Kaipainen Mermit Business Applications Oy. 2005 Mermit Business Applications

Helia Ohjelmointitaito 14.3.2005 Tuomas Kaipainen Mermit Business Applications Oy. 2005 Mermit Business Applications Helia Ohjelmointitaito 14.3.2005 Tuomas Kaipainen Mermit Business Applications Oy Esityksen sisältö Mermit yrityksenä Perustiedot Toimintamalli Mermit työpaikkana ohjelmistoinsinöörille Esimerkkiprojekti

Lisätiedot

Ketterät menetelmät ja julkinen hankinta

Ketterät menetelmät ja julkinen hankinta Liiketoimintaosaamisen klusteri Tietohallintojohtamisen EO Ylempi AMK Ketterät menetelmät ja julkinen hankinta Ilkka Meriläinen 27.4.2011 Ketterät menetelmät Joukko järjestelmän kehitysmenetelmiä, joille

Lisätiedot

Ohjelmistoarkkitehtuurit 2016. Kevät 2016 -käytäntöjä

Ohjelmistoarkkitehtuurit 2016. Kevät 2016 -käytäntöjä Ohjelmistoarkkitehtuurit Kevät 2016 -käytäntöjä Samuel Lahtinen http://www.cs.tut.fi/~ohar/ 13.1.2016 1 Tervetuloa Tampereen teknillinen yliopisto, Oulun yliopisto, Turun yliopisto 13.1.2016 2 Tiedonvälitys

Lisätiedot

Ohjelmistotekniikan menetelmät, kesä 2008

Ohjelmistotekniikan menetelmät, kesä 2008 582101 - Ohjelmistotekniikan menetelmät, kesä 2008 1 Ohjelmistotekniikan menetelmät Methods for Software Engineering Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön

Lisätiedot

Kontrollipolkujen määrä

Kontrollipolkujen määrä Testaus Yleistä Testaus on suunnitelmallista virheiden etsimistä Tuotantoprosessissa ohjelmaan jää aina virheitä, käytettävistä menetelmistä huolimatta Hyvät menetelmät, kuten katselmoinnit pienentävät

Lisätiedot

Yhteenvetoa, pieniä laajennuksia, tulevaisuuden haasteita

Yhteenvetoa, pieniä laajennuksia, tulevaisuuden haasteita Yhteenvetoa, pieniä laajennuksia, tulevaisuuden haasteita 581259 Ohjelmistotuotanto 378 Lemström, 2006-2011 581259 Ohjelmistotuotanto Kiitos Tuomolle kuvasta 379 Ohjelmistotuotannon perustehtävät projektinhallinta:

Lisätiedot

Johdantoluento. Ohjelmien ylläpito

Johdantoluento. Ohjelmien ylläpito Johdantoluento Ylläpito-termin termin määrittely Ylläpito ohjelmistotuotannon vaiheena Evoluutio-termin määrittely Muita kurssin aiheeseen liittyviä termejä TTY Ohjelmistotekniikka 1 Ohjelmien ylläpito

Lisätiedot

Ohjelmistotuotteen hallinnasta

Ohjelmistotuotteen hallinnasta Ohjelmistotuotteen hallinnasta Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Haikala ja Märijärvi, Ohjelmistotuotanto Royce, Software Project Management, A Unified Framework 1 Tavoitteista

Lisätiedot

Onnistunut Vaatimuspohjainen Testaus

Onnistunut Vaatimuspohjainen Testaus Onnistunut Vaatimuspohjainen Testaus Kari Alho Solution Architect Nohau Solutions, Finland Sisältö Mitä on vaatimuspohjainen testaus? Vaatimusten ymmärtämisen haasteet Testitapausten generointi Työkalujen

Lisätiedot

Ohjelmistoarkkitehtuurit. Kevät

Ohjelmistoarkkitehtuurit. Kevät Ohjelmistoarkkitehtuurit Kevät 2012-2013 Johannes Koskinen http://www.cs.tut.fi/~ohar/ Tervetuloa Oulun yliopisto, Tampereen yliopisto, Turun yliopisto, Tampereen teknillinen yliopisto 2 Kurssin tavoitteet

Lisätiedot

Kertausluento 24.11.2014. JOTU-2014 / K.Systä 24.11.2014

Kertausluento 24.11.2014. JOTU-2014 / K.Systä 24.11.2014 24.11.2014 JOTU-2014 / K.Systä 1 Kertausluento 24.11.2014 Arvostelusta Tentistä saa maksimissaan 18 pistettä. Harjoitustyöstä saa 1-6 pistettä. Viikkoharjoituksista voi myös saada 1-6 pistettä aktiivisuuden

Lisätiedot

7.4 Variability management

7.4 Variability management 7.4 Variability management time... space software product-line should support variability in space (different products) support variability in time (maintenance, evolution) 1 Product variation Product

Lisätiedot

Test-Driven Development

Test-Driven Development Test-Driven Development Ohjelmistotuotanto syksy 2006 Jyväskylän yliopisto Test-Driven Development Testilähtöinen ohjelmistojen kehitystapa. Tehdään ensin testi, sitten vasta koodi. Tarkoituksena ei ole

Lisätiedot

T Johdatus käyttäjäkeskeiseen tuotekehitykseen. suunnitteluprosessissa. Käyttäjän huomiointi. Iteroitu versio paljon kirjoitusvirheitä

T Johdatus käyttäjäkeskeiseen tuotekehitykseen. suunnitteluprosessissa. Käyttäjän huomiointi. Iteroitu versio paljon kirjoitusvirheitä Käyttäjäkeskeinen suunnittelu Käyttäjän huomiointi suunnitteluprosessissa Iteroitu versio 1.1 muutettu klo12.10 - paljon kirjoitusvirheitä Käyttäjäkeskeinen suunnittelu Perusidea: käyttäjät huomioidaan

Lisätiedot

TIE-02300 Johdatus ohjelmistotuotantoon

TIE-02300 Johdatus ohjelmistotuotantoon TIE-02300 Johdatus ohjelmistotuotantoon Kurssin tavoite, opinto-opas "Luoda yleiskuva ohjelmistotyöstä ja perusvalmiudet määrittelymenetelmien soveltamiseen. Kyky osallistua ohjelmistoprojektiin asiakkaan

Lisätiedot

Testauksen hallintaa teekkareille (ja muille kiinnostuneille) Arto Stenberg

Testauksen hallintaa teekkareille (ja muille kiinnostuneille) Arto Stenberg Testauksen hallintaa teekkareille (ja muille kiinnostuneille) Arto Stenberg Symbio lyhyesti Innovatiivinen tuotekehitys- ja testauskumppani Juuret Suomessa, perustettu 1997 Laadukkaat ohjelmistotoimitukset

Lisätiedot

Ohjelmistoarkkitehtuurit. Syksy 2010

Ohjelmistoarkkitehtuurit. Syksy 2010 Ohjelmistoarkkitehtuurit Syksy 2010 Kai Koskimies Tervetuloa Oulun yliopisto, Tampereen yliopisto, Turun yliopisto, Tampereen teknillinen yliopisto, Vaasan yliopisto Kurssin tavoitteet Arkkitehtuurin roolin

Lisätiedot

Tietojenkäsittelytieteiden koulutusohjelma. Tietojenkäsittelytieteiden laitos Department of Information Processing Science

Tietojenkäsittelytieteiden koulutusohjelma. Tietojenkäsittelytieteiden laitos Department of Information Processing Science Tietojenkäsittelytieteiden koulutusohjelma Tietojenkäsittelytieteet Laskennallinen data-analyysi Ohjelmistotekniikka, käyttöjärjestelmät, ihminen-kone -vuorovaikutus Teoreettinen tietojenkäsittelytiede

Lisätiedot

OHJ-3010 Ohjelmistotuotannon perusteet

OHJ-3010 Ohjelmistotuotannon perusteet OHJ-3010 Ohjelmistotuotannon perusteet Kurssin tavoite, opinto-opas "Luoda yleiskuva ohjelmistotyöstä ja perusvalmiudet määrittelymenetelmien soveltamiseen. Kyky osallistua ohjelmistoprojektiin asiakkaan

Lisätiedot

Projektitoiminta. JOTU (uusintayritys) TTY TIE-02300/Kari Systä 1

Projektitoiminta. JOTU (uusintayritys) TTY TIE-02300/Kari Systä 1 Projektitoiminta JOTU 26.10.2015 (uusintayritys) 26.10.2015 TTY TIE-02300/Kari Systä 1 Ajankohtaista Tämän viikon viikkoharjoituksissa piirrellään taas: ottakaa kone mukaan Keskiviikon viimeistä harjoituskertaa

Lisätiedot

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

Scrumjatkuvan palvelun DWprojektissa-case. Niina Mäkiranta & OP-scrum-tiimi Aureolis Oy Scrumjatkuvan palvelun DWprojektissa-case OP-Pohjola Niina Mäkiranta & OP-scrum-tiimi Aureolis Oy Agenda Scrum lyhyesti Jatkuvan palvelun DW-projekti- Case OP-Pohjola Lähtötilanne ennen Scrumia Scrumin

Lisätiedot

Kurssin aihepiiri: ohjelmistotuotannon alkeita

Kurssin aihepiiri: ohjelmistotuotannon alkeita Kurssin aihepiiri: ohjelmistotuotannon alkeita [wikipedia]: Ohjelmistotuotanto on yhteisnimitys niille työnteon ja työnjohdon menetelmille, joita käytetään, kun tuotetaan tietokoneohjelmia sekä monista

Lisätiedot

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015 CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015 EDELLISELLÄ KERRALLA TAPAHTUNUTTA Täydellinen testaus on mahdotonta. Testataan, koska virheiden löytyminen ajoissa

Lisätiedot

Ohjelmistotekniikka - Luento 3 Jouni Lappalainen

Ohjelmistotekniikka - Luento 3 Jouni Lappalainen Ohjelmistotekniikka - Luento 3 Jouni Lappalainen Luku 3: Ketterä kehitys - ketterien menetelmien 12 periaatetta - XP (extreme programming) - Scrum menetelmä - Lean menetelmä 1 Luku 3: Ketterä kehittäminen

Lisätiedot

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

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 Lakki Nöyrästi vain lakki kourassa... Jussi Vänskä Espotel Oy vierailuluentosarja OTM kurssi 2010 2.luento: ohjelmistokehityksen päivärutiinit Lisää ot sik k o osoit t am alla Siitä vain reunasta Miten

Lisätiedot

Scrumin käyttö ketterässä sovelluskehityksessä

Scrumin käyttö ketterässä sovelluskehityksessä 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

Lisätiedot

Ohjelmiston testaus ja laatu. Testaustasot

Ohjelmiston testaus ja laatu. Testaustasot Ohjelmiston testaus ja laatu Testaustasot Testauksen vaihejako Tarpeet / sopimus Järjestelmätestaus Hyväksymiskoe Määrittely testauksen suunnittelu ja tulosten verifiointi Arkkitehtuurisuunnittelu Moduulisuunnittelu

Lisätiedot

Ohjelmistoarkkitehtuurit. Syksy 2008

Ohjelmistoarkkitehtuurit. Syksy 2008 Ohjelmistoarkkitehtuurit Syksy 2008 Kai Koskimies 1 Tervetuloa Kuopion yliopisto, Oulun yliopisto, Tampereen yliopisto, Teknillinen korkeakoulu, Turun yliopisto, Vaasan yliopisto, Tampereen teknillinen

Lisätiedot

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia Ohjelmistojen mallintaminen, kurssikoe 15.12. esimerkkivastauksia Tehtävä 1 a: Ohjelmistotuotantoprosessi sisältää yleensä aina seuraavat vaiheet: määrittely, suunnittelu, toteutus, testaus ja ylläpito.

Lisätiedot

Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille

Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille 1(23) Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille Matti Vuori, Tampereen teknillinen yliopisto 30.10.2012 Sisällysluettelo 1/2 Esityksen tarkoitus 4 Laatu on tärkeää, ei

Lisätiedot

Ohjelemistotuotanto, syksy 1998 /Prosessi Prosessimallit

Ohjelemistotuotanto, syksy 1998 /Prosessi Prosessimallit Prosessimallit Prosessimalli on ohjelmiston elinkaaren rakenteen määrittely ts. kuvaus sille millaisten vaiheiden kautta ohjelmisto kehittyy ideasta hautaan mahdollisimman yleisesti sovellettavissa oleva

Lisätiedot

Ohjelmistojen mallintaminen, kesä 2010

Ohjelmistojen mallintaminen, kesä 2010 582104 Ohjelmistojen mallintaminen, kesä 2010 1 Ohjelmistojen mallintaminen Software Modeling Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön tuntemus Ohjelmoinnin

Lisätiedot

OHJ-02300 Johdatus ohjelmistotuotantoon

OHJ-02300 Johdatus ohjelmistotuotantoon OHJ-02300 Johdatus ohjelmistotuotantoon Kurssin tavoite, opinto-opas "Luoda yleiskuva ohjelmistotyöstä ja perusvalmiudet määrittelymenetelmien soveltamiseen. Kyky osallistua ohjelmistoprojektiin asiakkaan

Lisätiedot

Ohjelmistotekniikka - Luento 3

Ohjelmistotekniikka - Luento 3 Ohjelmistotekniikka - Luento 3 Luku 3: Ketterä kehitys - ketterien menetelmien 12 periaatetta - XP (extreme programming) - Scrum menetelmä Lean menetelmä 1 Luku 3: Ketterä kehittäminen Ketterä (agile)

Lisätiedot

Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon

Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon 582104 Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon 1 Lyhyt johdatus ohjelmistotuotantoon Ohjelmistotuotanto, ohjelmistoprojektit Miten ohjelmistojen tuottaminen eroaa teollisesta tuotannosta

Lisätiedot

Test-Driven Development

Test-Driven Development Test-Driven Development Syksy 2006 Jyväskylän yliopisto Test-Driven Development Testilähtöinen ohjelmistojen kehitystapa. Tehdään ensin testi, sitten vasta koodi. Tarkoituksena ei ole keksiä kaikkia mahdollisia

Lisätiedot

T Testiraportti - järjestelmätestaus

T Testiraportti - järjestelmätestaus T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria

Lisätiedot

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/jekahkon/wclique/testplan.html WCLIQUE Ohjelmistoprojekti Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com, 75014C,

Lisätiedot

Tietojärjestelmän osat

Tietojärjestelmän osat Analyysi Yleistä analyysistä Mitä ohjelmiston on tehtävä? Analyysin ja suunnittelun raja on usein hämärä Ei-tekninen näkökulma asiakkaalle näkyvien pääkomponenttien tasolla Tietojärjestelmän osat Laitteisto

Lisätiedot

Testausoppeja toimialavaihdoksesta

Testausoppeja toimialavaihdoksesta Testausoppeja toimialavaihdoksesta Maaret Pyhäjärvi Email: Gsm: 040-8233777 Erkki Pöyhönen & Maaret Pyhäjärvi Nimeä Attribution (Finland) http://creativecommons.org/licenses/by/1.0/fi/

Lisätiedot

10 Kohti ketterää ohjelmistokehitystä

10 Kohti ketterää ohjelmistokehitystä 10 Kohti ketterää ohjelmistokehitystä Perinteinen ohjelmistokehitys perustuu vesiputousmalliin, jossa tavoitteena on ensisijaisesti projektin vieminen läpi tietyssä ajassa. Sovelluksen määrittelytyö tehdään

Lisätiedot

Ohjelmistoarkkitehtuurit Kevät käytäntöjä

Ohjelmistoarkkitehtuurit Kevät käytäntöjä Ohjelmistoarkkitehtuurit Kevät 2014 -käytäntöjä Samuel Lahtinen http://www.cs.tut.fi/~ohar/ 8.1.2014 1 Tervetuloa Oulun yliopisto, Tampereen yliopisto, Turun yliopisto, Tampereen teknillinen yliopisto

Lisätiedot

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II 7. Verifiointi ja validointi Verifiointi ja validointi (V&V) on ohjelmistotuotannon työvaihe, missä varmistetaan, että ohjelmisto täyttää sille asetetut implisiittiset ja eksplisiittiset vaatimukset ja

Lisätiedot

Vaatimusmäärittely- ja hallinta. Peruskäsitteet. Syyt aikataulun ja budjetin ylitykseen. TJTA330 Ohjelmistotuotanto

Vaatimusmäärittely- ja hallinta. Peruskäsitteet. Syyt aikataulun ja budjetin ylitykseen. TJTA330 Ohjelmistotuotanto Vaatimusmäärittely- ja hallinta TJTA330 Ohjelmistotuotanto 27.3. Peruskäsitteet Vaatimusten yhteydessä puhutaan yleensä erikseen vaatimusmäärittelystä ja vaatimusten hallinnasta Vaatimusmäärittely on vaatimusten

Lisätiedot

Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista

Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista 582101 - Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista 1 Ohjelmistotuotannon työkaluuista Projektinhallintatyökalut (ei käsitellä tällä kurssilla) CASE- ja mallinnustyökalut (esim. Poseidon)

Lisätiedot

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

Automaattinen regressiotestaus ilman testitapauksia. Pekka Aho, VTT Matias Suarez, F-Secure Automaattinen regressiotestaus ilman testitapauksia Pekka Aho, VTT Matias Suarez, F-Secure 2 Mitä on regressiotestaus ja miksi sitä tehdään? Kun ohjelmistoon tehdään muutoksia kehityksen tai ylläpidon

Lisätiedot

Valtioneuvoston kanslia VAIN VIRKAKÄYTTÖÖN Hallinto- ja palveluosasto/hallintoyksikkö Terja Ketola PTJ2008-työsuunnitelma 1 (5)

Valtioneuvoston kanslia VAIN VIRKAKÄYTTÖÖN Hallinto- ja palveluosasto/hallintoyksikkö Terja Ketola PTJ2008-työsuunnitelma 1 (5) Terja Ketola PTJ2008-työsuunnitelma 1 (5) AIKATAULU JA TEHTÄVÄT / PTJ2008 VALMIS MENOSSA MYÖHÄSSÄ ALOITTAMATTA ALUSTAVA AJANKOHTA EI PIDETTY / TEHTY 1 Määrittelyn läpikäynti PTi, TKe, IHa, TRö 34 23.8.2007

Lisätiedot

Hajaantuminen. Juha Taina, Marko Salmenkivi ja Kjell Lemstöm, Ohjelmistotuotanto 30

Hajaantuminen. Juha Taina, Marko Salmenkivi ja Kjell Lemstöm, Ohjelmistotuotanto 30 Hajaantuminen tällä hetkellä ohjelmistotuotantoa kuvaa hajaantuminen ja erikoistuminen perusperiaatteet ovat säilyneet ennallaan, mutta yritykset käyttävät omia räätälöityjä prosessimalleja, menetelmiä

Lisätiedot

Juha Taina, Marko Salmenkivi ja Kjell Lemström,

Juha Taina, Marko Salmenkivi ja Kjell Lemström, Hajaantuminen tällä hetkellä ohjelmistotuotantoa kuvaa hajaantuminen ja erikoistuminen perusperiaatteet ovat säilyneet ennallaan, mutta yritykset käyttävät omia räätälöityjä prosessimalleja, menetelmiä

Lisätiedot

Ohjelmistojen mallintaminen, kesä 2009

Ohjelmistojen mallintaminen, kesä 2009 582104 Ohjelmistojen mallintaminen, kesä 2009 1 Ohjelmistojen mallintaminen Software Modeling Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön tuntemus Ohjelmoinnin

Lisätiedot