OTUPK / Luento

Koko: px
Aloita esitys sivulta:

Download "OTUPK / Luento 24.9.2012"

Transkriptio

1 OTUPK / Luento Uutisia Asiakasvaatimusten palauttamisen deadline on tämän viikon perjantaina klo 16. Päivän aiheet Esimerkki Luennon lopuksi taas yksi onneton tarina 1

2 Esimerkki Mukailtu kirjan Agile Software Development, Principles, Patters, and practices, Robert C. Martin Esimerkistä 2

3 Palkanmaksuohjelmisto Tässä on yksinkertaistettu esimerkki Oikeat palkkahallinto-ohjelmistot ovat yllättävän kalliita ja monimutkaisia Googlehaku tuotti muutaman esimerkin (Esimerkkien valinnan suoritti google ) Ei kannata aloitta kaupallista ohjelmistotoimintaa tämän esimerkin perusteella. Varoitus: tämän esimerkin yhteydessä vilautamme koodiakin! 3

4 Asiakaspalaverin muistiinpanoja Systeemi perustuu tietokantaan jossa on kaikkien työntekijöiden tiedot. Kaikille työntekijöille maksetaan tämän systeemin kautta, oikea summa ja ajallaan. Osalla työntekijöistä on tuntipalkka (joka tietokannassa) Lähettävät joka päivä raportin jossa päivä ja tehdyt tunnit Jos tuntien määrä ylittää 8, ylimeneviltä tunneilta maksetaan 1.5 kertaisesti Tuntipalkkalaisille maksetaan palkka joka perjantai Osalla työntekijöistä kuukausipalkka Maksetaan kuun lopussa Myyntitehtävissä olevilla on lisäksi provisio tehdyistä kaupoista kuitin perusteella 4

5 Lisää muistiinpanoja Työntekijät voivat valita palkanmaksutavan Shekki (esimerkki on siis pankkitoiminnan kehitysmaasta Yhdysvalloista) Suoraan tilille Työntekijät voivat kuulua ammattiliittoon Tietokannassa on tiedot päivistä jolloin jäsenmaksut vähennetään palkasta Ammattiliitto voi myös laskuttaa lisämaksuja Palkanmaksuajo suoritetaan kerran päivässä Palkanmaksupäivänä maksetaan edellisestä kerrasta syntynyt kertymä Mietitään hetki mitä olisi mahdollisesti unohtunut 5

6 Käyttötapaus 1 Lisää uusi työntekijä Tietokanta AddEmp <EmpID> <name> <address> H <hourly-rate> AddEmp <EmpID> <name> <address> S <monthly-rate> AddEmp <EmpID> <name> <address> C <mpontly-rate> <bonus-%> Jos tiedoissa virhe, näytetään virheilmoitus 6

7 Käyttötapaus 2 Poista työntekijä Tietokanta DelEmp <EmpId> Virje jos työntekijää ei löydy tai EmpId muuten virheellinen 7

8 Käyttötapaus 3 Lähetä tuntiraportti Tietokanta TimeCard <EmpId> <date> <hour> Jos tiedoissa virhe jos - työntekijä ei ole tuntipalkkalainen - EmpId virheellinen 8

9 Aina voi miettiä lisää Pitäisikö tarkistaa onko tuntimäärä järkevä? Yli 0 Alle 24 Desimaaleja Entäs jos työntekijä on uusi, eikä vielä talletettu. Esimerkiksi asiaa hoitava ihminen sairaslomalla. 9

10 Käyttötapaus 4 Lähetä myyntitosite Tietokanta SalesReceipt <EmpId> <date> <amount> Näytetään virheilmoitus jos - työntekijä ei ole provisio-palkkauksen parissa - Tiedoissa muita virheitä 10

11 Käyttötapaus 5 Ammattiliiton lisämaksu Tietokanta ServiceCharge <memberid> <amount> Jos tiedoissa virhe, näytetään virheilmoitus 11

12 Käyttötapaus 6 (monta) Muuta tietoja Tietokanta ChgEmp <EmpId> Name <name> ChgEmp <EmpId> Address <address> ChgEmp <EmpId> Hourly <hourly-rate> ChgEmp <EmpId> Salaried <monthly-salary> ChgEmp <EmpId> Commissioned <monthly-salary> <rate> ChgEmp <EmpId> Hold ChgEmp <EmpId> Direct <bank> <account> ChgEmp <EmpId> Mail <address> ChgEmp <EmpId> Member <memberid> Dues <rate> ChgEmp <EmpId> NoMember 12

13 Kukahan nämä keksi? ChgEmp <EmpId> Name <name> ChgEmp <EmpId> Address <address> ChgEmp <EmpId> Hourly <hourly-rate> ChgEmp <EmpId> Salaried <monthly-salary> ChgEmp <EmpId> Commissioned <monthly-salary> <rate> ChgEmp <EmpId> Hold ChgEmp <EmpId> Direct <bank> <account> ChgEmp <EmpId> Mail <address> ChgEmp <EmpId> Member <memberid> Dues <rate> ChgEmp <EmpId> NoMember 13

14 Käyttötapaus 7 Aja palkkaajo Tietokanta Palkkalaskelma Pankki Laske kelle pitäisi maksaa palkka, kuinka paljon ja miten PayDay <date> 14

15 Välillä hieman suunnittelua Vaikka toimittaisiin ns. ketterien menetelmien mukaan on syytä miettiä tärkeimpiä suunnitteluratkaisuja ennen kuin rynnätään koodin kimppuun. Tietokanta, valinta ja tietomallin suunnittelu Tärkeä mutta sivuutamme tässä esimerkiksi Irrottaminen (decoupling) Looginen ajallinen 15

16 Looginen irrottaminen Ei näin Read command if (command == add) { read EmpId; check EmpId; if (ok) { transaction(); } else { error(); } } else (if command == ) { } Spagetti kelpaa lautaselle hyvän kastikkeen kera, mutta ei laadukkaaseen ohjelmaan 16

