Kvalitet av modelleringsspråk

Like dokumenter
Hvordan komme i gang med ArchiMate? Det første modelleringsspråket som gjør TOGAF Praktisk

A Study of Industrial, Component-Based Development, Ericsson

KONTINUASJONSEKSAMEN I FAG SYSTEMERING 2 Torsdag 24. august 2000 Tid: kl

Brukerkrav og use case diagrammer og -tekst 19. januar Agenda. Brukerkrav og use case. Diagrammer Tekst.

Multimedia in Teacher Training (and Education)

Unit Relational Algebra 1 1. Relational Algebra 1. Unit 3.3

EKSAMEN I FAG SYSTEMERING 2 Tirsdag 23. mai 2000 Tid: kl

EXAM IN COURSES TDT4252 MODELLING OF INFORMATION SYSTEMS- ADVANCED COURSE. DT8802 MODELLING OF INFORMATION SYSTEMS (English version)

buildingsmart Norge seminar Gardermoen 2. september 2010 IFD sett i sammenheng med BIM og varedata

Oppgave 1. Modelleringsperspektiver og modelleringsspråk (40%) Alle underoppgavene teller likt

Kvalitet av konseptuelle modeller

Den europeiske byggenæringen blir digital. hva skjer i Europa? Steen Sunesen Oslo,

System integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,

Referansearkitektur use cases. Kjell Sand SINTEF Energi AS NTNU Institutt for elkraftteknikk

Human Factors relevant ved subsea operasjoner?

Meta- og språk-modellering

EXAM IN COURSE TDT4252 MODELING OF INFORMATION SYSTEMS- ADVANCED COURSE

Øystein Haugen, Professor, Computer Science MASTER THESES Professor Øystein Haugen, room D

EXAM TTM4128 SERVICE AND RESOURCE MANAGEMENT EKSAM I TTM4128 TJENESTE- OG RESSURSADMINISTRASJON

Dynamic Programming Longest Common Subsequence. Class 27

Status for IMOs e-navigasjon prosess. John Erik Hagen, Regiondirektør Kystverket

Generalization of age-structured models in theory and practice

Syntax/semantics - I INF 3110/ /29/2005 1

Kurskategori 2: Læring og undervisning i et IKT-miljø. vår

LUB, emnedesign og faglige standarder. Dr Vidar Gynnild

Oppgaveanalyse. Kjært navn har mange betydninger. Utgangspunkt i ergonomi, psykologi og SU Oppgave: målrettet handling på mange nivåer

Information search for the research protocol in IIC/IID

1. Explain the language model, what are the weaknesses and strengths of this model?

Fjerning av offshore-konstruksjoner - Hva kan vi lære (JIP)? Anette Pedersen, Ingar Scherf, Gudfinnur Sigurdsson

Internasjonal standardisering. Erlend Øverby

EN Skriving for kommunikasjon og tenkning

Fellesprosjekt: gruppe 214

OOSU 22.sept Pattern har sin opprinnelse innen arkitektur (byplanlegging / bygninger)

Prototyper og anbudsdokumentasjon. Jan Håvard Skjetne SINTEF / University of Melbourne Janhavard.skjetne@sintef.no

FASMED. Tirsdag 21.april 2015

SRP s 4th Nordic Awards Methodology 2018

Invitation to Tender FSP FLO-IKT /2013/001 MILS OS

Europeiske standarder -- CIM og ENTSO-E CGMES. Svein Harald Olsen, Statnett Fornebu, 11. september 2014

Efficiency, Integrity, Reliability, Surviveability, Usability. Correctness, Maintainability, Verifiability

Erfaringer fra semi-strukturerte intervjuer innenfor Software Engineering. 10. oktober 2005 Siw Elisabeth Hove

Public roadmap for information management, governance and exchange SINTEF

Climate change and adaptation: Linking. stakeholder engagement- a case study from

Endringsdyktige og troverdige systemer

Emneevaluering GEOV272 V17

EKSAMEN I FAG SYSTEMERING 2 LØSNINGSFORSLAG Mandag 18. mai 1998 Tid: kl

