Laste ned presentasjonen
Presentasjon lastes. Vennligst vent
PublisertAdam Engebretsen Endret for 9 år siden
1
Synsem.ppt1 SIF 8060 - Modellering av informasjonssystemer, 2003 Metoder for å sikre syntaktisk og semantisk kvalitet ”Boka” kap. 4 og 5 Hallvard Trætteberg, IDI
2
Synsem.ppt2 SIF 8060 - Modellering av informasjonssystemer, 2003 Utgangspunkt: kvalitetsrammeverket
3
3 SIF 8060 - Modellering av informasjonssystemer, 2003 Syntaktisk kvalitet for språk Skille mellom syntaks og semantikk Underliggende basis og ekstern representasjon Hvor langt strekker syntaksreglene seg? Tekstlige vs. diagrammatiske språk Verktøystøtte Metoder for å bedre syntaktisk kvalitet
4
4 SIF 8060 - Modellering av informasjonssystemer, 2003 Skille mellom syntaks og semantikk Semantikken gir språkuttrykk en tolkning “+” = + - et “usemantisk” uttrykk er feil ift. virkeligheten Syntaksen sier hvordan grunnbegreper kan kombineres til språkuttrykk a = a + 1 og a += 1 - et “usyntaktisk” uttrykk har ingen tolkning/semantikk Syntaksen begrenses iht. semantikk
5
5 SIF 8060 - Modellering av informasjonssystemer, 2003 Underliggende basis og ekstern representasjon Underliggende basis baseres på språkdesignerens oppfatning av virkeligheten, kjennskap til brukernes virkelighetsoppfatning, og ønsker om formelle egenskaper Ekstern representasjon = symbolbruk språkdrakt, notasjon, kortformer, boksologi
6
6 SIF 8060 - Modellering av informasjonssystemer, 2003 Hvor langt strekker syntaksreglene seg? Syntaksen begrenser de semantiske feilene guttens alder er grønn: gutt.alder = grønn Noen typer semantiske feil er vanskelige å håndtere vha. syntaksregler while(true); all ut-porter må kunne trigges deontiske regler
7
7 SIF 8060 - Modellering av informasjonssystemer, 2003 Tekstlige vs. diagrammatiske språk Tekstlige uttrykk er endimensjonale “Linje”-grammatikk beskriver sammensetning (funksjon består av hode og kropp) sekvens (hode kommer før kropp) Grafiske “plan”-grammatikker finnes begreper som “over”, “inni”, “inntil”, “peker på” Diagrammer er n-dimensjonale beskriver sammensetning, ikke sekvens
8
8 SIF 8060 - Modellering av informasjonssystemer, 2003 Hvordan beskrive syntaks? Metaspråk for spesifikasjon av et modelleringsspråks syntaks Backus-Naur Form Datamodelleringsspråk Predikatlogikk Kombinerte representasjonsspråk e.g. datamodell + BNF
9
9 SIF 8060 - Modellering av informasjonssystemer, 2003 Verktøystøtte Spenn fra fritekst/tegning til struktureditorer tegneeditor, fargekoding, strukturmakroer, tvangstrøye pixeleditor, bokser og streker, moduser, highlighting Atomer vs. sammensetninger Ikke alle enkeltrelasjoner er lovlige Sett av enkeltrelasjoner kan gi ulovlig tilstand Error avoidance vs. detection
10
10 SIF 8060 - Modellering av informasjonssystemer, 2003 Hvordan sikre den syntaktiske kvaliteten? Mål: alle utsagn i modellen M er i samsvar med syntaksen/vokabularet for språk L M / L = Ø To hovedtilnærminger til syntakssjekk: “Error prevention”: a priori-regler (må alltid respekteres), eks. syntaksorienterte editorer “Error detection”: a posteriori-regler (kan oversees underveis i modelleringen, men må før eller senere oppfylles)
11
11 SIF 8060 - Modellering av informasjonssystemer, 2003 Bruk av syntaksregler Error detection techniques øker modelleringsfriheten reglene kan aktiviseres manuelt eller automatisk når visse betingelser er oppfylt Error prevention techniques kan undertrykke kreativitet sikrer at brukeren hele tiden respekterer grunnprinsippene i modelleringsspråket kontinuerlig påtvunget av verktøyet
12
Synsem.ppt12 SIF 8060 - Modellering av informasjonssystemer, 2003 Utgangspunkt: kvalitetsrammeverket
13
13 SIF 8060 - Modellering av informasjonssystemer, 2003 Semantisk kvalitet for språk Semantisk kvalitet vedrører samsvaret mellom modellen og det modellerte domenet Kvalitetsmål: M: all modellutsagn D: all mulige utsagn om domenet Validitet: Alle modellutsagn er korrekte og relevante M/D = Ø Kompletthet: Modellen inneholder alle korrekte og relevante utsagn D/M = Ø
14
14 SIF 8060 - Modellering av informasjonssystemer, 2003 Hvordan sikre semantisk kvalitet? Relevans: inspeksjon av modellen Korrekthet: sjekk av konsistens mellom modellfragmenter sjekk av konsistens mellom modellfragment og lingvistisk beskrivelse Problem : Domenet kan ikke utsettes for automatisk manipulasjon, dvs. D kan bare uttrykkes som en eller annen M.
15
15 SIF 8060 - Modellering av informasjonssystemer, 2003 Tilnærminger til konsistenssjekk Konsistenssjekk basert på logiske beskrivelser Konsistenssjekk basert på konstruktivitet
16
16 SIF 8060 - Modellering av informasjonssystemer, 2003 Konsistenssjekk basert på logiske beskrivelser Lag konseptuell modell m/ contraints Formuler databaseskjema Transformer db-skjema til logisk teori Transformer teorien til et sett av clauses S Konstruer digrafen G(S) Dekomponer G(S) til svakt koplede sett S1, S2,..., Sn Bestem konsistens direkte Ellers: Sjekk om G(Si) er avgjørbar Hvis avgjørbar: bruk resolusjonsmetode til å bestemme konsistens Hvis hver G(Si) er konsistent, er G(S) konsistent Hvis en G(Si) er uavgjørbar, er G(S) uavgjørbar
17
17 SIF 8060 - Modellering av informasjonssystemer, 2003 Resultat av statisk konsistenssjekk 1. DB-skjema er konsistent, 2. DB-skjema er inkonsistent, eller 3. sjekkingen er ikke avgjørbar Selv om en logisk teori er uavgjørbar, kan den være semi-avgjørbar, dvs. inkonsistens kan fastslås ved et begrenset antall steg. Metoder for å sjekke konsistensen Lewis: predikatlogikk Kung: grafteoretisk formulering
18
18 SIF 8060 - Modellering av informasjonssystemer, 2003 Konstruktivitet og konsistens “Fundamental principle of systems work” (Langefors): Definer systemet som et sett av deler Definer systemstrukturen Definer systemdelene Bestem egenskapene til systemet Konstruktivitet: det å utlede egenskapene til et system basert på egenskapene til dets subsystemer
19
19 SIF 8060 - Modellering av informasjonssystemer, 2003 Konstruktivitet i PPM Kungs tilnærming (1986): Inputs og outputs representert som logiske uttrykk og knyttet sammen ved logiske operatorer Sindre’s tilnærming (1987-88): Konstruksjon av et tilstandsdiagram for prosessnettverket Ming Weis tilnærming (1990-93): Konstruksjon av et tilstandsdiagram fra kanonisk form av prosessnettverket
20
20 SIF 8060 - Modellering av informasjonssystemer, 2003 Validering vha. ”Driving questions” Tar utgangspunkt i språkkonstruksjoner eller modelleringsbegreper For hver konstruksjon kan en stille sentrale spørsmål om bruken av konstruksjonen/begrepet Gitt konkret modell, kan en stille relevant spørsmål, basert på brukte konstruksjoner Eksempel: Klassetilhørighet er statisk (relativt vanlig begrensning i objekt-orientert analyse) Modell med ”person”, ”mann” og ”kvinne” (enten/eller) Finnes det ”personer” som er hverken ”mann” eller ”kvinne”? Forblir en ”mann” alltid en ”mann”? Kan en ”mann” bli til en ”kvinne” (eller omvendt)? Hva med giftemål/partnerskap og kjønnskifte?
21
21 SIF 8060 - Modellering av informasjonssystemer, 2003 Lingvistisk verifikasjon Basis: En konseptuell modell består av grafiske modellelementer og små beskrivelser i naturlig språk Tolkningen av NL-beskrivelsen må være konsistent med den lingvistiske tolkningen (parafrasering) av modellelementet plant company plant company employee company own buy
22
22 SIF 8060 - Modellering av informasjonssystemer, 2003 Lingvistisk verifikasjon: Definisjon av språk Hvert modellkonsept definert ved lingvistiske, semantiske strukturer Eksempel: Sign Model (forenklet) relationship: [+dynamic - transition - endpoint agent: [+concrete +identifiable] patient: [+concrete + identifiable]] entity: [+concrete + identifiable + countable]
23
23 SIF 8060 - Modellering av informasjonssystemer, 2003 Lingvistisk verifikasjon: 1. Isolerte beskrivelser Er ”company” en entity unifiserer med “entity”: Ja Er “buy” og “own” relationships? Unifiserer Unifiserer: med “relationship”: Ja Nei company: [+concrete +countable + identifiable - living] buy: [+dynamic +transition + endpoint agent: [..] patient: [..]] own: [+dynamic - transition - endpoint agent: [..] patient: [- living...]]
24
24 SIF 8060 - Modellering av informasjonssystemer, 2003 Lingvistisk verifikasjon: 2. Relasjoner Er “own(company,employee)” en lovlig konstruksjon? Vi kombinerer strukturene for enkeltordene, slik at entitetene unifiseres med argumentene til relasjonene Hvis unifikasjonen lykkes, er konstruksjonen mulig fra et lingvistisk synspunkt own(company,employee): [+dynamic - transition - endpoint agent:[+concrete...] patient:[+concrete - living +living...]] Ugyldig konstruksjon
25
Synsem.ppt25 SIF 8060 - Modellering av informasjonssystemer, 2003 Metoder for pragmatisk kvalitet ”Boka” kap. 6 Hallvard Trætteberg, IDI
26
26 SIF 8060 - Modellering av informasjonssystemer, 2003 Fortsatt samme kvalitetsrammeverk:
27
27 SIF 8060 - Modellering av informasjonssystemer, 2003 Teknikker - 4 dimensjoner Språkforståelse Innholdsrelevans, fokus Strukturanalyse Forståelse av oppførsel (eksekvering) Mål: Forståelse
28
28 SIF 8060 - Modellering av informasjonssystemer, 2003 Aktiviteter Opplæring Inspeksjon: gjennomganger av modeller Transformasjoner av modeller T: M1 Li M2 Lj
29
29 SIF 8060 - Modellering av informasjonssystemer, 2003 Transformasjoner Omformulering - ~(a b) ~b ~a Kan gi ny forståelse ved å gjøre visse forhold eksplisitte Eksempel: UML sequence vs. collaboration Modifisering av layout Bedre oversikt, forståelse Basert på graf-estetiske retningslinjer Manuell eller automatisk
30
30 SIF 8060 - Modellering av informasjonssystemer, 2003 Transformasjoner forts Filtrering – tar et utdrag av modellen språk/meta-modell - begrensning av språk-elementer modell/spesifikasjon - skjule detaljer Aspekter inklusiv/eksklusiv deterministisk/indeterministisk global/lokal personwritespaper NM personwrites 1 N
31
31 SIF 8060 - Modellering av informasjonssystemer, 2003 Transformasjoner, forts. Sletting Del av modell fjernes Innsetting Ny del legges til modellen u Versjoner u Flere modeller av det samme som eksisterer på samme tid
32
32 SIF 8060 - Modellering av informasjonssystemer, 2003 Transformasjoner forts Oversetting T: M Li M Lj, i ! j Språk med ulike pragmatiske kvaliteter Semantisk, ikke syntaktisk mapping L kan være tekst eller diagram Trenger oversetting i CASE-verktøy Mer vanlig i programmeringsomgivelser
33
33 SIF 8060 - Modellering av informasjonssystemer, 2003 Oversetting, krav Separat spesifikasjonsnivå Spesialiserte deklarative oversettingsspråk Generelt og komplett Språk og oppgaveuavhengig Støtte for blandede representasjoner Ulike repositories for modeller Tekstlige og diagrammatiske språk Interaktivt vs. automatisk
34
34 SIF 8060 - Modellering av informasjonssystemer, 2003 Prototyping for forståelse Throwaway (bruk-og-kast) Identifisere og stabilisere krav Evolusjonær Gradvis utvikle til fullt system Mock-up Ytre fasade, ingen dyp oppførsel Eksperimentell Fastslå gjennomførbarhet av foreslått løsning
35
35 SIF 8060 - Modellering av informasjonssystemer, 2003 Prototyping - taksonomi Klassifisering langs 6 dimensjoner fokus – hvilke aspekter blir prototypet skop – hvor mye blir prototypet dybde – hvor dyp er oppførselen skala – hvor mye testdata blir brukt tidspunkt – hvor tidlig i prosjektet varighet – hvor lenge blir den brukt, når kastet? horisontal vertikal
36
36 SIF 8060 - Modellering av informasjonssystemer, 2003 Prototyping - språk Eksekverbare spesifikasjonsspråk Hva systemet skal gjøre på et visst abstraksjonsnivå Logiske og algebraiske språk Operasjonelle spesifikasjonsspråk Både HVA og HVORDAN, om en annen Eksekverbare konseptuelle modeller Very high level languages Programmeringsorienterte, problemspesifikke
37
37 SIF 8060 - Modellering av informasjonssystemer, 2003 Eksekvering av konseptuelle modeller Oversetting til eksekverbar CM (conceptual model) Direkte interpretasjon Oversetting til Very High Level Language (VHLL) Oversetting til High Level Language (HLL) Lavere abstraksjon CMVHLLHLL eksekveringspesifikasjon
38
38 SIF 8060 - Modellering av informasjonssystemer, 2003 Oppsummering Kvalitetsnivåer..., syntaktisk, semantisk, pragmatisk,... Kvalitetsmål Syntaktisk korrekthet, validitet, kompletthet, forståelse...tilhørende midler Manuelle eller i verktøystøtte Feilforhindring / feildeteksjon Konsistenssjekk, lingvistisk verifikasjon Transformasjoner Prototyping, modell-eksekvering
Liknende presentasjoner
© 2024 SlidePlayer.no Inc.
All rights reserved.