17 Vaan esimerkiksi näin Command Yhteiset ominaisuudet Komennon valinta AddEmp DelEmp TimeCard CheckEmpId CheckDate 17

18 Ajallinen irrottaminen Kuormitussyistä tietokanta operaatiot halutaan viivästyttää niin, että suoritus tapahtuu yöllä. 18

19 Pieni seikkailu koodin maailmaan import java.util.linkedlist; import java.util.iterator; public class ActiveObjectEngine { LinkedList itscommands = new LinkedList(); public void addcommand(command c){ itscommands.add(c); } public void run() throws Exception { while (!itscommands.isempty()) { Command c = (Command) itscommands.getfirst(); itscommands.removefirst(); c.execute(); } } } 19

20 Yhteinen koodi public interface Command { public void execute() throws Exception; } 20

21 Mitäs luulette?

22 Jaa että oliko valmis määrittely? Verotus, ennakonpidätys Palkkatodistusten kirjoitus Lomat, sairaslomat Viikonlopputyöt, arkipyhät Autoedut, matkapuhelinedut Ulosotto Matalapalkkatuki Sitominen yrityksen kustannuspaikkoihin ja projekteihin Suorat pankkiyhteydet (SEPA) Erilaiset raportit Matkalaskut eri systeemissä? 22

23 Entäs kuka on? Käyttötapauskuvissa fuskattiin. Pitäisi miettiä Kuka/ketkä käyttää? Milloin käyttää? Missä yhteydessä? Jos järjestelmä ei sovi varsinaisten käyttäjien tarpeisiin sen käyttö tulee kalliiksi. Projektissa asiakkaan edustajan pitää muistaa myös tämä johdon asettamien liiketoimintatavoitteiden lisäksi. 23

24 Ja millaisia vaikutuksia tällä on? 24

25 Testaus, laadunvarmistus Palautetaan mieleen edellisten luentojen kuva Asiakkaan ongelma asiakasvaatimukset Määrittely Suunnittelu ohjelmistovaatimukset, määrittely tekniset vaatimukset, suunnittelu Toteutus asiakastoimitus Seuraava versio Hyväksymistestaus

26 työmäärä Mietitääs SCRUM-koneen käynnistämistä Sprintissä toteutettavat tehtävät, aika-arviot päivitetään päivittäin Daily Scrum Meeting: 15 min: Edistys edellisestä palaverista? Ovatko aika-arviosi kunnossa? Mitä teet seuraavaksi? Onko ongelmia näkyvissä? Sprint burndown chart: aika Sprint planning meeting: 4+4 tuntia: tuotteen omistaja esittelee Product backlogia Tiimi päättää, mihin voi sitoutua Riittävästi tietoa? 30 päivän pyrähdys (sprint) Sprint Review Meeting (4 tuntia): Tiimi esittelee tuloksen omistajalle tuotteen inkrementti The Sprint Retrospective (3 tuntia): miten asiat saataisiin sujumaan paremmin seuraavassa pyrähdyksessä Requirements Valmiita?

27 Mietittävää ja päätettävää Kuinka kauan vain tarkennetaan asiakasvaatimuksia? Tätäkin työtä voi tehdä SCRUM-rytmillä Missä vaiheessa ja kuinka tarkasti mietitään arkkitehtuuria Mikä osuus valitaan ensiksi toteutettavaksi Käyttäjälle arvokkain? Projektin kannalta riskipitoisin? 27

28 Pyrähdyksen alussa oleva Sprint Planning on tärkeä (varsinkin ens. pyrähdyksessä) Toteutustiimi tyypillisesti etsii abstraktioita, yhteisiä toiminnallisuuksia. Jotta tuloksena oleva järjestelmä olisi ylläpidettävä Jos keskittyy vain yhteen tapaukseen tulee helposti virheitä Jos taas ottaa kaikki huomioon, kestää liian kauan siihen että saadaan ensimmäinen asiakaspalaute Ja rahaa on palanut liikaa Esimerkki seuraavalla kalvolla 28

29 AddEmp <EmpID> <name> <address> H <hourly-rate> AddEmp <EmpID> <name> <address> S <monthly-rate> AddEmp <EmpID> <name> <address> C <mpontly-rate> <bonus-%> Siis meillä on kolme erilaista työntekijä ryhmää. Tämä voitaisiin ottaa suunnittelun pohjaksi? ChgEmp <EmpId> Name <name> ChgEmp <EmpId> Address <address> ChgEmp <EmpId> Hourly <hourly-rate> ChgEmp <EmpId> Salaried <monthly-salary> ChgEmp <EmpId> Commissioned <monthly-salary> <rate> ChgEmp <EmpId> Hold ChgEmp <EmpId> Direct <bank> <account> ChgEmp <EmpId> Mail <address> ChgEmp <EmpId> Member <memberid> Dues <rate> ChgEmp <EmpId> NoMember Tyyppi voikin muuttua! Entä onko mahdollista, että voi tulla uusia tyyppejä? 29

30 On investointi Muunneltavuuden haasteesta Vaikea keksiä mitä oikeasti tullaan muuntamaan Onneton esimerkki: 30

31 Kun vihdoin tiedetään tarpeeksi hyvin mitä ollaan tekemässä Toimittaja suunnittelee ketkä projektiin osallistuvat Toimittaja ja asiakas tarkentavat yhdessä aikataulun (Olettaen että valitaan SCRUM tai joku muu ketterä menetelmä) asiakas huolehtii siitä, että kunkin pyrähdyksen jälkeen saadaan riittävä asiakas ja käyttäjäpalaute Suunnitellaan järjestelmätestaus ja käyttöönotto 31

