varna 2014 national research university higher school of economics perm branch, russia an approach...

74
Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander Sukhov Anna Lubiagina Lyudmila Lyadova

Upload: phoebe-powers

Post on 22-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Varna 2014

National Research University Higher School of EconomicsPerm Branch, Russia

A n A p p r o a c h t o M o d e l l i n g with MetaLanguage DSM-platform

 

Alexander Sukhov Anna Lubiagina

Lyudmila Lyadova

Page 2: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Contents

2Varna 2014

1. Modelling tasks, languages and tools:

• Models design and analysis.• Domain specific modelling, language toolkits and meta-modelling.• DSM-platform as a basis of systems integration.

2. MetaLanguage System:

• System Architecture and Functioning scheme.• Meta-models (DSLs – Domain Specific Modelling Languages) Development.• Models Design.• Models Transformation.

3. Examples of Modeling and Models Transformations:

• Simulation of Queuing System.• Complex Informational and Analytical System Design.

Page 3: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Models design and analysis

3Varna 2014

3

Information and analytical systems are created with technologies, based on the models (MDA, MDE, MBD, MCE,…).

Model is a formal description of any system, created with modelling tools, based on use of special modelling languages.

Modelling is• process of model creation by system analysts, developersor• model analysis by business analysts, experts in domains.

These tasks request different types of models and different tools to design formal descriptions and to analyze systems with use of created abstract models.

Reusing created models is the way to reduce complexity of system development and analysis.

Page 4: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Models design and analysis

4Varna 2014

4

Model-centric development of information systems is based on the end-to-end use of formal models in the system life-cycle.

Various visual and textual languages are widely used at the information systems development to create models, describing system in design from different points of view and on different abstraction levels.

One of the goals of system design is to model a system in such a way that it is easily understandable, compassable and manipulable.

For adjustment and assembling of various system descriptions it is necessary to construct the whole hierarchy of models: model, metamodel, meta-metamodel, etc., where

• model is an abstract description of the system characteristics that are important from the point of view of the modeling purpose;

• metamodel is a language, used for the model development; • meta-metamodel (meta-language) is a language for the meta-model

(language) description.

Page 5: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

5Varna 2014

5

Vertical transformation

s

Data

Meta-metamodel 1

Metamodel 1 Metamodel 2 Metamodel L...

Meta-metamodel K

Model 1 Model 2 Model M

is_instance is_instance is_instance

is_instance is_instance is_instance

...

Data 1 Data 2 Data N

is_instance is_instance is_instance

...

Domain model

Metamodel

Meta-metamodel

Data 3

is_instance

...

Horizontaltransformation

s

Page 6: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

6Varna 2014

6

RepositoryRepositoryXML-file

Имеет сайт

Название издательства

Издательство

Год издания

Адрес

URL

Номер паспорта

Имя автора

Web-сайт

Книга Автор

Человек

Издать

Написана

ММ

1

М

М М

Является

-Название

Издательство

-Год издания

Книга

-URL

Web-сайт

Автор

-ФИО-Номер паспорта-Адрес

Человек

* *

* *

1

*

Horizontal transformation to export model

Page 7: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

7Varna 2014

7

There are implementations of model-driven approach with use the general purpose languages for modeling of systems (UML-based approach).

So, a modeling language UML with the standard Meta-Object Facility (MOF) forms a basis of the MDA (Model Driven Architecture).

But the general-purpose modeling languages have some restrictions:

• UML diagrams are complicated for understanding not only for experts in domain of system, but in some cases even for professional developers, specialists in information technologies (IT);

• UML diagrams cannot adequately represent domain concepts, since modeling is being done in terms “class”, “association”, “aggregation”, etc., rather than in domain terms.

Page 8: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

8Varna 2014

8

Issues:• Domain specifics is not reflected in the general-purpose languages:

languages operate not with domain terms, but with low-level constructions of development tool.

• Invariability of modeling languages: languages do not allow to change their description.

• Problem of created models transformation: there is not possibility to convert model from one notation to another.

• Complexity of created systems modification: modification of system is possible only by professional developers, programmer with use of development tools and source code.

Page 9: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

9Varna 2014

9

The experts from different areas (system developers, domain experts, analysts) are attracted to models creation and research.

In these conditions the tools of domain-specific modeling (DSM) should be used.

Unlike general purpose modeling languages domain-specific modeling languages (DSMLs, DSLs) are

• more expressive,

• simple in applying and

