5 Toimintojen ja tietojen kuvaus

Slides:



Advertisements
Samankaltaiset esitykset
@ Leena Lahtinen Helia Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE.
Advertisements

Ohjelmiston tekninen suunnittelu
@ Leena Lahtinen Helia TIETO JA TIETOKONEOHJELMA  TIETOKONEOHJELMA KÄSITTELEE TIETOJA  TIETOJA VOIDAAN KÄSITELLÄ OHJELMASSA VAIN SALLITUILLA.
SIVUAINEKURSSIT TIEDEKUNTIEN OPINTO-OPPAAT • PAINETUT OPPAAT → student center, kirjasto, tiedekuntien palvelupisteet • PAINETTUJEN OPPAIDEN.
Ohjelman perusrakenteet
Entity-Relationship Diagrams ER-mallit Käsitemallit Kohde-suhde-kaavio
Tietokanta.
1. Algoritmi.
Tekninen suunnit-telu
Ohjelma on kokoelma toimintaohjeita annetun tehtävän ______________________. Ohjelmassa on peräkkäisten toimintojen lisäksi yleensä valintaa ja _____________.
Päivi Ovaska Tutkijaopettaja LTY/Tite
Sovellusohjelman suunnittelu & toteutus
TIETOKONEOHJELMAN RAKENNE OHJELMALLA ON KAKSI OSAA  MÄÄRITYSOSA TIETOJEN KUVAUKSIA VARTEN  SUORITUSOSA TIETOJEN KÄSITTELYÄ VARTEN.
@ Leena Lahtinen Helia OHJELMOINTITAITO ICT02D 12 OP.
OHJELMOINTITAITO ICT02D 12 ECTS. OPINTOJAKSON TOTEUTUS  KESTO: –  PÄIVÄOPISKELIJAT: – KAKSI LUOKAA (SUOMI) –YKSI LUOKKA (ENGLANTI)
TAULUKKO YKSIULOTTEINEN TAULUKKO. TAULUKKO  Taulukon tarkoitus Ohjelmassa tarvitaan paljon samantyyppisiä samaan kohdealueeseen kuuluvia muuttujia Näitä.
3. Spesifikaatioiden laatiminen
Ohjelman perusrakenteet
TIETO JA TIETOKONEOHJELMA TIETOKONEOHJELMA KÄSITTELEE TIETOJA TIETOJA VOIDAAN KÄSITELLÄ OHJELMASSA VAIN SALLITUILLA MENETELMILLÄ.
Pseudokoodi Tietokoneohjelmien perusidea:
Relaatioalgebra (1) Kokoelma relaatioiden käsittelyyn tarkoitettuja operaatioita Operaatiot muuntavat relaatioita uusiksi relaatioiksi Muodostaa perustan.
XML -kielen perusteet SIMO Seminaari Antti Mäkinen.
11. Javan toistorakenteet
© Lammi-Niskala-Kossarev 1 Kertausta (lu 05-06) Algoritmin perusvaatimukset Miksi ei luonnollista kieltä ohjelmointiin Syntaksi, semantiikka ja pragmatiikka.
Muunnos luokkakaaviosta relaatiokaavioon
Tietokannat –kurssi SQL peruskyselyt
OHJELMOINTITAITO ICT02D 12 ECTS. OPINTOJAKSON TOTEUTUS  KESTO: –  AVOIMEN OPISKELIJAT: – YKSI LUOKA (SUOMI) – LUOKKA ICT02O-1.
– Ohjelmistojen mallintaminen, mallintaminen ja UML.
Sähköinen tenttipalvelu Tenttis – ominaisuudet ja toiminnot
DO NOT PRINT THIS DOCUMENT SQL -valintaehto CREATE TABLE opettaja ( opetunnus varchar(12) NOT NULL, nimi varchar(40) NOT NULL, puhelin varchar(12), tyohuone.
Visual Basic -ohjelmointi
11. Relaatiotietokannan suunnittelualgoritmit ja lisäriippuvuudet Tällä kurssilla käsitellään kirjan luvusta 11 ainoastaan algoritmi 11.1 häviöttömän liitoksen.
Kontrollirakenteet laajemmin
Visual Basic -ohjelmointi
XML – osa 2 Teppo Räisänen
Ohjelmointi 1. toinen luento1 Taulukot n Kiinteät taulukot: alkioiden määrä tiedetään Dim intCount(12) As Integer 0 indeksit saavat arvoja 0-12 (Option.
XSL Teppo Räisänen
XSL Teppo Räisänen
Valintarakenne valintarakenne alkaa aina kysymyksellä eli ehdolla ehto tarkoittaa, että muuttujan sisältöä verrataan toisen muuttujan sisältöön tai vakioon.
CLT132 Yleistä kurssitietoa. CLT132 – kevät 2008Sauli Nurmi Kurssin tietoja Osa kieliteknologian perusopintoja “100-sarjaa” tutkintovaatimuksissa 3 op.
Hakemistot Nopeuttavat hakuoperaatioita Hidastavat päivitysoperaatioita Pääavaimelle luodaan aina indeksi; päävain toimii usein hakukriteerinä Luodaan.
RAPORTOINNIN PERUSTEITA Tekniikan viestintä/Soili Fabritius 2006.
Ohjelma Mikro-ohjelmointi Symbolinen konekieli Osoitustavat.
Ohjelmistotekniikka: Ohjelmiston mallintaminen, osa II
Ohjelmassa tänään Ohjelmointimallit Pseudokieli Modulaarisuus.
Tieteellisen tekstin piirteitä
Keskiviikko 18. toukokuuta 2016
Opinnäytetöiden kirjaaminen Wilmaan huhtikuu 2015
2. Vuokaaviot.
– Ohjelmistojen mallintaminen, mallintaminen ja UML
OHJEITA HISTORIAN KOKEESEEN
OHJELMOINTITAITO ICT02D 12 Leena Lahtinen Helia
Metropolian tietovaraston toteuttaminen Kimballin arkkitehtuurilla
3. Muuttujat ja operaatiot
Luokan nimi, numero Opettaja Ryhmän jäsenten nimet
Ohjelmien suunnittelu
do-while -toistolause
Lukion liikuntadiplomi
Opettajan nimi | kurssin numero
OHJELMOINTITAITO ICT02D 12 Leena Lahtinen Helia
Toimintoanalyysin syventäminen – lyhyt kuvaus hankkeesta
<Hankkeen nimi>
Ohjelmistotekniikan menetelmät, sekvenssikaaviot
Kontrollirakenteet laajemmin
Opintosuoritus A 3 op, Laji 2
Ohjelman perusrakenteet
OHJELMOINTITAITO ICT02D 12 ECTS.
OHJELMOINTITAITO ICT02D 12 ECTS.
Kynnys ry osatoteuttajana
OHJELMOINTITAITO ICT02D 12 ECTS.
Esityksen transkriptio:

5 Toimintojen ja tietojen kuvaus Toiminto voidaan kuvata Algoritmisesti Antamalla joukko toiminnon määritteleviä ehtoja Määriteltävä Ohjelmiston käsittelemien tietojen käsittelysäännöt Tietojen rakenne ja esitystapa Kuvaustekniikoita toimintojen määrittelyyn ja kuvaukseen Algoritmien kuvaustekniikat Päätöstaulut Päätöspuut Tulo- ja jättöehtojen esittäminen Tietojen määrittely tietohakemisto 5. Toimintojen ja tietojen kuvaus

5.1 Algoritmien kuvaaminen Pseudokoodi Ohjelmointikieltä muistuttava tekstimuotoinen esitystapa (”structured English”) Peräkkäisrakenne, while - ja do until silmukat, ehdollinen rakenne, valintarakenne Käytetään moduulisuunnittelussa Pseudokoodista voi syntyä kommentointi Kulkukaaviotekniikat Vanha tapa esittää algoritmeja ”kuvana” Aktiviteettikaavio UML-notaatiossa vastaa tätä: käytetään lähinnä mallinnettaessa toimintoja 5. Toimintojen ja tietojen kuvaus

Esimerkki pseudokoodista 5. Toimintojen ja tietojen kuvaus

Vastaavia kulkukaavioita 5. Toimintojen ja tietojen kuvaus

5.2 Päätöstaulut ja päätöspuut Kuvataan monimutkaisia päätöstilanteita Päätöstaulut hyödyllisiä, kun suoritettavat toimenpiteet riippuvat monimutkaisista ehtojen kombinaatiosta Päätöspuut käyttökelpoisia, kun päättelyn lopputulos on pitkän päättelyketjun tulos 5. Toimintojen ja tietojen kuvaus

5. Toimintojen ja tietojen kuvaus Päätöspuu 5. Toimintojen ja tietojen kuvaus

5. Toimintojen ja tietojen kuvaus Päätöstaulu Valon väri Vihreä Keltainen Punainen Ehtiikö jarrutta-maan Kyllä tai ei Kyllä Ei Toiminta Aja risteykseen Pysäytä 5. Toimintojen ja tietojen kuvaus

5. Toimintojen ja tietojen kuvaus 5.3 Esi- ja jälkiehdot Erityisesti määrittelyvaiheessa toiminnon spesifioiminen voidaan tehdä käyttäen esi- ja jälkiehtojen kirjaamista Ei ota kantaa toimintojen toteutustapaan Esim. määriteltävänä toiminto, joka lajittelee taulukon A[1..n] sisältämät positiiviset kokonaisluvut kasvavaan suuruusjärjestykseen taulukkoon B[1..n] Esiehto: V i C 1..n: A[i] C 0..216 -1 Jälkiehto: V i,j C 1..n: i ≤ j  B[i] ≤ B[j] 5. Toimintojen ja tietojen kuvaus

5.4 Tietohakemistomäärittelyt Tietohakemistolla voidaan kuvata Tietovarastot Tietovirrat Tapahtumavirrat Kuvauksen perusteella voidaan jopa tuottaa ohjelmointikielen syntaksin mukaiset määrittelyt Kuvataan: esitystapa, tarkkuus, käytettävät yksiköt, rakenne Merkintätapoja Merkki Merkitys + Ja () Valinnainen {} Toisto | Vaihtoehtojen erotin @ Avainkenttä * kommentti 5. Toimintojen ja tietojen kuvaus

5. Toimintojen ja tietojen kuvaus Esimerkkejä Henkilötiedot = nimi + @henkilötiedot + siviilisääty + lapset Nimi =1{etunimi}3 + sukunimi Siviilisääty = [naimaton | naimisissa | eronnut | leski] Luottoraja = *asiakkaalle myönnettävän luoton enimmäismäärä euroina* Luottorajoitus = *vastaus luottorajan muutosyritykseen* [”Tuntematon asiakas” | ”Virheellinen luottoraja” | ”Uudeksi luottorajaksi on määritelty xx euroa”] 5. Toimintojen ja tietojen kuvaus

Opiskelijatietokanta Suoritustietokanta = *Relaatiotietokanta, joka kuvaa opiskelijat, kurssit ja suoritukset. Se koostuu tauluista opiskelijat, suoritukset ja opintojaksot.* Opiskelijat = {@op_nro + nimi + osoite + ..} Suoritukset = {@suor_nro + op_nro + oj_nro + pvm + arvosana + ope_nro} Opintojaksot = {@oj_nro + oj_nimi + ov_maara + kuvaus} Opettajat = {@ope_nro + ope_nimi + tehtava} 5. Toimintojen ja tietojen kuvaus

5. Toimintojen ja tietojen kuvaus Esimerkki tilaussanomasta <?xml version="1.0"?> <postitilaus> <vastaanottaja> <nimi>Ahto Simakuutio</nimi> <osoite>Hermiankatu 99, 33720 Tampere</osoite> </vastaanottaja> <tavarat> <tavara> <nimeke>Muistipiiri 256MX</nimeke> <maara>2</maara> <hinta>100</hinta> </tavara> <nimeke>Nokia 9210</nimeke> <maara>1</maara> <hinta>6250</hinta> </tavarat> </postitilaus> b) DTD-kuvaus <!DOCTYPE postitilaus [ <!ELEMENT postitilaus (vastaanottaja, tavara*)> <!ELEMENT vastaanottaja (nimi, osoite)> <!ELEMENT tavara (nimeke, määrä, hinta)> <!ELEMENT nimi (#PCDATA)> <!ELEMENT osoite (#PCDATA)> <!ELEMENT nimeke (#PCDATA)> <!ELEMENT määrä (#PCDATA)> <!ELEMENT hinta (#PCDATA)> ]> 5. Toimintojen ja tietojen kuvaus

5. Toimintojen ja tietojen kuvaus c) XML schema <xsd:schema xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <xsd:element name="postitilaus" type="tilaus"/> <xsd:complexType name="tilaus"> <xsd:sequence> <xsd:element name="vastaanottaja" type="osoitetiedot"/> <xsd:element name="tavarat" type="tavaroidentiedot"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="osoitetiedot"> <xsd:element name="nimi" type="xsd:string"/> <xsd:element name=“osoite" type="xsd:string"/> <xsd:complexType name="tavaroidentiedot"> <xsd:element name="tavara" type="tavaratiedot" maxOccurs=“unbounded"/> <xsd:complexType name="tavaratiedot"> <xsd:element name=“nimeke" type="xsd:string"/> <xsd:element name="maara" type="xsd:positiveInteger"/> <xsd:element name="hinta" type="xsd:decimal"/> </xsd:schema> 5. Toimintojen ja tietojen kuvaus