32 Järjestelmätestaus/hyväksymistestaus Usein asiakas osallistuu testaukseen vasta tässä vaiheessa Valitettavasti joskus ei vielä tällöinkään Tässä vaiheessa voi olla jännitteitä Toimittaja haluaa rahansa ja haluaa että virheiden korjaus on jatkossa erikseen laskutettavaa työtä Asiakas haluaa täydellisen järjestelmän 32

33 Käyttöönotto Rajattu oppikirjamme ulkopuolelle Kuitenkin tärkeä asia Mietittäviä asioita Siirrytäänkö yhdessä yössä vanhasta järjestelmästä uuteen Vai hetken aikaa rinnakkain Vai pala kerrallaan Miten siirretään tiedot vanhasta uuteen Tarvitaanko käyttäjille koulutusta Käyttöönotto voi olla oma projektinsa 33

34 Kertausta Ensimmäisen asiakaspalaverin muistiinpanoista on pitkä matka lopullisiin vaatimuksiin. Järjestelmät ovat monimutkaisempia kuin aluksi näyttävä. Räätälöidyn järjestelmän määrittelyssä asiakas-toimittaja yhteistyön on toimittava 34

35 Tämän viikon sattumus Ariane 5 kantoraketin onnettomuus 35

36 Ariane 5 - analyysi 64bittinen liukuluku muunnettiin 16-bittiseksi kokonaisluvuksi Tällä kertaa syntyi ylivuoto Olisi syntynyt Ada-kielen poikkeus (tämä ohjelmointikielen rakenne on suunniteltu jotta voitaisiin reagoida tällaisiin virheisiin turvallisesti), mutta poikkeukset oli tehokkuussyistä otettu pois käytöstä. Joten laskun tulos oli ns potaskaa Vääristyneiden mittausarvojen tuloksena ohjausraketit yrittivät massiivista korjausliikettä Ylivuoto syntyi koska Ariene 5:n suorituskyky oli suurempi kuin edeltäjän (Ariane 4) mutta Arian 5 uudelleen käytti vanhan järjestelmän softaa Ylivuotoon joutunut järjestelmä oli vikatilanteiden vuoksi kahdennettu mutta ajoi samaa ohjelmistoa 36

37 Ariane 5 Ylivuotoon joutunut järjestelmä oli tarpeen vain silloin kun raketti vielä seisoo laukaisualustalla ja se oltaisiin voitu ottaa jo pois päältä Ongelmana oli vaakanopeus jonka kukaan ei ollut uskonut kasvavan liian suureksi L_M_BV_32 := TBD.T_ENTIER_32S ((1.0/C_M_LSB_BV) * G_M_INFO_DERIVE(T_ALG.E_BV)); if L_M_BV_32 > then P_M_DERIVE(T_ALG.E_BV) := 16#7FFF#; elsif L_M_BV_32 < then else P_M_DERIVE(T_ALG.E_BV) := 16#8000#; P_M_DERIVE(T_ALG.E_BV) := UC_16S_EN_16NS(TDB.T_ENTIER_16S(L_M_BV_32)); end if; P_M_DERIVE(T_ALG.E_BH) := UC_16S_EN_16NS (TDB.T_ENTIER_16S ((1.0/C_M_LSB_BH) * G_M_INFO_DERIVE(T_ALG.E_BH))); 37

38 38

Vaatimusmäärittelyistä

Vaatimusmäärittelyistä Vaatimusmäärittelyistä JOTU 16.09.2013 16.9.2013 JOTU2013/K.Systä 1 Tiedotuksia Harjoitusryhmiin ilmoittautuminen on vihdoin avautunut IDLE:ssä Ryhmän maksimi koko on 4 henkeä Ilmoittautumisen takaraja

Lisätiedot

Oliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä

Oliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä Oliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä Matti Luukkainen 10.12.2009 Tässä esitetty esimerkki on mukaelma ja lyhennelmä Robert Martinin kirjasta Agile and Iterative Development löytyvästä

Lisätiedot

Rajapinta (interface)

Rajapinta (interface) 1 Rajapinta (interface) Mikä rajapinta on? Rajapinta ja siitä toteutettu luokka Monimuotoisuus ja dynaaminen sidonta Rajapinta vs periytyminen 1 Mikä rajapinta on? Rajapintoja käytetään, kun halutaan määritellä

Lisätiedot

Projektin vaiheet 17.9.2012

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

Lisätiedot

Ketterä vaatimustenhallinta

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

Lisätiedot

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

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

Lisätiedot

Toisessa viikkoharjoituksessa on tavoitteena tutustua JUnit:lla testaukseen Eclipse-ympäristössä.

Toisessa viikkoharjoituksessa on tavoitteena tutustua JUnit:lla testaukseen Eclipse-ympäristössä. Toisessa viikkoharjoituksessa on tavoitteena tutustua JUnit:lla testaukseen Eclipse-ympäristössä. JUnit-ympäristö 1. Luo tests -pakkaukseen uusi luokka. Nimeä VHTestit. 2. Laita VHTestit periytymään TestCase:sta

Lisätiedot

KÄYTETTÄVYYSTESTAUS OSANA KETTERÄÄ KEHITYSTÄ

KÄYTETTÄVYYSTESTAUS OSANA KETTERÄÄ KEHITYSTÄ KÄYTETTÄVYYSTESTAUS OSANA KETTERÄÄ KEHITYSTÄ Eeva Kangas 05.11.2015 @FixUi Oy 2013 2015 FIXUI "Autamme yrityksiä suunnittelemaan sellaisia tuotteita, joita ihmiset osaavat ja haluavat käyttää" Käyttäjätutkimukset

Lisätiedot

Johdatus ohjelmistotuotantoon

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ä

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2011 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2011 1 / 39 Kertausta: tiedoston avaaminen Kun ohjelma haluaa lukea tai kirjoittaa tekstitiedostoon, on ohjelmalle

