Timed STAIRS tid for å ta steget til 3-event meldinger



Like dokumenter
LSCs Live Sequence Charts

Analyse av tillit i elektronisk samvirke

INF Oracle. Version INF Dec-05 INF5150 INFUIT Haugen / Stølen 1

LO118D Forelesning 3 (DM)

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case? Use case modellering. Eksempel

Hvordan lage og bruke policyer i tillitshåndtering

I dag UML. Domenemodell visualisering av konsepter. Eksempel. Hvordan finne domeneklasser?

UNIVERSITETET I OSLO

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case?

UKE 11 UML modellering og use case. Gruppetime INF1055

INF5120 Oblig gjennomgang

Slides til 12.1 Formelt språk og formell grammatikk

1 Kodegenerering fra Tau Suiten

UML 1. Use case drevet analyse og design Kirsten Ribu

Litt mer mengdelære. INF3170 Logikk. Multimengder. Definisjon (Multimengde) Eksempel

Fra krav til objektdesign

INF3170 Forelesning 2

Spesifikasjon av Lag emne. Kursregistrering bruksmønstermodell (ny versjon) Dagens forelesning. Fra krav til objektdesign

UML-Unified Modeling Language

Model Driven Architecture (MDA) Interpretasjon og kritikk

Eksamen INF

Dagens plan. INF3170 Logikk. Mengder. Definisjon. Notasjon. Forelesning 0: Mengdelære, Induksjon. Martin Giese. 23. januar 2008.

GJENNOMGANG UKESOPPGAVER 4 USE CASE MODELLERING HELGA NYRUD & KRISTIN BRÆNDEN

Akseptansetest av mottak Rekvirering av medisinske tjenester Medisinsk biokjemi

Akseptansetest for mottak PLO-meldingen Orientering om tjenestetilbud

Kravspesifikasjon med UML use case modellering. Erik Arisholm

Oppgave 1: Multiple choice (20 %)

Akseptansetest for mottak av administrativ kommunikasjon mot kjernejournal

Akseptansetest for mottak av PLO-meldingen: Konsultasjon

Gruppenavn. Prosjektnavn Beskrivelse av design For Navn på systemet. Versjon <1.0>

INF 5120 Obligatorisk oppgave Nr 2

Akseptansetest for mottak av PLO-meldingen: Tverrfaglig epikrise

Akseptansetest av mottak Dialogmelding

Matematikk 15 V-2008

Use Case-modellering. INF1050: Gjennomgang, uke 04

Det matematisk-naturvitenskapelige fakultet

Dagens plan INF3170 Logikk. Obliger og eksamen. Forelesning 1: Introduksjon, mengdelære og utsagnslogikk. Christian Mahesh Hansen og Roger Antonsen

Komplekse tall: definisjon og regneregler

Akseptansetest for mottak av PLO-meldingen: Helseopplysninger ved søknad

Innholdsfortegnelse INNHOLDSFORTEGNELSE... 2 REVISJONSOVERSIKT...4 INTRODUKSJON MED FORUTSETNINGER... 5

Akseptansetest for mottak PLO-meldingen: Orientering om tjenestetilbud

UKE 13 Mer UML modellering. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski

Robert er kokk og har bred og lang erfaring i yrket. Roberts mål for turen var primært i kjøkkenet:

Basis interoperabilitetstest - ebxml

STE6221 Sanntidssystemer Løsningsforslag

Obligatorisk oppgave 1 i MAT1140, Høst Løsninger med kommentarer

Oblig2 i INF5120 Modellering med objekter UiO V04, Timelisteføringssystem Ver

Akseptansetest av mottak Svarrapportering av medisinske tjenester Patologi

Vi definerer en mengde ved å fortelle hva den inneholder. Vi kan definere den på listeform eller ved hjelp av en utsagnsfunksjon.

Modelldrevet risikoanalyse med CORAS

Akseptansetest for mottak av PLO-meldingen: Tverrfaglig epikrise

