Johdatus ohjelmistotuotantoon



Samankaltaiset tiedostot
Johdatus ohjelmistotuotantoon

OHJ-3010 Ohjelmistotuotannon perusteet

Johdatus ohjelmistotuotantoon

Projektitoiminta JOTU JOTU2013/K.Systä 1

Kertausluento JOTU-2014 / K.Systä

Agenda. Johdanto Ominaispiirteitä Kokonaisjärjestelmän määrittely Eri alojen edustajien roolit Sulautetut järjestelmät ja sulautettu ohjelmointi

Android jatkaa kasvua

OHJ-3010 Ohjelmistotuotannon perusteet, kesä 2012

AVOIN LÄHDEKOODI JA SEN MERKITYS LIIKETOIMINNASSA

PLA Mobiiliohjelmointi. Mika Saari

Järjestelmäarkkitehtuuri (TK081702) Lähtökohta. Integroinnin tavoitteet

Fiksumpi käyttöliittymä kuntaan. Miten kuntien tietojärjestelmät saadaan palvelemaan kuntalaisia? LapIT-päivät 2015

Harjoitukset - muistutus

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

T Harjoitustyöluento

Ohjelmistoarkkitehtuurit. Syksy 2010

Tietojärjestelmä tuotantoympäristössä. Sovellusohjelmat Helsingin ammattikorkeakoulu Stadia / Tekniikka ja liikenne Vesa Ollikainen

AVOIMEN TUOTTEEN HALLINTAMALLIT. Kunnassa toteutettujen tietojärjestelmien uudelleenkäyttö. Yhteentoimivuutta avoimesti

Suomen avoimien tietojärjestelmien keskus COSS ry

T Harjoitustyöluento

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

käyttötapaukset mod. testaus

GroupDesk Toiminnallinen määrittely

Kertausluento JOTU-2013 / K.Systä

VALO-ohjelmat ja LTSP kouluissa. Elias Aarnio Innopark, AVO-hanke

T harjoitustehtävät, syksy 2011

Tietojärjestelmän osat

Ohjelmistoarkkitehtuurit. Kevät

PLA Mobiiliohjelmointi. Mika Saari

Avoimen lähdekoodin vaarat

Tietoyhteiskunnan perustaidot. Kesäkuu 2014

Ohjelmistoarkkitehtuurit. Syksy 2008

TIE Johdatus ohjelmistotuotantoon

Avoin lähdekoodi. Jani Kylmäaho Maanmittauslaitos

Suoritustavat: Laboratoriotöitä 2.-3.periodi. Luennot 2h, Laboratorityöt 4h, itsenäinen työskentely 124 h. Yhteensä 130 h.

Käyttöohje. Versiohistoria: versio Mari Kommenttien perusteella korjattu versio

Integrointi. Ohjelmistotekniikka kevät 2003

KEMIKAALISAVOTTA VESIHUOLTOLAITOKSESSA - MITEN KEMIKAALEISTA AIHEUTUVAT RISKIT SAADAAN HALLINTAAN

AVOIN KOODI YRITTÄJYYDEN LÄHTÖKOHTANA

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Kurssiesite. Rakentamisen tekniikat RAK-C3004

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Johdantoluento. Ohjelmien ylläpito

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Johdatus ohjelmistotuotantoon

Sähköiset palvelut - Isäntä ja renki

Yliopiston sähköiset järjestelmät

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

Agenda. Läpäisyvaatimukset Henkilökunta Luennot ja aikataulu Kurssimateriaali Harjoitustyöt Demoharjoitus Tentti ja arvostelu Muuta?

Wood- ja LogForcen tuomat muutokset urakoinnin toimintaympäristöön

HELIA 1 (8) Outi Virkki Tietokantasuunnittelu

Käyttövaltuushallinnan hyödyt tehokkaasti käyttöön. Johanna Lampikoski, RM5 Software Juha Arjonranta, TeliaSonera Finland

Organisaatio- a ja yhteiskuntaosaaminen. - ja vuorovaikutusosaaminen istoiminnan osaaminen toimintaosaaminen. Kansainvälisyysosaaminenn

Yliopiston sähköiset järjestelmät

A4.1 Projektityö, 5 ov.

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

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

TU-C3010 Projektien suunnittelu ja ohjaus (5 op.)

IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT

Työkalut ohjelmistokehityksen tukena

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

TIE Johdatus ohjelmistotuotantoon

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

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

Johdatus ohjelmistotuotantoon

RECO irtaimiston- ja omaisuuden hallinta

OHJ Johdatus ohjelmistotuotantoon

Tieto- ja viestintätekniikan opinnot Jyväskylän yliopistossa

Järjestelmäarkkitehtuuri (TK081702) Pilvipalvelut. Pilvipalvelut - lähtökohtia

TTY:n kirjaston kuulumiset 2008

Näkökulmia monimuoto-opetukseen

IT-ERP Tietohallinnon toiminnanohjausratkaisuna. ja ITIL palveluiden kehittämisessä

JHS-järjestelmä ja avoimet teknologiat. Tommi Karttaavi

Verkkokauppaalustojen oppimäärä. LADEC Verkkokaupan ABC Jussi Kujansuu / Head of ecommerce / Solita

SharePoint verkkopalvelualustana

Johdatus ohjelmistotuotantoon

Projektityökaluilla tuottavuutta toimintaan, Espoo, Kari Kärkkäinen

TIETOTEKNIIKKA Koodi Vanha opintojakso op ov Vastuuhenkilö LV vastaavat opinnot tai korvaava suoritustapa TTE.

Kurssin tavoitteista uennot. 4.1 Projektityö, 5 ov. Esitietovaatimukset

Projektityö

Sähköinen työpöytä Suomen Pankissa

ADE Oy Hämeen valtatie TURKU. Tuotekonfigurointi. ADE Oy Ly Tunnus:

NYT PUHUTTAA OMAT LAITTEET OPETUKSESSA. Juho Airola Kerttulin lukio, Turku

Järjestelmäintegraatio

Miten löydän Sen Oikean? Senaattoritilaisuus Liisa Paasiala, Senior Consultant

Internetpalvelut. matkalla Mikko Sairanen

Harjoitustyöinfo kevät TU-A1100 Tuotantotalous 1

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

Verkkopokerijärjestelmä. Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

OTM-HANKE. Opintohallinnon tietojärjestelmän modernisointi - tilannekatsaus

Kirjastojen tietojärjestelmien uudistaminen AMKIT johtoryhmän ja Linnea2 ohjausryhmän työkokous

TIES460 OPPIMATERIAALITUOTANTO,

Opas koulujen VALO-hankintaan. Elias Aarnio Avoimet verkostot oppimiseen -hanke Educoss Innopark Oy

Järjestelmäarkkitehtuuri (TK081702) Yritysarkkitehtuuri. Muutostarpeet

Harjoitustyöinfo kevät TU-A1100 Tuotantotalous 1

Sosiaalinen media kivi- ja teräsrakentamisen ammatillisessa koulutuksessa

Sulautetut järjestelmät

Mallilukujärjestys 1. vuosi 2013

Open source uusia mahdollisuuksia operaattoreille

Helia Ohjelmointitaito Tuomas Kaipainen Mermit Business Applications Oy Mermit Business Applications

Transkriptio:

1.9.2014 TIE-02300/K.Systä 1 Johdatus ohjelmistotuotantoon Luento 2 1.9.2014

YLEISIÄ KURSSIN ASIOITA 1.9.2014 TIE-02300/K.Systä 2

Viikkoharjoitukset Tiistai klo 10-12 Tensu (tero.ahtee@tut.fi) Tiistai klo 12-14 Tensu (tero.ahtee@tut.fi) Keskiviikko klo 10-12 Henri (henri.terho@tut.fi) Keskiviikko klo 12-14 Henri (henri.terho@tut.fi) Keskiviikko klo 14-16 Marko (marko.leppanen@tut.fi) Keskiviikko klo 16-18 Marko (marko.leppanen@tut.fi) Torstai klo 12-14 Miika (miika.savolainen@student.tut.fi) Torstai klo 14-16 Miika (miika.savolainen@student.tut.fi) Torstai klo 16-18 Tensu (tero.ahtee@tut.fi) Maksimi määrä per ryhmä 28! 1.9.2014 TIE-02300/K.Systä 3

