Toteutussuunnitelma. Luennon tavoitteista. Motivointia. Pressman, Software Engineering
|
|
- Kai Lehtilä
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 Toteutussuunnitelma Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Pressman, Software Engineering 1
2 Tavoitteista Luentojen jälkeen opiskelijan tulisi osata: 2
3 Sisällöstä Tavoitekalvon asioita. 3
4 Motivointia 4
5 Toteutussuunnitelma ja projektin vaiheet Määrittelyiden ja vaatimusten keruun jälkeen osa (tärkeimmät) vaatimuksiin liittyvistä toiminnoista toteutetaan (tällä kurssilla, riippuu vaatimusten laajuudesta). 5
6 Käsitteistä Laaditaan suunnitelmia (rakenteita): Datasuunnitelmat (-rakenne), tietorakenteet, tietokanta Arkkitehtuurirakenne, ohjelman rakenteen pääelementit Liittymärakenne, modulien väliset, ulkoiset, hci Toiminnallinen rakenne, käytetään prosessi- ja kontrollimäärittelyitä, tilarakenteita 6
7 Suunnitteluprosessista Laatu: Suunnitelmien tulee toteuttaa kaikki erikseen mainitut vaatimukset ja myös ns. hiljaiset vaatimukset. Koodin kirjoittajien tulee pystyä lukemaan ja ymmärtämään suunnitelmat. Ja myös testaajien ja tulevien ylläpitäjien. Suunnitelmien tulisi antaa ohjelmistosta kokonaiskuva: datasta, toiminnallisuudesta ja käyttäytymisestä. 7
8 Teknisiä kriteerejä laadulle: Suunnitelmien pitäisi antaa ohjelmistolle hierarkkinen rakenne, joka näppärästi kontrolloi ohjelmiston elementtejä. Suunnitelmien tulisi olla modulaarisia: toimintojen loogista jaottelua. Suunnitelmien tulisi abstrahoida data- ja toiminnallisuusrakenteita. Suunnitelmien tulisi johtaa aliohjelmiin ja funktioihin, joilla on riippumattomia piirteitä. Suunnitelmien tulisi johtaa liittymiin, jotka vähentävät modulien välisten ja myös ulkoisen ympäristön yhteyksien kompleksisuutta Suunnitelmat tulisi johtaa toistettavalla prosessilla, joka perustuu vaatimusten tarkkaan analysointiin. 8
9 Eri suunnittelumenetelmien yhteisiä piirteitä: mekanismi, joka siirtää analyysimallin toteutussuunnitelmaksi notaatio, jolla kuvataan toiminnalliset osaset ja niiden väliset yhteydet heuristiikat asioiden tarkentamiseen ja osittamiseen ohjeet laadun varmistamiseen 9
10 Suunnitteluperiaatteet Ensin kuva kokonaisuudesta, jota tarkennetaan. Pitäisi harkita vaihtoehtoja. Suunnitelmien tulee olla jäljitettävissä analysointimalliin (vaatimuksiin). Älä keksi pyörää uudelleen (muista suunnittelumallit). Ohjelmiston tulisi jäljitellä todellisuudessa esiintyvän ongelman rakennetta. Ohjelmiston tulisi olla yhdenmukaisia ja integroituja ( yksi kehittäjä, hyvät liittymät ) 10
11 Ohjelmisto tulisi suunnitella muutostarpeet huomioiden. Ohjelmiston tulisi käyttäytyä hyvin myös poikkeuksellisissa tilanteissa. Suunnittelu ei ole koodausta, koodaus ei ole suunnittelua. Suunnitelmien laatua tulisi arvioida niitä luodessa, ei jälkikäteen. Suunnitelmat tulee katselmoida (virheiden vähentämiseksi). 11
12 Suunnitteluun liittyviä käsitteitä Millä kriteereillä ohjelmisto jaetaan yksittäisiin komponentteihin? Kuinka toiminnot ja tietorakenteet erotetaan ohjelmiston käsitteellisestä esityksestä? Löytyykö yhdenmukaisia laatukriteerejä suunnitelmille (ohjelmiston rakenteelle)? 12
13 Abstrahointi Tarkentaminen (abstraktioista yksityiskohtiin) Modularisuus Ohjelmistoarkkitehtuuri Kontrollihierarkia Rakenteellinen ositus Tietorakenteet Ohjelmiston toiminnot Informaation piilotus 13
14 Abstrahointi: Löytyy eri tasoja. Korkeammalla tasolla ei näytetä detaljeja. Toimintojen ja tietojen (datan) abstraktiot. Abstraktit tietotyypit. Kontrollien abstraktiot. 14
15 Modularisuus: Kirjastoja, moduleja järkevän kokoisissa palasissa. Joskus dialogit voivat olla omia ohjelmiaan... Ei kannata liioitella modulien määrässä... Modulaarinen ositettavuus Ositettavuus uudelleenkäyttäen Modulaarinen ymmärrettävyys (vähän viittauksia muihin) Modulaarinen jatkuvuus (muutokset usein paikallisia) Modulaarinen suojaus (virheet eivät vaikuta muihin) 15
16 Ohjelmistoarkkitehtuuri: Rakenteelliset ominaisuudet (mitä sisältää, liittymät muihin) Toiminnalliset ominaisuudet (tehot, kapat, luot. ym.) Vastaavien systeemien perheet Rakenteelliset mallit, sovelluskehykset, dynaamiset mallit, prosessimallit, toiminnalliset mallit. Arkkitehtuurin kuvauskielet (ADL). 16
17 Kontrollihierarkia: Kutsutaan myös ohjelman rakenteeksi. Mikä moduli kontrolloi mitäkin? Näkyvyys, liittyvyys (kytkeytyneisyys) Rakenteellinen ositus: Horisontaalinen, funktion pääositus (yks.kert: syöte, muunnos, tulos). Vertikaalinen ositus, jaetaan tehtäviä alimoduleihin (pääosituksen olisi syytä olla kunnossa muutokset voivat olla hankalia). 17
18 Tietorakenteet: Joukko tuttuja rakenteita suunnittelun apuna: vektorit, taulukot, listat, pinot, jonot, kasat, erilaiset puut, verkot, joukot, kuvaukset (avain-arvo-parit), jne. Yllä oleviin rakenteisiin pistetään dataa sisään ja löytyy tapoja käsitellä rakenteissa olevaa dataa näppärästi. Useassa kielessä löytyy jo peruskirjastoista melkoinen määrä erilaisia tietorakenteita. Ohjelmiston toiminnot: Kuvataan pseudokielellä tai jollain kaaviotekniikalla esim. Löytyy tasoja, liittävät tietorakenteet toiminnallisuuteen, tapahtumiin, toistoihin, jne, kuvataan, missä tehdään päätöksiä jne. Informaation piilotus: Tehdään mahdollisimman itsenäisiä moduleja (komponentteja), joilla on selvät liittymät modulien väliseen (ulkopuoliseen) kommunikointiin. 18
19 Modulaarisen rakenteen suunnittelusta Toiminnallinen riippumattomuus. Mitataan seuraavilla: Yhteenkuuluvuus (cohesion). Moduli hoitaa yksittäisen tehtävän ja tarvitsee vähän kommunikointia muiden modulien kanssa. Jos moduli hoitaa useita tehtäviä, jotka eivät (juurikaan) liity toisiinsa, on kyseessä satunnaisesti yhteenkuuluva moduli. On myös loogisesti yhteenkuuluvia ja ajallisesti yhteenkuuluvia moduleja. Kytkennät (coupling). Modulien välisiä. Riippuu modulin liittymän mutkikkuudesta. liittämän paikasta ja siitä, mitä dataa liittymä välittää. data kytkennät, leima??kytkennät (stamp-) (tietorak.), kontrollikytkennät (esim. kontrollilippu), yhteiskytkennät (esim. glob. tietorak), sisällyskytkennät (käyttää toisen modulin tietorak). 19
20 Suunnitteluheuristiikat tehokkaaseen modulaarisuuteen Arvioi ohjelmarakenteen ensimmäinen iteraatio kytkentöjen vähtämiseksi ja yhteenkuuluvuuden lisäämiseksi. (Moduleja voi jakaa suoraan useaksi, tai useasta voi yhdistää toimintoja johonkin uuteen moduliin.) Yritä välttää rakennetta, jossa yhdellä modulilla on monta kontrolloitavaa modulia. Syvyyden kasvaessa joillain modulilla saisi olla useita moduleja, jotka sitä kontrolloivat. Modulin vaikutusalueen tulisi olla modulin kontrollialueen sisällä. (Kontrolloi alimodulejansa, ja vaikutusten tulisi jäädä niihin.) 20
21 Arvioi modulin liittymiä mutkikkuuden ja päällekkäisyyksien vähentämiseksi ja johdonmukaisuuden lisäämiseksi. Määritä moduleja, joiden toiminnallisuus on selkeää ( ennustettavaa vs. sisäinen muisti), mutta vältä moduleja jotka ovat liian rajoittavia (voi tulla muutostarpeita). Lisää kontrolloituja liittymiä, vältä patologisia kytkentöjä ( jonnekin modulin keskelle ). Paketoi ohjelmisto suunnittelurajoitteiden ja siirrettävyysvaatimusten perusteella. 21
22 Suunnittelumenetelmiä Neljä perustoimintoa: datasuunnitelmat, arkkitehtuurisuunnitelmat, UI-suunnitelmat, toiminnallisuuden suunnittelu. datasuunnitelmat (-rakenne) arkkitehtuurisuunnitelmat ja -suunnitteluprosessi Muunnosten ja transaktioiden kuvaukset Jälkiprosessoinnin suunnittelu Arkkitehtuurin optimointi Liittymien suunnittelu, HCI-suunnittelu ja liittymien suunnitteluohjeita Toiminnallisuuden suunnittelu 22
23 Datasuunnitelmat Systemaattinen ote myös datan suhteen Kaikki tietorakenteet ja niillä suoritettavat operaatiot etsittävä. Tietohakemisto perustettava ja määriteltävä datalle ja ohjelman rakenteelle (suunnitelmille). Päätökset alhaisen tason data suunnitelmista pitäisi viivyttää suunnittelun loppuvaiheille. Tietorakenteiden tulisi näkyä suoraan vain niille moduleille, jotka sitä tarvitsevat. Kehitä kirjastoja (tietorakenteille ja niiden operaatioille). Ohjelmiston rakenteen ja ohjelmointikielen tulisi tukea määrittelyjä ja abstraktien tietotyyppien esittelyä varten. 23
24 Arkkitehtuurisuunnitelmat Talon ovet ja ikkunat? (vs. joku muu näkymä.) Arkkitehtuurin suunnitteluprosessi informaation virta ensin (tietovirtakaavio). virran reunamat. Tietovirtakaavio kuvataan ohjelmarakenteeksi. Kontrollihierarkia määritetään jakamalla tekijöihin. Saatua rakennetta hienonnetaan... (oma kurssi näistä, ks. Pressman.) 24
25 Muunnosten kuvaukset Katselmoi systeemimalli Katselmoi ja hienonna tietovirtakaavioita Tarkista, onko kaaviossa muunnos- vai transaktiopiirteitä (määritelmät, ks. Pressman). Eristä muunnoksen keskus määrittämällä tulevien ja lähtevien virtojen rajat. Tee ensimmäisen asteen tekijöihin jakoa. (ja sen jälkeen toisen... ) Hienonna 1. iter. ohj. rakennetta suunnitteluheuristiikkojen perusteella laadun parantamiseksi. 25
26 Transaktioiden kuvaukset Kolme ensimmäistä samanlaisia kuin ed. kalvossa. Etsitään transaktiokeskus ja virran piirteet (ks. Pressman) Kuvataan kaavio transaktio prosessointia varten. Jaetaan tekijöihinja kuvataan transaktioiden rakenne. Hienonnetaan 1. iter
27 Jälkiprosessoinnin suunnittelu Tarvitaan arkkitehtuurisuunnitelmien osana: prosessointikuvaus kullekin modulille liittymien kuvaukset myös paikalliset ja globaalit tietorakenteet määriteltävä kaikki suunnittelurajoitteet tulee huomioida suunnitelmien katselmointi harkitaan arkkitehtuurisuunnitelmien optimointia (jos tarvetta) 27
28 Arkkitehtuurisuunnitelmien optimointi Kehitä ja hienonna ohjelman rakennetta miettimättä tehokkuusoptimointeja. Käytä työkaluja tehottomien kohtien löytämiseen. Myöhemmissä iteraatioissa, hitaaksi epäiltyjen modulien kohdalla kehitä algoritmeja toiminnan parantamiseksi. Koodaa työhön sopivalla ohjelmointikielellä. Jos tarvetta, uudelleensuunnittele ja koodaa konekielellä tehokkuuden parantamiseksi. 28
29 Liittymien suunnittelu ohjelmamodulien välisiä (modulien datatarpeet määräävät pitkälle) ohjelman ja laitteiden (tai muiden ei-ihmisten) välisiä tietokoneen ja ihmisen välisiä 29
30 HCI -suunnittelusta (myös tästä on omia kurssejansa laitoksella) Suunnittelumalli (tulee ohjelmistosuunnittelijalta). Käyttäjämalli (saattaa tulla myös ohjelmistosuunnittelijalta, mutta myös muualta). Käyttäjäkategorioita aloittelija tiedostava, satunnaiskäyttäjä tiedostava, säännöllinen käyttäjä 30
31 Tehtävien analysointia ja mallinnusta Määritä tehtävän tavoitteet ja tarkoitukset Kuvaa ne tiettyjen toimenpiteiden sarjaksi Kuinka tuo sarja suoritetaan käyttöliittymässä? Mikä on systeemin tila? (miltä UI näyttää sarjan jälkeen?) Määritä kontrollointimekanismit, laitteet ja toiminnot jotka voivat muuttaa systeemin tilaa. Esitä, kuinka kontrollimekanismit muuttavat systeemin tilaa. Osoita, kuinka käyttäjä tulkitsee systeemin tilan UI:sta saamastaan informaatiosta. 31
32 Lisää... Vasteajoista Helpeistä (avusteista) Virheilmoituksista Menuista Makroista... UI-suunnittelutyökaluista Suunnitelmien arvioimisesta ja tarkastamisesta (ks. Pressman) 32
33 Liittymien suunnitteluohjeita Yleisohjeita: Johdonmukaisuus Tarkoituksenmukaista palautetta Varmista kaikki ei-triviaalit tuhoamisoperaatiot Salli useimpien toimien helppo peruutus Vähennä inf. määrää, mitä tarv. muistaa eri toimintojen välillä Etsi tehokkuutta dialogeissa, liikkeissä ja ajatuksissa Virhesietoisuus Luokittele aktiviteetit ja suunnittele näyttö sen mukaan Avusteet ympäristötietoisia yks.kert. verbejä tai lyhyitä -fraaseja komentojen nimeämiseen. 33
34 Infonäytöt: Näytä vain oleellista tietoa Älä hautaa datalla, käytä havainnollisia datan esitysmuotoja Johdonmukaiset otsakkeet, standardilyhenteet ja tutut värit Visuaalisen ympäristön ylläpidon salliminen (ks. taas) Käyttökelpoiset virheilmoitukset Isot, pienet kirjat, sisennykset, tekstin ryhmittely (ymmärtämisen tueksi) Analogisia kuvia hyväksi, kun ne helpottavat ymmärrystä Käytä saatavilla olevaa näytön aluetta (tehokkaasti, erit. jos useita ikkunoita) 34
35 Syöttöikkunat: Minimoi käyttäjältä vaadittavat syöttötoimenpiteet Säilytä infonäyttöjen ja syöttöikkunoiden johdonmukaisuus Salli käyttäjän kustomoida syöttötapoja Vuorovaikutuksen tulisi olla joustavaa mutta myös viritetty käyttäjälle mieluisaan moodiin. Deaktivoi komennot, jotka sopimattomia nykyisessä ympäristössä Anna käyttäjän kontrolloida vuorovaikutusta Avusteet Mikki Hiiri -syötteet pois... 35
36 Toiminnallisuuden suunnittelu Rakenteellinen ohjelmointi. Erilaisia notaatioita, graafisia (vuokaaviot ja laatikkomallit) ja PDL eli pseudokoodi. 36
37 Olioperustaisista suunnittelumenetelmistä Olioajattelun tulisi näkyä myös muissa vaiheissa: OORA, oo req.a. OOD, oo design OODA, oo dom.a. Vaatii usein evolutionaarisen vaihejakomallin käyttöä. (Kaikkia tarvittavia luokkia harvoin löytää heti alussa.) (Ks. Pressman) 37
38 Asiakas-palvelin -ohjelmistojen suunnittelusta 38
39 Reaaliaikasysteemien suunnittelusta 39
Ohjelmiston toteutussuunnitelma
Ohjelmiston toteutussuunnitelma Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä luku antaa yleiskuvan koko suunnitteludokumentista,
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
Tenttikysymykset. + UML- kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
13/20: Kierrätys kannattaa koodaamisessakin
Ohjelmointi 1 / syksy 2007 13/20: Kierrätys kannattaa koodaamisessakin Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy
Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen
Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari 1 1. JOHDANTO 1.1 Määritelmiä 1.2 Tietorakenteen ja algoritmin valinta 1.3 Algoritmit ja tiedon määrä 1.4 Tietorakenteet ja toiminnot 1.5 Esimerkki:
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
Tietorakenteet ja algoritmit - syksy 2015 1
Tietorakenteet ja algoritmit - syksy 2015 1 Tietorakenteet ja algoritmit - syksy 2015 2 Tietorakenteet ja algoritmit Johdanto Ari Korhonen Tietorakenteet ja algoritmit - syksy 2015 1. JOHDANTO 1.1 Määritelmiä
Tenttikysymykset. + UML- kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
C-ohjelmoinnin peruskurssi. Pasi Sarolahti
C! C-ohjelmoinnin peruskurssi Pasi Sarolahti Mitä haluan oppia C-kurssilla? ja miksi? Tutustu lähimpään naapuriin Keskustelkaa miksi halusitte / jouduitte tulemaan kurssille 3 minuuttia è kootaan vastauksia
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
Suunnitteluvaihe prosessissa
Suunnittelu Suunnitteluvaihe prosessissa Silta analyysin ja toteutuksen välillä (raja usein hämärä kumpaankin suuntaan) Asteittain tarkentuva Analyysi -Korkea abstraktiotaso -Sovellusläheiset käsitteet
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
Ohjelmistotuotteen hallinnasta
Ohjelmistotuotteen hallinnasta Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Haikala ja Märijärvi, Ohjelmistotuotanto Royce, Software Project Management, A Unified Framework 1 Tavoitteista
Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto
OHJ-3200 Ohjelmistoarkkitehtuurit 1 Arkkitehtuurien tutkimus Outi Räihä 2 Darwin-projekti Darwin-projekti: Akatemian rahoitus 2009-2011 Arkkitehtuurisuunnittelu etsintäongelmana Geneettiset algoritmit
Työn ositusmalleista. Luennon tavoitteista. Motivointia. Walker Royce, Software Project Management, A Unified Framework
Työn ositusmalleista Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Walker Royce, Software Project Management, A Unified Framework 1 Tavoitteista Luentojen jälkeen opiskelijan tulisi osata:
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
Uudelleenkäytön jako kahteen
Uudelleenkäyttö Yleistä On pyritty pääsemään vakiokomponenttien käyttöön Kuitenkin vakiokomponentit yleistyneet vain rajallisilla osa-alueilla (esim. windows-käyttöliittymä) On arvioitu, että 60-80% ohjelmistosta
ohjelman arkkitehtuurista.
1 Legacy-järjestelmällä tarkoitetaan (mahdollisesti) vanhaa, olemassa olevaa ja käyttökelpoista ohjelmistoa, joka on toteutettu käyttäen vanhoja menetelmiä ja/tai ohjelmointikieliä, joiden tuntemus yrityksessä
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
Imperatiivisten ohjelmien organisointiparadigmojen. historia
Imperatiivisten ohjelmien organisointiparadigmojen historia Timo Tapanainen Helsingin yliopisto, tietojenkäsittelytieteen laitos Tietojenkäsittelytieteen historia -seminaari, kevät 2007 Sisältö Paradigma,
Imperatiivisten ohjelmien organisointiparadigmojen historia
Imperatiivisten ohjelmien organisointiparadigmojen historia Timo Tapanainen Helsingin yliopisto, tietojenkäsittelytieteen laitos Tietojenkäsittelytieteen historia -seminaari, kevät 2007 Sisältö Paradigma,
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ää
TIE Tietorakenteet ja algoritmit 1. TIE Tietorakenteet ja algoritmit
TIE-20100 Tietorakenteet ja algoritmit 1 TIE-20100 Tietorakenteet ja algoritmit TIE-20100 Tietorakenteet ja algoritmit 2 Lähteet Luentomoniste pohjautuu vahvasti prof. Antti Valmarin vanhaan luentomonisteeseen
Algoritmit 1. Luento 1 Ti Timo Männikkö
Algoritmit 1 Luento 1 Ti 10.1.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin toteutus Ongelman ratkaiseminen Algoritmin tehokkuus Algoritmin suoritusaika Algoritmin analysointi Algoritmit 1 Kevät 2017
Tenttikysymykset. + UML-kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
Ohjelmiston vaatimusmäärittely
Ohjelmiston vaatimusmäärittely Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä luku antaa yleiskuvan koko vaatimusmäärittelydokumentista.
Ylläpito. Ylläpito. Ylläpidon lajeja Ohjelmistotuotanto, syksy 1998 Ylläpito
Kaikki ohjelmistoon sen julkistamisen jälkeen kohdistuvat muutostoimenpiteet jopa 70-80% ohjelmiston elinkaarenaikaisista kehityskustannuksista Ylläpidon lajeja korjaava ylläpito (corrective) testausvaiheessa
811312A Tietorakenteet ja algoritmit 2015-2016. I Johdanto
811312A Tietorakenteet ja algoritmit 2015-2016 I Johdanto Sisältö 1. Algoritmeista ja tietorakenteista 2. Algoritmien analyysistä 811312A TRA, Johdanto 2 I.1. Algoritmeista ja tietorakenteista I.1.1. Algoritmien
7/20: Paketti kasassa ensimmäistä kertaa
Ohjelmointi 1 / syksy 2007 7/20: Paketti kasassa ensimmäistä kertaa Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007
opiskelun suunnittelujärjestelmä, kurki ja ilmo käyttävät kaikki samaa tietokantaa, ja uusi järjestelmä tulee osaksi tätä.
25.1.2010 Palaverin kysymyksien selvittelymuistio Mitä ominaisuuksia halutaan? Sopivat ajat sprinttien jälkeisiin demoihin/palavereihin. - mitkä ajat sopivat? Pekka : pe 12-16 Tommi : pe 8-16 Onko ohjelmointikielen
HELIA 1 (20) Outi Virkki Tiedonhallinta 4.11.2000
HELIA 1 (20) Luento 3.1 7LHWRNDQWDSRKMDLVHQVRYHOOXNVHQVXXQQLWWHOXSURVHVVL Tietokannan suunnittelun tavoitteet... 3 Abstraktiotasot tietokannan suunnittelussa... 4 3-taso -malli... 4 TIHA-standardi... 5
Luokka- ja oliokaaviot
Luokka- ja oliokaaviot - tärkeimmät mallinnuselementit : luokat, oliot ja niiden väliset suhteet - luokat ja oliot mallintavat kuvattavan järjestelmän sisältöä ja niiden väliset suhteet näyttävät, kuinka
HELIA 1 (11) Outi Virkki Tiedonhallinta 4.11.2000
HELIA 1 (11) Access 1 ACCESS...2 Yleistä...2 Access-tietokanta...3 Perusobjektit...3 Taulu...5 Kysely...7 Lomake...9 Raportti...10 Makro...11 Moduli...11 HELIA 2 (11) ACCESS Yleistä Relaatiotietokantatyyppinen
Luku 8 Rakennusvaihe. Detailed Design. Programming. Moduulisuunnittelu. Ohjelmointi
Luku 8 Rakennusvaihe Moduulisuunnittelu Detailed Design Programming Ohjelmointi Teknisen Complete suunnittelun Technical viimeistely Design Suunnittelukatselmuksen Design Perform suorittaminen Review Yhteisen
UML- mallinnus: Tilakaavio
UML- mallinnus: Tilakaavio Karkea kuvaus UML- kaavioiden käytöstä ohjelmistonkehityksen eri vaiheissa ja tehtävissä. Mallinnus tilakaavioilla Tilakaaviolla kuvataan yhden luokan olioiden tilan muuttumista
Tietokannan suunnittelu
HELIA TIKO-05 1 (12) ICT03D Tieto ja tiedon varastointi Tietokannan suunnittelu Tietokannan suunnitteluprosessi... 2 Tavoitteet...2 Tietojärjestelmän suunnitteluprosessi...3 Abstraktiotasot tietokannan
Tietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Kurssin sisältö pääpiirteittäin Tarvittavat pohjatiedot Avainsanat Abstraktio Esimerkkiohjelman tehtäväkuvaus Abstraktion käyttö tehtävässä Abstrakti tietotyyppi Hyötyjä ADT:n
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
ELM GROUP 04. Teemu Laakso Henrik Talarmo
ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................
Ohjelmiston vaatimusmäärittely. tietoteknisen järjestelmän osat
Ohjelmiston vaatimusmäärittely tietoteknisen järjestelmän osat toiminta dokumentit laitteisto järjestelmä tietokanta ihmiset ohjelmisto 1 Määrittelyprosessi Määrittelyprosessi ideat lähtökohdat rajoitteet
TOIMINNALLINEN MÄÄRITTELY MS
TOIMINNALLINEN MÄÄRITTELY 11.11.2015 MS YLEISTÄ 1/2 jäsennelty etenee yleiskuvauksesta yksityiskohtiin kieliasultaan selkeä kuvaa myös tulevan järjestelmän ympäristöä tarpeellisella tarkkuudella kuvaa
Heuristisen arvioinnin muistilista - lyhyt versio
Alla oleva kymmenkohtainen muistilista on sovellettu Jakob Nielsenin heuristisen arvioinnin muistilistasta (Nielsen, 1994), hyödyntäen Keith Instonen wwwpalveluiden arviointiin muokattua samaista listaa
Tilastolliset ohjelmistot 805340A. Pinja Pikkuhookana
Tilastolliset ohjelmistot 805340A Pinja Pikkuhookana Sisältö 1 SPSS 1.1 Yleistä 1.2 Aineiston syöttäminen 1.3 Aineistoon tutustuminen 1.4 Kuvien piirtäminen 1.5 Kuvien muokkaaminen 1.6 Aineistojen muokkaaminen
Ryhmäläisten nimet:
1 TJT10, kevät 2017 VERTAISARVIOINTILOMAKE Ryhmäläisten nimet: 1. 2. 3. Heuristinen arviointi käyttäen ohjeistuksessa olevaa heuristiikkalistaa. Tehdään vertaisarviointi käyttöliittymästä. Testi suoritetaan
Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia.
Tietokantasuunnittelusta Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia toistuva tieto vie tilaa ylläpito muodostuu hankalaksi ylläpito-operaatioilla
Projektisuunnitelma. Projektin tavoitteet
Projektisuunnitelma Projektin tavoitteet Projektin tarkoituksena on tunnistaa erilaisia esineitä Kinect-kameran avulla. Kinect-kamera on kytkettynä tietokoneeseen, johon projektissa tehdään tunnistuksen
Toiminnot eli käyttäytyminen. Tieto eli rakenteelliset ominaisuudet
Toiminnot eli käyttäytyminen Tieto eli rakenteelliset ominaisuudet Olio (ks. määritelmä): rajattavissa ja yksilöitävissä oleva asia tai käsite, joka on merkityksellinen käsillä olevan tarkastelun kannalta
Algoritmit 1. Luento 3 Ti Timo Männikkö
Algoritmit 1 Luento 3 Ti 17.1.2017 Timo Männikkö Luento 3 Algoritmin analysointi Rekursio Lomituslajittelu Aikavaativuus Tietorakenteet Pino Algoritmit 1 Kevät 2017 Luento 3 Ti 17.1.2017 2/27 Algoritmien
Nspire CAS - koulutus Ohjelmiston käytön alkeet Pekka Vienonen
Nspire CAS - koulutus Ohjelmiston käytön alkeet 3.12.2014 Pekka Vienonen Ohjelman käynnistys ja käyttöympäristö Käynnistyksen yhteydessä Tervetuloa-ikkunassa on mahdollisuus valita suoraan uudessa asiakirjassa
HELIA 1 (14) Outi Virkki Käyttöliittymät ja ohjlmiston suunnittelu
HELIA 1 (14) Luento 7 Käyttöliittymäolio... 2 Olioajattelun perusteet... 3 Tavoitteet... 3 Peruskäsitteet... 4 Olio / Olioinstanssi / Olion esiintymä... 4 Ominaisuudet... 4 Toiminnot... 4 Olioluokka /
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
FiSMA 1.1 Toiminnallisen laajuuden mittausmenetelmä Ohje monikerrosarkkitehtuurin mittaamiseen
FiSMA 1.1 Monikerrosarkkitehtuuri 1 (7) FiSMA 1.1 Toiminnallisen laajuuden mittausmenetelmä Ohje monikerrosarkkitehtuurin mittaamiseen 1. Yleiset periaatteet FiSMA 1.1 -menetelmässä mitataan sovellusperiaatteen
Kojemeteorologia. Sami Haapanala syksy 2013. Fysiikan laitos, Ilmakehätieteiden osasto
Kojemeteorologia Sami Haapanala syksy 2013 Fysiikan laitos, Ilmakehätieteiden osasto Kojemeteorologia, 3 op 9 luentoa, 3 laskuharjoitukset ja vierailu mittausasemalle Tentti Oppikirjana Rinne & Haapanala:
Miten 333 organisaatiota voi kehittää yhtä yhteistä digitaalista palvelua ja vielä kuunnella kaikkien asiakkaita?
#finnayhdessä Miten 333 organisaatiota voi kehittää yhtä yhteistä digitaalista palvelua ja vielä kuunnella kaikkien asiakkaita? Riitta Peltonen, johtava käytettävyyssuunnittelija, Finnan 5-vuotisseminaari,
Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio
Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia tehtäviä:
Ohjelmistojen mallintaminen
Ohjelmistojen mallintaminen - Mallit - Ohjelmiston kuvaaminen malleilla 31.10.2008 Harri Laine 1 Malli: abstraktio jostain kohteesta Abstrahointi: asian ilmaiseminen tavalla, joka tuo esiin tietystä näkökulmasta
Ohjelmistotuotanto, s
Toiminnan osiinjako Ohjelmistotuotanto Systeemiteoreettinen lähestymistapa INPUT PROCESS OUTPUT Vaatimusanalyysin menetelmiä systeemi on prosessi, joka saa syötteitä ja tuottaa tuloksia systeemi voidaa
14/20: Keittokirja I
Ohjelmointi 1 / syksy 2007 14/20: Keittokirja I Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/13 Tämän luennon
käyttötapaukset mod. testaus
käyttötapaukset Jari Ojasti Nokia email : jari.ojasti@nokia.com puh : 040 5926 312 Kartta hyväksyntä määrittely suunnittelu suunnittelu mod. testaus integrointi sys. testaus Ylläpito koodaus (toteutus)
Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla
Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla ohjelmoida useita komponenteiltaan ja rakenteeltaan
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
Good Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi
Good Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi Versiohistoria: Versio: Pvm: Laatijat: Muutokset: 0.1 2006-11-25 Janne Mäkelä Alustava 1.0 2006-12-10 Janne Mäkelä Valmis 1.
Määrittelydokumentti
Määrittelydokumentti Aineopintojen harjoitustyö: Tietorakenteet ja algoritmit (alkukesä) Sami Korhonen 014021868 sami.korhonen@helsinki. Tietojenkäsittelytieteen laitos Helsingin yliopisto 23. kesäkuuta
Ylläpito. Ylläpidon lajeja
Ylläpito Kaikki ohjelmistoon sen julkistamisen jälkeen kohdistuvat muutostoimenpiteet jopa 70-80% ohjelmiston elinkaarenaikaisista kehityskustannuksista Ylläpidon lajeja korjaava ylläpito (corrective)
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print
Joskus yleistäminen voi tapahtua monen ominaisuuden pohjalta. Myös tällöin voi tulla moniperintätilanteita.
Moniperintä 2 Joskus yleistäminen voi tapahtua monen ominaisuuden pohjalta. Myös tällöin voi tulla moniperintätilanteita. Oliomallinnus TITE.2040 Hannu K. Niinimäki 1 Delegointi 1 Moniperinnän toteuttaminen
Ohjelmien analysointi. ER-kaaviot
Ohjelmien analysointi Ohjelmien kuvaaminen kaavioilla ohjelmien ymmärtäminen kaavioiden avulla kaavioiden tuottaminen ohjelmasta Erilaisia kaaviotyyppejä: ER-kaaviot, tilakaaviot, UML-kaaviot tietohakemisto
812341A Olio-ohjelmointi, IX Olioiden välisistä yhteyksistä
2016 IX Olioiden välisistä yhteyksistä Sisältö 1. Johdanto 2. Kytkentä 3. Koheesio 4. Näkyvyydestä 2 Johdanto n Ohjelmassa syntyy kytkentöjä olioiden välille Toivottuja ja epätoivottuja n Näkyvyys vaikuttaa
Sisällys. Ratkaisumallien historia. Ratkaisumalli. Ratkaisumalli [2] Esimerkki: Composite [2] Esimerkki: Composite. Jaakko Vuolasto 25.1.
Sisällys Ratkaisumallien historia Jaakko Vuolasto 25.1.2001! Ratkaisumalli! Christopher Alexander! Ohjelmistotuotannosta arkkitehtuuriin! Henkilöhistoriaa! Ensimmäisiä käyttökokemuksia! Yhteenveto 25.1.2001
Projektisuunnitelma. Radio-ohjattavan pienoismallin mekatroniikan ja ohjelmiston kehitys
1 Radio-ohjattavan pienoismallin mekatroniikan ja ohjelmiston kehitys Muutoshistoria Versionumero Pvm Selitys Tekijä(t) 0.1 18.9.2012 Otso Saarentaus 2 Sisällysluettelo 1 PROJEKTIN SISÄLTÖ... 3 1.1 TAUSTA......3
Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely
582101 - Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely 1 Vaatimukset ja käyttötapaukset Vaiheittainen mallintaminen ja abstraktiotasot Järjestelmän rajaaminen sidosryhmäkaaviolla
Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.
Python linkit: Python tutoriaali: http://docs.python.org/2/tutorial/ Numpy&Scipy ohjeet: http://docs.scipy.org/doc/ Matlabin alkeet (Pääasiassa Deni Seitzin tekstiä) Matriisit ovat matlabin perustietotyyppejä.
Tietokoneverkot. T Tietokoneverkot (4 op) viimeistä kertaa CSE-C2400 Tietokoneverkot (5 op) ensimmäistä kertaa
Tietokoneverkot T-110.4100 Tietokoneverkot (4 op) viimeistä kertaa CSE-C2400 Tietokoneverkot (5 op) ensimmäistä kertaa ja Matti Siekkinen Tietokoneverkot 2014 sanna.suoranta@aalto.fi Kurssista kaksi versiota
Lomakkeiden suunnittelu. Aiheina
Lomakkeiden suunnittelu Saila Ovaska Informaatiotieteiden yksikkö, Tampereen yliopisto Aiheina Lomakesuunnittelun perusteita Lomake-esimerkkejä Peruskontrollit lomakkeissa Asetteluista lomakkeella Oppimistavoite:
811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2016-2017 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen
Ohjelmistojen mallintaminen kertausta Harri Laine 1
kertausta 5.12.2008 Harri Laine 1 Ohjelmiston elinkaari, elinkaarimallit Yleinen puitemalli (reference model) - abstrakti kokonaiskuva ei etenemiskontrollia, ei yksityiskohtia Ohjelmistoprosessimallit
CQRS, -ES, PACS, DICOM, WTF?
CQRS, -ES, PACS, DICOM, WTF? 27.2.2014 Ajankohtaisuuksia harjoitustyöhön liittyen http://www.hs.fi/terveys/tutkimus+veri+paljastaa+riskin+kuolla+seur aavan+viiden+vuoden+aikana/a1393301682104 Vähän vanhempia
Lomakkeiden suunnittelu. Aiheina
Lomakkeiden suunnittelu Saila Ovaska Informaatiotieteiden yksikkö, Tampereen yliopisto Aiheina Lomakesuunnittelun perusteita Lomake-esimerkkejä Peruskontrollit lomakkeissa Asetteluista lomakkeella Oppimistavoite:
Tieto- ja tallennusrakenteet
Tieto- ja tallennusrakenteet Sisältö Tyyppi, abstrakti tietotyyppi, abstraktin tietotyypin toteutus Tallennusrakenteet Taulukko Linkitetty rakenne Abstraktit tietotyypit Lista (Puu) (Viimeisellä viikolla)
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ä
TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaihe 3. Antti Jääskeläinen Matti Vuori
TIE-21204 Ohjelmistojen testaus 2015 Harjoitustyö Vaihe 3 Antti Jääskeläinen Matti Vuori Rakenne ja aikataulu Kolme vaihetta: 1. Tutkivan järjestelmätestauksen suunnittelu 2. Tutkivan järjestelmätestauksen
HELIA 1 (19) Outi Virkki Käyttöliittymät ja ohjelman suunnittelu 8.12.1998
HELIA 1 (19) Luento 9 Suunnittelumenetelmien soveltuvuudesta... 2 Sovellustyyppi... 2 Projektikohtaiset tekijät... 3 Henkilöstötekijät... 3 Ongelma-alueeseen liittyvät tekijät... 3 Tuotteeseen liittyvät
Ohjelmistotuotanto, s
Ohjelmistotuotanto Ohjelmiston määrittely n tavoitteena on selvittää ohjelmistolle asetettavat vaatimukset niin yksityiskohtaisesti, että niiden perusteella voidaan tuottaa haluttu ohjelmisto. Lineaarisissa
812347A Olio-ohjelmointi, 2015 syksy 2. vsk. IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton
2015 syksy 2. vsk IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton Sisältö 1. Johdanto luontimalleihin 2. Proxy 3. Factory Method 4. Prototype 5. Singleton Suunnittelumallit Proxy et.
Koodaamme uutta todellisuutta FM Maarit Savolainen https://blog.edu.turku.fi/matikkaajakoodausta/
Koodaamme uutta todellisuutta FM Maarit Savolainen 19.1.2017 https://blog.edu.turku.fi/matikkaajakoodausta/ Mitä on koodaaminen? Koodaus on puhetta tietokoneille. Koodaus on käskyjen antamista tietokoneelle.
Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio
Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia
Yhteensopiva ja stabiili. Käsitteellistää suunnittelun. Parempi kuin koskaan aiemmin. Yksityiskohtien tarkka kuvaus. Saumaton kommunikaatio
ZWCAD 2012 ESITTELY Yhteensopiva ja stabiili Parempi kuin koskaan aiemmin Käsitteellistää suunnittelun Yksityiskohtien tarkka kuvaus Saumaton kommunikaatio ZWCAD -ohjelmointi Yhteensopiva ja stabiili Ylivertainen
Hieman lisää malleista ja niiden hyödyntämisestä
Hieman lisää malleista ja niiden hyödyntämisestä Ohjelmistojen mallintaminen Kesä 2012 (Avoin yliopisto) Toni Ruokolainen, 23.8.2012 Mallit Mallit ovat todellisuuden abstraktioita, jotka on muodostettu
A215 Tietorakenteet. Tietojenkäsittelytieteiden laitos Tampereen yliopisto. Periodit I-II, syksy 2007
Kurssiesittely Tietojenkäsittelytieteiden laitos Tampereen yliopisto A215 Tietorakenteet Periodit I-II, syksy 2007 Luennot/vastuuhenkilö: Heikki Hyyrö Sähköposti: heikki.hyyro@cs.uta.fi Kurssin kotisivu:
Tämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:
Dokumentaatio, osa 1 Tehtävämäärittely Kirjoitetaan lyhyt kuvaus toteutettavasta ohjelmasta. Kuvaus tarkentuu myöhemmin, aluksi dokumentoidaan vain ideat, joiden pohjalta työtä lähdetään tekemään. Kuvaus
Tiedonlouhinta rakenteisista dokumenteista (seminaarityö)
Tiedonlouhinta rakenteisista dokumenteista (seminaarityö) Miika Nurminen (minurmin@jyu.fi) Jyväskylän yliopisto Tietotekniikan laitos Kalvot ja seminaarityö verkossa: http://users.jyu.fi/~minurmin/gradusem/
Tähtitieteen käytännön menetelmiä Kevät 2009
Tähtitieteen käytännön menetelmiä Kevät 2009 2009-01-12 Yleistä Luennot Luennoija hannu.p.parviainen@helsinki.fi Aikataulu Observatoriolla Maanantaisin 10.00-12.00 Ohjattua harjoittelua maanantaisin 9.00-10.00
5. Luento: Rinnakkaisuus ja reaaliaika. Tommi Mikkonen, tommi.mikkonen@tut.fi
5. Luento: Rinnakkaisuus ja reaaliaika Tommi Mikkonen, tommi.mikkonen@tut.fi Agenda Perusongelmat Jako prosesseihin Reaaliaika Rinnakkaisuus Rinnakkaisuus tarkoittaa tässä yhteydessä useamman kuin yhden
Ohjelmien automaattisen verifioinnin reunamailla
Ohjelmien automaattisen verifioinnin reunamailla Antti Siirtola Tietotekniikan laitos, Perustieteiden korkeakoulu, Aalto-yliopisto, antti.siirtola@aalto.fi Suomalainen Tiedeakatemia, Nuorten akatemiaklubi,
Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio
Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia
Lomakkeiden suunnittelu. Aiheina
Lomakkeiden suunnittelu Saila Ovaska Informaatiotieteiden yksikkö, Tampereen yliopisto *) Osan luentokalvoista on laatinut Jenni Anttonen syksyllä 2009. Aiheina Lomakesuunnittelun perusteita Lomake-esimerkkejä
Ohjelmistotuotanto, s
Ohjelmistotuotanto : asiakaslähtöisten vaatimusten muuntaminen teknisiä mahdollisuuksia tehokkaasti hyödyntäväksi ratkaisuksi luova prosessi Pääkohteet: ohjelmiston yleisrakenne ja toimintaperiaatteet
4. Lausekielinen ohjelmointi 4.1
4. Lausekielinen ohjelmointi 4.1 Sisällys Konekieli, symbolinen konekieli ja lausekieli. Hyvä ohjelmointitapa. Lausekielestä konekieleksi: - Lähdekoodi, tekstitiedosto ja tekstieditorit. - Kääntäminen
Javan perusteet. Ohjelman tehtävät: tietojen syöttö, lukeminen prosessointi, halutun informaation tulostaminen tulostus tiedon varastointi
1 Javan perusteet Ohjelmointi IPO-malli Java lähdekoodista suoritettavaksi ohjelmaksi Vakio Muuttuja Miten Javalla näytetään tietoa käyttäjälle, miten Javalla luetaan käyttäjän antama syöte Miten Javalla
Algoritmit 1. Luento 10 Ke Timo Männikkö
Algoritmit 1 Luento 10 Ke 14.2.2018 Timo Männikkö Luento 10 Algoritminen ongelmanratkaisu Suunnittelumenetelmät Raaka voima Järjestäminen eli lajittelu Kuplalajittelu Lisäyslajittelu Valintalajittelu Permutaatiot