To mengder S og T er like, S = T, hvis de inneholder de samme elementene. Notasjon. Mengden med elementene a, b, c og d skrives ofte {a, b, c, d}.

Akseptansetest for mottak av Overføring av legemiddelopplysninger (PLO/SUMO)

INF1400. Tilstandsmaskin

Vedlegg 6. Anskaffelse IINR 1019 FERSKT KJØTT OG KJØTTPRODUKTER. SLA (Service Level Agreement) til. Side 1 av 5

INF3340/4340. Synkrone design Tilstandsmaskiner

INF3340. Tilstandsmaskiner

Vi definerer en mengde ved å fortelle hva den inneholder. Vi kan definere den på listeform eller ved hjelp av en utsagnsfunksjon.

DEL MED TILLIT. Novapoint Brukermøte Sette opp prosjekt i Quadri og Quadri Easy Access. Mini kurshefte for:

UML- Use case drevet analyse og design. Domenemodeller Sekvensdiagrammer Use case realisering med GRASP patterns Klassediagram - designmodeller

Løsningsforslag til øving 12

Spesifikasjon av Lag emne

Turingmaskiner en kortfattet introduksjon. Christian F Heide

UML-Unified Modeling Language. Prosess-oversikt. Use case realisering

Conference Centre Portal (CCP)

Retningslinjer for scenariobasert trusseldokumentasjon, erfaringer fra praksis

INF1500 Introduksjon til design, bruk, interaksjon Kapittel 10 Identifisere behov og etablere krav

Akseptansetest for mottak av PLO-meldingen: Helseopplysninger til lege

Akseptansetest av mottak Svarrapportering av medisinske tjenester Immunologi

Akseptansetest av mottak Elektronisk henvisning

Ansvarsdrevet OO: CRC og UML Sekvensdiagrammer

Modellering av brukstilfeller og forretningsprosesser. Kurs i standarder, Oslo, 12. juni 2018

Bringebærmousse på nøttebunn med vaniljegele.

INF1400. Tilstandsmaskin

SIE 4005, 8/10 (3. Forelesn.)

Turingmaskiner en kortfattet introduksjon. Christian F Heide

Sertifisering. Avdelingssjef Bjarte Aksnes

INF3170 Forelesning 11

Universitetet i Oslo Institutt for informatikk. Eskild Busch. UML hefte

Intuisjonistisk logikk

INF3170 Logikk. Forelesning 11: Intuisjonistisk logikk. Roger Antonsen. 27. april Institutt for informatikk, Universitetet i Oslo

Akseptansetest av mottak Elektronisk epikrise - Den gode epikrise

Forelesning 2: Induktive definisjoner, utsagnslogikk og sekventkalkyle Christian Mahesh Hansen januar 2007

Use case modellering. Use case modellen. Metode for systembeskrivelse og Nettsted-design

Forelesning januar 2006 Introduksjon, mengdelre og utsagnslogikk. 1 Praktisk informasjon. 1.1 Forelesere og tid/sted. 1.2 Obliger og eksamen

Metadata for samordning og samhandling

INF1800 Forelesning 2

Akseptansetest av mottak Rekvirering av medisinske tjenester Immunologi

Emne 12 Mengdelære. ( bokstaven g er ikke et element i mengden B ) Betyr: B er mengden av alle positive oddetall.

INF1300 Introduksjon til databaser

Akseptansetest av mottak Svarrapportering av medisinske tjenester Mikrobiologi

Oppgave 1 Multiple Choice

Systemutviklingen er ferdig når et system er operativt. Med operativt menes når systemet blir brukt av brukerne på et faktisk arbeidssted.

Akseptansetest av mottak Rekvirering av medisinske tjenester Medisinsk biokjemi

From a table based Feature Catalogue to GML Application schemas

Injektive og surjektive funksjoner

Frankering og computer-nettverk

INF2120 V2005. Gruppe 2 christrc ieronnin kjetimk noushinm sjuros. Trafikanten+ Innlevering

