Ohjelmisto osana laitetta

Samankaltaiset tiedostot
Ohjelmisto osana laitetta

Ohjelmisto osana laitetta

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

Ohjelmistoarkkitehtuuriin vaikuttavia tekijöitä. Kari Suihkonen

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

Flexbright Oy Embedded software/hardware engineer

Venttiilit ja Automaatio

Lyhyt johdatus ketterään testaukseen

Ohjelmistoprosessit ja ohjelmistojen laatu Kevät Ohjelmistoprosessit ja ohjelmistojen laatu. Projektinhallinnan laadunvarmistus

Ketterä vaatimustenhallinta

KONEAUTOMAATION LAATU JA TURVALLISUUS Marko Varpunen

Tutkittua tietoa. Tutkittua tietoa 1

Työkalut ohjelmistokehityksen tukena

Simulaattoriavusteinen ohjelmistotestaus työkoneympäristössä. Simo Tauriainen

ProAgria. Opportunities For Success

Esitykset jaetaan tilaisuuden jälkeen, saat linkin sähköpostiisi. Toivottavasti vastaat myös muutamaan kysymykseen tapahtumasta Have a lot of fun!

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

1.3 Katsaus ohjelmistotuotannon kehittymiseen

Tietotekniikan koulutus ammattikorkeakouluissa 2012 Uudellamaalla

Tietoturvallisuus yhteiskunnan, yritysten ja yksityishenkilöiden kannalta

Liikenteen hankeaihioita

AFCEA PVTO2010 Taistelija / S4

You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed

Hakkerin henkilökuva. [Avaa linkki valmiiksi ja poista presentaatiosta]

TKK 100 vuotta -merkki

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Tiimityöskentely. Marko Leppänen

Windows Phone. Module Descriptions. Opiframe Oy puh Espoo

Tietokonearkkitehtuuri 2 TKT-3201 (5 op)

HELSINKI AREA TESTBED. Martti Mäntylä, HIIT

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

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

Kiinteistötekniikan ylläpito ja elinkaaren hallinta

Kannattavuutta talotekniikan elinkaari- ja ylläpitopalveluilla

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Turvakriittisen projektin menetelmät ja työkalut

T Loppukatselmus

Industry known for competence & ability to solve complex engineering challenges

Ohjelmistoarkkitehtuurit. Syksy 2008

Risto Kauppi, CEO. Rugged Tooling Subject to change

Prosessiajattelu. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessikuvaus - CMMI. Sami Kollanus TJTA330 Ohjelmistotuotanto 3.4.

Takki. Lisää ot sik k o osoit t am alla. Nyt se sopii, tai sitten ei. Jussi Vänskä Espotel Oy. vierailuluentosarja OTM kurssi

TURVALLISUUDEN HUOMIOMINEN OHJELMISTON HANKINTAKETJUSSA

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Mobiilimaailma murroksessa 2011 Tommi Teräsvirta, Tieturi

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.

WP3 Decision Support Technologies

TÄYTTÖAUTOMAATIT TÄYTTÖAUTOMAATIT COMPUTER INFLATORS

Tietojärjestelmä uusiksi? Toimijaverkostot, niiden haasteet ja ratkaisut

Tarjolla tänään: Sanastoa Koneenohjausjärjestelmien suunnittelumallit. Pattern Architecture Style. GoF. Design pattern

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

Teollisuuden uudistuvat liiketoimintamallit Teollinen Internet (Smart Grid) uudistusten mahdollistajana

TeleWell TW-LTE/4G/3G USB -modeemi Cat 4 150/50 Mbps

Ohjelmistojen suunnittelu

EVE-Electric Vehicle Systems Programme status

Innovointiprosessi. Lili Aunimo Lili Aunimo

Standardi IEC Ohjelmisto

Bachelor level exams by date in Otaniemi

Projektinhallintapäivä 2011 Hyvää huomenta tasapuolisesti kaikille!

Bachelor level exams by subject in Otaniemi

Aurinkoenergiajärjestelmien etäseurantajärjestelmä

Cieltum Oy. pilviteknologiaa hyödyntävä ohjelmistotalo. verkostoituneille yhteisöille

Avoimen lähdekoodin vaarat

