Specifikaciju valodas - PowerPoint PPT Presentation

About This Presentation
Title:

Specifikaciju valodas

Description:

Valoda LOTOS notikumu tempor l sak rtojuma specifik cijai. 12. Tempor l s lo ikas. 13. Petri t kli sist mu model an . Kr sainie Petri t kli. – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 38
Provided by: Karli158
Category:

less

Transcript and Presenter's Notes

Title: Specifikaciju valodas


1
Specifikaciju valodas
  • LU Datorzinatnu magistra programma
  • Riga, 2010

2
Kas ir specifikacija?
  • Intuitivi specifikacija apraksts
  • Interešu loks datorsistemu specifikacija (ar
    datoriem saistitu sistemu specifikacija)
  • Sistemas specifikacija precizi, viennozimigi
    formulets sistemas ipašibu apraksts. Lietojam
    matematiskas, formalas metodes.
  • Specifikacija apraksta- sistemas strukturu
    (sistemas strukturas ipašibas) un / vai -
    sistemas darbibu (sistemas darbibas ipašibas),
    t.sk. darbibu apkartejas vides konteksta
    sadarbibu ar arejo vidi- sistemas darbibas
    kontekstu (pasaules fragmentu, kura sistema
    ieklaujas)
  • Sistema- iecereta, projektejama, var but ari
    esoša- aparatura vai programmatura (vai abas
    kopa)
  • Specifikacija- var but vienošanas starp
    lietotaju un pakalpojuma sniedzeju- daleja
    (atseviškas ipašibas) vai izsmeloša (visas
    prasibas, darba uzdevums kontrakta)- izmantotas
    dažados limenos, dažadas specifikacijas vienai
    sistemai

3
Specifikacijas programmaturas dzives cikla
  • Dažadas specifikacijas attieciba uz vienu
    sistemu
  • Priekšmeta apgabala (domena) informacijas
    specifikacija
  • Prasibu (darbibas) specifikacija, vienošanas
    starp gala lietotaju un sistemas izstradataju
  • Dizaina specifikacija, ietver sistemas
    arhitekturu, vienošanas starp sistemas arhitektu
    un realizetaju
  • Modulu (programmas) specifikacija, ietver
    prasibas konkretiem moduliem, proceduram,
    vienošanas starp programmetajiem, kas implemente,
    un kas lieto attiecigo moduli / proceduru
  • Realizacija ari ipašibu apraksts (parasti
    neuzskata par specifikaciju).
  • Specifikacijas dažados kontekstos, dažados
    programmaturas dzives cikla posmos (un pirms tiem
    ..)

4
Kapec specifikacijas?
  • Precizi fikset informaciju par izstradajamo
    sistemu (sistemas apraksta lietotie jedzieni,
    sistemai izvirzitie uzdevumi, dizaina lemumi
    sistemas veidošanas ietvaros)izdarit to
    iespejami agri sistemas izstrades procesa
    strukturet sistemas izstrades procesu.
  • Praktisks skatijums Iegut programmas / sistemas,
    kas garanteti, droši risina tam izvirzitos
    uzdevumus (garantijas un drošiba nebus absolutas
    ..)
  • Precizas specifikacijas veidošana
  • Tiek izveidota/ieguta preciza informacija par
    sistemu (priekšmeta apgabala jedzieni, uzdevuma
    formulejums, dizaina risinajumi)
  • Iespejas specifikacijas analize
  • Vai formulejums atbilst lietotaja velmem
    (validacija)
  • Vai izstradata sistema atbilst specifikacijai
    (verifikacija)
  • Iespejas izveidot / generet sistemu, kas atbilst
    specifikacijai (sinteze)
  • Iespejas programmaturas testešana
  • Specifikacija ka meraukla testa rezultatiem
  • Testa situaciju automatiska generešana no
    specifikacijam (var but iespejama noteiktos
    kontekstos / situacijas)

