Sisältö: 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 2
|
|
- Martti Halttunen
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 Johdanto Ohjelmistotuotannon perusteiden kurssilla annetaan yleiskuva ohjelmistotuotannosta, sen eri osa-alueista ja ohjelmistotuotantoon vaikuttavista tekijöistä. Tavoitteena on luoda toiminnalliset ja tekniset valmiudet järjestelmän määrittelyprojektiin osallistumiseen. Kurssi on suunnattu asiakkaan ja toimittajan väliseen vuorovaikutukseen, jossa korostuu järjestelmäkuvauksiin perustuva kommunikaatio. Kuvausmenetelmien pohjan luo UMLkuvausstandardi. Kurssi edellyttää itseopiskeluun liittyvää omatoimista työskentelyä harjoitustehtävien ja laajahkon harjoitustyön muodossa. Itseopiskelumateriaali pohjautuu oppikirjaan Haikala Ilkka, Märijärvi Jukka, Ohjelmistotuotanto, jonka luvut 1-10 tämä kurssi kattaa. Kirjan luvut sisältyvät jatkona olevaan Ohjelmistotuotannon menetelmät - kurssiin. Exit
2 Sisältö: Kurssin perustelu Tämän päivän ohjelmistot Tuotantoprosessi Vain muutos on pysyvää Kustannusten syntyminen Määrittelyn ongelmat ja riskit Lisää pohdintaa Kertauskysymykset 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 2
3 Miksi tämä kurssi? Exit
4 Ohjelmistotuotannon kehitys Teollinen ohjelmointi: vain joitakin vuosikymmeniä Ohjelmien koko kaksinkertaistuu muutamien vuosien välein Ohjelmistotyön tuottavuus kasvaa vuosittain vain noin 4 % Yli puolet ohjelmistoprojekteistä myöhästyy ja ylittää kustannusarvionsa Repeated Repeatedstudies have have shown shown that that the the failure failure rate rate for for custom custom software softwareprojects is is above above 70% 70% 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 4
5 Toimialakatsaus Suomi Tietoteollisuuden taloudellinen merkitys kasvaa jatkuvasti» Suomen BKT (2000) oli 783 Mrd mk, josta tavaravienti 334 Mrd mk» sähkö- ja elektroniikkateollisuuden tuotannon bruttoarvo 140 Mrd mk, josta vienti 95 Mrd mk (~60%); työllistää n työntekijää suurempi kuin metsä- ja metalliteollisuus» ohjelmistoliiketoiminnan arvo (2000) oli n. 5 Mrd mk, josta vienti n. 2 Mrd mk; työllistää n työntekijää» ohjelmistoliiketoiminnan odotetaan kasvavan lähivuosina merkittävästi sähkö- ja elektroniikkateollisuutta nopeammin... 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 5
6 Suomen tietoteollisuus alle kymmenen miljardiluokan ( ) yritystä n. 10 yritystä joiden liikevaihto ylittää 100 M suuri yritys - liikevaihto kymmeniä M tyypillinen ohjelmistoyritys - liikevaihto luokassa M Liikevaihtotilastoja ohjelmistoteollisuus ~ 100 t /hlö laite- ja ohjelmistomyynti: laaja skaala; moninkertainen edelliseen verrattuna Suomen Suomen tietoteollisuus tietoteollisuus (2001): (2001): Nokia Nokia Mrd Mrd Sonera Sonera 2Mrd 2Mrd Compaq Compaq Computer Computer 0,3 0,3 Mrd Mrd Proha Proha M M Tieto-X Tieto-X M M Helsoft Helsoft 5M 5M Mikkelin Mikkelin SavoData SavoData 3 3 M M Suomen tietoteollisuus suurinta 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 6
7 Ohjelmointi Suomessa ohjelmistovienti tapahtuu vielä pääosin sulautettuna eri järjestelmiin» puhdas ohjelmistovienti on kuitenkin voimakkaassa kasvussa (kasvuodotukset kymmenprosentti-tasolla) Ohjelmistyö on jo monessa maassa (Intia, Pakistan, Irlanti,...) muuttumassa kaikkein tärkeämmäksi vientialaksi Ohjelmointi on tuotannonala ja sen ohjaaminen ja hallinta on tieteellisten, taloudellisten ja insinöörintoiminnan menetelmien ja lähestymistapojen sovellusalue. 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 7
8 What Weinberg says: Mikään ei ei korvaa korvaa ratkaistavan ongelman perusteellista ymmärtämistä joskus joskus voi voi tosin tosin käydä käydä hyvä hyvä tuuri tuuri Mikään ratkaisu ei ei sovellu sovellu kaikkiin tehtäviin ja ja johonkin tilanteeseen parhaiten soveltuva lähestymistapa voi voi olla olla toisessa tilanteessa kaikista huonoin On On olemassa monia monia hyödyllisiä lähestymistapoja, jotka jotka toimivat useammassa kui kui yhdessä tilanteessa, joten joten kannatta tutustua sellaiseen mikä mikä on on toiminut aikaisemmin Gerald Gerald Weinberg Weinberg :: software software developer, developer, researcher, researcher, teacher, teacher, and and designer designer of of software software curricula curricula at at IBM; IBM; after after that that formed formed consulting consulting firm firm to to help help software software engineering engineering organizations manage manage the the change change process process in in a more more fully fully human human way; way; has has written written several several hundred hundred articles articles and and more more than than books books I've I've discovered that people are are at at the the bottom of of just just about every problem. When I'm I'm not not starting a new social system, I'm I'm often repairing an an old old one; in in this this role, I'm I'm an an organizational therapist I I like like to to think of of my my profession as as restoring human works of of art. art. Exit Weinberg & Weinberg and Friends 11/04/2002 "Ohjelmistotuotanto", Hannu Jaakkola 8
9 Fairley: It may well be that great Software Engineers are born rather than taught. However, they don t grow great software engineers themselves; without training they may become great hackers instead CSEE 95 Dr. Richard E. (Dick) Fairley 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 9
10 Työkalut Ala nähdään helposti työkalusidonnaisena» työkalut ovat vain apuväline mm. kuvata, tuottaa ja hallita syntyneitä (vaihe)tuotteita» konservatismi - sidos "menneisyyden" työkaluihin vaikeuttaa rationaalista valintaa» kehitystyön paradigmat ohjaavat työkalujen valintaa (esimerkiksi nyt oliomenetelmät) Keskeisenä kurssilla ovat kuvaamisen työkalut, esimerkiksi Rational Rose MS-Visio myös toimisto-ohjelmat (PowerPoint, Word, ) 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 10
11 Tarvittavat valmiudet Ohjelmistoprosessien kehittäminen Erikoiskurssit Ohjelmistoprojekti Ohjelmointi Ohjelmistotuotannon perusteet Ohjelmistotuotannon menetelmät Tiedonhallinta 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 11
12 Tämän päivän ohjelmistot Ohjelmistot on perinteisesti totuttu jakamaan soveltamisalueidensa mukaisesti kaupallishallinnollisiin ohjelmistoihin, tuotantoprosessien tietotekniikkaan sekä sulautettuihin järjestelmiin. Luokittelu perustuu ajatukseen siitä, että erityyppisissä sovelluksissa korostuvat erilaiset käsittelytarpeet ja toteutuksen tekniikat. Kaupallishallinnollisille ohjelmistoille ominaista on suurten tietomäärien hallinta. Tuotantoprosessien tietotekniikassa voidaan erottaa toisistaan prosessiautomaatio ja tuotantoautomaatio. Prosessiautomaatiojärjestelmissä tietotekniikka on integroitu ohjaamaan ja valvomaan tuotantojärjestelmää esimerkiksi paperikonetta; tuotantoautomaatiossa taas on kyse yksittäisten tuotantosolujen (työstökoneet, robotit) ja niiden muodostaman kokonaisuuden (kuljettimet) ohjauksesta tietokoneiden avulla. Esimerkkejä tästä ovat pitkälle automatisoidut tehtaat ja automaattivarastot. Kasvava osuus ohjelmistoista on ns. sulautettuja ohjelmistoja, jotka on tarkoitettu erilaisten toimilaitteiden ohjaukseen. Esimerkiksi matkapuhelimeen sisältyvää tietotekniikkaa ohjataan useiden satojen tuhansien ohjelmarivien muodostamalla ohjelmistolla. Edellä esitetty luokittelu on itse asiassa hieman keinotekoinen, koska käytännössä nykyaikaiset ohjelmistot sisältävät monipuolisesti erityyppisten sovellusluokkien piirteitä: vaikka matkapuhelin on tyyppiesimerkki sulautetusta järjestelmästä, sisältää sen ohjelmisto mm. tietokantojen käsittelyä ja jopa prosessinohjausta Exit
13 Tämän päivän ohjelmistot Tavanomainen atk Prosessinohjaus Tuotantoautomaatio Sulautetut järjestelmät Edellisten kombinaatiot 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 13
14 Ohjelmistot ennen ja nyt 20 vuotta sitten Nyt pienet ohjelmat päättyvät ohjelmat eräajo toimintaa tukeva gurut ja sankarit räätälöity kloc Microsoft Word, Microsoft Excel - > KLOC suuret järjestelmät 24h/vrk, 7 pv/vkko RT interaktiivinen kriittinen ryhmätyö tuotteet kloc "Serious" programs The TheAI AIsystem systemcyc encompasses encompasses more more than than million million assertions, assertions, has has consumed consumed some some $50 $50 million million and and person-years person-years of of development development effort effort 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 14
15 Mutta... Mikä ei ole muuttunut : ohjelmistoissa on vakavia laatuongelmia ohjelmistotyön tuottavuus on alhainen onnistuminen riippuu ratkaisevasti projektiin osallistuvien ammattitaidosta ohjelmistokehitys on ratkaisevasti kalliimpaa ja hitaampaa kuin osataan ennakoida 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 15
16 Osaamisalueet Tekniikka Tuotantoprosessi Sovellusalue Painotukseen vaikuttavat projektin koko sovelluksen luonne laatuvaatimukset tehtävän selkeys... 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 16
17 Motto If you always do what you always did, you ll always get what you always got anon Lesson learned: Parhaiten onnistuvat ne, jotka eivät luota liikaa viimeisimpiin poppakonsteihin, mutta ovat silti valmiita kokeilemaan uusia ideoita Weinberg 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 17
18 Tuotantoprosessi...ohjelmistojen tuotantoprosessi on vaiheittainen kuvaus käyttäjien tarpeista toimivaksi järjestelmäksi Haikala&Märijärvi, s.1. Exit
19 Järjestelmän kehitysvaiheet vaatimukset ja määrittely suunnittelu ja ja toteutus testaus ja ja integrointi Development Development Life Life Cycles Cycles (Murphy (Murphy 1): 1): Order Order T-shirts T-shirts Announce Announce delivery delivery date date Write Write manuals manuals Write Write software software Hire Hire product product manager manager Write Write specifications specifications Ship Ship Test Test Sack Sack the the manager, manager, announce announce uppgrade uppgrade Mikään Mikäänei eikorvaa ratkaistavan ratkaistavanongelman perusteellista perusteellistaymmärtämistä tarpeet tyydyttävä ratkaisu 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 19
20 Ohjelmistoprojekti tarpeet, ideat, vaatimukset, reunaehdot Projekti Development Development Life Life Cycles Cycles (Murphy (Murphy 2): 2): Pick Pick Code Code Name Name Change Change Code Code Name Name Leak Leak Old Old Code Code Name Name Claim Claim compatibility compatibility Write Write Software Software Develop Develop Technical Technical Design Design Ship Ship Blame Blame developers developers tietojärjestelmä The Software Project Manager's handbook 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 20
21 Kehitysprosessin vaiheet Määrittely Tuote asiakkaan kannalta Arkkitehtuurisuunnittelu Jako moduuleiksi, rajapintojen määrittely Moduulisuunnittelu Moduulien suunnittelu ja toteutus 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 21
22 Prosessimalli Liiketoiminta, johtaminen Laatujärjestelmä Hankkeiden hallinta (tuotteen tasolla) Projektinhallinta Projektinhallinta Projektinhallinta ohjelmointi suunnittelu testaus määrittely käyttöönotto, ylläpito tuotteenhallinta laadunvarmistus dokumentointi vaatimustenhallinta... 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 22
23 Vesiputousmalli Esitutkimus Mikä on ratkaistava ongelma, onko ratkaisua olemassa, mitä se saa maksaa, mitä reunaehtoja sillä on... Määrittely Millainen järjestelmä täyttää ongelman vaatimukset Suunnittelu Miten järjestelmä toteutetaan, järjestelmän osittaminen Toteutus Osien ohjelmointi Integrointi ja testaus Osien yhteenliittäminen Käyttöönotto ja ylläpito Määrittelyprojekti Toteutusprojekti Software Lifecycles 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 23
24 Toimintatapa Laatujärjestelmä määrittelee yrityksen tavan toimia Toiminta voidaan mallintaa tarkastelemalla yrityksen toimintaprosesseja, joihin ohjelmiston tuotantoprosessi liittyy Määrittely- ja suunnittelumenetelmä kattaa yleensä vain pienen osan koko prosessia Esimerkki laatukäsikirjasta (HYTT) 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 24
25 Overflow Oy:n asiakasprosessi Palaute Overflow Oy resurssit, ideat neuvottelut/ valmistelu projekti tai hanke asettaminen käyttöönotto käyttö asiakas tarpeet tehtävää koskevat asiakirjat tuotekansio 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 25
26 Ohjelmiston tuotantoprosessi Ohjeistukset -Projektiohje - Määrittelyohje - Tarkastusohje alustava projektisuunnitelma - Suunnitteluohje - Ohjelmointiohje - Testausohje loppuraportti määrittely tarkastukset Työn vaiheistus järjestelmätestaussuunnitelma suunnittelu tarkastukset ohjelmointi tarkastukset integrointitestaus järjestelmätestaus projektin käynnistäminen projektin päättäminen toiminallinen määrittely tekninen määrittely ohjelmakoodi testausraportti määrittelykatselmus hyväksymiskatselmus Katselmukset suunnittelukatselmus Pöytäkirjat Projektisuunnittelu, seuranta ja ohjaus tarkennettu projektisuunnitelma kokouspöytäkirjat 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 26
27 OMT-prosessi Vaatimusten kartoittaminen Feasibility Study -vaatimukset -käyttötapaukset olioanalyysi käyttäytymisanalyysi kälimäärittely kälitehtävien määrittely ohjelmalohkon määrittely User Interface Specification - dialogikaaviot (tilakaaviot) - tehtäväkuvaukset (tapahtumasekvenssikaaviot) olioiden suunnittelu ohjelmalohkon rajapintamäärittely käyttäytymisen suunnittelu luokkamäärittely luokkien toteutus Program Block Technical Specification -suunnittelun oliomallit -suunnittelun tapahtumasekvenssikaaviot testaus Vaiheiden eteneminen - normaalisti peräkkäistä -myös o rinnakkaista o iteratiivista Service Block Functional Specification - analyysin oliomalli - operaatiokuvaukset (tapahtumasekvenssikaaviot) Service Block Technical Specification -ohjelmalohkojen rajapinnat -ohjelmalohkojen kommunikointikaaviot (tapahtumasekvenssikaaviot) Ohjemakoodi -luokkamäärittely -luokkien toteutus 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 27
28 Rationaalinen tuotantoprosessi Todellisuus ei vastaa koskaan laatukäsikirjan ja oppikirjojen siloiteltuja prosessimalleja. Miksi prosessimalleja tarvitaan? rationaalinen prosessi antaa kuitenkin ohjeita siitä, mitä missäkin vaiheessa pitää tehdä ihmisten on helpompi siirtyä projektista toiseen jos projektien toimintatavat muistuttavat toisiaan ja dokumentaation on kunnossa kun tiedetään mitä prosessissa pitää tapahtua, tulee ulkopuolinen seuranta helpommaksi ulkopuolisen arvioijan on helpompi arvioida projektin tilannetta 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 28
29 Mikä on todellisuus? No No matter where you you are arein in the the system development life life cycle, the the system will will change, and and the the desire to to change will will persist troughout the the life life cycle. [Bersoff et et al. al. 1980] The The top top five five causes for for poor poor cost cost estimation all all relate to to the the requirements process Frequent requirements changes missing requirements insufficient communication with users poor poor specification requirements insufficient analysis [Lederer & Prasad 1992] Murphy's Murphy's Law Law of of Software Software Development: Development: Blessed Blessed is is the the end end user user who who expects expects nothing, nothing, for for he/she he/she will will not notbe be disappointed. disappointed. 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 29
30 Vain muutos on pysyvää Exit
31 Vain muutos on pysyvää, koska Kaikkia asiakasvaatimuksia ei välttämättä ymmärretä oikein projektin alkuvaiheessa Asikasvaatimuksia voi jäädä huomaamatta Ohjelmiston toimintaympäristössä voi tapahtua muutoksia projektin aikana (asiakkaan toimintatavat, laitteisto, ohjelmistot,...) Jonkin asiakasvaatimuksen täyttämiseksi määritelty ominaisuus osoittautuu syystä tai toisesta käyttökelvottomaksi Aikataulupaineista johtuen jokin ominaisuus jätetään toteuttamatta 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 31
32 ... Kilpailija julkistaa kehitysprojektin aikana uuden tuotteen Markkinatilanteen muuttumiseen reagoidaan muuttamalla ja lisäämällä vaatimuksia Projektin alkuvaiheessa on tehty teknologiavalintoja, jotka hallitsevassa markkinaasemassa olevan teknologiatoimittajan suunnanmuutosten johdosta osoittautuvat epäonnistuneiksi... 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 32
33 Iteratiivinen kehitysmalli Määrittely Määrittely Määrittely... Suunnittelu Suunnittelu Suunnittelu Toteutus Toteutus Toteutus Testaus Testaus Testaus Versio 1 Versio 2 Versio 3 onnistuneen tuotekonseptin tärkeys: tuotteistettavissa ja samalla mukautettavissa asiakkaan vaatimuksiin asiakasvaatimusten ja muutosten hallinta => tuotekonsepti pysyy eheänä muutoksesta huolimatta on varauduttava tekemään asioita uudestaan 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 33
34 Asiakasvaatimusten analysointi, priorisointi ja hallinta Alustavat asiakasvaatimukset Vaatimustenhallinta: kartoitus, analysointi, jäljitettävyys, muutokset Vaatimukset Hallitut muutokset Kelpuutetut 1 5 Myöhempään versioon Toiminto 1 Toiminto Toiminto 3 Hylätty 4 Analysoidut vaatimukset 2 2 ominaisuus ominaisuus 2 Ohjelmistovaatimukset: Järjestelmän toiminnallinen määrittely moduuli a 1 moduuli b moduuli c 2 moduuli d moduuli e moduuli f Järjestelmän tekninen määrittely Toteutettu järjestelmä 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola
35 Kustannusten syntyminen It's It's morally morally wrong wrong to to allow allow naive naive end end users users to to keep keep their their money. money. Murphy's Murphy's Laws Laws of of Software Software Development Development Exit
36 rest Kustannusten syntyminen Infrastructure - 7 % Human resource management - 3% 1% Technology Development - 3% 5% 1% Management - 7% Quality assurance, configuration. management 5% Marketing and sales Inbound Logistic 1% 4% 3% preliminary design 8% 5% 8% 13% rework detailed code and integration design unit test and test 11% 8% 7% Outbound logistics Service Margin Boehm 1987 Operations 80% 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 36
37 Kustannusten jakautuminen, määrittely vaatimukset suunnittelu 5% 3% 7% koodaus 6% moduulitestaus 7% integrointi 6% 67% ylläpito Johtopäätös: Hankintahinta on vain alku tuleville kustannuksille Schach /04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 37
38 Virhekustannusten lumivyöryefekti Virheiten korjauskustannusten kerroin määrittelyvirheet suunnitteluvirheet määrittely suunnittelu moduulisuunnittelutestaus hyväksymistestaus Virhe on kalliimpi korjata myöhemmin kuin lähellä syntyhetkeä Johtopäätös: Huolelliseen määrittelyyn tarkastuksiin kannattaa uhrata aikaa 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 38
39 Määrittelyn ongelmat ja riskit Exit
40 Top Risks, USA Avainhenkilö vaihtaa työpaikkaa Epärealistiset aikataulut ja budjetit Kehitetään ohjelmistoon vääriä toimintoja ja turhia piirteitä Huono käyttöliittymä Muutokset määrittelyssä Ongelmat muualta hankituissa komponenteissa ja/tai palveluissa Tekniset ongelmat (suoritusteho, reaaliaikaisuus, muistitila) Boehm 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 40
41 Epäonnistumiset case study Miten : aikataulu petti kustannukset ylittyivät asiakas tyytymätön tuotteeseen (ei vastaa tavoitteita, liiketaloudelliset menetykset) jälkihoidon suuri työmäärä Johtopäätös: syyt ongelmiin eivät juuri koskaan ole teknisiä, vaan liittyvät ihmisiin, organisaatioon ja projektin johtamiseen Miksi : työmääräarvio virheellinen määrittely puutteellinen muutosvastarinta liian suuri projekti asiakkaan / toimittajan asiantuntemattomuus suunnittelematon käyttöönotto henkilöstövaihtuvuus huono projektipäällikkö ongelmat työvälineissä / laitteissa The Risks Digest 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 41
42 Epäonnistumiset a case study Mars Climate Orbiter: due to a conversion error in which commands to the spacecraft were sent in English units rather than metric units, the spacecraft entered the atmosphere at too low altitude which led to the destruction of the spacecraft; the combined cost of losses was million dollars some communications channels among project engineering groups were too informal ( e. g. not documented! ) the small mission navigation team was oversubscribed and its work did not receive peer review by independent experts no review ( e. g. verification), insufficient training informal processes in place, formal processes ignored Mission and Operations million unofficially, the problem had been detected but due to politics a fix was never deployed Some disasters caused by numerical errors 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 42
43 Epäonnistumiset a case study Explosion of the Ariane 5: On June 4, 1996 an unmanned Ariane 5 rocket launched by the European Space Agency exploded just forty seconds after lift-off. The rocket was on its first voyage, after a decade of development costing $7 billion. The destroyed rocket and its cargo were valued at $500 million. The cause of the failure was a software error: a 64 bit floating point number was converted to a 16 bit signed integer, but the number was larger than the largest integer storeable in a 16 bit signed integer, and thus the conversion failed. The error occurred in a software system that was not needed during launch! it was an inappropriate reuse of a 10- year old software component exception handlers had been placed around 4 of 7 variables; unfortunately, the data conversion error occurred in one of the 3 variables, which were left unprotected, since exception handling code makes the system slower A Bug and a Crash 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 43
44 Ohjelmistotyö on kommunikointia Menetelmät, kuvaustekniikat käyttäjien tarpeet, ideat, rajoitukset reunaehdot mitä esitutkimus määrittely miten mitä miten mitä miten mitä miten mitä toiminnallinen määrittely tekninen määrittely asiakasvaatimukset arkkitehtuurisuunnittelu moduulisuunnittelu moduulisuunnitelmat verifiointi verifiointi verifiointi verifiointi hyväksymistestaus järjestelmätestaus integrointitestaus moduulitestaus ohjelmointi miten ohjelmakoodi verifiointi 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 44
45 ... Ohjelmistojen tuottaminen on spesifikaatioiden tuottamista, so. asioiden määrittelyä Spesifikaatioiden kommunikoimiseksi tarvitaan» luonnollista kieltä» kuvaustekniikoita» sopimuksia Menetelmät ohjeistavat spesifikaatioiden tuottamista 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 45
46 Lisää pohdintaa Tämän päivän tietotekniikka Exit
47 Keskeisiä kehityskulkuja Hajautetut ratkaisut» tietoliikenne olennainen osa järjestelmiä Langattomien ratkaisuiden merkitys kasvaa» useita rinnakkaisia ratkaisuita Yhteistoiminnallisuus ja sovellusten integroituminen - myös laitetasolla» välillinen seuraus: riippuvuus vaikutusmahdollisuuksien ulkopuolella olevista ratkaisuista Tietotekniikka integroituu ympäristöön 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 47
48 Tulevaisuutta? Andy Grove, Intelin pääjohtaja (1998) : [klikkaa kuvaa] Vaikutukset järjestelmäkehitykseen? 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 48
49 Kertauskysymykset Mitä ominaispiirteitä odotetaan ohjelmistotyön ammattilaiselta. Ohjelmistojen jaottelu niiden käyttökohteen mukaan. Miten käyttökohde vaikutta ohjelmistotyöhön. Miten eroavat toisistaan tuotantoprosessin näkökulmasta ohjelmistot, joiden koko on 100 LOC, 1 kloc, 10 kloc, 100 kloc, 1 MLOC. Ohjelmistotyön keskeiset ongelmat. Ohjelmistotyön prosessimallin keskeiset osat ja niiden rooli työn kokonaisuudessa. Mikä on laatukäsikirja. Mitä ongelmia liittyy asiakasvaatimusten kartoittamiseen. Mikä on vesiputousmallin ja iteratiivisen kehitysmallin ero kehitystyön organisoinnin näkökulmasta. Ohjelmistotyö on kommunikointia. Mitä tämä tarkoittaa ja miten kommunikointi hoidetaan. Johdannon viimeisellä kalvolla on esitelty eräitä ohjelmistoille tyypillisiä kehityskulkuja. Miten nämä vaikuttavat ohjelmistotyöhön. Suomessa ohelmistoteollisuus on voimakkaasti kasvava liiketoiminnan alue luvulla ohjelmistovienti tapahtui pitkälti erilaisten tietoliikennetuotteiden muodossa ja edelleenkin tämä tuotannon ja viennin sektori on selkeästi eri suuruusluokassa kuin tavanomainen ohjelmistotuotteiden vienti. Mitä tämä vaikuttaa ohjelmistotyön luonteeseen. Ohjelmistoliiketoiminta on pienyritysvaltainen toimiala, jolle ominaista on verkottuminen ja alihankintarakenteiden kehittyminen. Pohdi miten ohjelmistotyön ja liiketoiminnan näkökulmasta toimiminen alihankkijana eroaa itsenäisesti ohjelmistotyötä tekevän yrityksen toiminnasta. 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 49
50 kertauskysymykset Termi software industrialization tarkoittaa sitä, että ohjelmistoja aletaan tuottaa teollisten tuotteiden kaltaisesti. Käytännön ilmentymänä on mm. se, että ohjelmistotuotteen osia ostetaan ja myydään kuten mitä tahansa kauppatavaraa. On olemassa yrityksiä, jotka ovat erikoistuneita tuottamaan ohjelmistoja, siihen liittyviä rakenteita ja ohjelmiston osia toisten tarpeita varten. Mitä tällainen toimintamuoto vaikuttaa ohjelmistoliiketoimintaan eri näkökulmista asiaa tarkastellen. Ylläpitotyö aiheuttaa tilastojen mukaan noin 2/3 ohjelmiston elinkaaren aikaisista kokonaiskustannuksista. Millä tavalla ohjelmistotyössä voidaan vaikuttaa näiden kustannusten pienentämiseen. Millä keinoilla ohjelmistoyritys voi alentaa virheistä aiheutuvien kokonaiskustannusten suuruutta. Vertaile eri keinoja vaikutusten näkökulmasta toisiinsa. Arvioi myös sitä, miten ohjelmiston elinkaaren eri vaiheissa tehdyt toimenpiteet vaikjuttavat näihin kustannuksiin. Johdannon lopussa on pieni videoleike. Luettele siinä esiintyviä teknologia ja tietojärjestelmäratkaisuita ja arvioi mitä ongelmia niiden tekemiseen liittyy. Miten nämä ongelmat voidaan ratkaista ohjelmistotyössä. Ohjelmistoliiketoiminta kansainvälistyy. Työtä voidaan ostaa ja on tarjolla eri puolilla maailmaa. Mitä tämä merkitsee ohjelmistotyötä ostavan yrityksen toiminnan käytäntöihin. 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 50
51 kertauskysymykset Tutki Internetissä saatavissa olevaa aineistoa käyttäen suomalaisen tietoteollisuuden luonnetta tarkentaen kurssimateriaalin esitystä. Hyviä lähteitä työlle ovat esimerkiksi tilastokeskuksen verkkosivut ( tietoviikon katsaukset ( sähkö- ja elektroniikkateollisuusliiton verkkosivut ( tietotekniikan kehittämiskeskuksen tietoyhteiskuntasivut ( Sitran tietoyhteiskuntasivut ( tidotusporttaalin verkkosivu ( Laadi aiheesta lyhyt tutkielma pohtien alan kehitystä, kansantaloudellista merkitystä, työllisyysvaikutuksia (sekä välittömät että välilliset), alan tuotavuutta, palkkakehitystä, yrityskannan rakennetta toimialapohjaisesti jne. 11/04/2002 Exit "Ohjelmistotuotanto", Hannu Jaakkola 51
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
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
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
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
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
Johdanto. Mitä on ohjelmistotuotanto? Tämän kurssin näkökulma. Sami Kollanus TJTA330 Ohjelmistotuotanto
Johdanto Sami Kollanus TJTA330 Ohjelmistotuotanto 6.3. Mitä on ohjelmistotuotanto? Ohjelmistotekniikka (Software Engineering) tarkoittaa pätevien insinööriperiaatteiden vakiinnuttamista ja käyttämistä
Mitä on ohjelmistotuotanto?
Johdanto Sami Kollanus TJTA330 Ohjelmistotuotanto 6.3. Mitä on ohjelmistotuotanto? Ohjelmistotekniikka (Software Engineering) tarkoittaa pätevien insinööriperiaatteiden vakiinnuttamista ja käyttämistä
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
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
ENE-C2001 Käytännön energiatekniikkaa. Aloitustapaaminen 11.4.2016. Osa II: Projekti- ja tiimityö
ENE-C2001 Käytännön energiatekniikkaa Aloitustapaaminen 11.4.2016 Osa II: Projekti- ja tiimityö Sisältö Projektityö Mitä on projektityö? Projektityön tekeminen: ositus, aikatauluhallinta, päätöksenteon
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
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
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:
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
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
Vaatimusmäärittely- ja hallinta
Vaatimusmäärittely- ja hallinta TJTA330 Ohjelmistotuotanto 27.3. Peruskäsitteet Vaatimusten yhteydessä puhutaan yleensä erikseen vaatimusmäärittelystä ja vaatimusten hallinnasta Vaatimusmäärittely on vaatimusten
582104 Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon
582104 Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon 1 Lyhyt johdatus ohjelmistotuotantoon Ohjelmistotuotanto, ohjelmistoprojektit Miten ohjelmistojen tuottaminen eroaa teollisesta tuotannosta
Salasanan vaihto uuteen / How to change password
Salasanan vaihto uuteen / How to change password Sisällys Salasanakäytäntö / Password policy... 2 Salasanan vaihto verkkosivulla / Change password on website... 3 Salasanan vaihto matkapuhelimella / Change
Millainen on onnistunut ICT-projekti?
Millainen on onnistunut ICT-projekti? Ohjelmistotuotannon lehtori Tero Tensu Ahtee Ohjelmistotekniikan laitoksella 1990- Projektityö-kurssilla 1991- pesunkestävä yliopistohampuusi ei päivääkään oikeissa
On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)
On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) Juha Kahkonen Click here if your download doesn"t start automatically On instrument costs
1. Liikkuvat määreet
1. Liikkuvat määreet Väitelauseen perussanajärjestys: SPOTPA (subj. + pred. + obj. + tapa + paikka + aika) Suora sanajärjestys = subjekti on ennen predikaattia tekijä tekeminen Alasääntö 1: Liikkuvat määreet
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
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?
ENE-C2001 Käytännön energiatekniikkaa. Projekti- ja tiimityö /
ENE-C2001 Käytännön energiatekniikkaa Projekti- ja tiimityö / 5.3.2018 Tervetuloa! Sisältö Projektityö Mitä on projektityö? Projektityön tekeminen Tiimityö Mitä on tiimityö? Tiimityön tekeminen 1 Mitä
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
Ohjelmistotekniikka. Ohjelmistotekniikka 1
Ohjelmistotekniikka Tässä luvussa tarkastellaan ohjelmistotekniikkaan liittyviä keskeisiä käsiteitä sekä ohjelmistotuotannon kohdealueita. Alussa pohditaan ohjelmistojen tyypillisiä piirteitä sekä tietotekniikan
Network to Get Work. Tehtäviä opiskelijoille Assignments for students. www.laurea.fi
Network to Get Work Tehtäviä opiskelijoille Assignments for students www.laurea.fi Ohje henkilöstölle Instructions for Staff Seuraavassa on esitetty joukko tehtäviä, joista voit valita opiskelijaryhmällesi
ITK130 Ohjelmistoprosessi
ITK130 Ohjelmistoprosessi Ohjelmistotuotteen elinkaari Ohjelmistoprosessimalli Koodaa ja korjaa Miksi ohjelmistoprosesseja? Prosessimallin tavoitteet Prosessi ongelmaratkaisuna Prosessi, musta laatikko
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
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
$$$ 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, Johdatus ohjelmistotuotantoon
582104 Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon 1 Lyhyt johdatus ohjelmistotuotantoon Ohjelmistotuotanto, ohjelmistoprojektit Miten ohjelmistojen tuottaminen eroaa teollisesta tuotannosta
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
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
CMMI CMMI CMM -> CMMI. CMM Capability Maturity Model. Sami Kollanus TJTA330 Ohjelmistotuotanto
CMM Capability Maturity Model CMMI Sami Kollanus TJTA330 Ohjelmistotuotanto 16.1.2007 Software Engineering Institute (SEI) www.sei.cmu.edu Perustettu vuonna 1984 Carnegie Mellon University 1985 SEI aloitti
CMM Capability Maturity Model. Software Engineering Institute (SEI) Perustettu vuonna 1984 Carnegie Mellon University
CMMI Sami Kollanus TJTA330 Ohjelmistotuotanto 13.3. CMM Capability Maturity Model Software Engineering Institute (SEI) www.sei.cmu.edu Perustettu vuonna 1984 Carnegie Mellon University 1985 SEI aloitti
CMMI CMM -> CMMI. CMM Capability Maturity Model. Sami Kollanus TJTA330 Ohjelmistotuotanto Software Engineering Institute (SEI)
CMMI Sami Kollanus TJTA330 Ohjelmistotuotanto 13.3. CMM Capability Maturity Model Software Engineering Institute (SEI) www.sei.cmu.edu Perustettu vuonna 1984 Carnegie Mellon University 1985 SEI aloitti
On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)
On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) Juha Kahkonen Click here if your download doesn"t start automatically On instrument costs
Agenda. Johdanto Ominaispiirteitä Kokonaisjärjestelmän määrittely Eri alojen edustajien roolit Sulautetut järjestelmät ja sulautettu ohjelmointi
1. Luento: Sulautetut Järjestelmät Arto Salminen, arto.salminen@tut.fi Agenda Johdanto Ominaispiirteitä Kokonaisjärjestelmän määrittely Eri alojen edustajien roolit Sulautetut järjestelmät ja sulautettu
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)
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
Choose Finland-Helsinki Valitse Finland-Helsinki
Write down the Temporary Application ID. If you do not manage to complete the form you can continue where you stopped with this ID no. Muista Temporary Application ID. Jos et onnistu täyttää lomake loppuun
Capacity Utilization
Capacity Utilization Tim Schöneberg 28th November Agenda Introduction Fixed and variable input ressources Technical capacity utilization Price based capacity utilization measure Long run and short run
2. Ohjelmistotuotantoprosessi
2. Ohjelmistotuotantoprosessi Peruskäsitteet: prosessimalli: mahdollisimman yleisesti sovellettavissa oleva ohjeisto ohjelmistojen tuottamiseen ohjelmistotuotantoprosessi: yrityksessä käytössä oleva tapa
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
Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)
Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition) Esko Jalkanen Click here if your download doesn"t start automatically Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition) Esko Jalkanen
Ohjelmistojen mallinnus, s2008 HY/TKTL, 28/10/2008. Harri Laine 1. Ohjelmisto
jen mallinnus, s2008 jen mallinnus (OMa) - Johdatus ohjelmistotuotantoon Tietokoneohjelma (computer program) toimintaohje, jonka mukaan toimien tietokone suorittaa jonkin tietojenkäsittelytehtävän suoritettava
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
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:
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ä,
MEETING PEOPLE COMMUNICATIVE QUESTIONS
Tiistilän koulu English Grades 7-9 Heikki Raevaara MEETING PEOPLE COMMUNICATIVE QUESTIONS Meeting People Hello! Hi! Good morning! Good afternoon! How do you do? Nice to meet you. / Pleased to meet you.
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.
Information on Finnish Language Courses Spring Semester 2017 Jenni Laine
Information on Finnish Language Courses Spring Semester 2017 Jenni Laine 4.1.2017 KIELIKESKUS LANGUAGE CENTRE Puhutko suomea? Do you speak Finnish? -Hei! -Moi! -Mitä kuuluu? -Kiitos, hyvää. -Entä sinulle?
Ohjelmistojen mallinnus (OMa) - Johdatus ohjelmistotuotantoon Harri Laine 1
Ohjelmistojen mallinnus (OMa) - Johdatus ohjelmistotuotantoon 31.10.2008 Harri Laine 1 Ohjelmisto Tietokoneohjelma (computer program) toimintaohje, jonka mukaan toimien tietokone suorittaa jonkin tietojenkäsittelytehtävän
Hankkeiden vaikuttavuus: Työkaluja hankesuunnittelun tueksi
Ideasta projektiksi - kumppanuushankkeen suunnittelun lähtökohdat Hankkeiden vaikuttavuus: Työkaluja hankesuunnittelun tueksi Erasmus+ -ohjelman hakuneuvonta ammatillisen koulutuksen kumppanuushanketta
Hankkeen toiminnot työsuunnitelman laatiminen
Hankkeen toiminnot työsuunnitelman laatiminen Hanketyöpaja LLP-ohjelman keskitettyjä hankkeita (Leonardo & Poikittaisohjelma) valmisteleville11.11.2011 Työsuunnitelma Vastaa kysymykseen mitä projektissa
Johdatusta ohjelmistotekniikkaan
Johdatusta ohjelmistotekniikkaan OT:n historiaa 4 vaihetta (1/2) 1. Vaihe (0 60-luvun alku) Vähän tietokoneita Eräajo-tyyppisiä ohjelmia Pääasiassa matemaattisia, pieniä yhden käyttäjän sovelluksia Ei
Aluksi. Riskien hallinta. Riskityyppejä. Riskillä on kaksi ominaisuutta. Reaktiivinen strategia. Proaktiivinen strategia
Aluksi Riskien hallinta Sami Kollanus TJTA330 Ohjelmistotuotanto 24.1.2007 Reaktiivinen strategia Indiana Jones -tyyli Ei huolehdita ongelmista ennen kuin ne tapahtuu Proaktiivinen strategia Tunnistetaan
Information on Finnish Language Courses Spring Semester 2018 Päivi Paukku & Jenni Laine Centre for Language and Communication Studies
Information on Finnish Language Courses Spring Semester 2018 Päivi Paukku & Jenni Laine 4.1.2018 Centre for Language and Communication Studies Puhutko suomea? -Hei! -Hei hei! -Moi! -Moi moi! -Terve! -Terve
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
Kestävä kehitys - Lupa toimia eri tavalla. 2013 20.9. Naantali Anssi Tuulenmäki, Yli-innovaatioaktivisti
Kestävä kehitys - Lupa toimia eri tavalla 2013 20.9. Naantali Anssi Tuulenmäki, Yli-innovaatioaktivisti Tutkimuspäällikkö vai Yli-innovaatioaktivisti? Vastaanottovirkailija vai First Impression Manager?
Security server v6 installation requirements
CSC Security server v6 installation requirements Security server version 6.x. Version 0.2 Pekka Muhonen 2/10/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes Contents
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
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
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/
ATLAS-kartan esittely - Peli palveluiden yhteiskehittämisen menetelmistä Päivi Pöyry-Lassila, Aalto-yliopisto
ATLAS-kartan esittely - Peli palveluiden yhteiskehittämisen menetelmistä Päivi Pöyry-Lassila, Aalto-yliopisto Serve Research Brunch 24.10.2013 Esityksen sisältö ATLAS-hanke lyhyesti ATLAS-kartan kehittäminen:
You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed
Online Meeting Guest Online Meeting for Guest Participant Lync Attendee Installation Online kokous vierailevalle osallistujalle Lync Attendee Asennus www.ruukki.com Overview Before you can join to Ruukki
Laatu tietojärjestelmähankkeissa. Tietohallinnon kokemuksia Juha-Pekka Leskinen Atk-päällikkö Eduskunnan kanslia
Laatu tietojärjestelmähankkeissa Tietohallinnon kokemuksia Juha-Pekka Leskinen Atk-päällikkö Eduskunnan kanslia 5.10.2010 Pohdintaa tietojärjestelmien laadusta Mitä on laatu Miten laatua tavoitellaan tietojärjestelmäprojekteissa
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
anna minun kertoa let me tell you
anna minun kertoa let me tell you anna minun kertoa I OSA 1. Anna minun kertoa sinulle mitä oli. Tiedän että osaan. Kykenen siihen. Teen nyt niin. Minulla on oikeus. Sanani voivat olla puutteellisia mutta
EVALUATION FOR THE ERASMUS+-PROJECT, STUDENTSE
#1 Aloitettu: 6. marraskuuta 2015 9:03:38 Muokattu viimeksi: 6. marraskuuta 2015 9:05:26 Käytetty aika: 00:01:47 IP-osoite: 83.245.241.86 K1: Nationality Finnish K2: The program of the week has been very
Estimointityökalut. Pekka Forselius, Senior Advisor Finnish Software Measurement Association FiSMA ry
Estimointityökalut Pekka Forselius, Senior Advisor Finnish Software Measurement Association FiSMA ry 1 Työkalujen rooli ohjelmistotyössä A fool with a tool is still a fool! Ohjelmistotyökalujen käyttäminen
Norpe Winning Culture
Norpe Winning Culture TEKES Ideat vaihtoon 2.4.2014 Mona Hokkanen Smarter retailing Elämykselliset ostokokemukset Yksilölliset myymäläkonseptit Alhaisimmat kokonaiselinkaarikustannukset Seite 2 Miksi?
Mitä on ohjelmistotuotanto? Johdanto. Tämän kurssin näkökulma. Kurssin suhde muuhun opetukseen
Mitä on ohjelmistotuotanto? Johdanto Sami Kollanus TJTA330 Ohjelmistotuotanto 9.1.2007 Ohjelmistotekniikka (Software Engineering) tarkoittaa pätevien insinööriperiaatteiden vakiinnuttamista ja käyttämistä
Miehittämätön meriliikenne
Rolls-Royce & Unmanned Shipping Ecosystem Miehittämätön meriliikenne Digimurros 2020+ 17.11. 2016 September 2016 2016 Rolls-Royce plc The 2016 information Rolls-Royce in this plc document is the property
Ohjelmistoihin perustuva liiketoiminta: haasteita ja mahdollisuuksia
Ohjelmistoihin perustuva liiketoiminta: haasteita ja mahdollisuuksia Virkaanastujaisesitelmä 16.9.2003 Professori Jyrki Kontio Ohjelmistotuoteliiketoiminta jyrki.kontio@hut.fi http://www.soberit.hut.fi/swbiz
Laaja-alainen, opiskelijalähtöinen ja projektiperusteinen opetussuunnitelma, case Monitori
Laaja-alainen, opiskelijalähtöinen ja projektiperusteinen opetussuunnitelma, case Monitori Insinöörikoulutuksen Foorumi 2012 Seminaariesitelmä Timo Turunen ja Matti Welin Monitori koulutusalarajat ylittävä
Security server v6 installation requirements
CSC Security server v6 installation requirements Security server version 6.4-0-201505291153 Pekka Muhonen 8/12/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes
API:Hack Tournee 2014
apisuomi API:Hack Tournee 2014 #apihackfinland Twitter: @ApiSuomi API:Suomi - Suomen metarajapinta apisuomi Apisuomi kerää vertailutietoa ja arvosteluja rajapinnoista madaltaen avoimen datan uudelleenkäytön
TARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI
TARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI Vesa Tenhunen Tarkastusmenettelyt Keino etsiä puutteita ohjelmakoodeista, dokumenteista ym. ohjelmistoprosessissa syntyvästä materiaalista Voidaan käyttää kaikissa
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
Vertaispalaute. Vertaispalaute, /9
Vertaispalaute Vertaispalaute, 18.3.2014 1/9 Mistä on kyse? opiskelijat antavat palautetta toistensa töistä palaute ei vaikuta arvosanaan (palautteen antaminen voi vaikuttaa) opiskelija on työskennellyt
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
Prosessien kehittäminen. Prosessien parantaminen. Eri mallien vertailua. Useita eri malleja. Mitä kehitetään?
Prosessien kehittäminen Prosessien parantaminen Sami Kollanus TJTA330 Ohjelmistotuotanto 21.2.2007 Mitä kehitetään? CMMI, SPICE yms. Miten kehittämishanke saadaan toteutettua? Organisaation kehittämisen
LUONNOS RT 80260 EN AGREEMENT ON BUILDING WORKS 1 THE PARTIES. May 1998 1 (10)
RT 80260 EN May 1998 1 (10) AGREEMENT ON BUILDING WORKS This agreement template is based on the General Terms and Conditions of Building Contracts YSE 1998 RT 16-10660, LVI 03-10277, Ratu 417-7, KH X4-00241.
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
MUSEOT KULTTUURIPALVELUINA
Elina Arola MUSEOT KULTTUURIPALVELUINA Tutkimuskohteena Mikkelin museot Opinnäytetyö Kulttuuripalvelujen koulutusohjelma Marraskuu 2005 KUVAILULEHTI Opinnäytetyön päivämäärä 25.11.2005 Tekijä(t) Elina
Laatukustannukset. Laadun hallinta. Laadun kustannuksista
Laatukustannukset Laadun hallinta Sami Kollanus TJTA330 Ohjelmistotuotanto 13.2.2007 US National Institute of Standards and Technology: Riittämättömän testauksen kustannusten arvioitiin olevan 59 Mrd dollaria
Group 2 - Dentego PTH Korvake. Peer Testing Report
Group 2 - Dentego PTH Korvake Peer Testing Report Revisions Version Date Author Description 1.0 Henrik Klinkmann First version Table of Contents Contents Revisions... 2 Table of Contents... 2 Testing...
7. Product-line architectures
7. Product-line architectures 7.1 Introduction 7.2 Product-line basics 7.3 Layered style for product-lines 7.4 Variability management 7.5 Benefits and problems with product-lines 1 Short history of software
Curriculum. Gym card
A new school year Curriculum Fast Track Final Grading Gym card TET A new school year Work Ethic Detention Own work Organisation and independence Wilma TMU Support Services Well-Being CURRICULUM FAST TRACK
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
Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto
Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto If you are searched for a book by Miikka Poikselkä;Harri Holma;Jukka Hongisto Voice over LTE (VoLTE) in pdf form, then you have come
1. SIT. The handler and dog stop with the dog sitting at heel. When the dog is sitting, the handler cues the dog to heel forward.
START START SIT 1. SIT. The handler and dog stop with the dog sitting at heel. When the dog is sitting, the handler cues the dog to heel forward. This is a static exercise. SIT STAND 2. SIT STAND. The
Laadun hallinta. Laatukustannukset. Laadun kustannuksista. Sami Kollanus TJTA330 Ohjelmistotuotanto
Laadun hallinta Sami Kollanus TJTA330 Ohjelmistotuotanto 5.4. Laatukustannukset US National Institute of Standards and Technology: Riittämättömän testauksen kustannusten arvioitiin olevan 59 Mrd dollaria
Laadun hallinta. Laatukustannukset. Sami Kollanus TJTA330 Ohjelmistotuotanto
Laadun hallinta Sami Kollanus TJTA330 Ohjelmistotuotanto 5.4. Laatukustannukset US National Institute of Standards and Technology: Riittämättömän testauksen kustannusten arvioitiin olevan 59 Mrd dollaria
Tietojärjestelmä uusiksi? Toimijaverkostot, niiden haasteet ja ratkaisut
Tietojärjestelmä uusiksi? Toimijaverkostot, niiden haasteet ja ratkaisut Samuli Pekkola Aki Alanne Taru Salmimaa Novi Research Center Tampereen teknillinen yliopisto Sisältö tausta, motiivi ja konteksti
Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen
Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen 23 April 2018 1 Tavoitteet Yleiskuva seuraavista aiheista Testauksen organisointi Testaussuunnittelma Testauksen kustannukset Testausstrategia
CALL TO ACTION! Jos aamiaistilaisuudessa esillä olleet aiheet kiinnostavat syvemminkin niin klikkaa alta lisää ja pyydä käymään!
CALL TO ACTION! Jos aamiaistilaisuudessa esillä olleet aiheet kiinnostavat syvemminkin niin klikkaa alta lisää ja pyydä käymään! Monikanavaisen viestinnän mittaaminen: https://www.vapamedia.fi/mittaaminen/