Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Synsem.ppt1 SIF 8060 - Modellering av informasjonssystemer, 2003 Metoder for å sikre syntaktisk og semantisk kvalitet ”Boka” kap. 4 og 5 Hallvard Trætteberg,

Liknende presentasjoner


Presentasjon om: "Synsem.ppt1 SIF 8060 - Modellering av informasjonssystemer, 2003 Metoder for å sikre syntaktisk og semantisk kvalitet ”Boka” kap. 4 og 5 Hallvard Trætteberg,"— Utskrift av presentasjonen:

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


Laste ned ppt "Synsem.ppt1 SIF 8060 - Modellering av informasjonssystemer, 2003 Metoder for å sikre syntaktisk og semantisk kvalitet ”Boka” kap. 4 og 5 Hallvard Trætteberg,"

Liknende presentasjoner


Annonser fra Google