5
Programmaturas kludas ..
  • Radiacijas terapijas vadibas sistema, Panamas
    Nacionalais veža petijumu instituts, 2000.gads
    programmas nespecificetas izmantošanas del
    pacienti terapijas laika sanem divkaršu
    radiacijas devu, vismaz 8 cilveki miruši
  • Naudas transakciju apstrade bankas (cilveks atnak
    iznemt naudu no bankomata, naudu vinam neizdod,
    bet no konta summu nonem, pretenzijas netiek
    pienemtas, jo vinam nav pieradijumu)
  • Kosmisko lidaparatu vadibas sistemas Ariane 5
    owerflow kludas del apstajas borta vadibas
    datori, ka sekas lidaparats tiek disintegrets
    gaisa sadalits dalas
  • Intel Pentium nepareizi veikta dališana skaitliem
    ar peldošo punktu (kluda par 0,006) kompanijai
    izmaksaja aptuveni 475 miljonus dolaru
  • Programmas kludas del ATT telefonijas
    komutatoros (nepareiza komutatora restartešanas)
    Nujorkas pilseta uz 9 stundam paliek bez telefona
    sakariem (1990.gada 15.janvaris)
  • Sk. 10 nopietnakas programmešanas kludas
    cilveces vesture.
  • Kludu noveršana ir darga, bet ari kludu esamiba
    ne vienmer ir leta.
  • Svarigi noteikt pareizo balansu cik lielus
    lidzeklus ieguldit programmaturas drošiba.

6
Jautajumi refleksijai
  • Jusu pieredze ar specifikaciju izmantošanu ...
  • Vai ir kadas situacijas / veidi, kur un ka
    Jusuprat specifikacijas varetu tikt izmantotas?
  • Kada nozime ir specifikacijas precizitatei?

7
Precizu specifikaciju veidošana
  • Interesanta un nozimiga pasaules izpratnes tema
    dažadas valodas un lidzekli, ka precizi
  • fikset zinašanas, kas saistas ar
    programmas/sistemas strukturu un/vai darbibu
  • formulet uzdevumus programmaturas sistemu un to
    komponenšu, ka ari algoritmu un atsevišku
    programmu izstradei
  • aprakstit algoritmu un programmu ipašibas
  • Var but praktiska nozime ..
  • Ir labi zinat principus, ka to veikt, lai varetu
    piemerota situacija izmantot tieša vai adapteta
    veida ..

8
Tema specifikacijas un specifikaciju valodas
  • Specifikaciju valodas ievads

9
Specifikaciju ipašibas (sagaidamas)
  • Dažas ipašibas, kas bieži tiek sagaiditas no
    specifikacijam (ipašibas var but un var nebut
    speka, var but un var nebut prasitas konkretos
    gadijumos)
  • Lasamiba,
  • Precizitate (priekš cilveka, formali preciza),
  • Butisko sistemas ipašibu atspogulojums,
  • Validacijas iespeja klienta klatbutne
    (specifikacijas izpildamiba),
  • Tipu korektiba un konsistence (nav sintakses
    kludu un iekšeju logisku pretrunu),
  • Implementacijas eksistence (realizejamiba),
  • Formalas analizes iespeja attieciba uz noteiktam
    lietotajam butiskam ipašibam, formalas
    verifikacijas iespeja (svarigi noteikt, vai
    noteiktas ipašibas ir sekas no prasibam, ka ari
    to, vai prasibas ir interpretetas korekti dizaina
    un programmu izstrade)
  • Augsts abstrakcijas limenis vai modelis
    (specifikacija) veidots agri sistemas izstrades
    procesa, kad daudzi dizaina un implementacijas
    jautajumi vel nav risinati.

10
Specifikaciju valodu veidi
  • Specifikaciju valoda jedzienu, konstrukciju
    sistema specifikaciju veidošanai
  • Valoda, kura veidot precizus sistemu ipašibu
    aprakstus.
  • Dažadas programmešanas valodas C, JAVA, PHP,
    Basic, Prolog, LISP, ML, u.c.
  • Specifikaciju valodas vel lielaka dažadiba
  • dažadas pieejas specifikacijai (dažadas
    paradigmas)
  • dažada rakstura specificejamie objekti
    (struktura, funkcionalitate, u.c.)
  • Specifikacijas dažada veida valodas
  • dabiska valoda (latviešu, anglu, japanu, utt.)
  • formalizetas notacijas (izmanto diagrammas,
    shemas, utt.)
  • formalas specifikacijas matematiski precizi
    defineta konstrukciju sintakse un semantika
  • Pamata aplukosim formalas specifikacijas, valodas
    to veidošanai
  • Dabiska valoda nav pietiekama precizitate
    (parasti).

