Vaatimusmäärittely projektinhallinnan malleissa
|
|
- Tommi Honkanen
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 Vaatimusmäärittely projektinhallinnan malleissa Ammattikorkeakoulututkinnon opinnäytetyö Tietojenkäsittelyn koulutusohjelma Hämeenlinna, Kevät 2017 Teppo Tuominen
2 TIIVISTELMÄ Tietojenkäsittelyn koulutusohjelma Hämeenlinna Tekijä Teppo Tuominen Vuosi 2017 Työnnimi Vaatimusmäärittely projektinhallinnan malleissa TIIVISTELMÄ Työn tavoitteena oli etsiä vaatimusmäärittelyyn eroja eri projektinhallinnan mallien välillä, löytää hyvän vaatimusmäärittelyn piirteet ja selvittää mitä eroja vaatimusmäämenetelmien rittelyssä on projektinhallinnan menetelmissä perinteisien ja ketterien välillä. Tutkimusmenetelmänä oli teoreettinen tutkimus. Työn teoriaosassa käydään lävitse vaatimusmäärittelyä osa-alueittain ja ohjelmistopro- malleissa. jektinhallinta. Työn keskeisenä osana oli listata eroja vaatimusmäärittelyssä eri projektinhallinnan Keskeinen yhteenveto, vaatimusmäärittelyn on perinteisissä projektimalleissa vaikea palata, jos vaatimuksia tulee lisää. Ketterissä menetelmissä tulee uusia vaatimuksia ohjelmistoprojektin vaiheissa toistuvasti ja tämän jälkeen pääsääntöisesti siihen palaon se, että osa taan uudestaan silloin, kun määritetään lisää vaatimuksia. Ongelmana todellisista vaatimuksista voi tulla hyvin myöhäisessä vaiheessa ohjelmistokehitystä. Avainsanat vaatimusmäärittely, ohjelmistoprojektinhallinta, projektimalli Sivut 20 sivua
3 ABSTRACT Degree Programme in Business Information Technology Hämeenlinna Author Teppo Tuominen Year 2017 Subject ment models Requirements specification on different project manage- ABSTRACT The goal of the thesis was to look for requirement specification differences in project management models and to find the good quality of requirement specification and difference in requirement specification on the traditional development and agile de- section and velopment. The research method was theoretical study. The theory part of the thesis looks for the closer requirement specification soft-ware project management. The main part of the thesis deals with requirement specification differences in project management models. The conclusions of the thesis are that a change in requirement specification after it has been done on traditional development is hard to take steps back to addd more re- of the process quirements in requirement specification. In agile development it is part to add requirements in requirement specification and there is new requirement speci- is that fication where to add more requirements. The problem on agile development all requirements don t have specification the same time, so there is a danger that part of the real requirements are to be found out late in software development. Keywords Pages requirement specification, software project, project model 20 pages
4 SISÄLLYS 1 JOHDANTO VAATIMUSMÄÄRITTELY Vaatimusten tasot Asiakasvaatimukset Toiminnalliset vaatimukset Tietojärjestelmän ei-toiminnallisia vaatimuksia Rajoitteet ja reunaehdot Vaatimusmäärittely osa-alueet Kartoittaminen Analysointi Dokumentointi Validointi OHJELMISTOPROJEKTINHALLINTA VAATIMUSMÄÄRITTELY ERI PROJEKTINHALLINNAN MALLEISSA Perinteiset projektimallit Vesiputousmalli PMI Ketterät menetelmät Scrum RUP (rational unified process) YHTEENVETO LÄHTEET... 19
5 LYHENTEITÄ IT JHS RUP tietotekniikka Julkisen hallinnon suositukset (JHS) Rational Unified Process
6 1 1 JOHDANTO Kiinnostuin aiheesta tehdessäni service-desk työtä. Kiinnostuin tästä, vaikka suoranaisesti en ollut ohjelmistoprosessissa mukana vain välillisesti. Esimerkiksi Microsoft Office version päivitys on oma projektinsa. Tämän kaltaisessa projektissa tulee väistämättä ongelmia, mutta onko mahdollista vähentää ongelmien määrää vaatimusmäärittelyllä asioita huomioiden? Onko tämänlaisissa projekteissa ongelman lähtökohtana huonosti toteutettu ohjelmistoprojekti ja sen vaatimusmäärittely. Vaatimusmäärittelyä käytetään varsinkin ohjelmistonkehityksessä usein, jolloin vaikeita ja monimutkaisia järjestelmiä pystytään kuvaamaan ja esittämään kaikenlaiset mahdolliset toiminnot, joita järjestelmässä tulee olla. Toisaalta pystytään tunnistamaan ja löytämään järjestelmään tarvittavia kriittisiä kohtia. Vaatimusmäärittelyssä voi myös olla virheitä, joihin puuttuminen tulee huomioida mahdollisimman aikaisessa vaiheessa. Tutkimuksessa asiaa käsitellään toimittajan kannalta. Työ rajataan projektinhallinnan malleihin, joita käytetään ohjelmistoprojekteissa. Työssäni hain vastaukset näihin tutkimuskysymyksiin: Millainen on hyvä vaatimus? Millainen on hyvä vaatimusmäärittely? Millaisia eroja vaatimusmäärittelyllä on eri projektinhallinnan malleissa? Millaisia eroja vaatimusmäärittelyssä ja sen tekemisessä on projektinhallinnan menetelmissä perinteisien ja ketterien menetelmien välillä?
7 2 2 VAATIMUSMÄÄRITTELY The hardest single part of building a software system is deciding precisely what to build. No other part of the conceptual work is as difficult as establishing the detailed technical requirements, including all the interfaces to people, to machines, and to other software systems. No other part of the work so cripples the resulting system if done wrong. No other part is more difficult to rectify later (Brooks 1987, 13). Vaatimukset tulevat tarpeista liiketoiminnassa, ja tärkeä lähde ovat asiakas ja kyseisen ohjelman tulevat käyttäjät (Haikala & Mikkonen 2011, 65). Julkisen puolen tietojärjestelmän hankinnasta päättäessä suorittavalla organisaatiolla on oltava selkeä näkemys siitä, mihin järjestelmää tarvitaan. Näkemys asiaan on esimerkiksi voinut syntyä esiselvitystä tehdessä. Useasti alkuvaiheessa löydetyt tarpeet eivät ole tarpeeksi selkeitä, jotta niitä voisi kerätä vaatimuksiksi. Kehityskohteiden tunnistamisvaiheessa löydetyt tarpeet ja esiselvitysvaiheessa näistä tarkentuneet korkean tason vaatimukset eli käyttäjävaatimukset ovat hyvä lähtökohta varsinaiselle vaatimuksien määrittelylle. (JHS 2012b, 11.) Kuva 1. Tarpeet ja vaatimukset voivat tulla useilta eri alueilta JHS (2012b, 12). Vaatimuksia on tavallisesti paljon ja eri sidosryhmien asettamat vaatimukset voivat olla keskenään ristiriidassa(kuva 1) (Pelin 2011, 198). Perusominaisuuksia hyvälle vaatimukselle ovat virheettömyys ja selkeys. Tarkka ja ymmärrettävä riittävä tarkkuus kertoo sen, että vaatimuksen saavuttaminen voidaan mitata, mutta tarkka on usein ristiriidassa vaatimuksen ymmärrettävyyden kanssa. Testattava on pystyttävä tarkistamaan, onko vaatimus täytetty. Sekä taaksepäin jäljitettävä on pystyttävä selvittämään, mistä vaatimus on peräisin. Eteenpäin jäljitettävä
8 3 on voitava selvittää, mikä on vaatimuksen tekninen toteutus ja mitkä testitapaukset testaavat vaatimuksen toteutumisen. (Haikala & Mikkonen 2011, 64.) Varmista että, jokainen vaatimus täyttää hyvän vaatimuksen ehdot. Samoin varmista se, että jokainen vaatimus täyttää hyvän vaatimuksen kriteerit. Tämä toimenpide vie paljon aikaa. Jokainen kriteeri on tärkeä, niiden voisi sanoa olevan vaikuttavia ja korvaamattomia. Mikäli on ongelmia ymmärtää syytä yhdelle tai useammalle kriteerille, tulisi käyttää aikaa kyseisten kriteerin tutkimiseen, jotta voi tulla siihen tulokseen, että jokainen kriteeri on välttämätön. (Young, 2003, ) Vaatimukset ovat tärkeitä, koska ne luovat pohjaa kaikelle kehitystyölle, joka tulee tämän jälkeen. Kun vaatimukset on saatu määriteltyä, kehittäjät pääsevät aloittamaan teknisen työn. Kunnolla hoidettu vaatimustenkäsittely on osatekijä onnistuneessa ohjelmistoprojektissa. (Haikala & Mikkonen 2011, 61.) Tietojärjestelmän vaatimuksien määrittely ja laadukas organisointi ovat onnistuneen tietojärjestelmähankkeen perusedellytys. Vaatimuksien määrittely on haastavaa, mutta se säästää projektin kuluissa, nopeuttaa hankkeen toteutusta ja varmistaa haluttujen ominaisuuksien toteuttamisen. Vaatimuksilla kerrotaan hankkeen toteuttajalle, millaisia ratkaisuja ollaan hankimassa. Vaatimuksien määrittely luo kuvaa siitä, mitä ollaan hankimassa ja määrittelee, millaisia tarpeita kyseiselle tietojärjestelmälle on. (JHS 2012b, 13.) Monet asiakkaat ja projektipäälliköt uskovat varsinainen ohjelmointityön kertovan, että edistymistä tapahtuu. Alan kokemuksen industry experience mukaan, liian vähän aikaa ja pyrkimystä käytetään vaatimuksiin liittyvien asioiden tekemiseen systeemityössä. (Young, 2003, 2.) Alan kokemuksen mukaan parempi lähestymistapa on käyttää enemmän aikaa vaatimuksien keräämiseen, analysoimiseen ja hallinnan tehtäviin. Siihen on tyypillisesti syynä se, että ohjelmointityö aloitetaan liian aikaisin ja tarvitaan lisäaikaa varsinaisten vaatimuksien selvittämiseksi sekä vaatimuksiin liittyvän toiminnan suunnitteluun. Yleensä eroa on ilmoitettujen ja todellisten vaatimusten välillä. Ilmoitetut vaatimukset ovat niitä, mitkä on saatu asiakkaalta aloittaessa järjestelmän tai ohjelmiston kehitystyö. Varsinaiset vaatimukset taas ovat niitä, jotka kuvaavat todennettuja vaatimuksia, joita käyttäjällä on kyseiselle järjestelmälle tai ominaisuudelle. (Young, 2003, 2.) Tarvitaan tavoitteellista pyrkimystä, jotta löydetään ne todelliset vaatimukset, jotka on jätetty mainitsematta. Työskentele asiakkaan ja loppukäyttäjien kanssa löytääksesi todelliset vaatimukset. Tämä vaatii perinpohjaista ymmärrystä asiakkaan tarpeista, tarkkaavaisuutta järjestelmävaatimuksille ja perinpohjaista analyysiä. (Young, 2003, 79.) Riittämätön vaatimuksien määrittely on yleisin suoranainen syy ohjelmistoprojektin epäonnistumiseen. Joidenkin tutkimusten mukaan vaatimuksien määrittelyssä on ollut puutteita yli 75 prosentissa epäonnistuneissa projekteissa. Syitä miksi vaatimuksen määrittely on haasteita. Vaatimuksien kerääjät ja käyttäjät eivät aina ymmärrä toisiaan täysin, tilaaja on yleensä eri kuin varsinainen loppukäyttäjän ja tilaajalla oleva käsitys
9 saattaa poiketa huomattavasti todellisen loppukäyttäjän vaatimuksista. Menetelmät vaatimuksien keräämiseksi ja dokumentointiin voivat olla puutteellisia ja jos määrittelyä ei toteuteta projektina, käytettävät resurssit saattavat olla alakanttiin. (JHS 2009, 7-8.) Vaatimusten tasot Vaatimukset on organisoitu neljälle eri tasolle. Tavoitteet, prosessi, tehtävä ja informaatio. Tavoitetason vaatimukset asettavat liiketoiminnallisesti tavoitteet systeemille, jota ollaan rakentamassa. Prosessitason vaatimuksista kertovat liiketoiminnan aktiviteetit ja työkalut, jotka ovat johdannaisia tavoite tason vaatimuksista. Tehtävätason vaatimukset kertovat vaiheista, jolla saavutetaan ne aktiviteetit, jotka on kerrottu prosessitason vaatimuksista. (Browne & Rogich 2001, 235.) Ylimmän tason kehitysvaatimusten, joita kutsutaan yleensä suunnitteluvaatimuksiksi, pitää olla selvästi ymmärretty ennen suunnittelua. Alemmalla tasolla niistä kehitysvaatimuksista, jotka vastaavat tuloksen vaatimuksista, on yleensä käytetty nimitystä sisäänrakennetut vaatimukset. Vaatimukset, jotka ovat yli keskilinjan näiden kahden ääripään väliltä ja vastaavat prosessivaatimuksia, ovat toisin ilmaistuna työt ja suunnitelmat. Prosessivaatimukset ovat osa ohjelmoinnin suunnittelua ja proseduuri. Prosessivaatimukset on taltioitu ohjelmistovaatimuksiin, lähtökohtana on perimmäinen vaatimus eli asiakkaan tarve, jota ollaan vaatimuksilla täyttämässä. Tarvitaan tehokkaita menetelmiä, joilla tarvevaatimuksia laajennetaan ja saadaan jalostettua pidemmälle. Näin ymmärretään asiakkaan tarpeet sekä saadaan tarkemmat suorituskyvyt vaatimukset. (Young, 2003, 48.) Ohjelmistokehityksen voi ajatella olevan yksikertaisesti kuvaus hyvin korkealta abstraktilta tasolta täsmälliseksi ja yksityiskohtaisen tarkaksi kuvaukseksi. Esimerkiksi ohjelmistoprojektitapauksessa koko hankkeen liiketoiminnallinen tavoite voi olla asiakirjojen laadun parantaminen. Kyseistä vaatimusta analysoidessa voidaan tulla siihen tulokseen, että asetettu tavoite saavutetaan parhaimmillaan siten, että vaatimuksena on tuki oikeinkirjoituksen tarkistamiselle. Tällaista vaatimusta sanotaan asiakasvaatimukseksi, koska vaatimus tulee suoraan asiakkaan tarpeesta. Tämän kaltaisen tavoitteen kuvaamiseen ei tarvita erillistä sanastoa. (Haikala & Mikkonen 2011, 62.) Sidosryhmiä ovat projektista hyötyjät, sekä kaikki ne, jotka mitenkään ovat tekemisissä systeemin kanssa. Mahdollisia sidosryhmiä ovat asiakas, joka maksaa työstä, käyttäjät jotka käyttävät kyseistä systeemiä, neuvonantaja ja projektiryhmät, jotka ovat osallisena ohjelmiston kehityksessä. Aina on olemassa enemmän sidosryhmiä kuin mitä alun perin on odotettu. (Young, 2003, 65.) 2.2 Asiakasvaatimukset Vaatimukset luokitellaan yleensä kolmeen luokkaan (kuva 2). Ohjelmistovaatimukset on luokiteltu: toiminnalliset vaatimukset, ei-toiminnalliset vaatimukset ja rajoitteet ja reunaehdot. (Haikala & Mikkonen 2011, 61.)
10 5 Kuva 2. Asiakas- ja ohjelmistovaatimukset (Haikala & Mikkonen 2011, 62) Toiminnalliset vaatimukset Toiminnalliset vaatimukset kertovat ne toiminnot, jotka systeemin pitää voida toteuttaa (Young, 2003, 46). Toiminnalliset vaatimukset on tärkeä kategoria todellisille vaatimuksille. Toiminnallisia vaatimuksia kutsutaan joskus myös käytös- tai toimintavaatimuksiksi, koska ne täsmentävät syötön systeemille ja systeemin vastauksen kyseiseen syöttöön sekä näiden toiminnallisen käyttäytymisen suhteen näiden kahden välillä. (Young, 2003, 51.) Toiminnalliset vaatimukset kuvataan ensisijaisesti toimintaprosesseina kokonaisuuksien hahmottamiseksi (JHS 2012b, 12). Prosessikuvauksissa on hyvä esittää järjestelmään käyttäjärooleja. Kuvataan lyhyesti käyttäjärooli käyttötilanteessa, jolla kuvataan käyttäjää esimerkiksi käynnistämässä tapahtumaa tai vaikuttamassa käytössä olevaan tilanteeseen esimerkiksi poistumalla kesken tapahtuman. Käyttäjärooli voi olla käyttäjä tai toinen tietojärjestelmä. (JHS (2012b, 25.) Käyttötapauksina toimintoja hahmotellaan siten, että keskeiset järjestelmän käyttötilanteet kuvataan. Esimerkkinä olevassa (kuva 3.) järjestelmän pääkäyttäjän tehtävänä olisi järjestelmän ylläpito. (JHS 2012b, 13.)
11 Prosessikuvauksista on esiselvitys- tai vaatimusmäärittelyvaiheessa etsittävä kaikki mahdolliset järjestelmän ominaisuudet, joiden pohjalta tehdään järjestelmän toiminnalliset vaatimukset. Nämä vaatimukset kuvataan, dokumentoidaan, kommunikoidaan ja hallitaan käyttötapausten avulla. Käyttötapaukset koostuvat tekstinä olevista käyttötapauskuvauksista ja käyttötapauskaavioista. Prosessimalli kuvaa toimintaa, mutta käyttötapausmalli kuvaa käyttäjän ja järjestelmän vuorovaikutusta (kuva 3). (JHS 2012b, 26.) 6 Kuva 3. Käyttötapausmalli Tietojärjestelmän ei-toiminnallisia vaatimuksia Tietojärjestelmän ei-toiminnalliset vaatimukset ovat tarpeellisia suunnittelun- ja toteutustyön haastavuuden arvioimiseksi. Laatuvaatimuksia on laadittu julkisen puolen useille eri alueille ja niihin on hyvä perehtyä määrittelyä tehdessä. (JHS 2012b, 24.) Eitoiminnalliset vaatimukset täsmentävät systeemin ominaisuuksia, kuten luotettavuutta tai turvallisuutta (Young, 2003, 46).
12 Rajoitteet ja reunaehdot Rajoitteet ja reunaehdot liittyvät käyttäjien tarpeisiin, esimerkiksi käytettävät työase- näkö- mat, kämmentietokoneet ja päätteet voivat asettaa rajoituksia. Tietohallinnon kulmassa tuotettu palvelinympäristö, tietokantajärjestelmän jne. voi tuoda rajoituksia ohjelmistonkehitysprojektissa.(jhs 2012b, 24.) Reunaehto voi olla voisii esimerkiksi se, että ohjelmisto on toteutettava Windows-ympäristöön (Haikala & Mikkonen 2011, 62). 2.3 Vaatimusmäärittely osa-alueet Kuva 4. Vaatimuskäsittelyn osa-alueet (Haikala & Mikkonen 2011, 65) ). Vaikeudet, jota tavataan tietojärjestelmän kehityksessä ovat hyvin tunnettuja. Huoli- suurin osa matta hyvästä tahdosta organisaation, analyytikon ja käyttäjien taholta, järjestelmistä on hylätty ennen valmistumistaan tai ne eivät savuta järjestelmälle ase- on yleistynyt tettuja käyttäjävaatimuksia. (Browne & Rogich 2001, 224.) Viime aikoina tehtävänhallinta ohjelmiston käyttö vaatimuksien kirjaamisessa. (Haikala & Mikkonen 2011, 67) Kartoittaminen Yleisesti vaatimuksien kartoittamiseen käytettyjä tapoja ovat tulevan ohjelmiston käyttäjien haastattelu, aivoriihet ja työpajat. (Haikala & Mikkonen 2011, 66) Työpajat ovat ohjattua kokouksia, jossa tarkasti valittu ryhmä sidosryhmiä ja aiheen asiantuntijoita työskentelevät yhdessä, määrittelevät, luovat, jalostavatt ja aikaansaa- edustavat vat päätökset toivotuista tuloksista, esimerkiksi mallit ja dokumentit, jotka asiakasvaatimuksia. Hyötyjä työpajaprosessista ovat sen edistävä vaikutus tiimin komovat tehokas munikaatioon, päätöksentekoon ja yhteiseen ymmärrykseen. Työpajat keino tuoda yhteen asiakas, käyttäjät ja ohjelmiston toimittaja. (Young, 2003, 112.) Vaatimukset, jotka on saatu käyttäjiltä ovat yleensä epäselviä ja eivät tarjoa selvää tietoa järjestelmästä, jota ollaan kehittämässä (Würfel, Lutz & Diehl 2016).
13 Analysointi Vaatimusanalyysissä voidaan tarkentaa vaatimuksia sekä selvitellä niiden keskinäisiä suhteita ja prioriteettia. (Haikala & Mikkonen 2011, 66) Dokumentointi Vaatimukset dokumentoidaan sovitulla tavalla dokumenttiin tai yleisesti Exceltaulukkoon. (Haikala & Mikkonen 2011, 66) Validointi Vaatimuksien validointi tehdään yleensä katselmoimalla vaatimusmäärittelydokumentti yhdessä asiakkaan kanssa (Haikala & Mikkonen 2011, 66). Vaatimuksien hyväksymisessä käytetään apuna katselmointia (kuva 5). Katselmointitilaisuuden vetävän puheenjohtajan olisi hyvä olla ulkopuolinen henkilö. Tämän henkilön ei tarvitse olla sisällöntuntija. Puheenjohtajan tehtävänä on huolehtia siitä, että tilaisuus etenee jouhevasti. Sekä siitä, ettei tilaisuudessa aleta ratkoa ohjelmistoprojektin ongelmia ja virheitä. Katselmuksesta on monenlaisia hyötyjä. Ohjelmistoprojektin kannalta katselmointi auttaa projektin etenemisessä, sekä siinä, että mahdollisia vaatimuksia käydään lävitse asiakkaan kanssa ja ulkoisessa laadunvarmistuksessa. Merkittävä asia on, että siihen mennessä tehty työ vastaa asiakkaan näkemystä projektin kulusta ja tarpeista. Hyvin järjestetyssä vaatimuksien katselmuksessa osataan hyödyntää asiakkaan osaamista, jotta löydetään virheellisiä vaatimuksia ja keinoja näiden korjaamiseksi. Tällöin saadaan asiakkaan hyväksyntä tehdylle työlle ja mahdollisille muutoksille. Tämän tulisi myös antaa asiakkaalle selkeäkuva projektin kulusta. Asiakkaan, loppukäyttäjän ja sidosryhmien näkökulmat tuovat selviä hyötyjä ja sen vuoksi katselmointitilaisuuteen olisi hyvä saada mahdollisimman laaja osanotto asiakas- ja sidosryhmiltä. (JHS 2012b, 15.) Kuva 5. Vaatimusten katselmointi (JHS 2012b, 15.)
14 Vaatimusmäärittelyn tuloksena on yleensä dokumentti toiminnallinen määrittely functional specification. Se sisältää tavallisesti sekä asiakas- että ohjelmistovaatimukset. (Haikala & Mikkonen 2011, 68.) 9
15 10 3 OHJELMISTOPROJEKTINHALLINTA Projekti määritellään yleensä kertaluonteiseksi tehtäväksi, jolla on suunniteltu alku ja loppu. Projekti voi olla itsenäinen tai yksi osatekijä hankkeessa. Projekti toteutetaan vaiheittain. Näihin vaiheisiin kuuluu aloitusvaihe ja yksi tai useampi välivaihe sekä lopetusvaihe (kuva 7). (Cagley & Chemuturi 2009, 4.) Projektinhallinnan periaatteet ovat toimialariippumattomia. (Haikala & Mikkonen 2011, 153). Onnistunut suunnittelu, toteuttaminen, osittaminen, aikataulu ja riskianalyysi ovat yleisesti käytetyt työkalut. Työkalut ovat samoja, mutta projektit erilaisia. Erilaiset projektit vaativat erilaisia teknisiä ja hallintalähestymistapoja. Perinteiset projektinhallinnat työkalut ja tekniikat toimivat useimmiten vähemmän tehokkaasti it:n puolella. Perinteistä projektinhallinnan mallia voisi käyttää, mutta niissä ei ole otettu huomioon it-projektien ainutlaatuisia ominaisuuksia. (Taylor 2003, 38.) Projektinhallinta on erikoistunut lähestyminen liiketoiminnan hallintaan. Perinteinen näkökulma liiketoiminnan hallintaan on suunnittelu, organisointi, johtaminen ja hallinta. Projektinhallinta sisältää nämä asiat sekä projektin aloittamisen ja lopetuksen. Projektinhallinta voidaan määritellä osaamiseksi ja tieteeksi, joka määrittelyssä aikataulussa, mahdollisesti määritetyllä budjetilla vastaa asiakkaan suoritusvaatimuksiin käytössä olevilla resursseilla. Projektinhallinta on osaamista, joka käsittää kanssakäymistä monimuotoisten ryhmien välillä. Tämä osa projektinhallintaa tekee siitä haastavaa. (Taylor 2003, 13.) Yleisesti ottaen isompien projektien ongelmat liittyvät ihmisten ongelmien ratkaisemiseen, tiimityöskentelyyn ja neuvottelemiseen. Teknilliset ongelmat ovat paljon helpompia ratkaista, kuin ihmisiin liittyvät ongelmat. Tekniset työkalut tekevät projektinhallinasta osittain tiedettä. (Taylor 2003, 13.)
16 11 Kuva 6. Ohjelmistoprojektinhallinta (Taylor 2003, 15). It-projektin suunnittelussa ja hallinnassa on tärkeä ymmärtää projektinhallinnan elinkaari (kuva 6). Elinkaaren vaiheet sovittavat projektin tavoitteet yhteen, jotta ohjelmiston vaatimukset toteutuvat. (Taylor 2003, 39.) Ohjelmistojen tuotantoa varten on olemassa rajaton määrä monenlaisia lähestymistapoja (Haikala & Mikkonen 2011, 29.) Vuosien varrella on kehittynyt lukuisia julkisesti saatavilla olevia projektimalleja, joista osa täysin yleisiä ja osa nimenomaan itprojekteihin tarkoitettuja. (Haikala & Mikkonen 2011, 34.) Ohjelmistoprojektin toteutuksessa on kaksi osatekijää, nimellisesti systeemityö ja ohjelmistoprojektinhallinta. Systeemityö pitää sisällään kaikki tietotekniikkaan kuuluvat aktiviteetit, joita tehdään projektin toteuttamiseksi. Ohjelmistotekniikka käsittelee komponenttien rakentamista, niiden integrointia, verifiointia, validointia sekä lopuksi kaikkien komponenttien yhdistämistä lopputulokseen valmiiksi tuotteeksi. Lisäksi se vakuuttaa siihen, että asiakas hyväksyy lopputuloksena olevan ohjelman toimituksen. Ohjelmistoprojektinhallinta varmistaa sen, että projektin toimitettavat osat valmistuvat ajallaan, tehokkaasti ja ilman virheitä. (Cagley & Chemuturi 2009, 19.) On olemassa kahdenlaista koulukuntaa liittyen kytkökseen systeemityön ja johtamismenetelmien välillä: vahvasti kytköksissä ja löyhästi kytköksissä. (Cagley & Chemuturi 2009, 19.) Vahvasti kytköksissä olevassa ajatuksena on se, että molemmat menetelmäopilliset tavat ovat vahvasti kytköksissä ja johtaminen on riippuvainen systeemityön metodologiasta, jota käytetään projektin toimitettavien osien rakentamiseen. Tämän takia johtamisen pitää olla tiivisti yhteydessä systeemityön kanssa. (Cagley & Chemuturi 2009, 19.)
17 Löyhästi kytköksissä olevassa mallissa nämä kaksi systeemityön näkökulmaa ovat löyhästi kytköksissä, mutta vaikuttavat kuitenkin toisiinsa. Tämän ajatustavan projektinhallinnalla on monia tavoitteita. Päätavoitteena on rakentaa toimitettava tuote. Muita tavoitteita ovat projektiaikataulun hallinta, tuottavuus, laatu, moraali, asiakas ja tuotto. Löyhästi kytköksissä oleva koulukunta ajattelee, että ohjelmistoprojektin hallinnassa johtaja on ensisijaisena ja tietoinen systeemityömenetelmä toissijaisena. (Cagley&Chemuturi 2009, 19.) Kaiken a ja o projektinhallinnan metodologiassa systeemityön metodologia on monen eri tekijöiden summa, kuten mikä on organisaation koko ja mitä projektihallinnan mallia käytetään tietyssä projektissa. (Cagley&Chemuturi 2009, 19.) It-projektit ovat luoneet lisää projektinhallinnan haasteita. Vaikeuksia lisää itprojektien monimutkaisuus, melkein jokaisessa it-projektissa rajoitteena on tiukka aikatauluja, sekä tarve saada it-projektin tuotos markkinoille. It:tä käytetään lähes kaikkialla. Tämä on osaltaan ratkaissut liiketoiminnan ongelmia ja tuonut uusia liiketoiminallisia mahdollisuuksia, mutta samalla luonut uusia vakavia hallinnan ongelmia. (Taylor 2003, 10.) Ohjelmistoprojekteille on tyypillistä, että projektipäällikölle jää tarkennettavaa ja valinnanvaraa verrattain paljon (Haikala & Mikkonen 2011, 153). Ohjelmistoprojektit voidaan jaotella niiden ominaisuuksien mukaan erilaisiin kategorioihin. Näillä pyritään luonnehtimaan ohjelmistoa periaatteisella tasolla, mikä usein auttaa ymmärtämään toteutustyön kannalta tärkeimpiä haasteita. (Haikala & Mikkonen 2011, 12.) Ohjelmistoprojektiin katsotaan tavallisemmin liittyvän ainakin määrittelyä, suunnittelua, ohjelmointia ja testausta (Haikala & Mikkonen 2011, 153). Vaatimusmäärittely voi olla oma projekti suuremmissa hankkeissa, jossa tavoitteena on saada selville järjestelmän asiakasvaatimuksia mahdollisimman perusteellisesti. Monimutkainen ympäristö, jossa ohjelmisto-organisaatiot toimivat aiheuttaa sen, että suurin osa ohjelmistoprojekteista ei valmistukkaan. Sen mukaan mitä toivotaan määrittelyn, suunnitellun budjetin ja sovitun aikataulun suhteen. Minkä lisäksi tulee pitää tulevan järjestelmän käyttäjät ja sidosryhmät tyytyväisinä. (Luna-Reyes, Zhang, Gil- Garcia & Cresswell 2005.) Ohjelmistoprojektin erikoisuuksiin kuuluu, että lopputulos ei ole aineellista. Tuloksena on toimiva ohjelma ja todellista komponentteja ei toimiteta. Melkein kaikki lopputuloksesta on tietokoneen sisällä. (Cagley & Chemuturi 2009, 4.) Ohjelmistoprojektissa henkilön edistymistä voidaan mitata toimivan ohjelmiston tai kirjoitetun ohjelmistokoodin mittapuulla. Ohjelmistontuotannossa visuaalinen arviointi ei riitä varmistamaan, että henkilö tekee oman osansa. Huolimatta edistyksestä ohjelmistotekniikan- ja kaavio-työkaluissa. Ne eivät ole nostaneet tarkkuutta, jolla päästäisiin samaan tarkkuuteen, johon päästään muilla tekniikan tieteenaloilla. (Cagley & Chemuturi 2009, 4.) 12
18 13 4 VAATIMUSMÄÄRITTELY ERI PROJEKTINHALLINNAN MALLEISSA Vuosien varrella on kehittynyt monia julkisesti saatavilla olevia projektimalleja, joista osa on täysin yleisiä ja osa nimenomaan it-projekteihin tarkoitettuja. (Haikala & Mikkonen 2011, 34.) Eri projektimallit (kuva 8) poikkeavat yleensä, miten alla olevan kuvassa 7 on osa-alueita sovelletaan projektivaiheissa. (Haikala & Mikkonen 2011, 29) Kuva 7. Projektinhallinan osa-alueet (Haikala & Mikkonen 2011, 29.) 4.1 Perinteiset projektimallit Suomessa käytettään varsin yleisesti IPMA-, PRINCE2-, PMI-pohjaisia projektimalleja (Haikala & Mikkonen 2011, 34). Vähänkin monimutkaisempaa ohjelmaa kehittäessä ohjelmistokehitykseen kuuluu muuta, kuin itse ohjelmointi (kuva 8) (Haikala & Mikkonen 2011, 29) Vesiputousmalli Ensimmäisiä suuria tietokoneohjelmia tehdessä, havaittiin tarvetta järjestelmälliselle työprosessille. Se noudattaa tavallisesti tuttua järjestystä, jolla määritellään asiakkaan tarpeet. (Haikala & Mikkonen 2011, ) Keskeisenä ideana vesiputousmallissa on se, että jokaisessa vaiheessa keskitytään pelkästään tämän prosessivaiheen saamiseksi loppuun. Vaiheen valmistuttua siirrytään
19 14 seuraavaan tai palataan edelliseen, mikäli aikaisempaa vaihetta on tarvetta muuttaa. Vaatimusmäärittely toteutuu (kuva 8) päävaatimuksin määritys-, järjestelmän- ja oh- jelmistonsuunnittelu kohdissa. (Jyväskylän Yliopisto n.d.) Kuva 8. Vesiputousmalli (Jyväskylän Yliopisto n.d.) Tarkistellessa uudempia projektinhallinnan malleja, löytyy niiden sisältää jossain muo- pelkistet- dossa vesiputousmallin alkuperäinen idea. Teollisuudessa käytetään yleensä tyä mallia, josta on poistettu iterointi. (Haikala & Mikkonen 2011, ) PMI PMI-mallissa projektin suunnitteluvaiheessa tehdään vaatimusmäärittely, mutta pro- Alla ku- jektin toteutusvaiheessa projektin vaatimusmäärittely päivittyy ja tarkentuu. vassa 9. kohdassa P2 (Haikala & Mikkonen 2011, 36) Kuva 9. PMI projektin kulku (Haikala & Mikkonen 2011, 35)
20 Ketterät menetelmät Ohjelmistokehitystä tekeminen paremmaksi, että osallisena sitä ja kehittää ohjelmistokehitystä eteenpäin. Kokemuksen mukaan kannatta arvostaa henkilöitä ja keskustelua enemmän, kuin malleja ja menetelmiä. Valmista toimivaa ohjelmistoa enemmän kuin ohjelmiston laajaa dokumentaatiota. Yhteistyötä asiakkaan kanssa kuin sopimusneuvotteluja. Tehdä muutoksia tarpeen mukaan kuin suunnitelman tarkkaa noudattamista. Kaikissa mainituilla asioilla on arvoa, mutta ensiksi kerrottuja pidetään tärkeämpänä. (Beck &Beedle& van Bennekum& Cockburn & Cunningham & Fowler &Grenning& Highsmith & Hunt & Jeffries & Kern &Marick& Martin & Mellor 6 Schwaber& Sutherland & Thomas ) Ketterät menetelmät poissulkien RUP kannustavat minimaaliseen vaatimuksien dokumentointiin systeemityössä. (Cagley&Chemuturi 2009, 19) Scrum Yleisin käytössä oleva ketterä menetelmä on Scrum, jopa siihen asti sanasta on tullut ketterän ohjelmistokehityksen synonyymi. Scrumin hyvinä puolina pidetään sen yksinkertaisuutta. Scrumissa on vain kolme roolia, tuotteen omistaja jonka tehtävät muistuttavat tuotepäällikköä, Scrum-mestari vastaa projektipäällikköä ja tiimi vastaa projektiryhmää. Huomionarvoista on, että projektin epäonnistumiseen johtaneet syyt liittyvät lopulta vaatimusten hallintaan. Scrum ei ota vaatimuksienhallintaan mitenkään kantaa vaan siirtää vastuun tuotteen omistajalle. Srum ottaa kantaa vain osaan ohjelmiston elinkaaren tehtävistä ja tarvitsee yhdistämisen projektinhallinnan välineistöön. (Haikala & Mikkonen 2011, ) Jopa ketterässä Scrum-mallissa (kuva 10) voidaan nähdä yhdistyminen toisiaan seuraavaksi lyhyiksi vesiputouksiksi (kuva 8) (Haikala & Mikkonen 2011, 37.)
21 16 Kuva 10. Scrum-prosessi (Haikala & Mikkonen 2011, 48.) RUP (Rational Unified Process) On kehitetty laaja ohjelmistokehityksen prosessikehikko, joka on räätälöitävissä moneen eri tarkoitukseen. (Haikala & Mikkonen 2011, 42.) RUP on tarkka systeemityön menetelmä, jossa on hyvin muiden menetelmien tapaan dokumentaatio perinteisien menetelmien mukaisesti. (Cagley & Chemuturi 2009, 19.) Tässä mallissa toteutettavat vaatimukset voidaan jakaa iteraatioihin. Hieman vesiputousmallia muistuttava vaihteet (kuva 9) tehdään tosin erilaisilla painotuksilla, mutta jokaisessa RUP:n vaiheessa (kuva 12). (Haikala & Mikkonen 2011, 42.)
22 Kuva 11. RUP-vaiheistus (Haikala & Mikkonen 2011, 43.) 17
23 18 5 YHTEENVETO Hyvän ohjelmistoprojektin vaatimus on, että se vastaa asiakkaan tarpeisiin. Riittämätön vaatimuksien määrittely on yleisin syy ohjelmistoprojektin epäonnistumiseen. Perusominaisuutena hyvälle vaatimukselle on luonnollinen selkeys ja virheettömyys. Vaatimukset lähtevät liiketoiminnan tarpeista, ja niiden tärkeät lähteet ovat asiakas ja tulevan ohjelman käyttäjät. Kunnollisen vaatimusmäärittelyn pohjana on selkeä näkemys siitä, mihin järjestelmää tarvitaan. Älä odota vaatimusmäärittelyn olevan koskaan aivan valmis, muuten vaatimusmäärittely ei koskaan valmistu, se ei ole koskaan ajan tasalla tai projektin lopputulos on myöhässä. Vaatimusmäärittely eri projektinhallinnan malleissa toteutuu kaikissa käytetyissä malleissa, mutta se miten paljon aikaa vaatimusmäärittelyyn käytetään vaihtelee huomattavasti. Perinteisellä menetelmällä vaatimukset määritellään hyvin aikaisessa vaiheessa ohjelmistonkehitystä ja tämän jälkeen pääsääntöisesti vaatimuksien määrittelyyn ei enää palata millään tavalla. Tämä luo ongelmia, jos ohjelmistoprojektin loppuvaiheessa olisi tarvetta muuttaa tai lisätä uusia vaatimuksia. Tämä johtaa helposti ohjelmiston vaatimusmäärittelyn epäonnistumiseen ja tätä kautta siihen, että projekti ei täytä sille asetettuja tavoitteita. Ohjelmistoprojekteissa ketterissä menetelmissä vaatimusmäärittely tehdään ohjelmistoprojektin eri vaiheissa toistuvasti ja tämän jälkeen pääsääntöisesti siihen voidaan palata uudestaan. Näin uudet ja löydetyt vaatimukset voidaan myöhäisessäkin vaiheessa tuoda ilman ongelmia käyttöön. Ongelmana on se, että osa todellisista vaatimuksista voi tulla hyvin myöhäisessä vaiheessa ohjelmistokehitystä.
24 19 LÄHTEET Beck, K. Beedle, M. van Bennekum, A. Cockburn, A. Cunningham, W. Fowler, M. Grenning, J. Highsmith, J. Hunt, A. Jeffries, R. Kern, J. Marick, B. Martin, R. Mellor, S. Schwaber, K. Sutherland, J. & Thomas, D Ketterän ohjelmistokehityksen julistus. Haettu osoitteesta Brooks, F. (1987). No Silver Bullet Essence and Accidents of Software Engineering Haettu osoitteesta Browne, G. & Rogich, M. (2001). An empirical investigation of user requirements elicitation: Comparing the effectiveness of prompting techniques. Journal of Management Information Systems, 17(4), Haettu osoitteesta Cagley, T. & Chemuturi, M. (2009). Mastering Software Project Management. Haettu osoitteesta Haikala. I. & Mikkonen T. (2011). Ohjelmistotuotannon käytännöt. Helsinki: Talentum Media Oy JHS (2012a). JHS 172 ICT-palvelujen kehittäminen: Esiselvitys. Haettu osoitteesta JHS (2012b). JHS 173 ICT-palvelujen kehittäminen: Vaatimusmäärittely. Haettu osoitteesta JHS (2009). JHS 165 ICT-palvelujen kehittäminen: Vaatimusmäärittely. Haettu osoitteesta Jyväskylän Yliopisto n.d. TIE358 Verkkokurssin tuotantoprosessi. Haettu osoitteesta tahttp:// Luna-Reyes, L., Zhang, J., Gil-Garcia, J.R. &Cresswell, A. (2005), Information systems development as emergent socio-technical change: a practice approach. European Journal of Software developments, Vol. 14 No. 1, pp Haettu osoitteesta ment_as_emergent_socio-technical_change_a_practice_approach
25 20 Pelin, R. (2011). Projektihallinnan käsikirja. 7. painos. Helsinki: Projektijohtaminen oy Risto Pelin Taylor, J. (2003). Managing Information Technology Projects. New York: AMACOM. Haettu osoitteesta Würfel D, Lutz R., Diehl S. (2016). Grounded requirements engineering: An approach to use case driven requirements engineering. Journal of Systems and Software, Vol 117, pp Haettu osoitteesta Young, Ralph. (2003). Requirements Engineering Handbook. Norwood, US: Artech House Books
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
Määrittely- ja suunnittelumenetelmät
Menetelmädokumentti Määrittely- ja suunnittelumenetelmät Versio Päiväys Tekijä Kuvaus 0.01 5.12.01 Pekka Koskinen Alustava sisällysluettelo 0.1 7.12.01 Pekka Koskinen Ensimmäinen luonnos 1.0 11.12.01 Pekka
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ää
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
Onnistunut SAP-projekti laadunvarmistuksen keinoin
Onnistunut SAP-projekti laadunvarmistuksen keinoin 07.10.2010 Patrick Qvick Sisällys 1. Qentinel 2. Laadukas ohjelmisto täyttää sille asetetut tarpeet 3. SAP -projektin kriittisiä menestystekijöitä 4.
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
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
Tenttikysymykset. + UML- kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
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
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,
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.
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
Scrum-käytännöt ja käyttäjäkokemustyö ohjelmistoalan yrityksessä. Marie-Elise Kontro
Scrum-käytännöt ja käyttäjäkokemustyö ohjelmistoalan yrityksessä Marie-Elise Kontro 25.03.2015 Sisältö 1. Tutkimuskysymykset 2. Scrum ja käyttäjäkokemustyö 3. Tutkimusmenetelmä 4. Tulokset 5. Luotettavuuden
Määrittelyvaihe. Projektinhallinta
Määrittelyvaihe Projektinhallinta testaus määrittely suunnittelu ohjelmointi käyttöönotto, testaus tuotteenhallinta laadunvarmistus dokumentointi vaatimustenhallinta Määrittely Määrittely, eli kansanomaisesti
ICT-palvelujen kehittäminen - suositussarja Suvi Pietikäinen Netum Oy
ICT-palvelujen kehittäminen - suositussarja 24.11.2009 Suvi Pietikäinen Netum Oy JHS 171 ICT-palvelujen kehittäminen: Kehittämiskohteiden tunnistaminen ICT-palvelujen kehittäminen: Kehittämiskohteiden
Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely
582101 - Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely 1 Vaatimukset ja käyttötapaukset Vaiheittainen mallintaminen ja abstraktiotasot Järjestelmän rajaaminen sidosryhmäkaaviolla
KOODAAKO PROJEKTIPÄÄLLIKKÖ?
KOODAAKO PROJEKTIPÄÄLLIKKÖ? - ROOLIODOTUKSET KETTERISSÄ OHJELMISTOPROJEKTEISSA Mikko Viskari Development Manager Ohjelmistoprojektikokemusta vuodesta 2005 Teknisen projektipäällikön roolissa vuodesta 2011
PROJEKTINHALLINTA. Käyttäjälähtöinen suunnittelu
PROJEKTINHALLINTA Käyttäjälähtöinen suunnittelu PROJEKTINHALLINTA OSANA KURSSIA Opettaja: Tomi Jokitulppo email: Tomi.Jokitulppo@metropolia.fi puhelin: 040 5430197 4 opetuskertaa: 2.10., 9.10., 16.10.
UCOT-Sovellusprojekti. Testausraportti
UCOT-Sovellusprojekti Testausraportti Ilari Liukko Tuomo Pieniluoma Vesa Pikki Panu Suominen Versio: 0.02 Julkinen 11. lokakuuta 2006 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä
Orientaatio ICT-alaan. Projekti
Orientaatio ICT-alaan Projekti Projekti Ajallisesti rajoitettu, kertaluonteinen tehtävä määrätyt resurssit sekä oma (linjaorganisaatiosta poikkeava) organisaatio Toteutus tapahtuu suunnitelmallisesti ennalta
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,
BIMin mahdollisuudet hukan poistossa ja arvonluonnissa LCIFIN Vuosiseminaari 30.5.2012
BIMin mahdollisuudet hukan poistossa ja arvonluonnissa LCIFIN Vuosiseminaari 30.5.2012 RIL tietomallitoimikunta LCI Finland Aalto-yliopisto Tampereen teknillisen yliopisto ja Oulun yliopisto Tietomallien
Sisäänrakennettu tietosuoja ja ohjelmistokehitys
Sisäänrakennettu tietosuoja ja ohjelmistokehitys Petri Strandén 14. kesäkuuta, 2018 Petri Strandén Manager Cyber Security Services Application Technologies Petri.stranden@kpmg.fi Petri vastaa KPMG:n Technology
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
Ohjelmistojen mallintaminen, mallintaminen ja UML
582104 Ohjelmistojen mallintaminen, mallintaminen ja UML 1 Mallintaminen ja UML Ohjelmistojen mallintamisesta ja kuvaamisesta Oliomallinnus ja UML Käyttötapauskaaviot Luokkakaaviot Sekvenssikaaviot 2 Yleisesti
Projektisalkun kehittäminen - kilpailuetua toimituksiin projektisalkulla. Projektisalkku ohjausvälineenä. Projektisalkun kehittäminen
Projektisalkun kehittäminen - kilpailuetua toimituksiin projektisalkulla Projektisalkku ohjausvälineenä Projektisalkun kehittäminen Kilpailukyvyn parantaminen PLUS Akatemia Projektitoiminnan ja -johtamisen
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
T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta
T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on dokumentti esittelee tietokonegrafiikkaalgoritmien visualisointijärjestelmän kehitysprojektissa käytettävän vaatimustenhallintamenetelmän. Päivämäärä
Ohjelmistoprosessit ja ohjelmistojen laatu Kevät Ohjelmistoprosessit ja ohjelmistojen laatu. Projektinhallinnan laadunvarmistus
LAADUNVARMISTUS 135 Projektinhallinnan laadunvarmistus Projektinhallinnan laadunvarmistus tukee ohjelmistoprojektien ohjaus- ja ylläpitotehtäviä. Projektinhallinnan laadunvarmistustehtäviin kuuluvat seuraavat:
Vaatimustenhallinta. Exit
Vaatimustenhallinta Asiakasvaatimusten hallinnan tarkoitus on analysoida ja priorisoida kerätyt asiakasvaatimukset sekä hallita niitä ohjelmistokehityksen eri vaiheissa. Olennaista on jäljitettävyys: on
Dokumentointi ketterissä menetelmissä
Dokumentointi ketterissä menetelmissä Dokumentointi kuuluu ketteriin menetelmiin niin kuin kaikkeen ohjelmistotuotantoon Dokumentointi itsessään yksi vaatimus, jonka prioriteetti pitää arvioida (asiakkaan
OHJ-3010 Ohjelmistotuotannon perusteet. Ohjelmistoprojektin hallinta
OHJ-3010 Ohjelmistotuotannon perusteet Ohjelmistoprojektin hallinta 1 Sisältö Projektiorganisaatio ja sidosryhmät Ohjelmistoprojektin kulku Projektin suunnittelu Ositus Osallistujat Työmäärän arviointi
PROJEKTIN SUUNNITTELU JOUNI HUOTARI, PAAVO MOILANEN, ESA SALMIKANGAS
PROJEKTIN SUUNNITTELU JOUNI HUOTARI, PAAVO MOILANEN, ESA SALMIKANGAS 10 KEYS TO SUCCESSFUL SOFTWARE PROJECT 1. Clear Vision 2. Stable, Complete, Written Requirements 3. Detailed User Interface Prototypes
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
Tietojärjestelmien hankinta ja ICT-projektit
Tietojärjestelmien hankinta ja ICT-projektit Lauri Tapola Kevät 2017 Miksi aihe on tärkeä? IT projekteista onnistuu: 34 % kustannusarvion ja aikataulun mukaisina 51 % ylittää arviot (80 % aikatauluylityksiä)
Hankinnan problematiikka
Antti Kirmanen Hankinnan problematiikka Toimittajan näkökulma Asiakkaan näkökulma www.sulava.com www.facebook.com/sulavaoy 2 1. Ristiriita www.sulava.com www.facebook.com/sulavaoy 3 Asiakas haluaa Onnistuneen
BaRE Käyttövalmis vaatimusmäärittelymenetelmä
BaRE Käyttövalmis vaatimusmäärittelymenetelmä Uolevi Nikula, Tietotekniikan osasto, LTKK, Uolevi.Nikula@lut.fi 13.11.2002 un/tsoft 1 Esityksen sisältö Jatko-opinnot Lisensiaatintutkimus BaRE menetelmä
T-76.115 Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta
T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on dokumentti esittelee tietokonegrafiikkaalgoritmien visualisointijärjestelmän kehitysprojektissa käytettävän vaatimustenhallintamenetelmän. Päivämäärä
IT2015 EKT-ehtojen käyttö
-ehtojen käyttö Erityisehtoja ohjelmistojen toimituksista ketterillä menetelmillä Näiden ohjeiden tavoitteena on helpottaa sopimista ketterien menetelmien käytöstä IT-alalla ja nostaa esiin keskeisiä sopimusta
Projektin suunnittelu
Projektin suunnittelu Sami Kollanus TJTA330 Ohjelmistotuotanto 15.3. Projektin suunnittelu - CMMIkäytänteet Projektin estimaatit: Määritellään projektin laajuus (scope) Määritellään tehtävien ja tuotosten
Rakentamisen 3D-mallit hyötykäyttöön
Rakentamisen 3D-mallit hyötykäyttöön 1 BIM mallien tutkimuksen suunnat JAO, Jyväskylä, 22.05.2013 Prof. Jarmo Laitinen, TTY rakentamisen tietotekniikka Jarmo Laitinen 23.5.2013 Jarmo Laitinen 23.5.2013
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
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
ISO 9001:2015 JÄRJESTELMÄ- JA PROSESSIAUDITOIN- NIN KYSYMYKSIÄ
ISO 9001:2015 JÄRJESTELMÄ- JA PROSESSIAUDITOIN- NIN KYSYMYKSIÄ IMS Business Solutions Oy, J Moisio 10/ 2016 2.10.2016 IMS Business Solutions Oy 2 ISO 9001:2015 PROSESSIEN AUDITOINTIKYSYMYKSIÄ ISO 9001:2015
Prosessiajattelu. Organisaation prosessikuvaus - CMMI. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessien määritys CMMI käytänteet
Organisaation prosessikuvaus - CMMI Prosessikuvaukset ja elinkaarimallit Sami Kollanus TJTA330 Ohjelmistotuotanto 7.2.2007 Level5 Level4 Level3 Requirements Development Technical Solution Product Integration
Jussi Klemola 3D- KEITTIÖSUUNNITTELUOHJELMAN KÄYTTÖÖNOTTO
Jussi Klemola 3D- KEITTIÖSUUNNITTELUOHJELMAN KÄYTTÖÖNOTTO Opinnäytetyö KESKI-POHJANMAAN AMMATTIKORKEAKOULU Puutekniikan koulutusohjelma Toukokuu 2009 TIIVISTELMÄ OPINNÄYTETYÖSTÄ Yksikkö Aika Ylivieska
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
Ohjelmistojen mallintaminen. Luento 2, pe 5.11.
Ohjelmistojen mallintaminen Luento 2, pe 5.11. Kertausta Ohjelmistotuotantoprosessin vaiheet: Vaatimusanalyysi- ja määrittely Mitä halutaan? Suunnittelu Miten tehdään? Toteutus Ohjelmointi Testaus Varmistetaan
OHJ-3010 Ohjelmistotuotannon perusteet, kesä 2012
OHJ-3010 Ohjelmistotuotannon perust eet, kesäkurssi 2012 Ajankoht aist a kurssilla - Harjoitustyöryhmien muodostaminen tänään - Taustatarinat ja tieto parituksesta ryhmille sähköpostitse perjantain 1.6.2012
Raportointi >> Perusraportti Palautepyyntö: ICT palvelujen kehittäminen: Vaatimusmäärittely
76c39 (Valtiovarainministeriö), olet kirjautuneena sisään.. toukokuuta 9 :9:46 Your boss is {} Kirjaudu ulos Etusivu Kyselyt Raportointi Asetukset Käyttäjätiedot Ota yhteyttä Oppaat Help Päällä P Raportointi
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:
Ketteryys kokeilemalla. Leo Malila Kehittämispäällikkö, Kela
Ketteryys kokeilemalla Leo Malila Kehittämispäällikkö, Kela 1.11.2016 Agenda Kelan ICT Ketteryys tavoitteena Teetetyn tutkimuksen ja sen kohteen esittely Havaintoja tutkimuksen perusteella Kelan ketteryys
Onnistunut ohjelmistoprojekti
Onnistunut ohjelmistoprojekti 2.12.2008 Hermanni Hyytiälä Reaktor Innovations Oy Agenda Yritysesittely Keinoja onnistuneeseen ohjelmistoprojektiin Ihmiset Menetelmät Käytännöt ja työkalut Tulevaisuuden
Avoimen ja yhteisen rajapinnan hallintamalli
Avoimen ja yhteisen rajapinnan hallintamalli 1.10.2015 Sisältö tausta avoimet toimittajakohtaiset rajapinnat (toimittajan hallitsemat rajapinnat) avoimet yhteiset rajapinnat (tilaajan hallitsemat rajapinnat)
Malliperustainen ohjelmistokehitys - MDE Pasi Lehtimäki
Malliperustainen ohjelmistokehitys - MDE 25.9.2007 Pasi Lehtimäki MDE Miksi MDE? Mitä on MDE? MDA, mallit, mallimuunnokset Ohjelmistoja Eclipse, MetaCase Mitä jatkossa? Akronyymiviidakko MDE, MDA, MDD,
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
SharePoint-pohjaisten Intranet- ja Internettoteutusten. Juha Anttila. SharePoint HPR Twitter: #sphpr. Copyright 2014 IITC.
SharePoint-pohjaisten Intranet- ja Internettoteutusten parhaat käytännöt SharePoint HPR 7.5.2014 Twitter: #sphpr 1 SharePoint-pohjaisten Intranet- ja Internet-toteutusten parhaat käytännöt Miten Intranet-
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ä
Opetussuunnitelmien ja tutkintojen perusteiden rakenteistaminen
Opetussuunnitelmien ja tutkintojen perusteiden rakenteistaminen Toiminnallinen määrittely: Työsuunnitelma TYÖSUUNNITELMAN TIEDOT Versio 0.1 Laatija Ulla Angervo Laatimispäivämäärä Hyväksyjä Hyväksymispäivämäärä
Sisäänrakennettu tietosuoja ja ohjelmistokehitys
Sisäänrakennettu tietosuoja ja ohjelmistokehitys Petri Strandén 8. kesäkuuta, 2018 Agenda Ohjelmistokehitys Ohjelmistokehitys vs. konsultointi Vaatimukset Tietosuoja Tietosuoja ohjelmistokehityksessä kiteytettynä
Big Room -toiminta tutkimuksen näkökulmasta. Sari Koskelo, Vison Oy
? Big Room -toiminta tutkimuksen näkökulmasta Sari Koskelo, Vison Oy 16.3.2018 Sisältö Big Room konseptin moniulotteisuus Tavoitteet Johtaminen Big Room toiminta kehitys- ja toteutusvaiheissa Big Room
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
Software engineering
Software engineering Alkuperäinen määritelmä: Naur P., Randell B. (eds.): Software Engineering: A Report on A Conference Sponsored by the NATO Science Committee, NATO, 1968: The establishment and use of
Ohjelmistotekniikka kevät 2003 Laatujärjestelmät
Laatujärjestelmät Ohjelmistotekniikka kevät 2003 Prosessiajattelu Sisään Prosessi Ulos ohjaus mittaus Laatujärjestelmät Laatujärjestelmät määrittelevät sen, mitkä prosessit täytyy olla määritelty ei sitä,
Avoimen ja yhteisen rajapinnan hallintasuunnitelma v.1.4
Avoimen ja yhteisen rajapinnan hallintasuunnitelma v.1.4 Tämän esityksen sisältö tausta avoimet toimittajakohtaiset rajapinnat (toimittajan hallitsemat rajapinnat) avoimet yhteiset rajapinnat (tilaajan
Kun scrum ei riitä - skaalaa ketterä tuotekehitys SAFe lla Nestori Syynimaa Sovelto Oyj
Kun scrum ei riitä - skaalaa ketterä tuotekehitys SAFe lla 28.10.2016 Nestori Syynimaa Sovelto Oyj 1 Puhujasta Seniori-konsultti Nestori Syynimaa SAFe, Scrum, Lean IT, ITIL, kokonaisarkkitehtuuri,.. PhD
Miten löydän Sen Oikean? 22.11.2012 Senaattoritilaisuus Liisa Paasiala, Senior Consultant
Miten löydän Sen Oikean? 22.11.2012 Senaattoritilaisuus Liisa Paasiala, Senior Consultant On mahdollista löytää Se Oikea! Luotanko sattumaan? Onnistuminen on aloitettava heti Onnistumisen kaava on 4 x
Johdatus ohjelmistotuotantoon
Johdatus ohjelmistotuotantoon Luento nro 3, 9.9.2013 Kari Systä (materiaali osin Ilkka Haikalalta ja Marko Leppäseltä) 9.9.2013 JOTU/K.Systä 1 Tiedotettavaa Viikkoharjoitusryhmiä on vähennetty yhdellä
Projektinhallinta SFS-ISO mukaan
Projektinhallinta SFS-ISO 21500 mukaan (Ohjeita projektinhallinnasta, 2012) 13.4.2017 Panu Kiviluoma Osaamistavoitteet Luennon jälkeen osaat selittää, mitä tarkoitetaan Projektilla Projektinhallinnalla
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
Avoin lähdekoodi hankinnoissa Juha Yrjölä
Avoin lähdekoodi hankinnoissa 9.6.2016 Juha Yrjölä Mitä on avoin lähdekoodi? 1. Lähdekoodi tulee jakaa ohjelmiston mukana tai antaa saataville joko ilmaiseksi tai korkeintaan luovuttamiskulujen hinnalla.
Kokonaisuuksien, riippuvuuksien ja synergioiden hahmottaminen helpottuvat
Johtaminen voidaan jakaa karkeasti kolmeen osaan: 1. Arvojohtaminen (Leadership) 2. Työn(kulun) johtaminen (Process management) 3. Työn sisällön ja tulosten/ tuotosten johtaminen (esim. Product management)
Yhteenveto tuotteenhallinnan tiimoilta kertyneistä opeista. Jukka Kääriäinen Jukka.kaariainen@vtt.fi 22.4.2015
Yhteenveto tuotteenhallinnan tiimoilta kertyneistä opeista Jukka Kääriäinen Jukka.kaariainen@vtt.fi 22.4.2015 Sisältö Mistä tietoja koottu? Opit Yhteenveto Mistä tietoja koottu? Nämä tiedot on kerätty
IIZT4020 Projektitoiminta
IIZT4020 Projektitoiminta Jouni Huotari S2010 http://student.labranet.jamk.fi/~huojo/opetus/iizt4020/ Tutustumiskierros Kuka minä olen miksi minä opetan projektitoimintaa Keitä te olette mitä te haluatte
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/
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
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
IT2015 EKT ERITYISEHTOJA OHJELMISTOJEN TOIMITUKSISTA KETTERIEN MENETELMIEN PROJEKTEILLA LUONNOS
20.4.2015 IT2015 EKT ERITYISEHTOJA OHJELMISTOJEN TOIMITUKSISTA KETTERIEN MENETELMIEN PROJEKTEILLA 1 1.1 SOVELTAMINEN Näitä erityisehtoja sovelletaan ohjelmistojen tai niiden osien toimituksiin ketterien
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?
CT60A4600 Projektinhallinta. Luentorunko. Luento 1:Yleistä ja organisaatiot. Projektinhallinta Osa 1: yleistä. Kurssin tavoitteet
CT60A4600 Projektinhallinta Luentorunko Luento 1:Yleistä ja organisaatiot Projektinhallinta Osa 1: yleistä Kurssin tavoitteet Kurssin keskeisin sisältö Kurssin rakenne Luennot Harjoitukset Harjoitusajat
Risto Pelin Microsoft Project 2002 projekti- ja yritystason järjestelmänä
Risto Pelin Microsoft Project 2002 projekti- ja yritystason järjestelmänä PROJEKTIJOHTAMINEN OY RISTO PELIN 3 Sisällysluettelo ESIPUHE 7 OSA I PROJEKTIN HALLINTA PROJEKTITASOLLA 1 JOHDANTO 11 1.1 Projektiohjelmien
Oleelliset vaikeudet OT:ssa 1/2
Oleelliset vaikeudet OT:ssa 1/2 Monimutkaisuus: Mahdoton ymmärtää kaikki ohjelman tilat Uusien toimintojen lisääminen voi olla vaikeaa Ohjelmista helposti vaikeakäyttöisiä Projektiryhmän sisäiset kommunikointivaikeudet
Ohjelmajohtamisen käyttöönotto yrityksissä STRAP PPO-tutkimusprojektin loppuseminaari
Ohjelmajohtamisen käyttöönotto yrityksissä 20.5.2008 STRAP PPO-tutkimusprojektin loppuseminaari 20.5.2008 Lassi Lindblom, Projektijohtamisen konsultti, Suomen Projekti-Instituutti Sisältö Suomen Projekti-instituutti
$$$ Raha ratkaisee. $$$ Raha ratkaisee. Ohjelmistotuote. Ohjelmistotekniikan määritelmä
$$$ Raha ratkaisee On vaara rakastua tekniikkaan, myös asiakkailla Kaikki pitää pystyä perustelemaan taloudellisesti Projektin toteutus yleensä -> voidaan jättää toteuttamatta, jos ei maksa itseään takaisin
Ohjelmistojen mallintaminen kertausta Harri Laine 1
kertausta 5.12.2008 Harri Laine 1 Ohjelmiston elinkaari, elinkaarimallit Yleinen puitemalli (reference model) - abstrakti kokonaiskuva ei etenemiskontrollia, ei yksityiskohtia Ohjelmistoprosessimallit
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
Käyttäjäkeskeinen suunnittelu
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
Hyvin määritelty on puoliksi tehty kuinka vältetään turha tekeminen jo alussa
1 Hyvin määritelty on puoliksi tehty kuinka vältetään turha tekeminen jo alussa Passion leads to design, design leads to performance, performance leads to SUCCESS! OLLI NIEMI Yoso Oy Mitä määrittelyltä
Loppuraportti. Virtuaali-Frami, CAVE-ohjelmisto. Harri Mähönen projektiassistentti Seinäjoen ammattikorkeakoulu. Versio
1 Loppuraportti Virtuaali-Frami, CAVE-ohjelmisto Harri Mähönen projektiassistentti Seinäjoen ammattikorkeakoulu Versio 1.0 15.1.2006 2 Sisällys Tiivistelmä... 3 1 Johdanto... 4 1.1 Dokumentin tarkoitus...
Yrittäjäkasvatuksen polku - sivusto. Yksityiskohtainen suunnittelu Huhtikuu 2018
Yrittäjäkasvatuksen polku - sivusto Yksityiskohtainen suunnittelu Huhtikuu 2018 Sisällys 1. Sivuston tavoitteet 2. Tausta 3. Näkemys työn tekemisestä ja etenemisestä 4. Roolit ja vastuut -ehdotus 5. Ylätason
SIPOC ja Arvovirtakartta työskentely - Ohje
SIPOC ja Arvovirtakartta työskentely - Ohje 1. Riittävän aihealueen osaamistason varmistaminen. Käsitteiden ja työkalujen esittely Asiakasarvo ja prosessitehokkuus SIPOC Arvovirtakartta. Työkalujen käyttöohjeet
"Miten IT infra-projekti onnistuu ja miten epäonnistuu" Timo Häkkinen TTY PDF versio josta on poistettu 1 kuva ja yhden sivun tekstit
"Miten IT infra-projekti onnistuu ja miten epäonnistuu" Timo Häkkinen TTY 7.6.2017 PDF versio josta on poistettu 1 kuva ja yhden sivun tekstit Esityksen rakenne ja esittäjän taustat Seuraavassa esityksessä
Kehittää ohjelmointitehtävien ratkaisemisessa tarvittavia metakognitioita!
Kehittää ohjelmointitehtävien ratkaisemisessa tarvittavia metakognitioita! eli... Hyvä kaava sanoo enemmän kuin,... tuhat riviä koodia!... sata riviä tekstiä!... kymmenen diagrammia! YLEISTÄ FORMAALEISTA
Ostavat organisaatiot konsultin silmin
Ostavat organisaatiot konsultin silmin Softaa sutjakasti - Kuinka pitää projektimopo käsissä Sytyke Ry:n laivaseminaari 9.9.2009 Paula Miinalainen, Arbor Vitae Konsulttina monitoimittajaympäristöissä muutosten
Käyttötapausanalyysi ja testaus tsoft
Käyttötapausanalyysi ja testaus tsoft 15.09.2004 http://cs.joensuu.fi/tsoft/ Johdanto Use Case analyysi (käyttötapausanalyysi) on yleisesti käytetty järjestelmälle asetettujen toiminnallisten vaatimusten
Prosessiajattelu. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessikuvaus - CMMI. Sami Kollanus TJTA330 Ohjelmistotuotanto 3.4.
Prosessikuvaukset ja elinkaarimallit Sami Kollanus TJTA330 Ohjelmistotuotanto 3.4. Organisaation prosessikuvaus - CMMI Level5 Level4 Organizational Innovation and Deployment Causal Analysis and Resolution
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:
Katselmoinnit. review) Katselmoinnit (review( Mitä ovat katselmoinnit? Katselmoinnin määritelmä (IEEE 1988)
Katselmoinnit Johdatus ohjelmistotekniikkaan Sami Kollanus 19.10.2004 Katselmoinnin määritelmä (IEEE 1988) An evaluation of software element(s) or projects status to ascertain discrepancies from planned
2. Ohjelmistotuotantoprosessi
2. Ohjelmistotuotantoprosessi Peruskäsitteet: prosessimalli: mahdollisimman yleisesti sovellettavissa oleva ohjeisto ohjelmistojen tuottamiseen ohjelmistotuotantoprosessi: yrityksessä käytössä oleva tapa