Harjoitustyö pe 31.8. klo 16:00: Ryhmien oltava muodostettuna IDLEen pe 5.9. klo 23:59: Henkilökunta täydentänyt vajaat ryhmät ja tehneet ryhmäjaon pe 12.9. klo 16:00: Alustavat asiakasvaatimukset oltava palautettuna ohjaavalle assarille ja toimittajaryhmälle pe 12.9. klo 16:00: Asiakastapaamisajan oltava varattuna IDLEstä. ma 15.9. - pe 19.9.: Asiakastapaamiset pe 21.11. klo 16:00: Toiminnallisen määrittelydokumentin palautuksen takaraja pe 5.12. klo 16:00: Palautteen takaraja 1.9.2014 TIE-02300/K.Systä 4

Alustava luentoaikataulu 25.8: Johdanto + historiaa, mitä on ohjelmistotuotanto 01.09: Ohjelmistojen roolista ja ohjelmistotyön määrästä, ohjelmistotyypit 08.09: Miten ohjelmistotyö organisoidaan (vaihejako ja prosessi-mallit) 15.09: Vaatimusmäärittelyt 22.09: Projektitoiminta 30.09: Yleiset notaatiot erityisesti UML 07.10: Esimerkkiprojekti (vierailuluento esillä ihan oikea projekti) 20.10: Asiakasroolista 27.10: Käyttäjä ja käyttäjäkokemus ohjelmistoprojektissa 03.11: Tiedon mallintaminen 11.11: Ohjelmisto osana laitetta 17.11: IPR, sopimukset, avoin lähdekoodi 24.11: Mitä on ohjelmistotuotanto (historiaperspektiivi, kertausta) 1.12: Kertausta, tenttiin valmistautuminen 1.9.2014 TIE-02300/K.Systä 5

Tämän viikon luennosta Ohjelmistojen roolista ja ohjelmistojen ominaisuuksista Ohjelmistotyön määrästä, ohjelmistotyypit Ohjelmistojen tekeminen helikopteri-perspektiivistä katsottuna (+ muutamia esimerkkejä) Oppimistavoitteet Ymmärtää millaisia ohjelmia tehdään ja mikä on niiden merkitys Ymmärtää millaisia ohjelmistojen rakentamisen organisatorisia rakenteita on 1.9.2014 TIE-02300/K.Systä 6

1.9.2014 TIE-02300/K.Systä 7 POHDINTAA ERILAISISTA OHJELMISTOTYYPEISTÄ

Ohjelmistotyyppejä(1) Varus- ja työkaluohjelmistot teknis-tieteelliseen laskentaan tarkoitetut ohjelmistot tietämyspohjaiset järjestelmät kaupallishallinnolliset ohjelmistot (yrityksen tietojärjestelmät) prosessinohjaus- ja prosessiautomaatiojärjestelmät 8 1.9.2014 TIE-02300/K.Systä

Ohjelmistotyyppejä(2) Sulautetut järjestelmät Koneen tai laiteen sisällä hissin ohjausjärjestelmä Reaaliaikajärjestelmät Ohjelman on reagoitava heti polttoaineen ja jarrujen säätely autossa Reaktiiviset järjestelmät toimivat jatkuvasti Puhelinkeskus Hissin ohjauslogiikka Melkein kaikki laitteet tänä päivänä? 9 1.9.2014 TIE-02300/K.Systä

Esimerkki 1: Pieni sulautettu järjestelmä (venttiili) Teknisiä haasteita - luotettavuus - nopeus (reaaliaika) - säätöalgoritmi - muisti, prosessori, virta Toteutuksen haasteita - kehitystyökalut - testaaminen TIE-02300/K.Systä 10

Esimerkki 2: tyypillinen työkoneen ohjausjärjestelmä Ohjaus- PC Linux- tai Windows-käyttöjärjestelmä CAN-väylä Puomin ja kouran ohjaus Moottorin ohjaus Vaihteiston ohjaus Rungon ohjaus Hallintalaitteiden ohjaus toimilaitteet ja anturit toimilaitteet ja anturit toimilaitteet ja anturit toimilaitteet ja anturit toimilaitteet ja anturit Tyypillisesti PLC-ohjaimia (+IEC 61131-3 -standardin mukainen ohjelmointi) tai RT-käyttöjärjestelmä (+C-ohjelmointi) Toteutuksen haasteita - järjestelmän paisuminen - Oma kehitys vs valmiit komponentit Teknisiä haasteita - luotettavuus - nopeus (reaaliaika) TIE-02300/K.Systä 11