ISO 41001:2018 «Den nye læreboka for FM» Pro-FM. Norsk tittel: Fasilitetsstyring (FM) - Ledelsessystemer - Krav og brukerveiledning

Andrew Gendreau, Olga Rosenbaum, Anthony Taylor, Kenneth Wong, Karl Dusen

Software Requirements and Design (SRD) 1 Generelt om dokumenter

Kravspesifikasjon. Dagens forelesning. Mal for kravspesifikasjon. Hvordan finne fram til kravene? Kravspesifikasjon og objektorientert analyse

Tor Solbjørg (diplom. IR, statsautorisert revisor) Revisjonssjef Helse Nord RHF

Forelesning IMT mars 2011

Nasjonalt kvalifikasjonsrammeverk og læringsmål i forskerutdanningen

Uke 5. Magnus Li INF /

Litteraturoversikter i vitenskapelige artikler. Hege Hermansen Førsteamanuensis

EKSAMEN I FAG SIF 8060 Modellering av Informasjonssystemer Mandag 21. mai 2001

Innovasjonsvennlig anskaffelse

Quality in career guidance what, why and how? Some comments on the presentation from Deidre Hughes

Examination paper for TDT4252 and DT8802 Information Systems Modelling Advanced Course

Improving Customer Relationships

Evidence Centered Assessment Design: Using PADI Session I: Design Patterns Introduction to Student Models

Emnedesign for læring: Et systemperspektiv

Slides made by Sommerville adapted by Letizia Jaccheri This lecture will be filmed

koordinering og samhandling i perioperativt arbeid

Hvordan jobber reiselivsgründere med sine etableringer? Sølvi Solvoll Klyngesamling, Bodø

Tom Røise 18. Februar 2009

Little Mountain Housing

Neural Network. Sensors Sorter

Moving Objects. We need to move our objects in 3D space.

En praktisk anvendelse av ITIL rammeverket

Slope-Intercept Formula

INF 5120 Obligatorisk oppgave Nr 2

case forts. Alternativ 1 Alternativer Sammensetning Objekt-interaktor med valg

AMS-case forts. Eksemplifisering av modellbasert. tilnærming til design av brukergrensesnitt

E-Learning Design. Speaker Duy Hai Nguyen, HUE Online Lecture

Modellering av verk Verk og uttrykk i et brukerperspektiv. Litt om modeller/modellering

Examination paper for TDT4252 and DT8802 Enterprise Modeling and Architecture

Ole Isak Eira Masters student Arctic agriculture and environmental management. University of Tromsø Sami University College

Kravspesifikasjon med UML use case modellering. Erik Arisholm

Fakultet for informasjonsteknologi, Institutt for datateknikk og informasjonsvitenskap AVSLUTTENDE EKSAMEN I. TDT42378 Programvaresikkerhet

Gjermund Vidhammer Avdelingsleder Governance, risk & compliance

Forelesning IMT Mars 2011

Nasjonalt fakultetsmøte Bergen april Prosjektleder Heidi Dybesland

Call function of two parameters

Midler til innovativ utdanning

Dean Zollman, Kansas State University Mojgan Matloob-Haghanikar, Winona State University Sytil Murphy, Shepherd University

Eksamensoppgave i SANT1002 Økonomi, politikk og økologi

Kravspesifikasjon. Kravspesifikasjon. Mal for kravspesifikasjon. Hvordan finne fram til kravene? Hva skal systemet gjøre? Hvem og hva påvirker krav?

Prosessmodellering. Strukturert design med dataflytdiagrammer (DFD) Gurholt & Hasle Kapittel 10. Kirsten Ribu Høgskolen i Oslo

Forecast Methodology September LightCounting Market Research Notes

C13 Kokstad. Svar på spørsmål til kvalifikasjonsfasen. Answers to question in the pre-qualification phase For English: See page 4 and forward

NORSI Kappe workshop - introduction

verktøyskrin Grafisk profil ved Norges teknisk-naturvitenskapelige universitet

det offentlige kartgrunnlaget (DOK)

Databases 1. Extended Relational Algebra

Examination paper for TDT4252 and DT8802 Enterprise Modeling and Architecture

Kravspesifikasjon. Erik Arisholm. Simula Research Laboratory. Institutt for Informatikk. INF1050-krav-1