Avoimen ohjelmistotuotteen hallinta julkisella sektorilla. Jukka Kääriäinen VTT Oy , Oskari-verkostopäivä

Ohjelmistoarkkitehtuurit Kevät 2016 Johdantoa

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

PLA Mobiiliohjelmointi. Mika Saari

Network to Get Work. Tehtäviä opiskelijoille Assignments for students.

Projektityö

Horizon 2020 Pk-instrumentti; hakemusten arvioinnista

Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen

Tulevaisuuden tekijöitä Palvelukeskus Helsinkiin

Laadukas vaatimustenhallinta. Pekka Mäkinen Copyright SoftQA Oy

Kuntasektorin kokonaisarkkitehtuuri

7. Koneenohjausjärjestelmien suunnittelumallit. OhAr Veli-Pekka Eloranta

Johdantoluento. Ohjelmien ylläpito

Liiketoimintaa ICT-osaamisesta vahvuuksilla eteenpäin. Jussi Paakkari, teknologiajohtaja, VTT, R&D, ICT

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

Koneenohjausjärjestelmien arkkitehtuurit. Sulautettu ohjelmointi Veli-Pekka Eloranta

VTT and growth oriented SME companies

Turvallisuuden bisnesmalli

Prosessiajattelu. Organisaation prosessikuvaus - CMMI. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessien määritys CMMI käytänteet

7.4 Variability management

Copernicus, Sentinels, Finland. Erja Ämmälahti Tekes,

Jussi Klemola 3D- KEITTIÖSUUNNITTELUOHJELMAN KÄYTTÖÖNOTTO

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

$$$ Raha ratkaisee. $$$ Raha ratkaisee. Ohjelmistotuote. Ohjelmistotekniikan määritelmä

Suomen avoimien tietojärjestelmien keskus COSS ry

OHJ-4301 Sulautettu Ohjelmointi

Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto

Työn ositusmalleista. Luennon tavoitteista. Motivointia. Walker Royce, Software Project Management, A Unified Framework

Cloud, Convergence, Ubiquity ja muita uudissanoja - ICT toimialan näkymät 2011

opiskelun suunnittelujärjestelmä, kurki ja ilmo käyttävät kaikki samaa tietokantaa, ja uusi järjestelmä tulee osaksi tätä.

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta

Arto Luukkainen

Kokemuksia kansainvälisestä työelämäyhteistyöstä ammatillisessa koulutuksessa

Multisite -projektit uhasta mahdollisuus? Johtamiseväitä projektipäällikölle

Advanced Test Automation for Complex Software-Intensive Systems

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

Collaborative & Co-Creative Design in the Semogen -projects

Transkriptio:

Ohjelmisto osana laitetta Marko Leppänen 1

Ohjelmistoja? 2

Merkitys Suomen koko kansantalouden tasolla ohjelmistoista riippuvaista teollisuuden liikevaihtoa kertyy liki kolmannes koko liikevaihdosta eli noin 39 miljardia euroa. Suomen teollisuuden viennistä noin kolmannes eli 17 miljardia tulee tuotteista, jotka ovat ohjelmistoista riippuvaisia. Suomessa toimivat teollisuusyritykset työllistävät suoraan noin 19 500 ohjelmistokehittäjää, joista noin 9 400 työskentelee Suomessa. Teollisuuden alihankkima ohjelmistotyö työllistää melkein yhtä suuren joukon. Softaa koneisiin! Ohjelmisto-osaaminen suomalaisen teollisuuden uudistajana Etla, 2011 3

Ohjelmistojen koko Embedded Software: Facts, Figures, and Future IEEE Computer, April 2009 (vol. 42 no. 4) 4

Ohjelmistojen koko Embedded Software: Facts, Figures, and Future IEEE Computer, April 2009 (vol. 42 no. 4) 5

Koodia on paljon 6

Nykyajan elämää 7

Paikallista taustaa Pirkanmaalla vahva konepajaosaamisen perinne Sandvik, John Deere, Metso, Cargotec jne. Sandvikin edustaja Aamulehdessä kehui TTY:n vaikutusta Cargotecin tutkimuslaitos Ruskossa osittain TTY:n läheisyyden vuoksi 8