• easy to understand for different categories of users as they operate with domain terms.

To support the process of development and maintenance of DSMLs the special type of software – language workbench (DSM platform) – is used.

Page 10: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

10Varna 2014

10

The domain-specific language (DSL) is the language, designed for use in a particular domain. The language used to create other languages is called the metalanguage. DSLs are easy to apply and understand for users as they operate with domain terms.

The language workbench or DSM-platform is the instrumental software intended to support development and maintenance of DSLs:

• MetaEdit+;

• Microsoft DSL Tools;

• Eclipse Graphical Modeling Framework;

• Meta Programming System;

• QReal;

• State Machine Designer;

• UFO-toolkit…

Page 11: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

11Varna 2014

11

Meta Programming System

Microsoft DSL Tools

Eclipse GMF

MetaEdit+

Page 12: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

12Varna 2014

12

Requirements to DSM-platform:

• possibility of modeling languages constructing for a wide range of domains;• possibility of multi-level modeling, it allows to modify the metalanguage

description, to extend it with new constructions, thus approaching the metalanguage to the specificity of domain;

• possibility of modification of modeling languages description without regeneration of source code of DSLs editor;

• automatic support in a consistent state of the metamodels and models description at modification of a metalanguage or a metamodel;

• uniformity of tools of representation, description and usage as models and metamodels: creation of models at different levels of hierarchy and operation with them should be carried out uniformly, using the same tools;

• availability of tools for models transformations that allow to convert models as between different levels of the hierarchy, and within the same level (between various modeling languages);

• usability for various categories of users: professional developers (programmers, system analysts, designers, etc.), domain experts, end-users.

Page 13: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

13Varna 2014

13

Results of comparing DSM-platform:Requirements MetaEdit+ DSL Tools Eclipse GMF

Modeling wide range of domains + + +

Abstract syntax description tools GOPRR MOF Ecore

Metalanguage changeability + – –

Multi-level modeling + – –

Metamodel modification without editor code regeneration

+ – –

Generating artefactsProgram code, documentation

Program code Program code

DSL turning tools – + +

Horizontal transformations – – With plug-ins

No excess functionality + – –

Page 14: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:Domain specific modelling, language toolkits and meta-modelling

14Varna 2014

14

Results of comparing DSM-platform:Requirements QReal Visio Автоматный метод

построения DSL

Modeling wide range of domains + + +

Abstract syntax description tools MOF Class Diagrams (UML)

Class Diagrams (UML)

Metalanguage changeability – – –

Multi-level modeling – – –

Metamodel modification without editor code regeneration

– – –

Generating artefacts Program codeProgram code, documentation

Program code

DSL turning tools + – –

Horizontal transformations – – –

No excess functionality + – +

Page 15: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:DSM-platform as a basis of systems integration

15Varna 2014

15

MetaLanguage system

CASE-system

Information system

Analytical system

System analysts

Business analysts

End-user

Developer

Page 16: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:DSM-platform as a basis of systems integration

16Varna 2014

16

MetaLanguage system

CASE-system

Information system

Analytical system

System analysts

Business analysts

End-user

Developer

System description languages

Page 17: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:DSM-platform as a basis of systems integration

17Varna 2014

17

MetaLanguage system

CASE-system

Information system

Analytical system

System analysts

Business analysts

End-user

Developer

System description languages

Simulation languages

Page 18: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:DSM-platform as a basis of systems integration

18Varna 2014

18

MetaLanguage system

CASE-system

Information system

Analytical system

System analysts

Business analysts

End-user

Developer

System description languages

Simulation languages

Program code

Page 19: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

1. Modelling tasks, languages and tools:DSM-platform as a basis of systems integration

19Varna 2014

19

MetaLanguage system

CASE-system

Information system

Analytical system

System analysts

Business analysts

End-user

Developer

System description languages

Simulation languages

Program code

Logs

Page 20: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:System Architecture and Functioning Scheme

20Varna 2014

20

Entity creation/

modification

Metamodel creation/modificationSpecifying the relationships

between entities

Set constraints imposed on metamodel

Entities instances creation/modification

Model creation/modification

Relationships instances creation/modification

Checking of constraints imposed on entities

Validation

Checking of constraints imposed on relationships

Transformation

Description of model transformation

Execution of model transformation

Page 21: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:System Architecture and Functioning Scheme

21Varna 2014

21

Main developer

Main developer

Main developer

Main developer

Assistant

Development of DSL

Modification of DSL’s description