Mulige Master-oppgaver hos Peter C. Ölveczky

Transkript:

Timed STAIRS tid for å ta steget til 3-event meldinger 1. april 2005 OMS-seminar 1. april 2005 / / Slide 1

Why timed sequence diagrams require three-event semantics I samarbeid med Øystein Haugen, Knut-Eilif Husa og Ketil Stølen Artikkel i "Scenarios: models, algorithms and tools (Dagstuhl post-seminar proceedings)", LNCS???? Teknisk rapport 309 OMS-seminar 1. april 2005 / / Slide 2

Timed STAIRS STAIRS: - Øystein Haugen, Ketil Stølen: STAIRS Steps To Analyze Interactions with Refinement Semantics. I Sixth International Conference on UML (UML'2003), LNCS 2863. - Metode for komposisjonell utvikling av sekvensdiagram - Skiller mellom potensiell og påbudt oppførsel Timed STAIRS-artikkelen: - Sekvensdiagram gis en denotasjonell trace-semantikk - Raffineringsrelasjonene i STAIRS defineres formelt - Utvider med tid og tre-event semantikk OMS-seminar 1. april 2005 / / Slide 3

Restaurant-eksempel Opprinnelig STAIRS trace-semantikk: <! main_dish_please,? main_dish_please,! main_dish:sirloin,? main_dish:sirloin > OMS-seminar 1. april 2005 / / Slide 4

Restaurant-eksempel (forts) Krav: Skal ikke ta mer enn 10 minutter å lage hovedretten. - Lokal restaurant-eier: Vi oppfyller kravet - Kontrollør/kunde: Det tar mye mer enn 10 minutter! Problemet: Skal tiden tas fra kjøkkenet får bestillingen, eller fra de begynner å arbeide med den? OMS-seminar 1. april 2005 / / Slide 5

To tolkninger Standard interpretasjon - Den tradisjonelle tolkningen av sekvensdiagram - Input-eventen representerer konsumpsjon - Kjøkkensjefens versjon Black-box interpretasjon - Vanlig innen formelle metoder - Input-eventen representerer mottak - Kontrollørens/kundens versjon OMS-seminar 1. april 2005 / / Slide 6

Generell løsning: tre-event meldinger! Ny Timed STAIRS trace-semantikk: <! main_dish_please, ~ main_dish_please,? main_dish_please,! main_dish:sirloin, ~ main_dish:sirloin,? main_dish:sirloin > OMS-seminar 1. april 2005 / / Slide 7

Timed STAIRS: Tid Hver event har en timetag som tilordnes et tidsstempel (et reelt tall) Eventene i en trace må ordnes med hensyn på tid - men to eventer kan forekomme på samme tidspunkt Hver lovlige trace må overholde de angitte tidsbetingelsene <! main_dish_please t1->r1, ~ main_dish_please t2->r2,? main_dish_please t3->r3,! main_dish:sirloin t4->r4, ~ main_dish:sirloin t5->r5,? main_dish:sirloin t6->r6 > OMS-seminar 1. april 2005 / / Slide 8

OMS-seminar 1. april 2005 / / Slide 9

STAIRS syntaks En melding er et trippel (signal, sender, mottaker) - sender og mottaker er livslinjer En event er et trippel (type, melding, timetag) - type er en av!, ~ eller? - timetag brukes for å angi tidsbetingelse Mengden av sekvensdiagram er definert induktivt ved at: - en event er et sekvensdiagram - neg d og assert d er sekvensdigram (for d et sekvensdigram) - loop N d er et sekvensdiagram (for d et sekvensdiagram, N en delmengde av de naturlige tall inkludert null + uendelig) - d1 alt d2, d1 seq d2, d1 par d2 er sekvensdiagram (for d1 og d2) sekvensdiagram - d tc C er et sekvensdiagram (for d et sekvensdiagram, C en tidsbetingelse) OMS-seminar 1. april 2005 / / Slide 10

STAIRS semantikk (enkelt tilfelle) Et sekvensdiagram spesifiserer en eller flere positive og/eller negative tracer Semantikken til et sekvensdiagram er et par (P,N) der P er et sett med positive tracer og N et sett med negative tracer Den samme tracen skal ikke være både positiv og negativ (da er diagrammet inkonsistent) Alle andre tracer (over det aktuelle alfabetet) kalles inconclusive OMS-seminar 1. april 2005 / / Slide 11

Raffinering STAIRS beskriver tre hovedtyper raffinering: - Supplementing: Kategoriserer tidligere inconclusive tracer som positiv eller negativ - Narrowing: Reduserer mengden positive tracer - Detaljering: Introduserer mer detaljerte beskrivelser uten å endre vesentlig på den eksternt observerbare oppførselen OMS-seminar 1. april 2005 / / Slide 12

Et litt større eksempel $!!"# "#!!"# OMS-seminar 1. april 2005 / / Slide 13

Detaljering: dekomposisjon! %! $!"# "#!!"# & OMS-seminar 1. april 2005 / / Slide 14

Supplementing + narrowing! ' * ( ) Har gjort gravy negativ (narrowing), og Beárnaise og ingen saus positiv (supplementing) ( OMS-seminar 1. april 2005 / / Slide 15

Raffinering mer formelt Et sekvensdiagram S2 = (P2,N2) raffinerer et sekvensdiagram S1 = (P1,N1) hvis: - hver negative trace i S1 er negativ i S2 N1 er en delmengde av eller lik N2 - hver positive trace i S1 er positiv eller negativ i S2 P1 er en delmengde av eller lik unionen av P2 og N2 Supplementing og narrowing blir spesialtilfeller av dette Detaljering: Tilsvarer black-box raffinering, dvs ser bare på deler av tracene OMS-seminar 1. april 2005 / / Slide 16

Potensiell vs påbudt oppførsel En kunde må kunne velge mellom både vegetar og kjøtt Kjøtt kan være enten biff eller svin, men en meny trenger ikke å ha begge OMS-seminar 1. april 2005 / / Slide 17

STAIRS semantikk (generelt tilfelle) Semantikken til et sekvensdiagram er et sett med par (interaksjons-obligasjoner) av trace-sett - { (P1,N1), (P2,N2),..., (Pm,Nm) } En korrekt implementasjon må kunne oppfylle hver obligasjon. OMS-seminar 1. april 2005 / / Slide 18

xalt vs alt La S og S' være sekvensdiagram med semantikk { (P,N) } og { (P',N') } S alt S' er definert som { (P union P', N union N') } S xalt S' er definert som { (P,N), (P',N') } OMS-seminar 1. april 2005 / / Slide 19

Potensiell vs påbudt oppførsel En kunde må kunne velge mellom både vegetar og kjøtt + ' ) ( ' ' ) Kjøtt kan være enten biff eller svin, men en meny trenger ikke å ha begge ( OMS-seminar 1. april 2005 / / Slide 20

Raffinering (generelt tilfelle) En interaksjons-obligasjon (P2,N2) er en raffinering av en interaksjons-obligasjon (P1,N1) hvis - N1 er en delmengde av eller lik N2 - P1 er en delmengde av eller lik P2 union N2 Et sekvensdiagram S' med semantikk O' er en raffinering av et sekvensdiagram S med semantikk O hvis det for hver interaksjonsobligasjon o i O finnes en obligasjon o' i O' slik at o' er en raffinering av o. OMS-seminar 1. april 2005 / / Slide 21

Oppsummering Timed STAIRS Potensiell (alt) og påbudt (xalt) oppførsel Glass-box og black-box raffinering Tre hovedtyper utviklingssteg: - Supplementing - Narrowing - Detaljering Tre-event semantikk Tid - Standard interpretasjon - Black-box interpretasjon OMS-seminar 1. april 2005 / / Slide 22