Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Meta.ppt1 SIF 8060 - Modellering av informasjonssystemer 2003 Meta- og språk-modellering John Krogstie Professor II ved IDI, NTNU Seniorforsker, SINTEF.

Liknende presentasjoner


Presentasjon om: "Meta.ppt1 SIF 8060 - Modellering av informasjonssystemer 2003 Meta- og språk-modellering John Krogstie Professor II ved IDI, NTNU Seniorforsker, SINTEF."— Utskrift av presentasjonen:

1 Meta.ppt1 SIF Modellering av informasjonssystemer 2003 Meta- og språk-modellering John Krogstie Professor II ved IDI, NTNU Seniorforsker, SINTEF

2 2 SIF Modellering av informasjonssystemer 2003 Oversikt over ukas tema Motivasjon for metamodellering Oversikt over sentrale konsepter (2.4 fra boka) Uttrykkskraft for konseptuelle modelleringsspråk Metamodellering, ontologi Fra CASE til MetaCASE – MetaEdit “ MetaEdit+ A Fully Configurable Multi-user and Multi- Tool CASE and CAME Environment” Domenespesifikk modellering med MetaEdit “Visual Domain-Specific- Modeling: Benefits and Experiences of Using Metacase Tools”

3 3 SIF Modellering av informasjonssystemer 2003 Motivasjon for metamodellering Intet enkelt perspektiv dekker alle behov Mulige løsninger 1 Bruke flere språk i samme verktøy, begrenset integrasjon (tidl. CASE-verktøy, Visio, …) 2 Utvid og integrer eksisterende språk (UML, PPP) 3 Lag helt nye språk 4 Verktøy for språk- og meta-modellering (Metaedit, Conceptbase) (lar brukeren utvide / endre / redefinere modelleringsspråk etter behov) Metamodell også basis for å sammenligne ulike språk…

4 4 SIF Modellering av informasjonssystemer 2003 Sentrale konsepter Meta-nivåer: ihht til abstraksjonen “klassifisering” Meta-nivåer brukt i modellering Instans: Forelesning 8, SIF 8060, Ulrik Modell: Forelesning gis_i Fag tatt_av Student Metamodell: Entitetsklasse, Relasjonsklasse Meta-meta modell: Node, kant mellom noder Språkmodell vs metamodell Semantisk språkbeskrivelse vs. basis for modell repository

5 5 SIF Modellering av informasjonssystemer 2003 Språk for språk- og meta-modellering Typisk bruk av strukturelt perspektiv ER Andre semantiske datamodelleringsspråk UML (klassediagram) GOPRR (Graph Object Property Role Relationship) Regelspråk ofte supplement Dynamiske modeller også suppl. Tilstandsdiagram/aktivitetsdiagrammer

6 6 SIF Modellering av informasjonssystemer 2003 Nødvendig uttrykkskraft i mod.språk? Bunge-Wand-Weber: Ontologisk rammeverk IFIP 8.1: basert på eksisterende språk Amadeus: Metamodell for språkintegrasjon GDR: Designrepresentasjon m sanntidsfokus Petri-nett semantikk ARIES: div interrelaterte mod.språk, utvikler velger fritt Hull og King: Metamodell for semantiske data- modelleringsspråk

7 7 SIF Modellering av informasjonssystemer 2003 Wand-Weber

8 8 SIF Modellering av informasjonssystemer 2003 IFIP 8.1 metamodel

9 9 SIF Modellering av informasjonssystemer 2003 AMADEUS

10 10 SIF Modellering av informasjonssystemer 2003 GDR

11 11 SIF Modellering av informasjonssystemer 2003 ARIES

12 12 SIF Modellering av informasjonssystemer 2003 Hull og King

13 13 SIF Modellering av informasjonssystemer 2003 Sammenligning

14 14 SIF Modellering av informasjonssystemer 2003 Oppgave: Sett i lys av språkkvalitet som def. i kvalitetsrammeverket, hvilke grunner kan man ha for å lage spesialtilpassende modelleringsspråk?

15 Meta.ppt15 SIF Modellering av informasjonssystemer 2003 MetaEdit+: A Fully Configurable Multi-user and Multi-Tool CASE and CAME environment Steven Kelly, Kalle Lyytinen, Matti Rossi

16 16 SIF Modellering av informasjonssystemer 2003 Contents CASE-verktøy utvikling (CASE - Computer Aided System Engineering) CAME (Computer-Aided Method Engineering) som et alternativ Oversikt over MetaEdit GOPRR som metamodelleringsspråk Metodeverktøy i MetaEdit Oppsummering om MetaEdit