Models creation and transformation

Assistant

IT-specialist

Domain expert

End-user

Page 22: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:System Architecture and Functioning Scheme

22Varna 2014

22

The basic constructions of this metalanguage are: Entities. Relations

• association;• aggregation;• inheritance.

Constraints• imposed on the entities;• imposed on the relations.

Actor Use Case

this.Actors.Count <= 10

Page 23: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:Meta-models (DSLs) Development – Entity creation

23Varna 2014

23

Entity creation form

Graphical editor

Metalanguage elements

Concrete syntax

definition Entity Attributes

Entity restrictions

Page 24: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:Meta-models (DSLs) Development – Relation creation

24Varna 2014

24

Relation creation

form

Metalanguage elements

Concrete syntax

definition

Relation attributes

Relation restrictions

Page 25: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:Models Design and Validation

25Varna 2014

25

Error messages

Visual model

Page 26: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:Models Design

26Varna 2014

26

Created model can be used as

metamodel

Page 27: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:Models Transformation – Graph Grammar Definition

27Varna 2014

27

Left part definition

List of rules

ERD metamodel

Page 28: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

2. MetaLanguage System:Models Transformation – Graph Grammar Definition

28Varna 2014

28

Name of rule

Right part of the rule

Attributes transformation rules

Page 29: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System

29Varna 2014

29

General purpose modeling language(GPSS)

DSL

GPSS DSL

DeveloperBusiness analysts

Page 30: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Metamodel

30Varna 2014

30

Page 31: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Metamodel

31Varna 2014

31

Generator is the entity, which is responsible for generation of flow of requests

(transactions), expecting service in system. Intervals between requests arrivals are the random variables with a certain distribution

Page 32: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Metamodel

32Varna 2014

32

Queue is the entity, representing set of requests, which expects

service

Page 33: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Metamodel

33Varna 2014

33

Servicing device is the entity, which is responsible for service

of requests

Page 34: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Metamodel

34Varna 2014

34

Separator is the entity, allowing to create multiple copies of a

request, each of which will claim of service

Page 35: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Metamodel

35Varna 2014

35

Collector is the entity, allowing to integrate multiple flows of requests into a single flow

Page 36: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Metamodel

36Varna 2014

36

Terminator is the entity, deleting transactions from

model

Page 37: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Metamodel

37Varna 2014

37

Distribution is the entity, which is parent for the entities

“Normal distribution”, “Uniform distribution”, “Student’s

distribution”, etc.

Page 38: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Model

38Varna 2014

38

Page 39: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Model Transformation

39Varna 2014

39

GENERATE (NORMAL(1, <<Normal distribution.Expected value>>, <<Normal distribution.Variance>>)), , <<Generator.Initial delay>>, <<Generator.Amount of transactions>>, <<Generator.Priority>>

An example of “Model-Text” transformation rule:

Page 40: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Model Transformation

40Varna 2014

40

An example of “Model-Text” transformation rule:

QUEUE <<Queue.Name>>SEIZE <<Servicing device.Name>>DEPART <<Queue.Name>>ADVANCE

(NORMAL(1, <<Normal distribution.Expected value>>, <<Normal distribution.Variance>>))

RELEASE <<Servicing device.Name>>

Page 41: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – Model Transformation

41Varna 2014

41

After applying of the described transformation to the model the MetaLanguage system has generated the following code in GPSS language:

GENERATE (UNIFORM(1, 2, 8)),,20,100,1QUEUE QQ1SEIZE SD1DEPART QQ1ADVANCE (NORMAL(1, 3, 1))RELEASE SD1QUEUE QQ2SEIZE SD2DEPART QQ2ADVANCE (NORMAL(1, 3, 1))RELEASE SD2SPLIT 1, QQ4QUEUE QQ3SEIZE SD3DEPART QQ3ADVANCE (NORMAL(1, 3, 1))RELEASE SD3QUEUE QQ4SEIZE SD4DEPART QQ4ADVANCE (UNIFORM(1, 2, 8))RELEASE SD4ASSEMBLE 2TERMINATE 1

Page 42: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – New level

42Varna 2014

42

Metamodel of DSL – the second level:

Page 43: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

3. Examples of Modeling and Models Transformations: Simulation of Queuing System – New level

43Varna 2014

43

Model in new DSL:

Page 44: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

The task of monitoring of enterprises by the Central National Bank is based on the heterogeneous information collection from different sources

443. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

44Varna 2014