Erityispiirteitä Koneenohjausjärjestelmillä on vahvoja laatuvaatimuksia johtuen sovellusalueen erityispiirteistä. Koneenohjausjärjestelmien elinkaari on pitkä, niiden turvallisuus on ensiarvoisen tärkeää, mutta toisaalta saavutettavuutta ei saa vaarantaa. Järjestelmät ovat usein hajautettuja ja niiden on reagoitava nopeasti niin ulkoisiin ärsykkeisiin kuin ohjaukseenkin. Nämä asiat yhdessä tekevät järjestelmien suunnittelusta haastavaa jopa ohjelmistoammattilaiselle ja usein järjestelmien suunnittelijoiden on oltava myös sovellusalueen asiantuntijoita. Järjestelmät ovat osa tuotantoketjuja ja niiden on toimittava yhteen. 9

Mikä on tärkeää? 10

Työkoneen rakenne 11

Yleinen työkoneen rakenne Kone Kouran ohjaus Rungon ohjaus Voimansiirron ohjaus PC väylä Tuotantojärjestelmä Etäyhteys 12

Yleisluontoiset ohjaimet 13

Käyttäjäkokemus 14

Ohjelmiston rakenne 15

Ympäristöarvot 16

Ympäristöarvot 17

Komponenttipohjaisuus Sulautettu järjestelmä koostuu tuotteesta, joka koostuu puolestaan ohjaimista. Ohjaimilla on oma rautansa, jota ohjaa raudan oma firmware. Firmwaren päällä sitten sovelluskohtainen ohjelmisto. Tämä hw+fw+sw on yksittäinen komponentti järjestelmässä. Kaikilla osasilla on oma versionsa. 18

Koneenohjausjärjestelmien erikoisuuksia Monesti raudan valmistamisella pitkä perinne, ohjelmisto suhteellisen uusi tulokas. Kuitenkin ohjelmisto usein avainasemassa uusien rahaa tuottavien ominaisuuksien teossa. Tuotteen pitkä elinkaari Tiettyä tuotetta aletaan suunnittelemaan ehkä jo 5 vuotta ennen julkaisua Julkaistua tuotetta valmistetaan 5 vuotta Viimeisintäkin valmistunutta konetta tuetaan 10 vuotta Koneisiin lisätään uusia ominaisuuksia, tuotteenhallinta tärkeää Silti kentällä päivittäminen saattaa olla hankalaa 19

Koneenohjausjärjestelmien erikoisuuksia Turvallisuus ja luotettavuus Kone voi aiheuttaa kuolinuhreja Kone voi aiheuttaa merkittäviä vahinkoja Kone on kallis ja sen downtime kallista Lainsäädäntö: ISO EN13849 tai IEC61508 ja IEC6260 Alihankinta Osa järjestelmistä ostetaan muilta yrityksiltä Rajapinnat tärkeitä Tietoturva tärkeää 20

Koneenohjauksen erityispiirteitä Omat legacy ohjelmistot ja komponentit, COTS Osaongelmana pitkää elinkaarta Olemassa oleva toimiva koodi on uudistusten pahin vihollinen COTS komponenttien tuki Ohjelmistot osana COTS-komponentteja Äärimmäinen esimerkki: moottori Saman softan pitää toimia eri alustoilla. Korporaation laajuiset alustat 21

Koneenohjauksen erityispiirteitä Ohjelmistojen alihankinta: Perinteisesti konepajayritykset eivät miellä itseään ohjelmistotaloina Alijärjestelmät ostetaan => monitoimittajaprojekti, joka on usein perinteisillekin ohjelmistotaloille hankalaa. Hajautettu ohjelmistokehitys (P. Abrahamsson: Ei toimi). Alihankkijalla ei ole useasti aivan yhtä vahvaa sovellusaluetietämystä ja tämä joudutaan dokumentoimaan / kommunikoimaan alihankkijalle. Osaaminen myös vuotaa ulos talosta. NDA:t ja IPR tärkeää 22

Koneenohjauksen erityispiirteitä Arkkitehtuuri usein väyläpohjainen ja hajautettu, lisänä M2M - kommunikaatio Hajautuksesta saadaan hallittavuutta (separation of concerns) Kaapelointikustannukset vähenevät Kokonaiskuva hämärtyy Hajautus, reaaliaikaisuus, järjestelmien järjestelmät Sulautettu ympäristö Työkalujen saatavuus voi olla huono Laskentateho? Palvelut 23