17 17 SIF Modellering av informasjonssystemer 2003 CASE - Computer Aided System Engineering ’Silver Bullet’ 80-tallet Bedre produktivitet og kvalitet Modell-orienterte (SA/SD, tilstandsmodeller, OOA/OOD) (Rigid?) fokus på metode, oppgaveautomatisering Noen verktøy med metamodellarkitektur normalt utilgjengelig for brukerne Brukt mindre enn ventet Dyre verktøy Manglende modenhet Lite fleksible for endret infrastruktur  OS, DB, Middleware, GUI… Bruk mindre lønnsom enn ventet

18 18 SIF Modellering av informasjonssystemer 2003 Svakheter ved CASE Svak / statisk integrasjon av submodeller Dårlig flerbrukerstøtte Dårlig støtte for ulike representasjonsformer Diagrammer, matriser, tabeller, hypertekst Manglende koblinger Manglende støtte for evolusjon MetaCase: ConceptBase, RAMATIC, MetaEdit, METIS... Lacking support for varying interest-groups

19 19 SIF Modellering av informasjonssystemer 2003 MetaEdit + Flerbruker: Repository kan aksesseres av mange samtidig Fler-verktøy: Mange ulike synsvinkler på samme modellobjekt Fler-metode: Metodeintegrasjon, konsistenssjekking Fler-format: Mange representasjonsformer for samme modellobjekt Fler-nivå: Støtter både analyse (IS) og design-metoder

20 20 SIF Modellering av informasjonssystemer 2003 Arkitektur Meta-engine Modellering  Diagram editor  Matrix editor  Table editor Modellgjenfinning (modeller, meta-modeller)  Repository browser  Query editor  Report editor Model-lenking, annotering  Hypertext tool  Debate Browser Metodestyring  Metamodeling tool  Symbol editor Verktøy-styring Repository

21 21 SIF Modellering av informasjonssystemer 2003 OPRR- Metamodeling language O - Object: noder i diagram P - Property: egenskaper for noder, relasjoner eller roller R - Relationships: Kanter (forbindelser) i diagram R - Roles: Hvordan objekter deltar i relasjoner Kardinalitet Identifikatorer Både instans og type-nivå

22 22 SIF Modellering av informasjonssystemer 2003 GOPRR- Utvidelse av OPPR G - Graph (model): aggregering av modellobjekter Gjenbruk av submodeller Kan ha mange representasjonsgrafer for en konseptuell graf Generalisering Polymorfi gjenbruke modell-objekter in mange modeller Regler for integritetskontroll Eksempel: Fig 2, s. 13

23 23 SIF Modellering av informasjonssystemer 2003 Metodestyringsverktøy Fleksibel oppretting, testing og styring av nye modelleringsspråk Ulike fremgangsmåter Fra scratch komponentbasert gjenbruksorientert

24 24 SIF Modellering av informasjonssystemer 2003 Metodebygging Metamodellverktøy (utvikle GOPRR-modeller) Symboleditor Definere regler for konsistenssjekk Metrikker og statistikker for å evaluere språkkvalitet fokus på kompleksitet

25 25 SIF Modellering av informasjonssystemer 2003 Generering Hjelp Metodestøtte Rapporter, kode

26 26 SIF Modellering av informasjonssystemer 2003 Oppsummering Høynivå metodespesifikasjon Åpen arkitektur Samtidig flerbrukeraksess Mangfoldig verktøyssett Fleksibel integrasjon Symmetrisk behandling av modeller og metamodeller Uferdig Repository Samtidighetskontroll Integrasjon med andre verktøy

27 27 SIF Modellering av informasjonssystemer 2003 Diskusjonsoppgave: Hva er ulemper ved å benytte Metamodellerings verktøy (sagt på en annen måte, hva er fordeler ved bruk av mer tradisjonelle modelleringsverktøy som støtter for eksempel standard UML)?

28 Meta.ppt28 SIF Modellering av informasjonssystemer 2003 Visual Domain-Specific Modeling: Benefits and experiences of using metacase tools Steven Kelly, Juha-Pekka Tolvanen Basert på en presentation av Steven Kelly MetaCase Consulting

29 29 SIF Modellering av informasjonssystemer 2003 Contents Introduction What is domain-specific modeling (DSM)? Benefits of DSM DSM case studies How to implement domain-specific methods Demonstration of examples Summary

30 30 SIF Modellering av informasjonssystemer 2003 What is domain-specific modeling Captures domain knowledge (as opposed to code) Uses domain abstractions Applies domain concepts and rules as modeling constructs Allows developers to design products with domain terms Apply familiar terminology Solve the RIGHT problems! Solve problems only ONCE!