Er du nysgjerrig på om det er mulig...

SFI-Norman presents Lean Product Development (LPD) adapted to Norwegian companies in a model consisting of six main components.

Språk, abstraksjonsmekanismer og perspektiver i konseptuell modellering

Trigonometric Substitution

Transkript:

Kvalitet av modelleringsspråk Oversikt over forelesningen Språkkvalitet som del av kvalitetsrammeverket Evaluation of Object-oriented Modelling languages: A comparison between OML and UML Prasse - Brukt i forhold til objektorienterte modelleringsspråk Oppsummering John Krogstie 1. Amanuensis II ved IDI, NTNU Seniorforsker, SINTEF Tele og Data Hvorfor fokus på språkkvalitet? Modelleringsspråk er et middel for å kunne uttrykke meninger i modeller. De modelleringsspråk man bruker skal hjelpe en i å trekke frem de viktigste aspektene Modelleringspråkene man bruker former over tid ens oppfatning av virkeligheten Man kan lage gode modeller i et dårlig språk Man kan lage dårlige modeller i et godt språk Man vil alltid kunne finne mangler ved ethvert språk/verktøy Språkkvalitet i forhold til kvalitetsrammeverket Modeling domain D Participant knowledge K Knowledge externalizability appropriateness / Participant language knowledge appropriateness Model externalization M Domain appropriateness Technical actor interpretation T Social actor interpretation I Technical actor interpretation appropriateness Comprehensibility appropriateness Language extension L Språkkvalitet Passer språket til domenet? Passer språket til deltagernes kunnskap (om modelleringsspråk) eller potensiale til å lære? Passer språket til å uttrykke deltagernes kunnskap? Bedring av deltagernes tolkning Bedring av teknisk aktørs tolkning Har delt i kriteria for underliggende (konseptuell) basis på språket (meta-modell), og den eksterne representasjon gitt til språket (notasjon) Mange av kriteriene er basert på resultater innen lingvistikk og kognitiv psykologi Passende til domenet D\L = Ø Basis Må kunne uttrykke alt innen domenet Basert på ontologiske betraktninger eller ha basis i vanlig modelleringspraksis innen domenet Bør ikke kunne uttrykke aspekter som ikke tilhører domenet Bør kunne uttrykke både presise og mer vage aspekter Ekstern representasjon: Må kunne uttrykke alt i basis på en unik måte Støtter oppnåelse av fysisk kvalitet (og gjennom det, potensielt oppnåelse av semantisk kvalitet) 1

Uttrykkskraft i språk basert på ontologiske betraktninger Bunge-Wand-Weber som eksempel Representasjonsmodell som basis for å evaluere IS analyse og design-språk i forhold til dets evne til å lage modeller som er gode representasjoner av verden Basert på Mario Bunges ontologi Velutviklet Formalisert Adresserer ikke om man modellerer en objektiv virkelighet eller en sosialt konstruert virkelighet Ontologiske konsepter i representasjonsmodeller Representasjonsmodell som basis for språkkvalitet Ontologisk kompletthet (vs. domain appropriateness) Ontologisk klarhet Construct overload (Comprehensibility appropriateness) Construct redundancy (Comprehensibility appropriateness) Construct excess (vs. domain appropriateness) Ontologisk kompletthet Ontologiske konsepter Construct excess Uttrykkskraft basert på hva som er funnet nyttig innen ulike domener som språket skal brukes i Strukturelt orientert Funksjonelt orientert Oppførselsorientert Regelorientert Objektorientert Kommunikasjonsorientert Aktør/rolle-orientert Ontologiske konsepter Designkonsepter Designkonsepter 2