Lisätiedot

Hieman linkkejä: http://cs.stadia.fi/~kuivanen/linux/kom.php, lyhyt ohje komentoriviohjelmointiin.

Hieman linkkejä: http://cs.stadia.fi/~kuivanen/linux/kom.php, lyhyt ohje komentoriviohjelmointiin. Linux-harjoitus 9 Linuxin mukana tulevat komentotulkit (mm. bash, tcsh, ksh, jne ) sisältävät ohjelmointikielen, joka on varsin tehokas ja ilmaisuvoimainen. Tähän yhdistettynä unix-maailmasta tutut tehokkaat

Lisätiedot

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4 Sisällys 12. Näppäimistöltä lukeminen Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä.. Luetun arvon tarkistaminen. Tietovirrat ja ohjausmerkit. Scanner-luokka.

Lisätiedot

OppiScrum opintojen läpäisyasteen ja oppimisen omistajuuden edistäjänä

OppiScrum opintojen läpäisyasteen ja oppimisen omistajuuden edistäjänä Jengi duunaa ihan tosissaan! OppiScrum opintojen läpäisyasteen ja oppimisen omistajuuden edistäjänä Otto Burman Virpi Peuralinna Pirkka Ruishalme Linda Salminen Oppimisen ja opettamisen haasteet Oppimisen

Lisätiedot

1 Tehtävän kuvaus ja analysointi

1 Tehtävän kuvaus ja analysointi Olio-ohjelmoinnin harjoitustyön dokumentti Jyri Lehtonen (72039) Taneli Tuovinen (67160) 1 Tehtävän kuvaus ja analysointi 1.1 Tehtävänanto Tee luokka, jolla mallinnetaan sarjaan kytkettyjä kondensaattoreita.

Lisätiedot

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

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

Lisätiedot

Siirtyminen ketterien menetelmien maailmaan! Maarit Laanti 24 October 2013!

Siirtyminen ketterien menetelmien maailmaan! Maarit Laanti 24 October 2013! Siirtyminen ketterien menetelmien maailmaan! Maarit Laanti 24 October 2013! Sisältö! 1. Tilanne nyt: waterscrumming! 2. Kokonaisvaltainen ketteryys mitä sillä haetaan, mitä sillä saadaan?! 3. Ketterän

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 28.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 28.2.2011 1 / 46 Ohjelmointiprojektin vaiheet 1. Määrittely 2. Ohjelman suunnittelu (ohjelman rakenne ja ohjelman

Lisätiedot

17/20: Keittokirja IV

17/20: Keittokirja IV Ohjelmointi 1 / syksy 2007 17/20: Keittokirja IV Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/10 Tavoitteita

Lisätiedot

Ketterä projektinhallinta

Ketterä projektinhallinta Ketterä projektinhallinta Petri Heiramo Agile Coach, CST 1 Petri Heiramo Ikä: 37 (vielä pari päivää ) Oma koulutus- ja valmennusyritys, Agilecraft Oy, reilut 3 viikkoa Lähes 10v ohjelmistokehitys- ja -prosessitausta

Lisätiedot

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 1.4.2009 T-106.1208 Ohjelmoinnin perusteet Y 1.4.2009 1 / 56 Tentti Ensimmäinen tenttimahdollisuus on pe 8.5. klo 13:00 17:00 päärakennuksessa. Tämän jälkeen

Lisätiedot

Java-kielen perusteita

Java-kielen perusteita Java-kielen perusteita valintalauseet 1 Johdantoa kontrollirakenteisiin Tähän saakka ohjelmissa on ollut vain peräkkäisyyttä eli lauseet on suoritettu peräkkäin yksi kerrallaan Tarvitsemme myös valintaa

Lisätiedot

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen Metodit Metodien määrittely Metodin parametrit ja paluuarvo Metodien suorittaminen eli kutsuminen Metodien kuormittaminen 1 Mikä on metodi? Metodi on luokan sisällä oleva yhteenkuuluvien toimintojen kokonaisuus

Lisätiedot

ADE Oy Hämeen valtatie 144 20540 TURKU. Tuotekonfigurointi. ADE Oy Ly Tunnus: 1626957-3

ADE Oy Hämeen valtatie 144 20540 TURKU. Tuotekonfigurointi. ADE Oy Ly Tunnus: 1626957-3 Tuotekonfigurointi ADE Oy lyhyesti Asiakkaiden tarpeisiin suunnattua innovatiivista ja toimivaa ohjelmisto- ja 3d animaatiopalvelua. Ade Oy on toteuttanut vuodesta 2000 alkaen haastavaa interaktiivista

Lisätiedot

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA

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

Lisätiedot

Testauksen hallintaa teekkareille (ja muille kiinnostuneille) Arto Stenberg

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

Lisätiedot

Ohjelmistojen mallintaminen. Luento 2, pe 5.11.

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

Lisätiedot

Microsoft Visual Studio 2005

Microsoft Visual Studio 2005 Sovelluksen jako palvelimiksi: Palvelin on sille annettuun vastuulliseen tehtävään erikoistunut sovellusosa. Käyttöliittymäpalvelin (Web-palvelin) vastaa käyttöliittymän toteuttamisesta. Web-palvelin toteuttaa

Lisätiedot

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

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

Lisätiedot

Kooste kotitehtävien vastauksista. Kotitehtävä 6 - Ylläpito- ja kehittämismalli 29.4.2011

Kooste kotitehtävien vastauksista. Kotitehtävä 6 - Ylläpito- ja kehittämismalli 29.4.2011 Kooste kotitehtävien vastauksista Kotitehtävä 6 - Ylläpito- ja kehittämismalli 29.4.2011 1.) Järjestelmän ylläpitomalli? ja 2.) Järjestelmän jatkokehittämismalli? OPH on omistaja ja ylläpitäjä ja huolehtii