Esimerkki 3: verkossa toimiva PC-sovellus DJ-online-palvelin Palvelinohjelmisto SOAPrajapinta Jeesbox Ylläpidon hallintajärjestelmä Musiikkitietokanta Metatietokanta Musiikin hallintajärjestelmä Mukailtu lähteestä: Jukka Jylhäkangas, Ravintoloiden taustamusiikkijärjestelmä, diplomityö, TTY 2006. TIE-02300/K.Systä 12

TIE-02300/K.Systä 13 Vanha, mutta edelleen pätevä, kuva Infrastuktuuri: tietoliikenne, toimistoautomaatio, ryhmätyö, asianhallinta, palvelimet... Yrityksen tietovarastot Johdon tietojärjestelmät, päätöksenteon tuki Markkinointi Taloushallinto Tuotteiden suunnittelu, operatiiviset järjestelmät, tuotannonohjaus, materiaalihallinto, logistiikka Prosessi- ja tuotantoautomaatio Tietotekniikka tuotteissa 13

Esimerkki 5: Internet-palvelu Mainospalvelin HTML generointi Sovellus Pankki Sosiaalinen media Tietokanta Varasto TIE-02300/K.Systä 1.9.2014 14

Android HTML generointi Sovellus Varasto Tietokanta Source: technologia.com TIE-02300/K.Systä 1.9.2014 15

Spekulointia TTY:n tarpeista Opettajien työajan koordinointi Opiskelijoiden lukujärjestyksen koordinointi Opetustilojen tilavaraukset KELA/Opintotuki Tiedotus Opetusohjelmat Opintokokonaisuudet Opintorekisterit Webbisivut Tenttien koordinointi Kurssit Luennot Harjoitukset h.työt Tentit TIE-02300/K.Systä 1.9.2014 16

TIE-02300/K.Systä 17 Mutta sitten on vielä ne sulautetut järjestelmät NMT-puhelin 20 kloc GSM-keskus 15MLOC äly-puhelin 20MLOC? televisio 200 kloc (yksinkertainen)hissi 50 kloc moderni auto? avaruussukkula 21 MLOC (sukkulassa 0,5MLOC) säätoventtiilin ohjaus 25kLOC työkoneen ohjaus 250kLOC Työn tuottavuus? Mitä isompi ohjelmisto sitä enemmän osaamista tarvitaan LOC Lines of Code, koodiriviä 17

Ohjelmistojen ominaisuuksia Ohjelmistojen koko Yleisin, mutta aika huono, mittari on koodirivien määrä Reaaliaikaisuus Hajautus ja sulautus Käyttöliittymä, käytettävyys, käyttökokemus Luotettavuus Turvallisuus Millaiset vahingot mahdollisia a) ohjelmistovirheen b) väärän käytön vuoksi Tehokkuus, resurssien kulutus Prosessori, muisti, energia, tietoliikenne Skaalautuvuus Avoimuus, muunneltavuus 1.9.2014 TIE-02300/K.Systä 18

TIE-02300/K.Systä 19 Ohjelmistotekniikka on geneeristä 19

Pohdinta: Montako tietokonetta teillä on? Neljä läppäriä (4) Hella (31) Kolme muuta tietokonetta (7) Kamerat (36) Kotiserver ja Chumby (9) Ilmalämpöpumput (40) Kaksi TV:tä (11) WLAN tukiasema (41) Kaksi digiboxia (13) CD/DVD soitin (14) (luennon jälkeen lisää) Printteri (15) Pelikonsolin ohjaimet (43) Skanneri (16) Digitaalinen lämpömittari (45) 5 kännykkää (21) Digitaalinen vaaka (46) Autossa ainakin kaksi (23) Astianpesukone (47) Audiovahvistin (digit) (24) Jääkaappi (48) Kaukosäätimiä (ainakin 3) (27) Pelikonsoli (28) Pesukone (29) Kiuas (30) 1.9.2014 TIE-02300/K.Systä 20