Passende til deltagernes kunnskap Deltagerne kan bruke alle deler av språket effektivt Basis: Bør generelt overensstemme med hvordan folk oppfatter virkeligheten. Ingen fasit på dette. Kan bedømme ut i fra generelle erfaring med læring av modelleringsspråk Avklare deltagernes erfaring med modelleringsspråk, (og eventuelt tilpasse språkene til dette) Ekstern representasjon Intuitiv Eksempel på intuitive symboler Venn-diagrammer i sett-teori Amøbe -former for upresise konsepter Støtter oppnåelse av fysisk kvalitet for eksternalisering, samt pragmatisk kvalitet for forståelse Passende til å uttrykke deltagernes kunnskap K\L = Ø Kan man fange arbeid inn i en modell, eller blir det bare et forsøk i ettertid på å rasjonalisere det som er gjort? Problemstilling knyttet til viktigheten av taus kunnskap Behov for å kunne modellere vag kunnskap Støtter oppnåelse av fysisk kvalitet Bedring av deltagernes tolkning L\I = Ø Støtter oppnåelse av empirisk og gjennom det pragmatisk kvalitet Bedring av deltagernes tolkning fortsetter. Basis Språket er veldefinert (og konsistent definert) Lett å skille deler av språket fra hverandre Begrenset antall byggesteiner -> generelle konsepter Mulig å relatere ulike konsepter -> ny semantikk via sammensetning Hierarkisk organisering Uniform bruk av byggesteiner Fleksibilitet i detaljeringsnivå Expressive economy:! Mye brukte og viktige setninger bør kunne uttrykkes konsist Construct overload Ontologiske konsepter Designkonsepter 3

Construct redundancy Ontologiske konsepter Designkonsepter Bedring av deltagernes tolkning fortsetter... Ekstern representasjon Lett å skille symboler fra hverandre Lett å se hvilket symbol enhver strek/bokstav er del av Uniform bruk av symboler Enkelhet i symboler Bruk av fremheving for det som er viktig Modellsymbolers størrelse, soliditet og farge, ulikheter, bevegelse, antall tilkoblede kanter Støtte for å lage estetiske modeller Mulighet for utelatelse av symboler Bruk av spesielle symboler for viktige konsepter Eksempler Feilaktig fremheving: ERT Tomme symboler: ERT og ER Begrensninger i det å lage estetiske modeller: PPM og kryssende flyt Diagrammer, tabeller, matriser og tekst i forhold til expressive economy Bedring av teknisk aktørs tolkning Språket er egnet for automatisert resonnering og eksekvering Formell syntaks Formell semantikk (operasjonell og/eller matematisk) Også viktig for å sikre at deltagerne tolker modellene likt Effektivitet i bruk av formell syntaks eller semantikk (analyserbarhet/eksekverbarhet) Ulike aspekter støtter oppnåelse av syntaktisk, semantisk og pragmatisk kvalitet Tradeoff mellom ulike kriterier De ulike kriteriene påvirker hverandre, og arbeider tildels mot hverandre. Intet perfekt språk er mulig, men svakheter kan addresseres ved metode og verktøystøtte. Intuitivitet vs. antall symboler: Kinesisk vs. norsk Intuitivitet vs. enkelhet i symboler: ERAE og representasjon av klasse/instans Uttrykkskraft vs. enkelthet i symboler: PPM vs. DFD Expressive economy vs. antall symboler: Bidirectional links in DFD Eksempel på bruk av rammeverket i praksis- Østbø og Arnesen Henholdsvis behov for å representere generiske systemer i Statoil og for virksomhetsmodellering i Statoil Er UML egnet, og hvilke UML-verktøy er i så tilfelle best for formålet? Bedømmelse av språkkvalitet for UML i dette caset $ Beskrive modelleringsmål/domene, brukere av modellene og behov for verktøystøtte $ Findelt oppdeling av de ulike kvalitetsområdene, alle områdenes viktighet prioritert i forhold til målene (1-10). Baserer videre arbeid på de områdene med prioritet høyere enn 5 $ Evaluering av UML opp mot disse områdene igjen, utregning av gjennomsnittsverdier som basis for endelig konklusjon 4 "

Problem Statement How to evaluate and compare modeling languages (for OOA/OOD)? Evaluation of Object-oriented Modeling languages: A comparison between OML and UML Prasse Terminology and structure for evaluating modeling languages needed Outline of Presentation Structure of modeling languages What to investigate? Language Description Application Criteria for evaluation User-relevant criteria Model-relevant criteria Economic criteria Case study: Comparing OML and UML Structure of Modeling Languages Abstract syntax and semantics Concepts, relations, interpretations Modeling language Concrete syntax Graphical and textual notations How does this structure compare to our quality framework? Example: UML Concepts Framework for Language Evaluations Abstract syntax: generalization object * * aggregation * * attribute method Semantics: Mapping to object in programming language, etc. Concrete syntax: object attributes methods Subject of investigation Description Language Application General criteria of investigation User-relevant criteria Model-relevant criteria Economic criteria 5 %