Lisätiedot

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000 HELIA 1 (15) Luento 2.7 Toiminnallisuutta tietokantaan... 2 Deklaratiivinen eheysvalvonta... 2 Proseduraalinen eheysvalvonta... 3 Eheysvalvonnan suunnittelusta... 4 Sääntöjen määrittely... 4 Toteutusvaihtoehdot...

Lisätiedot

TIE-20200 Ohjelmistojen suunnittelu. Luento 2: protot sun muut

TIE-20200 Ohjelmistojen suunnittelu. Luento 2: protot sun muut TIE-20200 Ohjelmistojen suunnittelu Luento 2: protot sun muut 1 Tämän päivän ohjelmaa Ryhmääntymistä, viimeksi unohtui Työohje julkaistu! Elinaikajuttujen loppurutistusta, viipaloitumisasiaa Prototyypeistä

Lisätiedot

Ohjelmistoprojektien hallinta Vaihejakomallit

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

Lisätiedot

Tapahtuipa Testaajalle...

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

Lisätiedot

Tehtävä 1. Tehtävä 2. Arvosteluperusteet Koherentti selitys Koherentti esimerkki

Tehtävä 1. Tehtävä 2. Arvosteluperusteet Koherentti selitys Koherentti esimerkki Tehtävä 1 Koherentti selitys Koherentti esimerkki ½p ½p Tehtävä 2 Täysiin pisteisiin edellytetään pelaajien tulostamista esimerkin järjestyksessä. Jos ohjelmasi tulostaa pelaajat jossain muussa järjestyksessä,

Lisätiedot

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

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

Lisätiedot

Lyhyt johdatus ketterään testaukseen

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

Lisätiedot

Näin tarkistat palkkalaskelmasi. Esimerkkejä eri palkan eristä

Näin tarkistat palkkalaskelmasi. Esimerkkejä eri palkan eristä Näin tarkistat palkkalaskelmasi Esimerkkejä eri palkan eristä Kuukausipalkka ja lisät Työaikaan liittyvät lisät maksetaan toteutuneen työvuorolistan mukaisena. Sunnuntailisänä maksetaan yksinkertainen

Lisätiedot

Harjoitustyö: virtuaalikone

Harjoitustyö: virtuaalikone Harjoitustyö: virtuaalikone Toteuta alla kuvattu virtuaalikone yksinkertaiselle olio-orientoituneelle skriptauskielelle. Paketissa on testaamista varten mukana kaksi lyhyttä ohjelmaa. Ohjeita Noudata ohjelman

Lisätiedot

Tietokannat II -kurssin harjoitustyö

Tietokannat II -kurssin harjoitustyö Tietokannat II -kurssin harjoitustyö Jyri Lehtonen (72039), jkoleh@utu.fi Azad Hajipour (72187), azhaji@utu.fi 10.6.2007 Sisältö 1. Tietokannan kuvaus... 1 1.1 Tietokannan rakenne... 1 1.2 Relaatiokaava

Lisätiedot

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 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

Lisätiedot

Järjestelmäsalkun hallinta TTY:llä

Järjestelmäsalkun hallinta TTY:llä 1 Järjestelmäsalkun hallinta TTY:llä Osa kokonaisarkkitehtuurin ja toiminnan kehittämistä! 2 TTY:n tunnuslukuja Työntekijöitä 2.300 Opiskelijoita 12.500 Keskitettyjä järjestelmiä 79 kpl Opiskelu/opetus

Lisätiedot

Listarakenne (ArrayList-luokka)

Listarakenne (ArrayList-luokka) Listarakenne (ArrayList-luokka) Mikä on lista? Listan määrittely ArrayList-luokan metodeita Listan läpikäynti Listan läpikäynti indeksin avulla Listan läpikäynti iteraattorin avulla Listaan lisääminen

Lisätiedot

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin Ohjausjärjestelmien jatkokurssi Visual Basic vinkkejä ohjelmointiin http://www.techsoft.fi/oskillaattoripiirit.htm http://www.mol.fi/paikat/job.do?lang=fi&jobid=7852109&index=240&anchor=7852109 Yksiköt

Lisätiedot

Harjoitukset - muistutus

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

Lisätiedot

Ohjelmistotekniikan menetelmät, koe 2.5.2014

Ohjelmistotekniikan menetelmät, koe 2.5.2014 Ohjelmistotekniikan menetelmät, koe 2.5.2014 Vastaa tehtävään 3 erilliselle konseptille. Tehtävät 1 ja 2 saavat olla samalla konseptilla. Kirjoita jokaiseen palauttamaasi konseptiin kurssin nimi, kokeen

Lisätiedot

Tentti: T-106.1210 Ohjelmoinnin peruskurssi, osa 1. Yleistä. Tehtävä 1

Tentti: T-106.1210 Ohjelmoinnin peruskurssi, osa 1. Yleistä. Tehtävä 1 ./ Tentti: T-106.1210 Ohjelmoinnin peruskurssi, osa 1 Tenttipäivä: 13.12. 2011 El APUVÄLINEITÄ Yleistä Tentissä on kaksi tehtävää. Ensimmäinen tehtävä on tärkeämpi: sillä pyritään varmistamaan, että jokaisella

Lisätiedot

Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia.

Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia. MagicDraw-pikaohje Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia. Alkuvalmistelut Windows (sali TC205) 1) Kirjaudu sisään TTY:n intra-tunnuksella.

Lisätiedot

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti: 1 (7) Tiedon lukeminen näppäimistöltä Scanner-luokan avulla Miten ohjelma saa käyttöönsä käyttäjän kirjoittamaa tekstiä? Järjestelmässä on olemassa ns. syöttöpuskuri näppäimistöä varten. Syöttöpuskuri

Lisätiedot