11
Specifikaciju valodu raksturojumi AP98, u.c.
  • Dažas prasibas attieciba uz specifikaciju valodam
    (var but un var nebut speka konkretam
    specifikaciju valodam)
  • Formalitate valodas konstrukcijam ir skaidra
    sintakse un formala semantika.
  • Abstrakcija valodas speja definet un apstradat
    datus logiska limeni, neatkarigi no to
    reprezentacijas.
  • Modularitate konstrukcijas specifikacijas
    paplašinašanai, izmantojot bagatinašanu un
    kompoziciju.
  • Modelešana valoda piedava modeli sistemas
    objektu un to sadarbibas aprakstam.
  • Nedeterminitate valoda piedava nedeterminetas
    konstrukcijas netiešai pieejai datiem un brivai
    darbibu izvelei no saraksta.
  • Izveduma sistema deduktiva metode, kas pec
    sistemas apraksta lauj konstatet vel citas tas
    ipašibas.
  • Formala specifikacijas un implementacijas
    sasaiste verifikacijas, detalizacijas un/vai
    sintezes iespejamiba.
  • Temporalie aspekti laika specifikacija un ta
    saistišana ar sistemas objektu darbibu.
  • Kadas no šim ipašibam piemit programmešanas
    valodam?

12
Dabiskas un formalas valodas specifikacija
  • Specifikaciju valoda konstrukciju sistema
    specifikaciju veidošanai
  • Dabiska valoda - ? Nav precizitates, daudz
    trokšna
  • viens un tas pats jedziens dažadas vietas
    izteikts dažadi (seviški ja jedzienu jalieto
    daudzkart neliela teksta fragmenta)
  • Programmas ieeja tiek padotas divas netukšas
    simbolu virknes, un izeja programma izdod virkni,
    kas satur vismaz vienu simbolu.
  • var but lietas, kas rakstitajam var škist
    skaidras bez rakstišanas, vai ari, kuras
    uzrakstit tiek aizmirsts
  • notikums a notiek pec notikuma b gan
    notiek, gan pec var tikt interpretets vairak,
    neka viena veida.
  • notiek vai laika momentani, vai, iespejams,
    ilglaicigi?
  • pec vai a sakums ir pec b beigam, vai ari
    pietiek ar to, ka a sakums ir pec b sakuma, un a
    beigas pec b beigam?

13
Diagrammas ka specifikaciju valoda
  • Specifikaciju valoda konstrukciju sistema
    specifikaciju veidošanai
  • Dabiska valoda - Nav precizitates, daudz
    trokšna
  • Shematiskas diagrammas var palidzet labak
    strukturet specifikaciju
  • Tomer ari diagrammai nav pašai par sevi precizas
    semantikas (nozimes), ja to nepapildina precizas
    anotacijas
  • UML klašu diagrammas lauj labi aprakstit
    strukturetu priekšstatu par pasauli, semantika
    skaidrota dabiska valoda, ir lietas, kas nav lidz
    galam pateiktas semantikas formalizacija
    iespejama dažados veidos
  • Formalas specifikaciju valodas matematiski
    precizi defineta konstrukciju sintakse un
    semantika (tas neatbrivo no nepieciešamibas
    konstrukcijam but saprotamam!)

14
Tema formalas specifikacijas
  • Specifikaciju valodas ievads