1a. Description of language Definition formal/informal language specification grammar and metamodel Documentation user documentation (notation guide) Formality -> unambiguity Informality -> User understanding 1b. Modeling language Abstract syntax and semantics object-oriented, process-oriented and concurrent concepts and concepts for dynamic behavior and modularization integration of concepts standardized semantic definitions Concrete syntax combination of textual and graphical notation diagrams support understanding and communication See e.g. Rumbaugh s hints on notational clarity (see article) 1c. Application of language Application purpose perspective User perspective should support all phases and all activities of a development project expressive enough to describe domain One complex, stand-alone language or simple languages with interfaces to other ones? Meta-perspective Activities how to extend, adapt and specify language concepts? how to link language to artifacts of other project activities Analysis and design, implementation, verification and validation 2a. User-relevant evaluation criteria (subjective) Usability Clarity Understandability Adequacy Verification Power How are these related to language quality in the quality framework? 2b. Model-relevant evaluation criteria (more objective) 2c. Economic evaluation criteria Unambiguity Consistency Formalization Integration How are these related to language quality in the quality framework? Reusability Extensibility How are these related to language quality in the quality framework? 6 &

Comparing OML and UML Structure of OPEN OPEN Modeling Language (OML) OML part of OPEN OPEN tried to develop a homogeneous method for object-oriented software Based on an examination of existing object-oriented languages Unified Modeling Language (UML) Standardization effort by Booch, Rumbaugh and Jacobsen General-purpose language for all phases and all domains OML metamodel Is modeled using OPEN modeling language + OPEN model Object-Oriented Environment and Notation + OPEN process Common object modeling notation (COMN) Is documented using OPEN metrics Structure of UML Abstract syntax and semantics UML Concrete syntax OML vs. UML: Size of Language Same domain, comparable expressive power Large number of diagrams, no fundamental differences UML: stronger focus on structure and constraints (OCL) OML: stronger focus on roles Meta model OCL Notation Is modeled using UML model Is documented using OML vs. UML: Abstract syntax/semantics OML vs. UML: Concrete Syntax (1) Type/instance dichotomy applied by both UML: Fundamental mechanism to objects OML: Several levels: class/object, cluster class/cluster instance, scenario class/scenario object What about classes of systems, functions and relationships? Not in UML Not in OML OML Semantic nets Context diagrams Layer diagrams Configuration diagrams Cluster diagrams Inheritance diagrams Deployment diagrams Scenario Class diagrams Mechanism diagrams Task script diagrams Use case diagrams Interaction diagrams Collaboration diagrams Sequence diagrams State Transition diagrams State diagrams Static Structure diagrams Class diagrams Object diagrams Behavior diagrams Use case diagrams Interaction diagrams Sequence diagrams Collaboration diagrams State diagrams Activity diagrams Implementation diagrams Component diagrams Deployment diagrams UML 7 '

OML vs. UML: Concrete Syntax (2) Diagrams: Both have several, partly overlapping diagrams Some diagrams are not object-oriented Problems: redundancy, application not intuitive UML notes ambiguous Type/instance symbols diagram elements should not resemble each other related language concepts should be represented in similar ways Should types and instances have the same representation? Conclusions Proposes a framework for evaluation of modeling languages Scope of evaluation Criteria for evaluation Comparison of OML and UML No fundamental differences Minor comments No conclusive evaluation Summary and overall comparison of approaches Language quality as a mean for model quality Both abstract and concrete description Prasse focus also on the documentation of the language (which might be looked upon as a model in the quality framework) Different domains regarded in the different articles All acknowledge that the demands are partly contradictory Difficult to find generally applicable metrics Kvalitet av modelleringsspråk John Krogstie 1. Amanuensis II ved IDI, NTNU Seniorforsker, SINTEF Tele og Data 8 (