Harjoitustyö pe 31.8. klo 16:00: Ryhmien oltava muodostettuna IDLEen PÄIVITYS: työkalu on vielä auki! pe 5.9. klo 23:59: Henkilökunta täydentänyt vajaat ryhmät ja tehneet ryhmäjaon pe 12.9. klo 16:00: Alustavat asiakasvaatimukset oltava palautettuna ohjaavalle assarille ja toimittajaryhmälle pe 12.9. klo 16:00: Asiakastapaamisajan oltava varattuna IDLEstä. ma 15.9. - pe 19.9.: Asiakastapaamiset pe 21.11. klo 16:00: Toiminnallisen määrittelydokumentin palautuksen takaraja pe 5.12. klo 16:00: Palautteen takaraja 1.9.2014 TIE-02300/K.Systä 21

1.9.2014 TIE-02300/K.Systä 22 http://www.softwareindustrysurvey.fi/slidesfinland2014.pdf Softateon markkinoista Suomessa ja maailmalla

Pörssinoteerattujen yhtiöiden tulot laski 4.6% mutta pienet yritykset kasvoivat. http://www.softwareindustrysurvey.fi/ 23 1.9.2014 TIE-02300/K.Systä

Peliteollisuus on yksi kasvava esimerkki Estimated 2200 employees in Finland Most of the revenue is exports 1.9.2014 TIE-02300/K.Systä 24

Tulolähteet 1.9.2014 TIE-02300/K.Systä 25

1.9.2014 TIE-02300/K.Systä 26 JA MITÄS NE NOKIA ONGELMAT AIHEUTTI?

Nokian uuden strategian vaikutukset 27 1.9.2014 TIE-02300/K.Systä

Edelleen samasta lähteestä 28 1.9.2014 TIE-02300/K.Systä

Rank 2013 Top 10 Software Vendors, Worldwide, 2012-2013 (Billions of Dollars) Rank 2012 Vendor 2013 Revenue 2012 Revenue 2012-2013 Growth Rate (%) 1 1 Microsoft 65.7 62.0 6.0 2 3 Oracle 29.6 28.7 3.4 3 2 IBM 29.1 28.7 1.4 4 4 SAP 18.5 16.9 9.5 5 5 Symantec 6.4 6.4-0.8 6 6 EMC 5.6 5.4 4.9 7 7 HP 4.9 5.0-2.7 8 9 Vmware 4.8 4.2 14.1 9 8 CA Technologies 4.2 4.3-2.6 10 12 Salesforce.com 3.8 2.9 33.3 Others 234.6 224.0 4.7 Total 407.3 388.5 4.8 Gartner (March 2014) Worldwide Software Market Grew 4.8 Percent in 2013 IDC väittää 5.5% 1.9.2014 TIE-02300/K.Systä 29

Tähän taas yksi onneton Hakukoneeseen - Sampo - Danske - Verkkopankki - 2008 1.9.2014 TIE-02300/K.Systä 30

Sampo Pankki + Danske Bank IT järjestelmien yhdistäminen oli hetken aika kaaos Verkkopalvelut jumissa Turvallisuuspuutteita Maksut viivästyivät (esim opintotuki) Poimintoja verkkomediasta vuodelta 2008: Lähteiden mukaan testejä tehtiin 70000, mutta sekään ei riittänyt Toinen kirjoitus sanoo että lähes 30000 asiakasta lähti neljässä kuukaudessa. Pankista vahvistettiin, että tilin katoaminen johtuu järjestelmämuutokseen liittyvistä "teknisistä ongelmista". "Pankkivirkailija näki, että tili on yhä olemassa. Hän näki saldot ja kaikki, mutta se ei näy meidän verkkopankissa", yrittäjä tuskailee. Sampo Pankki poistaa palvelumaksun henkilöasiakkailtaan toukokuun osalta. Syynä maksun hyvittämiseen ovat palvelumaksujen laskennassa ilmenneet virheet. 1.9.2014 TIE-02300/K.Systä 31