15
Formalas specifikacijas
  • Formals balstas uz formu. Matematiski precizi
    definets.
  • Sinonimi formals precizs.
  • Formala logika noskaidrot izteikuma patiesumu,
    balstoties uz ta formu.
  • Piemeram, A ? A ir patiess, neatkarigi no ta,
    kads ir A saturs.Formals izvedums no aksiomam.
    Iespejams parbaudit uz datora.Matematiska
    logika spriedumi tiek veidoti formali.Programmas
    izpilde simbolu manipulacija formala
    aktivitate.
  • Filosofiski pretstati forma saturs.
  • Formala, preciza specifikacija spriedumi par
    specifikaciju izdarami aplukojot tikai
    specifikacijas formu uzrakstito
    specifikacijas tekstu.
  • Formala specifikacija visas butiskas sistemas
    ipašibas ietvertas ari formali uzrakstitaja
    specifikacijas teksta. Nav apsleptu pienemumu,
    lietu, kuras ir skaidras tapat.
  • N.B. Specifikacijas formalitate neatcel prasibu
    pec specifikacijas lasamibas, saprotamibas!
  • Saturs formas interpretacija. Skaidri, visai
    specifikaciju valodai vienoti likumi.

16
Prasibu formalizacija
  • Gala lietotaja prasibas butiba saturiskas (lai
    sistema strada, noteikta specifiska veida).
  • Lai iegutu iespeju veidot formalu specifikaciju,
    nepieciešams lietotaja prasibas ietvert kada
    formala, matematiska sistema.
  • Specifikaciju valodas var piedavat (vairak vai
    mazak) ertu notaciju lietotaja prasibu
    fiksešanai.
  • Saturiska specifikacija
  • Katram laika momentam t, ja taja tiek kanala
    sutits signals, tad kada laika momenta, kas ir
    lielaks par t, šis signals tiks no ši kanala
    sanemts.
  • Formalizacija ?t?R (s(t) ? ?t1gtt ? r(t1))
  • Predikatu s un r saturiska nozime var palikt
    arpus formalas sistemas ietvariem.
  • Butiski, ka predikati s un r nozime vienu un to
    pašu visas specifikacijas ietvaros.
  • Cilvekam, kas raksta/lasa šo specifikaciju, s un
    r nozime bus svariga.
  • Spriedumi par specifikaciju veidojami neatkarigi
    no šis nozimes.
  • http//www.railwaydomain.org/ - meginajums
    formalizet veselu nozari.

17
Formalo metožu izmantošanas limeni
  • Preciza specifikacijaSpecifikaciju valoda ar
    matematiski precizu sintaksi un
    semantikuIzveidota specifikacija kalpo ka
    garantija tam, ka prasibas pret sistemu ir
    precizi apzinatasSpecifikaciju var izmantot ka
    merauklu testu rezultatiem un/vai ka avotu
    sistematiskai testu generešanai
  • Preciza specifikacija analizeSpecifikaciju
    valoda ietver iespejas (piemeram, deduktivu
    sistemu) apgalvojumu pieradišanaiIespejas
    analizet pašas specifikacijas konsistenci, ka ari
    implementacijas sasaisti ar specifikaciju
    (dažadus tas aspektus)
  • Preciza specifikacija pieraditi korekta
    implementacijaImplementaciju un specifikaciju
    sasaiste vienota semantiska ietvaraSistematiskas
    metodes implementacijas korektibas pieradišanai
    vai implementacijas sintezei vai specifikacijas
    detalizacijai par implementaciju
  • Praktiski lietojumi bieži var apstaties A limeni,
    varbut ietverot nedaudz no B.
  • B un C limenos praktiskos lietojumos nepieciešams
    riku atbalsts

18
Valodas dažados formalitates limenos
  • O. Diagrammu notacija OO modelešanai, UML
    daleji formalas valodas (ka ir ar UML klašu
    diagrammu formalo semantiku ?)
  • A./B. Z, VDM, Larch, OBJ u.c. specifikaciju
    valodas ar matematiski precizu sintaksi un
    semantiku, pieejami ari atseviški atbalsta riki
    sintakses parbaudei, semantiskajai analizei un
    pieradijumu veikšanai
  • C. HOL, PVS, EVES, u.c. atbalsts formalu
    specifikaciju veidošanai, iespejams veikt stingru
    semantisku analizi un sistematiskus mehaniski
    verificetus pieradijumus
  • Formalitates limena izvele atkariba no projekta
    merkiem, drošibas nozimiguma, projekta apjoma,
    pieejamajiem resursiem.
  • Kursa koncentresimies uz Z, VDM, Larch, OBJ
    limeni specifikaciju valodas ar matematiski
    precizu sintaksi un semantiku, atseviškam
    pieradijuma iespejam.
  • Iespeju robežas aplukosim ari detalizacijas
    pieeju.

