1 / 13

5 Toimintojen ja tietojen kuvaus

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

jessie
Download Presentation

5 Toimintojen ja tietojen kuvaus

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

  3. Esimerkki pseudokoodista 5. Toimintojen ja tietojen kuvaus

  4. Vastaavia kulkukaavioita 5. Toimintojen ja tietojen kuvaus

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

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

  7. Päätöstaulu 5. Toimintojen ja tietojen kuvaus

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

  9. 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 5. Toimintojen ja tietojen kuvaus

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

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

  12. 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> <tavara> <nimeke>Nokia 9210</nimeke> <maara>1</maara> <hinta>6250</hinta> </tavara> </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

  13. 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:sequence> <xsd:element name="nimi" type="xsd:string"/> <xsd:element name=“osoite" type="xsd:string"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="tavaroidentiedot"> <xsd:element name="tavara" type="tavaratiedot" maxOccurs=“unbounded"/> </xsd:complexType> <xsd:complexType name="tavaratiedot"> <xsd:sequence> <xsd:element name=“nimeke" type="xsd:string"/> <xsd:element name="maara" type="xsd:positiveInteger"/> <xsd:element name="hinta" type="xsd:decimal"/> </xsd:sequence> </xsd:complexType> </xsd:schema> 5. Toimintojen ja tietojen kuvaus

More Related