Sampo Pankin ja Danske Bankin fuusio 2007-2008 (lähde Tietoviikon verkkosivut) Kun Danske Bank osti Sampo Pankin helmikuussa 2007, pankit asettivat tavoitteeksi saattaa järjestelmähanke loppuun pääsiäisenä 2008. Aikaa oli siis 13 kuukautta. Ei haluttu siltoja järjestelmien välille vaan yksi yhteinen alusta Sammon verkkopankki sulkeutui aivan aikataulussa kiirastorstai-iltana, minkä jälkeen alkoi kaikkien Sammon järjestelmien alasajo ja järjestelmissä olevan tiedon konvertointi Danske Bankin One Group One System -alustalle. Sunnuntaina alettiin sitten nostaa ylös Danske Bankin järjestelmää. Massiivisessa järjestelmänmuutoksessa meni uusiksi kaikki: muun muassa puhelinnumerot, sähköpostiosoitteet, pankki- ja luottokortit, verkkopankkisopimukset ja työasemat. Teknisessä roll outissa vaihdettiin pyhien aikana kaikki 3 400 tietokonetta sekä puhelimet, joiden osalta siirryttiin ip-puhelinjärjestelmään. Aivan ilman ongelmia jättiprojektista ei kuitenkaan selvitty. Muun muassa 800 000 suomalaiskäyttäjän verkkopankki kaatui aamuvarhaisella tiistaina. Sen jälkeen kaatuivat pankin verkkosivut. 1.9.2014 TIE-02300/K.Systä 32

Keskustelu kävi silloinkin kuumana 1.9.2014 TIE-02300/K.Systä 33

Sampo Pankin fuusio Danske Bankin kanssa 1.9.2014 TIE-02300/K.Systä 34

Analyysiä Suurin osa tiedosta lienee luottamuksellista, mutta Sampo Pankin uudesta järjestelmästä on kerrottu, että se on yksi, yhtenäinen kokonaisuus. Tämän vuoksi järjestelmää ei voitu ottaa käyttöön esimerkiksi yksi toiminto kerrallaan, vaan se oli otettava käyttöön kertarysäyksellä ja hyväksyttävä toimeen liittyvät riskit. Integraatioita tutkinut Maria Alaranta kirjoitti: Yhteenvetona voidaan sanoa, että suurin osa fuusion jälkeisen it-integraation ongelmista johtuu huonosta johtamisesta, vaikkei teknisiä ongelmiakaan pidä aliarvioida. Yleinen arvio on, että hankkeesta päättäneet eivät tienneet millaiseen savottaan olivat lähdössä 1.9.2014 TIE-02300/K.Systä 35

Kaksi oppia Organisaatioiden yhdistäminen johtaa IT-järjestelmien yhdistämisen ongelmiin Kertarysäys sisältää riskejä. 1.9.2014 TIE-02300/K.Systä 36

http://www.hs.fi/kotimaa/a1375328280720 (Tietojärjestelmissä piilee kustannuspommi) Kun kuntia yhdistetään on liitosten myötä yhdistettävät kuntien tietojärjestelmät. Kuntaliitto on arvioinut, että jos tietojärjestelmät yhdistetään liian nopealla aikataululla, kustannukset voivat olla jopa satoja miljoonia euroja. Monessa kunnassa on käytössä pelkästään niille räätälöidyt, hyvin vanhat asiakastietojärjestelmät. Ne ovat elinkaarensa ja käyttöikänsä päätepisteessä. Kun näihin tehdään uusia toiminnallisuuksia, koodin ostaminen joltain toiselta yritykseltä tulisi kalliiksi. Kunnat ovat siten tiiviissä riippuvuussuhteessa alkuperäisten tietojärjestelmien toimittajien kanssa. 1.9.2014 TIE-02300/K.Systä 37

Ohjelmiston rakentamisen vaiheet 1.9.2014 TIE-02300/K.Systä 38

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

1.9.2014 TIE-02300/K.Systä 40 Liiketoimintamallit Ostaja Tehdään itse Ostetaan valmis Teetätetään projekti Ostetaan pilvipalveluna Toimittaja Myydään softan kopioita ja/tai lisenssejä Myydään projekteja Myydään tuntityötä (reppu-malli) Myydään (pilvi)palveluna

Tulolähteet 1.9.2014 TIE-02300/K.Systä 41

IDLE Mielenkiintoinen esimerkki tämän kurssin kannalta Alunperin rakennettu tietokantakurssien opetuksen apuvälineeksi IDLE:een on vuosien varrella rakennettu paljon toimintoja (lista perustuu käyttöohjeeseen) Sisäänkirjautuminen ja integrointi TUT:n identiteetin hallintaan Kielen vaihtaminen (suomi, englanti, ranska) Kurssille ilmoittautuminen Harjoitusryhmiin ilmoittautuminen Harjoitustöiden tekeminen ja palauttaminen Luokka-toiminto harjoituksissa tapahtuvaa toimintoa varten Harjoitustyöryhmän muodostaminen Välinäyttöajan varaaminen Ohjelma on siis syntynyt käytännön tarpeista 1.9.2014 TIE-02300/K.Systä 42