19
Dzilakais limenis pieraditi korekta programma
  • Ja merkis ir iegut programmaturas sistemu un
    tas korektibas pieradijumu (sistemai ar loti
    augstam drošibas prasibam) ne vienmer tas tiks
    prasits
  • 3 elementi (A) Specifikacija, (B) Programma, (C)
    Pieradijums
  • Kada seciba veidot (A), (B) un (C)?
  • 1. pieeja Sakam ar specifikaciju (A), pec tam
    (B), tad (C) veidojot (B) un (C) var but
    nepieciešamiba atgriezties pie (A) precizešanas
  • 2.pieeja Sakam ar specifikaciju (A), pec tam (B)
    un (C) paraleli ka atseviškas aktivitates ...
  • 3. pieeja Sakam ar specifikaciju (A), pec tam
    integreta (B) un (C) izstrade ... (tiek
    uzskatita par optimalo, nepieciešamiba veikt
    pieradijumu var ietekmet veidu, ka programmas
    tiek rakstitas).
  • Specifikacijas detalizacija par implementaciju
    atbilst (3.) pieejai, (B) un (C) integracija pec
    butibas (detalizacijas ietvaros nav iespejams
    izveidot (B), neizveidojot (C))
  • P.S. Var but iespejamas situacijas, kad formala,
    preciza specifikacija tiek veidota visai
    sistemai, bet pieradijumi tiek veikti tikai
    atseviškam komponentem.
  • P.S.2. Ja programmas korektiba tiek pieradita,
    tas vel nenozime, ka programma tiešam ir pareiza
    paliek jautajums ari par to, vai specifikacija
    ir pareiza un pilniga. ?

20
Programmas komponenšu korektiba
  • Pastav iespejas korektibas pieradijumus veikt
    attieciba uz atseviškam programmas koda
    komponentem ari sistemam ar mazak kritiskam
    drošibas prasibam
  • Nozimiga sistemas komponente
  • Atseviškas komponentes verifikacija var but
    ieverojami letaka par visas sistemas
    verifikaciju.
  • Kursa aplukotas specifikacijas un analizes
    metodes bus izmantojamas ari atsevišku programmas
    fragmentu ipašibu aprakstam un analizei.

21
Formala specifikacija un verifikacija prakse
  • NASA, 1995, citets pec AP98
  • Formala verifikacija ir veikta programmam lidz 10
    KSLOC
  • Dizaina limena specifikacija un verifikacija ir
    veikta apakšsistemam starp 10 KSLOC un 100 KSLOC
  • Formala prasibu specifikacija ir meginata ari
    sistemam, kas izstrades laika ir izaugušas ari
    virs 100 KSLOC
  • KSLOC (Kilo Source Lines of Code)
  • Videjas sarežgitibas sistemas.

22
Formala specifikacija un verifikacija prakse
  • NASA formalas metodes nevar tikt pilniba
    pielietotas lielam sistemam, kas veidotas,
    izmantojot parastas programmešanas metodes.
  • Lai bauditu formalo metožu auglus lielu sistemu
    izstrade, sistemam jabut labi strukturetam,
    sadalamam skaidri definetas komponentes. Tikai
    viskritiskakas no tam ir paklaujamas formalajam
    metodem.
  • Lielaks ieguvums ir tad, ja formalos spriedumus
    par atseviškam sistemas komponentem var kombinet,
    tadejadi iegustot sledzienus par visas sistemas
    uzvedibu (kompozicionalitates princips)