31 31 SIF Modellering av informasjonssystemer 2003 Main benefits of DSM Fundamental productivity improvements (3-10 times) Shorter intervals Lower costs Fewer people needed Faster change responsiveness Manage changes in domain instead of code Leverage expertise inside the team Put your expert’s knowledge in a tool “Hide” domain complexity DSM includes domain rules

32 32 SIF Modellering av informasjonssystemer 2003 DSM Case Study: Nokia DSM and related code generators for mobile phone* Order of magnitude productivity gains (10x) "A module that was expected to take 2 weeks... took 1 day from the start of the design to the finished product" Focus on designs rather than code Domain-oriented method allows developers to concentrate on the required functionality Training time was reduced significantly “Earlier it took 6 months for a new worker to become productive. Now it takes 2 weeks” * MetaCase, Nokia case study, 1999

33 33 SIF Modellering av informasjonssystemer 2003 DSM Case Study: Lucent 5ESS Phone Switch* Several DSMs One DSM (called RAD): specifying configuration control units and relationships between them Translation to state machines Translation to C Reported productivity improvements of about 3-10 times From several cases From several DSMs * D. Weiss et al, Software Product-Line Engineering, Addison-Wesley

34 34 SIF Modellering av informasjonssystemer 2003 DSM Case Study: USAF Development of message translation and validation system (MTV)* Declarative domain-specific language + code generators and customization of components Compared DSM against component-based development: DSM is 3 times faster than code components DSM leads to fewer errors: about 50% less DSM gives “superior flexibility in handling a greater range of specifications” than components * Kieburtz et al., A Software Engineering Experiment in Software Component Generation, ICSE

35 35 SIF Modellering av informasjonssystemer 2003 Domain Idea Finished Product Components Domain Model Generate calls to components Easy! Expert (few) Normal (many) Done a few times before! Code generation Domain metamodel Component library How to implement DSM

36 36 SIF Modellering av informasjonssystemer 2003 How to implement DSM, 2 Investment: Define metamodel for the domain About 1-2 man-weeks Build tool support 1 man-day for building a modeling tool Payback: Apply in software production Build metamodel Use DSM DSM and tools Applications Feedback

37 37 SIF Modellering av informasjonssystemer 2003 Concepts Symbols Generators Rules Steps for implementing DSM

38 38 SIF Modellering av informasjonssystemer Design domain concepts Map modeling concepts accurately to domain concepts Concentrate on semantics! Add extensions for software production later Reflect to output (e.g. generated code) Keep in mind the end-user (user-friendliness of the DSM)

39 39 SIF Modellering av informasjonssystemer 2003 Metamodelling concepts of GOPRR Concepts  Graph  Object  Property  Role  Relationship Rules, e.g.  Max 1  Min 1  Unique, etc Links between models Reuse rules

40 40 SIF Modellering av informasjonssystemer 2003 Metametamodel Object Role Relationship Metamodel ButtonAlarm Model Wake InstanceOf System in operation Down button pressed InstanceOf Down InstanceOf Sets InstanceOf GOPRR Domain language  Concepts  Rules  Symbols  Reports Product specifications PropertyGraph Model architecture (By ISO & OMG)

41 41 SIF Modellering av informasjonssystemer Define domain rules Define semantics and rules as they exist in the domain Examples of rule types: Bindings between concepts Layering abstractions Reusing rules etc.

42 42 SIF Modellering av informasjonssystemer Draw symbols (notation) Define symbols illustrating as well as possible the corresponding domain concepts’ natural ”visualization” e.g end-users’ notation, customers’ notation Notations of diagrams, matrixes, tables, forms, text etc.

43 43 SIF Modellering av informasjonssystemer Implement generators The cost of developing the code generation is defrayed over a few users Write report definitions based on domain concepts: Component use Code generation Configuration data Review etc.

44 44 SIF Modellering av informasjonssystemer 2003 Apply in software production Develop applications (domain instances) using the DSM infrastructure Prototype your design; refine and iterate

45 45 SIF Modellering av informasjonssystemer 2003 Example: from coding to modeling

46 46 SIF Modellering av informasjonssystemer 2003 Defining metamodel

47 47 SIF Modellering av informasjonssystemer 2003 Modeling with domain concepts

48 48 SIF Modellering av informasjonssystemer 2003 Summary Domain-specific modeling radically improves productivity (5-10x) DSM leverages expert developers’ abilities to empower other developers in a team MetaCASE tools provide a cost-effective way to create DSM infrastructure Building DSM is great fun for experts (but is also hard) 10x


Laste ned ppt "Meta.ppt1 SIF 8060 - Modellering av informasjonssystemer 2003 Meta- og språk-modellering John Krogstie Professor II ved IDI, NTNU Seniorforsker, SINTEF."

Liknende presentasjoner


Annonser fra Google