Opera Hotel Edition. Arvonlisäverokantojen muutos Operaan 01.07.2010. Finland. Toukokuu 2010 MICROS-Fidelio Finland Oy, Hotel Systems HelpDesk

Opera Hotel Edition. Arvonlisäverokantojen muutos Operaan 01.07.2010. Finland. Toukokuu 2010 MICROS-Fidelio Finland Oy, Hotel Systems HelpDesk Opera Hotel Edition Arvonlisäverokantojen muutos Operaan 01.07.2010 Toukokuu 2010 MICROS-Fidelio Finland Oy, Hotel Systems HelpDesk Sivu / Page: 1 / 15 Document revision history Version Revision Author

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 7.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 7.2.2011 1 / 39 Kännykkäpalautetteen antajia kaivataan edelleen! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 26.1.2009 T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 1 / 33 Valintakäsky if syote = raw_input("kerro tenttipisteesi.\n") pisteet = int(syote) if pisteet >=

Lisätiedot

JUnit ja EasyMock (TilaustenKäsittely)

JUnit ja EasyMock (TilaustenKäsittely) OHJELMISTOJEN TESTAUS JA HALLINTA Syksy 2015 / Auvo Häkkinen JUnit ja EasyMock (TilaustenKäsittely) Tehtävässä tarvittava koodi löytyy osoitteella http://users.metropolia.fi/~hakka/oth/mockesimerkki.zip

Lisätiedot

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

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

Lisätiedot

Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014

Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014 Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014 Kirjoita jokaiseen palauttamaasi konseptiin kurssin nimi, kokeen päivämäärä, oma nimi ja opiskelijanumero. Vastaa kaikkiin tehtäviin omille konsepteilleen.

Lisätiedot

Web Services tietokantaohjelmoinnin perusteet

Web Services tietokantaohjelmoinnin perusteet ASP.NET Web Services Web Services tietokantaohjelmoinnin 2 (22) Sisällys Harjoitus 1: Tietokannat ja Web Services... 3 Harjoitus 2: Windows Client... 10 Harjoitus 3: Datan päivitys TableAdapterin avulla...

Lisätiedot

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b Pythonin Kertaus Cse-a1130 Tietotekniikka Sovelluksissa Versio 0.01b Listat 1/2 esimerkkejä listan peruskäytöstä. > lista=['kala','kukko','kissa','koira'] ['kala','kukko','kissa','koira'] >lista.append('kana')

Lisätiedot

Hammastankohissin modernisointi. Heikki Laitasalmi

Hammastankohissin modernisointi. Heikki Laitasalmi Hammastankohissin modernisointi Heikki Laitasalmi Loppudemossa Mitä oltiinkaan tekemässä V-malli Modbus viestintä (PLC VFD) Esitellään laitteet Lopuksi Modbusia käytännössä Hammastankohissi Arkkitehtuuri

Lisätiedot

2 Konekieli, aliohjelmat, keskeytykset

2 Konekieli, aliohjelmat, keskeytykset ITK145 Käyttöjärjestelmät, kesä 2005 Tenttitärppejä Tässä on lueteltu suurin piirtein kaikki vuosina 2003-2005 kurssin tenteissä kysytyt kysymykset, ja mukana on myös muutama uusi. Jokaisessa kysymyksessä

Lisätiedot

Kuinka helpottaa suurten projektien tuskaa pilvipalveluilla?

Kuinka helpottaa suurten projektien tuskaa pilvipalveluilla? Kuinka helpottaa suurten projektien tuskaa pilvipalveluilla? Sytyke-risteily 2013 Otso Kivekäs 4.9.2013 Codento Suomalainen ohjelmistotoimittaja Hansel-sopimustoimittaja AWS Solution Provider Eucalyptus

Lisätiedot

Java-API, rajapinnat, poikkeukset, UML,...

Java-API, rajapinnat, poikkeukset, UML,... Java-API, rajapinnat, r poikkeukset, UML,... Janne Käki 12.10.2006 Keskeisimmät Java-API:n pakkaukset API = Application Programming Interface eli sovellusohjelmointirajapinta (!) pakkaus (engl. package)

Lisätiedot

Hyvin määritelty on puoliksi tehty kuinka vältetään turha tekeminen jo alussa

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ä

Lisätiedot

4.12.2005. SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T

4.12.2005. SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T SEPA: REFAKTOROINTI 2 (9) SEPA: REFAKTOROINTI 3 (9) VERSIOHISTORIA Version Date Author Description 0.1 2.12.2005 Erik Hakala Ensimmäinen

Lisätiedot

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

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

Lisätiedot

Asynkroninen ohjelmointi.net 4.5 versiolla

Asynkroninen ohjelmointi.net 4.5 versiolla Asynkroninen ohjelmointi.net 4.5 versiolla Jari Kallonen Software Specialist at Tieturi Oy Régis Laurent Director of Operations, Global Knowledge Competencies include: Gold Learning Silver System Management

Lisätiedot

Rinnakkaisohjelmointi kurssi. Opintopiiri työskentelyn raportti

Rinnakkaisohjelmointi kurssi. Opintopiiri työskentelyn raportti Rinnakkaisohjelmointi kurssi Opintopiiri työskentelyn raportti Opintopiiri: Heikki Karimo, Jesse Paakkari ja Keijo Karhu Päiväys: 15.12.2006 Ohjelmointitehtävä C i C i : Säikeet ja kriittisen vaiheen kontrollointi

Lisätiedot

Samanaikaisuuden hallinta. Optiot transaktionaalisissa työnkuluissa

Samanaikaisuuden hallinta. Optiot transaktionaalisissa työnkuluissa Samanaikaisuuden hallinta Optiot transaktionaalisissa työnkuluissa Sisältö Transaktionaaliset työnkulut Samanaikaisuuden ongelmat Optiot idea käyttökohteet WorkMan Optioiden toteutus Arviointi Transaktionaaliset