23
Specifikaciju valodu parskats
  • Orientetas uz sistemas ipašibam
  • Algebriskas ACT ONE, OBJ3, COLD-K, CASL, ASM
  • Aksiomatiskas Larch (augšejais limenis),
    temporalas logikas, HOL, PVS, (paralelo procesu
    algebras, LOTOS)
  • (Funkcionalas programmešanas valodas)
  • Orientetas uz sistemas modeli
  • Z, VDM, B, RAISE, Larch (otrais limenis)
  • Sistemas modelis tiek veidots no zinamiem
    matematiskiem objektiem kopas, attiecibas,
    virknes, utt.
  • Operacijas specificetas sakuma un beigu
    nosacijumu terminos.
  • Orientetas uz stavoklu parejam
  • Petri tikli, Statecharts, paralelo procesu
    algebras, LOTOS

24
Formalas specifikaciju valodas mazliet cita
klasifikacija
  • Modelbazetas valoda lauj konstruet
    specificejamas sistemas matematisko modeli,
    tipiski aprakstot sistemas stavoklus un
    iespejamas operacijas (VDM-SL, Z, B).
    Matematiskais pamats kopu teorija.
  • Ekvacionalas datu strukturu specifikacija,
    izmantojot vienadibas. Algebriskas
    specifikacijas ACT ONE, COLD-K, OBJ. Logiskas
    ekvacionalas specifikacijas Larch.Matematiskais
    pamats abstrakta algebra, kategoriju teorija.
  • Uz procesiem balstitas process ka primitivs
    paralelu un reaktivu sistemu darbibas aprakstam.
    CCS, CSP, LOTOS. Valodas darbibu secibas
    atspogulošanai. Temporalas logikas.(Matematiskais
    pamats procesu modelis, automatu teorija,
    algebra)
  • Logiskas pirmas kartas predikatu logika,
    augstakas kartas predikatu logika (HOL sistema,
    u.c.), tipu teorijas (sk. NUPRL sistema,
    u.c.).Matematiskais pamats matematiska logika
    (1.kartas, augstakas kartas)
  • Salidzinat http//www.rbjones.com/rbjpub/cs/csfm0
    2.htm

25
Kursa merkis, saturs un vertešana
  • Specifikaciju valodas ievads

26
Specifikaciju valodas kursa merkis
  • Kursa merkis iepazistinat ar plašak lietotajam
    formalajam specifikaciju valodam, ka ari ar
    specifikaciju analizes iespejam uz to bazes.
  • Kursa pamata akcents ir uz specifikaciju valodam
    - Z, VDM (modelbazetas spec. valodas) un - OBJ
    (algebriska spec. valoda), - atseviški aplukotas
    proceduru (operaciju) sakuma/beigu
    specifikacijas, - ka ari sniegts parskats par
    virkni citam dažada veida specifikaciju valodam.
  • Kurss sniedz pamata zinašanas, lai students
    varetu lasit, saprast un rakstit specifikacijas
    valodas Z, VDM un OBJ.

27
Precizu specifikaciju veidošana
  • Interesanta un nozimiga pasaules izpratnes tema
    dažadas valodas un lidzekli, ka precizi
  • fikset zinašanas, kas saistas ar
    programmas/sistemas strukturu un/vai darbibu
  • formulet uzdevumus programmaturas sistemu un to
    komponenšu, ka ari algoritmu un atsevišku
    programmu izstradei
  • aprakstit algoritmu un programmu ipašibas
  • Var but praktiska nozime ..
  • Ir labi zinat principus, ka to veikt, lai varetu
    piemerota situacija izmantot tieša vai adapteta
    veida ..

28
Planotas kursa temas
  • 1. Specifikacijas jedziens, specifikaciju veidi.
    Formalas specifikacijas, to raksturojumi un
    izmantošana programmaturas dzives cikla.
  • 2. Proceduru sakuma un beigu specifikacijas
    logiska forma. Daleja un pilna korektiba.
  • 3. Atbilstibas specifikacijai konstatešana Hoara
    logika, cikla invarianti, cikla varianti.
  • 4. Specifikaciju valodas Z pamati. Programmaturas
    sistemu specifikacija valoda Z.
  • 5. Modelbazetas specifikaciju valodas Object Z,
    B, Event B.
  • 6. Specifikaciju valodas VDM un VDM. Sistemu
    izstrade, izmantojot VDM.
  • 7. Algebriskas specifikacijas algebras,
    abstraktie datu tipi, specifikaciju ipašibas.
  • 8. Algebriska specifikaciju valoda OBJ3. CAFE OBJ
    sistema.
  • 9. Abstrakto automatu metode sistemu
    specifikacijai.
  • 10. Paralelu sistemu specifikacijas pamati.
  • 11. Valoda LOTOS notikumu temporala sakartojuma
    specifikacijai.
  • 12. Temporalas logikas.
  • 13. Petri tikli sistemu modelešana. Krasainie
    Petri tikli.