Page 45: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Data analysis in these conditions is the difficult task…

3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design

45Varna 2014

45

Page 46: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

463. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

46Varna 2014

The Complex Informational and Analytical System is developed by IT-department of the Central National Bank to solve this problem…

Page 47: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

СКИФ-Информ СКИФ-Аналитик АС ПФПАСЦВ НСИ КПФ НовостиАС БОНП

ЭПИ БИР

КИАС АДНП

Heterogeneous subsystems of CIAS

“Pilot” subsystems

473. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

CIAS – Complex Informational and Analytical System

47Varna 2014

Page 48: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Data from enterprises

General Purpose Modelling Language

Domain Specific Modelling Languages

Domain Models

Registration documents, primary information on enterprises, analytical

materials, reports (statistical, bookkeeper's, etc.) and so on…

System analysts need an organizational and technological infrastructure for the business processes design and modelling:

Models design on the bases of

collected data

483. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

48Varna 2014

?

Page 49: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Data from enterprises

General Purpose Modelling Language

Domain Specific Modelling Languages

Domain Models

The basis (universal language) for all DSLs design

System analysts need an organizational and technological infrastructure for the business processes design and modelling:

493. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

49Varna 2014

Page 50: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Data from enterprises

General Purpose Modelling Language

Domain Specific Modelling Languages

Domain Models

The basis (universal language) for all DSLs design

System analysts need an organizational and technological infrastructure for the business processes design and modelling:

503. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

50Varna 2014

Domain specific languages for the subsystems modelling

Page 51: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Data from enterprises

General Purpose Modelling Language

Domain Specific Modelling Languages

Domain Models

The basis (universal language) for all DSLs design

System analysts need an organizational and technological infrastructure for the business processes design and modelling:

513. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

51Varna 2014

Domain specific languages for the subsystems modelling

Visual and textual models of business processes in different domains

Page 52: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Data from enterprises

General Purpose Modelling Language

Domain Specific Modelling Languages

Domain Models

System analysts need an organizational and technological infrastructure for the business processes design and modelling:

523. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

52Varna 2014

Due to the DSM platform• modelling does not depend on

implementation tools;• developers and domain experts

“speak” in the same language

Page 53: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

IDEF0 model

Interaction Diagrams

Use-case diagrams

GPL meta-model

Domain specific meta-models

Visual domain models

AS-TO-BE in DSLAS-IS in GPL

53Varna 2014

533. Examples of Modeling and Models Transformations:

Complex Informational and Analytical System Design

Models, created with GPL (General Purpose Language) and DSL (Domain Specific Language), are shown below:

Page 54: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

54Varna 2014

Сотрудник службы мониторинга уровня ДБН (СМП ДБН)

Сотрудник службы мониторинга уровня ТУ (СМП ТУ)

Указание запроса для получения результата расчета определенной информации

Список информации для расчета - в Описании автоматизируемых функций, п.п. 2.2.6

Формирование аналитических материалов

Задание произвольных параметров и формат выгрузки отчетных форм

Ввод параметров вручную в специальные поля

«include»

Выбор параметров из списков

«include» Выбор параметров при помощи переключателей

«include»

Просмотр информации по предприятиям всех регионов

Просмотр информации по предприятиям своих регионов

Ввод данных в ручном режиме

Согласование и обмен информацией между ДБН и ТУ БР Обработка информации

«include»

Передача информации пользователям ТУ БР для рассмотрения и согласования

«include»

Корректировка информации, поступившей от ДБН БР

«include»

Передача информации пользователям ДБН БР на утверждени

«include» Направить информацию пользователям ТУ БР на уточнение (в случае не утверждения пользователями ДБН БР

«extend»

Утверждениеинформации

«include»

В заданном формате согласно очередности

«include»

«include»

Интерактивное в заданном формате

«include»

«include»

Просмотр информации

«include»

Список доступной информации - в Описании автоматизируемых функций, п.п. 2.2.11

Инициация формирования отчета«include»

Запрос на формирование файлов с аналитическими материалами

Интерактивное по сформированным пользователем шаблонам«include»

«include»

Формирование вида шаблона через приложение

«include»

Задание оформления вида шаблона

«include»

По стандартизированным шаблонам

«include»

Указание признака готовности информации к экспорту в систему АФСБ

Список информации для ввода в ручном режиме - в Описании автоматизируемых функций, п.п. 2.2.5

Создание заявок на корректировку утвержденной в ДБН информации

Запуск регламентного расчета процедур обработки результатов мониторинга НП

Сотрудник ЦИТ Банка России

Выполнение действий по указанию ДБН

Изменение параметров генерации аналитических материалов

Путём настройки в ручном режиме в портлетном приложении

Мониторинг выполнения транзакций по взаимодействию со смежными системами

Утверждение/отклонение заявок на корректировку утвержденной ранее информации

«include»

Сохранение данных в оперативной памяти

Отсутствие новыхданных для

выгрузки

Предоставление данных банковской

отчетности из Единой БД РИБО

Регистр «Оценка

предприятий» (БД Регистр)

Загрузка данных банковской

отчетности из Единой БД РИБО

Запуск утилиты по протоколу OLE DB

Обращение утилиты с

запросами к БД СКИФ-

Информ для выгрузки анкетных данных

Обращение утилиты с

запросами к БД СКИФ-

Информ для выгрузки РИ

предприятий-участников

мониторинга

Проверка поступления новой информации

Проверка удаления загруженных ранее

анкет

Загрузка новых анкет

Предоставление данных из БД Регистр

Выборка новых записей по полю

модификации

Загрузка данных банковской

отчетности из Единой БД РИБО

Обращение утилиты с

запросами к БД СКИФ-

Информ для выгрузки РИ

НП

Обращение утилиты с

запросами к БД СКИФ-

Информ для выгрузки

бухгалтерской отчетности

Наличие новых данных для выгрузки

Предоставление данных банковской

отчетности

Загрузка данных банковской отчетностиЕдиная БД

РИБО

54 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-Is Model

Page 55: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Formalization of requirements,

applications structure and behavior

corresponding to domain

Domain Specific Language

Systematical using of models as the main

artefacts at the whole life cycle of

information systems

Model Driven Engineering

Systems integration on the level of business

logics

Functional Integration

55Varna 2014

55 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design with DSL

Page 56: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

ИС

Подсистема 2Подсистема 1

Ввести обеспечивающую

информацию

Справочники ОКОНХ, ОКВЭД,

ОКАТО, Книги ГРКО

Сотрудник службы

эксплуатации

Сотрудник СМП уровня

ДБН

Анализировать результаты

деятельности предприятий

Коэффициенты дискриминантной функции и границ

распределения

Сотрудник СМП уровня ТУ

Ввести, проверить и обработать

информацию о предприятиях

Подсистемы NОператоры Off-

line

Представить результаты

анализа

М

1

1

М

11 М

1

1

М М М

М

М

М

М

11

М

М

1

56Varna 2014

56 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – Simplified Conceptual Model

Page 57: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

57Varna 2014

57 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: simplified GPL meta-model in UML

Подсистема анализа данных о НП

Комплексная ИС

Подсистема сбора и хранения данных о НП

М

1

Интегрирует

Входные данные

Смежная система

Информация ИС

Результаты обработки

Обрабатывает

Оформляет

1

М

Пользователь

Вводит данные

М

М

Передает результаты

Получает результаты

ММ 1

11

М М

Поступают

Преобразует в формат ИС

Преобразуются

М

М М

Page 58: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

58Varna 2014

58 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: simplified DSL meta-model in UML

Сотрудник службы эксплуатации

is_a

Сотрудник СМП уровня ДБН

is_aСотрудник СМП уровня ТУ

is_aОператоры Off-line is_a

СКИФ-Аналитик

КИАС АДНП

СКИФ-Информ

М

1

Интегрирует

Поступающие данные

Смежная система

Информация ИС

Результаты обработки

Получает Обрабатывает Оформляет

1

М М

Пользователь

Вводит данные

Вводит данные1

М

М

М

Передает результаты

Получает результаты

М

М

М

М

1

Коэффициенты дискриминантной функции и границ

распределения

is_a

Справочники ОКОНХ, ОКВЭД,

ОКАТО, Книги ГРКО

is_a

Ввестиобеспечивающую

информацию 11

1

Ввестиобепечивающую

информацию

1

М

Перечень предприятий-участников

мониторинга

Регистрационная

информация НП

Анкетные данные НП

Данные бух. балансов и отчета

о форм банковской отчетности

is_a is_a is_a is_a

Оценка надежности

предприятий

Агрегированная информация

(квартили, средние значения)

Сведения о процедурах банкротства

is_a is_a is_a

11

М

Page 59: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

59Varna 2014

59 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: simplified GPL meta-model in MetaLanguage

Page 60: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

60Varna 2014

60 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: requisition execution model in GPL

Page 61: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

61Varna 2014

61 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: simplified DSL meta-model in MetaLanguage

Page 62: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

62Varna 2014

62 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: requisition execution model in DSL

Page 63: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

It is necessary to transform created models to transfer them to external systems (to developers for implementation of target system (for data and code generation)):

Step 1: Target modeling language meta-model design .

Step 2: Transformation rules definition.

63Varna 2014

63 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

Page 64: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

It is necessary to transform created models to transfer them to external systems (to developers for implementation of target system (for data and code generation)):

Step 1: Target modeling language meta-model design .

Step 2: Transformation rules definition.

64Varna 2014

64 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

Activity Diagram meta-model

Page 65: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

It is necessary to transform created models to transfer them to external systems (to developers for implementation of target system (for data and code generation)):

Step 1: Target modeling language meta-model design.

Step 2: Transformation rules definition (some examples):

65Varna 2014

65 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

Page 66: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

The result of transformation of the requisition execution model from DSL to UML:

66 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

66Varna 2014

Page 67: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

The result of transformation of the requisition execution model from DSL to UML:

67 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

67Varna 2014

Page 68: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

The result of transformation of the requisition execution model from DSL to UML:

68 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

68Varna 2014

Page 69: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

It is necessary to transform created models to transfer them to external systems (to developers for implementation of target system (for data and code generation)):

Step 1: Target modeling language meta-model design:

Step 2: Transformation rules definition (some examples)

69Varna 2014

69 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

ER-Diagram meta-model

Page 70: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

70Varna 2014

70 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

С.Связь.Кратность = 1:М ANDС.Связь.ИмеетАтрибут = False

С.Связь.Кратность = M:1 ANDС.Связь.ИмеетАтрибут = False

С.Связь.Кратность = M:1 ORC.Связь.Кратность = 1:1 ORС.Связь.ИмеетАтрибут = True

Restrictions on the pattern occurrences:

• Entity• Relation 1М

• Relation М1

• Relation ММ

• Inheritance• Attribute

ER-Diagram meta-model

Page 71: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

The result of transformation of the requisition execution model to ERD notation:

71 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

71Varna 2014

Page 72: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

The result of transformation of the requisition execution model to ERD notation:

72 3. Examples of Modeling and Models Transformations: Complex Informational and Analytical System Design – As-To-Be: model transformation

72Varna 2014

CREATE TABLE СКИФ-Информ (id INTEGER primary key)

CREATE TABLE СКИФ-Аналитик (id INTEGER primary key)

CREATE TABLE Гетерогенная система (id INTEGER primary key)

CREATE TABLE Графики сбора анкет (id INTEGER primary key)

CREATE TABLE Заявка НБ ТУ (id INTEGER primary key)

CREATE TABLE Запрос (id INTEGER primary key)

CREATE TABLE Сотрудник СМП уровня ТУ (id INTEGER primary key)

CREATE TABLE Информация о предприятиях (id INTEGER primary key)

CREATE TABLE Материалы к заслушиваниям (id INTEGER primary key)

CREATE TABLE Сотрудник СМП уровня ДБН (id INTEGER primary key)

CREATE TABLE Сотрудник службы эксплуатации (id INTEGER primary key)

ALTER TABLE СКИФ-Информ ADD Гетерогенная системаID INTEGER

ALTER TABLE СКИФ-Информ

ADD FOREIGN KEY (Гетерогенная системаID) REFERENCES Гетерогенная система (id)

ALTER TABLE СКИФ-Аналитик ADD Гетерогенная системаID INTEGER

ALTER TABLE СКИФ-Аналитик

ADD FOREIGN KEY (Гетерогенная системаID) REFERENCES Гетерогенная система (id)

Page 73: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

The MetaLanguage system allows developing the visual languages with a possibility of modification of language description at runtime without regeneration of source code of DSMLs editor. For creation meta-models and models the uniform user interface is used. This interface does not make high requirements to the user’s skill level. It provides the opportunity to work with the language workbench not only to IT professionals, but also to domain experts. This system supports flexible customizing of modeling tools at model design and analysis.Now approaches to DSL design automation are studied.

73Varna 2014

Conclusion

Page 74: Varna 2014 National Research University Higher School of Economics Perm Branch, Russia An Approach to Modelling with MetaLanguage DSM-platform Alexander

Thank you!

???

74Varna 2014