Lisätiedot

Lakki. Lisää ot sik k o osoit t am alla. Nöyrästi vain lakki kourassa... Jussi Vänskä Espotel Oy. vierailuluentosarja OTM kurssi 2010

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

Lisätiedot

Tikli-projektin avausseminaari

Tikli-projektin avausseminaari Tikli-projektin avausseminaari Toiminnanohjaus 16.9.2008 Salla Brunou, Severa Luennon sisältö 1. Annetut aiheet 2. Omia kokemuksia Severa Oyj Severa -Kasvanut vuodesta 2003 yli 20 hengen yritykseksi -Asiakaskunta:

Lisätiedot

Täysautomatisoitu raportointiympäristö. Joni-Petteri Paavilainen Jani Alatalo

Täysautomatisoitu raportointiympäristö. Joni-Petteri Paavilainen Jani Alatalo Täysautomatisoitu raportointiympäristö Joni-Petteri Paavilainen Jani Alatalo Miksi tähän ryhdyttiin? Miten asiassa edettiin? Vaatimuksia Reaaliaikaisuus n 15 min Hallitut käyttöoikeudet Raportin tekijöillä

Lisätiedot

Rinnakkaisohjelmointi, Syksy 2006

Rinnakkaisohjelmointi, Syksy 2006 Rinnakkaisohjelmointi, Syksy 2006 17.12.2006 Opintopiiri WTF Mika Holmström Paula Kemppi Janne Piippo Lasse Lukkari Javan semaforit 1. Menetelmän käyttötarkoitus ja sovellusalue Semaforin idea kehitettiin

Lisätiedot

Onnistunut ohjelmistoprojekti

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

Lisätiedot

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

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

Lisätiedot

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

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

Lisätiedot

Prosessien hallinta. Lean-näkökulma laboratorion prosessien kehittämiseen ja hallintaan

Prosessien hallinta. Lean-näkökulma laboratorion prosessien kehittämiseen ja hallintaan Prosessien hallinta Lean-näkökulma laboratorion prosessien kehittämiseen ja hallintaan Tommi Jokiniemi Kehittämispäällikkö Viitekehykset Luennoitsija: Biofysiikan ja lääketieteellisen tekniikan DI 15v

Lisätiedot

TIE-20200 Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely

TIE-20200 Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely Lyhyt UML-opas UML -pikaesittely UML, Unified Modeling Language Standardoitu, yleiskäyttöinen mallinnuskieli, jota ylläpitää/hallitsee (Object Management Group) OMG Historiaa: 90-luvulla oli paljon kilpailevia

Lisätiedot

Työelämän ABC. Tämä esitys on tarkoitettu yli 18-vuotiaille määräaikaisia tai toistaiseksi voimassa olevia työsopimuksia solmiville.

Työelämän ABC. Tämä esitys on tarkoitettu yli 18-vuotiaille määräaikaisia tai toistaiseksi voimassa olevia työsopimuksia solmiville. Työelämän ABC Tämä esitys on tarkoitettu yli 18-vuotiaille määräaikaisia tai toistaiseksi voimassa olevia työsopimuksia solmiville. Muista työsuhteen alkaessa! Pyydä työsopimuksesi kirjallisena. Työsopimuksessa

Lisätiedot

Ostavat organisaatiot konsultin silmin

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

Lisätiedot

Toiminnallisen määrittelyn tarina. Esimerkki Reaktorin tavasta tehdä toiminnallista määrittelyä.

Toiminnallisen määrittelyn tarina. Esimerkki Reaktorin tavasta tehdä toiminnallista määrittelyä. Toiminnallisen määrittelyn tarina Esimerkki Reaktorin tavasta tehdä toiminnallista määrittelyä. Toimitusjohtajan pulma Tässä on toimitusjohtaja Roope, jonka tavoitteena on pyörittää Rengasmaster Oy:tä

Lisätiedot

A274101 TIETORAKENTEET JA ALGORITMIT

A274101 TIETORAKENTEET JA ALGORITMIT A274101 TIETORAKENTEET JA ALGORITMIT PERUSTIETORAKENTEET LISTA, PINO, JONO, PAKKA ABSTRAKTI TIETOTYYPPI Tietotyyppi on abstrakti, kun se on määritelty (esim. matemaattisesti) ottamatta kantaa varsinaiseen

Lisätiedot

Hirviö Järjestelmätestauksen testitapaukset ja suoritusloki I1

Hirviö Järjestelmätestauksen testitapaukset ja suoritusloki I1 Hirviö Järjestelmätestauksen testitapaukset ja suoritusloki I1 Jani Heikkinen Jukka Larja Kim Nylund Liia Sarjakoski 30. marraskuuta 2004 1 Sisältö 1 Sisään- ja uloskirjautuminen 3 1.1 Testitapaus F1-TC1................................

Lisätiedot

JReleaser Yksikkötestaus ja JUnit. Mikko Mäkelä 6.11.2002

JReleaser Yksikkötestaus ja JUnit. Mikko Mäkelä 6.11.2002 JReleaser Yksikkötestaus ja JUnit Mikko Mäkelä 6.11.2002 Sisältö Johdanto yksikkötestaukseen JUnit yleisesti JUnit Framework API (TestCase, TestSuite) Testien suorittaminen eri työkaluilla Teknisiä käytäntöjä

Lisätiedot

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin.

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin. 2. Ohjausrakenteet Ohjausrakenteiden avulla ohjataan ohjelman suoritusta. peräkkäisyys valinta toisto Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet

Lisätiedot

Interaktiivinen tarinankerronta

Interaktiivinen tarinankerronta Interaktiivinen tarinankerronta Tehtävä 1: Tarinan alku pääohjelmaan Main. java ei tehdä muutoksia tulostusrivit tiedostoon Kayttoliittyma.java tulostus lyhyesti sout + tab komennolla Tiedoston Kayttoliittyma.java