IDLE on kotikutoinen järjestelmä Tehty itse ja räätälöity omiin tarpeisiin Nimenomaan oman laitoksen Toisin kuin monet kotikutoiset toteutus on ammattimainen Silloin kun järjestelmä rakennettiin kilpailevia vaihtoehtoja ei ollut Nyt meillä on POP/ROCK ja MOODLE (http://fi.wikipedia.org/wiki/moodle, http://moodle.tut.fi/) MOODLE:n räätälöintiä tehdään kaupallisena palveluna POP/ROCK työkalun käyttämiselle ei ole vaihtoehtoa koska laitoksemme on osa yliopistoa Mutta entä jatkossa? MOODLE vai IDLE? 1.9.2014 TIE-02300/K.Systä 43

MOODLE vai IDLE Ominaisuudet Osaaminen Raha/resurssit MOODLE Opiskelijat tottuneet muiden laitosten kurseilla Laitoksen ei tarvitse investoida. (Kustannukset jaetaan laajemmin) Siirtyminen edellyttää henkilökunnalta opettelua ja kurssijärjestelyiden uudistamista IDLE Sovitettu meidän laitoksen tarpeisiin Laitoksen henkilökunta osaa IDLE:n käytön Vaatii osapäiväisen ylläpitäjän. 1.9.2014 TIE-02300/K.Systä 44

Parin IDLEn kehityksen projektin työmäärä (n. 1800 tuntia) Esitutkim Määrit Suunnit Toteutus Testaus 1.9.2014 TIE-02300/K.Systä 45

1.9.2014 TIE-02300/K.Systä 46 IDLE:n ensimmäisen version esitutkimus (projektityökurssin osasuoritus) VERSIOHISTORIA 2 SISÄLLYSLUETTELO 4 1. JOHDANTO 6 2. ONGELMAN KUVAUS 10 3. YLEISKUVAUS RATKAISUSTA 11 4. PROJEKTIN ORGANISOINTI 13 5. HAVAITUT ONGELMAT JA RISKIT 14 6. VAATIMUKSET 15 7. RAJAUKSET JA RAJOITTEET 25 8. YMPÄRISTÖ JA LIITTYMÄT 26 9. HYÖDYT 27 10. AIKATAULU 28 11. TOTEUTUSVAIHTOEHDOT 29 12. KUSTANNUKSET 32 13. PROJEKTIN KANNATTAVUUS 33 14.LISÄTIETOJA 34

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

Muita haasteita Tuote vs asiakaskohtainen Sopivuus asiakkaan tarpeisiin Kehittämisen ja ylläpidon kustannukset Dilemma. Kummalla rikastut: teet kerran ja myyt miljoona kopiota vai tekemällä monta projektia? Eri toimintatavat Hajautettu kehitys Resurssit ja asiantuntemus voi olla hajallaan Kustannusten vuoksi halutaan siirtää työtä halvan kustannuksen maihin. Monessa yrityksessä edustus asiakkaan luona, loput esim. Intiassa 48 1.9.2014 TIE-02300/K.Systä

Seuraava luento käyttäjäkokemus ohjelmisto- 26.8: Johdanto + historiaa, mitä on ohjelmistotuotanto Ohjelmien 28.10: rakentamisen Käyttäjä teoria ja ja 2.9: Ohjelmistojen roolista ja käytäntö. ohjelmistotyön määrästä, projektissa ohjelmistotyypit Mm. mitä ihmettä se muodikas ketteryys tarkoittaa. 9.9: Miten ohjelmistotyö organisoidaan (vaihejako ja prosessi-mallit) 16.9: vaatimusmäärittelyt 23.9: projektitoiminta 30.9: Yleiset notaatiot erityisesti UML 7.10: Esimerkkiprojekti (mahdollisesti vierailuluento) 1.9.2014 TIE-02300/K.Systä 21.10: Asiakasroolista 4.11: Tiedon mallintaminen 11.11: Ohjelmisto osana laitetta 1 18.11: Ohjelmisto osana laitetta 2 25.11: IPR, sopimukset, open source 2.12: Kertausta 49