29
Vertešana
  • Majas darbi (t.sk. nelieli izstrades projekti)
    atbilstoši lekcijas aplukotam temam 6 punkti.
    Majas darbus japilda patstavigi un majas darbu
    risinajumus jaatbild.
  • Apmeklejums un piedališanas diskusijas, un/vai
    refleksija foruma par lekcijas apskatitiem
    jautajumiem (lidz 3 punktiem, tikai apmeklejums
    vien netiek vertets).
  • Referats, 15-20 minušu uzstašanas ar slaidiem
    (lidz 3 punktiem), vai 8-12 lpp teksta
    iesniegšana (lidz 2 punktiem). Tema saskanojama
    ar pasniedzeju. Tiks piedavatas iespejamas
    ievirzes temam.
  • Eksamens - vienkarši teorijas jautajumi un
    uzdevumi (3 punkti).
  • Atzime par kursu sanemto punktu skaits. Ja
    studenta sanemto punktu kopsumma parsniedz 9, tad
    atzime par kursu ir 9 ?.
  • Atzime 10 par izcilibu (nolasits referats,
    originals projekts, daliba foruma, u.c.)

30
Informativais atbalsts
  • Informativais atbalsts Kurss e-studiju (moodle)
    vide
  • Kursa saturs, prasibas, majas darbi, literaturas
    saraksts, papildmateriali (slaidi elektroniska
    forma, norades uz timekla vietnem)
  • Papildus
  • www.ltn.lv/karlisc/stud.htm,Specifikaciju
    valodas
  • E-pasts Karlis.Cerans_at_mii.lu.lv (sazinai ludzu
    izmantot šo).
  • Tel. 67213716
  • Apmeklejumi LU MII 421. istaba.

31
Jautajumi refleksijai
  • Kadas ir galvenas ceribas, kas Jums saistas ar ši
    kursa apguvi?
  • Kadas ir galvenas bažas, kas Jums saistas ar ši
    kursa apguvi?
  • Par kadam temam un jautajumiem Jus veletos, lai
    tie tiktu vairak akcenteti kursa?

32
Tema specifikacijas semantika(mazliet
filosofijas..)
  • Specifikaciju valodas ievads

33
Par specifikacijas semantiku ...
  • Specifikacija modelis, sistemas ipašibu
    apraksts.
  • Formala specifikacija matematiski preciza
    sintakse un semantika. Sintakse lineara,
    grafiska, Semantika - ?
  • Piemers specifikacija automats (automatu
    sistema, SDL sistema).
  • Automatam noteikti darbibas likumi (parejas
    starp stavokliem). Formala notacija, viss
    matematiski precizi.
  • Kadas sistemas atbilst automatam ka
    specifikacijai? Vai dota uzprogrammeta sistema X
    atbilst dotajai specifikacijai A ?
  • Automata stavoklu pareju likumi neatbild uz šiem
    jautajumiem.
  • Ari automatu zinama nozime kadreiz uzskata par
    sistemas specifikaciju, kas gan nesniedz precizu
    uzdevumu talakai sistemas programmaturas
    izstradei. Piemerotaks vards sistemas modelis.
  • P.S. Automatiem un to sistemam ir iespejams
    definet specifikacijas semantiku.