Lisätiedot

Työkalut ohjelmistokehityksen tukena

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

Lisätiedot

C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. Operaatioiden suoritusjärjestys

C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. Operaatioiden suoritusjärjestys Loogisia operaatioita - esimerkkejä Tänään on lämmin päivä ja perjantai Eilen satoi ja oli keskiviikko tai tänään on tiistai. On perjantai ja kello on yli 13 Ei ole tiistai tai ei sada. Ei pidä paikkaansa,

Lisätiedot

XDW-TIETOVARASTO TALOUSHALLINNON OSA-ALUEEN TOTEUTUS

XDW-TIETOVARASTO TALOUSHALLINNON OSA-ALUEEN TOTEUTUS XDW-TIETOVARASTO TALOUSHALLINNON OSA-ALUEEN TOTEUTUS SISÄLLYS 1 TALOUSHALLINNON OSA-ALUEPROJEKTIN TAVOITE... 1 2 RAPORTOINNIN PERUSTA HAMKISSA... 1 3 TESTIRAPORTTI, OPH KUSTANNUSTIETOJEN RAPORTOINTI...

Lisätiedot

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta.

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Malli-näkym kymä-ohjain arkkitehtuurit (Model-View View-Controller, MVC) Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Lähtökohdat: Sovelluksen

Lisätiedot

Ohjelmoinnin peruskurssien laaja oppimäärä

Ohjelmoinnin peruskurssien laaja oppimäärä Ohjelmoinnin peruskurssien laaja oppimäärä Luento 11: Rinnakkaisuus Riku Saikkonen (osa kalvoista on suoraan ei-laajan kurssin luennoista) 25. 4. 2012 Sisältö 1 Rinnakkaisuusmalleja: säie ja prosessi 2

Lisätiedot

TIE-20200 Ohjelmistojen suunnittelu. Luento 2: protot sun muut

TIE-20200 Ohjelmistojen suunnittelu. Luento 2: protot sun muut TIE-20200 Ohjelmistojen suunnittelu Luento 2: protot sun muut 1 Tämän päivän ohjelmaa Ryhmääntymisjutuista, ilmoittautumiskäytäntöä, Popista Työohjeen esivilkaisu Viime viikolla, erikoistamista, dynaamista

Lisätiedot

Kirjasto Relaatiotietokannat Kevät 2001. Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina

Kirjasto Relaatiotietokannat Kevät 2001. Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina Kirjasto Kevät 2001 Auvinen Annemari Niemi Anu Harjoitustyö 7.4.2001 Sisällysluettelo 1. Yleiskuvaus... 3 2. Vaatimukset... 3 2.1. Toiminnalliset... 3 2.1.1. Sisäänkirjautuminen... 3 2.1.2. Nimikkeiden

Lisätiedot

Mikä yhteyssuhde on?

Mikä yhteyssuhde on? 1 Yhteyssuhde Mikä yhteyssuhde on? Yhteyssuhde Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma 1 Mikä yhteyssuhde on? Tili - : String - : double * 1 Asiakas - hetu: String - : String

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 11.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 11.2.2009 1 / 33 Kertausta: listat Tyhjä uusi lista luodaan kirjoittamalla esimerkiksi lampotilat = [] (jolloin

Lisätiedot

Mihin kaikkeen voit törmätä testauspäällikön saappaissa?

Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Arto Stenberg Copyright Kuntien Tiera Oy Kuntien Tiera Copyright Kuntien Tiera Oy Tiera on vuonna 2010 perustettu yli 200:n kuntatoimijan omistama

Lisätiedot

Johdatus ohjelmistotuotantoon

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

Lisätiedot

Ohjelmointityö 65 Tekstinmuotoilu ohjelma. Dokumentaatio. Aki Heikkinen (155394)

Ohjelmointityö 65 Tekstinmuotoilu ohjelma. Dokumentaatio. Aki Heikkinen (155394) Ohjelmointityö 65 Tekstinmuotoilu ohjelma Dokumentaatio Aki Heikkinen (155394) 15.6.2007 Sisällysluettelo 1. Tehtävän määrittely ja ratkaisuperiaate... 1 1.1. Tehtävän määrittely... 1 1.2. Ratkaisuperiaate...

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 24.1.2011 T-106.1208 Ohjelmoinnin perusteet Y 24.1.2011 1 / 36 Luentopalaute kännykällä alkaa tänään! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti Vast

Lisätiedot

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen Pedacode Pikaopas Java-kehitysympäristön pystyttäminen Pikaoppaan sisältö Pikaoppaassa kuvataan, miten Windowstyöasemalle asennetaan Java-ohjelmoinnissa tarvittavat työkalut, minkälaisia konfigurointeja

Lisätiedot

1. KÄYTTÖKONTEKSTI. jamkad VAATIMUSMÄÄRITTELY. Liite1_Vaatimusmaarittely_Elainklinikka.doc 09.12.2002. Filename: Last saved:

1. KÄYTTÖKONTEKSTI. jamkad VAATIMUSMÄÄRITTELY. Liite1_Vaatimusmaarittely_Elainklinikka.doc 09.12.2002. Filename: Last saved: 1. KÄYTTÖKONTEKSTI Käyttäjät Tehtävät Kyseessä on tietokantajärjestelmä, jonka avulla voidaan pitää kirjaa yrityksen asiakkaista, asiakkaiden lemmikkieläimistä, lemmikkieläinten hoidoista sekä maksetuista

Lisätiedot

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1 3. Komponentit ja rajapinnat 3.1 Komponenttien idea: ohjelmistotuotannon rationalisointi 3.2 Mikä on ohjelmistokomponentti? 3.3 Komponentit ohjelmistoyksikköinä 3.4 Rajapinnat 3.6 Komponenttien räätälöinti

Lisätiedot