Yleisiä ongelmia Testaus hankalaa Rautaa ei välttämättä ole projektin alussa saatavilla Reaktiivisuus Osajärjestelmä riippuu kokonaisuudesta Yksittäisen ohjainmoduulin toiminnasta ei välttämättä havaintoja ulkopuolelle ei kunnon testausinfraa/-työkaluja Alihankkijan vaikeudet testata usein paljon pahempia Testauksen (huonoja?) ratkaisuja: Itsetehtyjä testausstubeja, regressiotestaus vaikeaa testaillaan irtopurkilla omalla työpöydällä, vaikeaa integraation suhteen testaillaan simulaattorilla, jota tarvitaan muuhunkin testaillaan koneella, jota on vaikea saada käyttöön, kallis laite 24

Ongelmat jatkuvat Henkilöstöongelmat kehityspuolella koko kehitys henkilöityy yhteen/kahteen toimijaan osajärjestelmäkehitys omassa talossa, kokonaisuuden hallinta näiden henkilöiden kiire vanhojen projektien kanssa liikaa palavereja (riippuvuudet muihin osiin/rautaan, alihankinnan järjestäminen) ei aikaa keskittyä omaan kehitystyöhön Huoltobisnes tärkeä tulolähde Etähuolto Ennakoiva huolto Halutaan kuitenkin nähdä joku paikan päällä Vendor lock-in Kehitysympäristön yhtenäistäminen Työkalujen elinkaari 25

Ongelmat jatkuvat Vaatimustenhallinta Toiminnalliset vaatimukset usein hyvin hanskassa Ei-toiminnalliset vaatimukset hämärtyvät Asiakkaan käsite Mistä vaatimukset tulevat? Muut sidosryhmät Yleisiä ongelmia: Kehityksen ketteryys Paikallinen minimi ei ole koko systeemin minimi Dokumentaatio ei ole hyvä kommunikointiväline ja dokumenttien ylläpito on kallista Avoimuus vastaan propietary-ratkaisut 26

Projekti vai tuote? Pitää muistaa tehdäänkö sarjatuotantoa vai projektitoimituksia. Tämä on keskeinen bisnespäätös ja vaikuttaa moniin asioihin. Bisnesmalliin sopimattomat toimintatavat aiheuttavat ongelmia softapuolellakin Huoltaako järjestelmiä tehtaan R&D vai erillinen huoltoorganisaatio? Joskus jonkun osan parametrisointi voi esim. vaatia oman työkalun, joka ei ole yhteensopiva tehtaan muiden työkalujen kanssa. Huoltopaketti koostuu valtavasta määrästä sovelluksia, jokainen sopii tiettyyn tuotekonfiguraatioon -> ei toimi sarjatuotannossa. 27

Jos valmiissa tuotteessa ongelmia kentällä Ilman koneen diagnostiikkaa huolto ei tiedä helposti mikä on vialla, paikalle tarvitaan softan tekijä, joka voi softadiagnostiikkatyökaluilla debugata konetta. Tästä seuraa ongelmia Softamiehen paikalle saaminen kestää Softamies on paikalliseen huoltoon verrattuna kallis, etenkin matkat huomioiden Softamies on pois muista töistään. Usein paikalla selviää, että varaosia ei tarvita vaan riittää huonon kontaktin parantaminen tai kytkimen säätö tms. 28

Töitä tänään We offer international projects with interesting challenges in diverse software development tasks in growing organization. You will be member of Mitron Display Solutions hw/sw engineering team as a software developer, developing solutions and drivers for display product platforms. In addition you will also participate in test planning, product validation, and technical documentation of your deliverables. This position requires knowledge and experience on the following areas: Linux development environment and drivers.c/c++ programming, experience of embedded processors (ARM Cortex, ARM9) and interfaces 2-5 years of relevant experience. You will participate in the design and implementation of brand name mobile phones, car entertainment systems, set-top boxes and storage products, which are empowered by Tuxera file systems. The code you write will run on millions of electronics devices every We are looking for extraordinarily talented SW developers to join our team in Mjärdevi, Linköping. We work in a Linux environment and you need to be a skilled C++ programmer and preferably have experience from working with IP and TV. 29

Ja lopuksi mainos. 30