34
Specifikacijas semantika
  • Specifikacijas semantika, Specifikacijas
    filosofiskais modelis
  • Specifikacijas semantika specifikaciju valodai
    L dod formalus kriterijus, ka noteikt, kadas
    implementacijas atbilst katrai valoda L rakstitai
    specifikacijai.
  • Spec specifikaciju kopa, Sys sistemu (vai
    programmu) kopa
  • Sat ? Sys x Spec atbilstibas attieciba.
  • I Sat S implementacija (sistema) I atbilst
    specifikacijai S.
  • Ja specifikacija apraksta konkretas prasibas
    konkreti veidojamai programmai, jautajumu par Sat
    var but labi uzstadit, ja tas nav a priori
    valodas prezentacija atbildets ...
  • Vienam formalam objektam (t.sk. specifikacijai)
    var but vairakas semantikas. Svarigi, lai tas
    butu saskanotas.

35
Specifikaciju detalizacijas jedziens
  • Integreta programmas koda un tas korektibas
    pieradijuma izstrade.
  • Spec specifikaciju kopa, Sys sistemu kopa,
    Sat ? Sys x Spec atbilstibas attieciba.
  • I Sat S implementacija (sistema) I atbilst
    specifikacijai S.
  • Ja izveido kopu SpecPlus paplašinata sistemu
    kopa, kurai Spec, Sys ? SpecPlus, un define
    taja Ref ? SpecPlus x SpecPlus, ar ipašibam -
    ja I ? Sys un S ? Spec, tad I Sat S ? I Ref S, -
    Ref ir refleksiva un tranzitiva,
  • tad Ref ir detalizacijas (refinement) attieciba.
  • Ja ir pieejama attieciba Ref, tad iespejamas
    metodologijas, kas atlauj iegut I ? Sys no S ?
    Spec, kurai I Sat S pakapenisku transformaciju
    rezultata, veidojot virkni
  • S S0, S1, S2, , Sn I,
  • kur Si ? SpecPlus un ?i Si1 Ref Si.

36
Specifikaciju detalizacijas jedziens (2)
  • Spec specifikaciju kopa, Sys sistemu kopa,
    Sat ? Sys x Spec atbilstibas attieciba. I Sat S
    implementacija (sistema) I atbilst
    specifikacijai S.
  • Ja ir pieejama attieciba Ref, tad iespejamas
    metodologijas, kas atlauj iegut I ? Sys no S ?
    Spec, lai I Sat S pakapenisku transformaciju
    rezultata, veidojot virkni
  • S S0, S1, S2, , Sn I,
  • kur Si ? SpecPlus un ?i Si1 Ref Si.
  • Ja papildus tam detalizacijas attieciba Ref ir
    kompozicionala
  • S Ref T ? C(S) Ref C(T)
  • noteikta veida konteksta informacijas
    pievienošanas operatoriem C(piemeram SX Ref
    TX),tad katru no soliem Si1 Ref Si var veikt
    atseviška sistemas komponente.
  • Tipiski I un S bus sintaktiski pierakstitas
    dažadas valodas. Attieciba Ref veidojama ka
    attieciba starp I un S semantiskajiem objektiem.
  • Izstrades rezultata, protams, I bus jaapmierina
    ari citas ipašibas, ne tikai I Sat S.

37
Par specifikaciju un programmu semantiku
  • Spec specifikaciju kopa, Sys sistemu
    (programmu) kopa.
  • Sat ? Sys x Spec atbilstibas attieciba.
  • I Sat S implementacija (sistema, programma) I
    atbilst specifikacijai S.
  • Spec formala specifikaciju valoda, ja precizi
    defineta tas sintakse un atbilstibas attieciba
    Sat.
  • Lai Sat varetu definet precizi, ari Sys
    programmu kopai jabut matematiski precizi
    definetai.
  • Specifikacija apluko programmu sistemu
    sintaktiskas un semantiskas ipašibas (kada bus
    programmas darbiba).
  • Pamata akcents specifikacija ka programma tiks
    izpildita? Programmu izpildes laika semantikai
    jabut precizi definetai.
  • Programmešanas valodas semantika ka definet
    dotai programmai (tekstam) šaja valoda atbilstošu
    matematisku strukturu, kas raksturo programmas
    izpildi (struktura grafs, sakuma un beigu
    stavoklu attieciba, u.c.)
Write a Comment
User Comments (0)
About PowerShow.com