Top Banner
46

[Ci2015] mbse

Aug 11, 2015

Download

Education

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: [Ci2015] mbse
Page 2: [Ci2015] mbse

MDSE (MODEL DRIVEN SYSTEM ENGINEERING)

Fundamentos 

Modelagem com Máquinas de Estados em MATLAB

Christopher Cerqueira

22:24:33 2

Page 3: [Ci2015] mbse

Quests dessa manhã!

• Apresentar sobre MDSE (Model Driven System Engineering)

• O que estamos fazendo

• Entendendo o Problema

• Modelagem SysML

• Modelando no MATLAB

• Graph Based Design Language

22:24:33 3

Page 4: [Ci2015] mbse

MDSEModel Driven System Engineering

22:24:33 4

Page 5: [Ci2015] mbse

Como é feita a engenharia

Page 6: [Ci2015] mbse

Como é feita a engenharia

● Concepção de missão: são criado modelos, para verificar a viabilidade a missão.

● Requisitos/Arquitetura (Projeto Simplificado): são criado modelos, para especificar como o produto deve ser desenvolvido.

● Projeto detalhado: são criado modelos, específicos de como os equipamentos devem funcionar.

● Implementação: são realizados processos para concretizar os modelos.

● Integração: testa-se os objetos concretos frente aos modelos detalhados.

● Operação: utiliza-se os objetos.

Page 7: [Ci2015] mbse

Bemmmmmm e então!?

Modelo

Modelo

Modelo

Modelo → Equipamento Real

Equipamento

Equipamento

Tudo OK!

Page 8: [Ci2015] mbse

3 Eras de escrita de requisitos:● Requisito textual

● Requisito diagramático

● Requisito dinâmico (modelo/simulação)

REQ001 – O churrasco do curso de inverno deve conter carne.

Page 9: [Ci2015] mbse

Vídeo motivacional

• MBD MATLAB/SIMULINK

22:24:34 9MDSE

Page 10: [Ci2015] mbse

MD(S)E é uma mudança de paradigma

MDE Lectures – Prof. Jean Bézivin

22:24:34 10MDSE

Mudança de paradigma: unificação de objetos via modelos

Page 11: [Ci2015] mbse

Modelos

• Um modelo é uma imagem simplificada de um sistema.

• Sistema: “A system is a set of elements in interaction” (von Bertalanffy)(1)

• Modelo vem da palavra em latim “modullus”, diminutivo de “modus” (medida)

• As terminologias são recentes mas a ideia é antiga

(1) Model Based Systems Engineering: Fundamentals and Methods Por Patrice Micouin

22:24:34 11MDSE

Page 12: [Ci2015] mbse

MD(S)E

MD(S)E é um conjunto de práticas de engenharia, baseadas em ferramentas 

que utilizam ao mesmo tempo meta-modelagem e transformações de 

modelos para atingirem automaticamente objetivos em produção, manutenção ou operação de sistemas intensivos em 

software. 

22:24:34 12MDSE

Page 13: [Ci2015] mbse

Relações

Uma sistema, entidade, fenômeno ou processo

22:24:34 13MBSE

Um modelo pode ser transformado em outro modelo.É realizados através de mudanças conhecidas. 

Page 14: [Ci2015] mbse

Três tipos principais de aplicações MDE

MDE

Geração automática Descoberta do Modelo Interoperabilidade de sistemas

22:24:35 14MDSE

Page 15: [Ci2015] mbse

Níveis de maturidade de MDE

What's Model Driven Engineering. (MDE) and How Can it Impact Process, People,Tools and Productivity. Mark R. Blackburn, Ph.D. Systems and Software  

22:24:36 15MDSE

Page 16: [Ci2015] mbse

Múltiplos nomes

● MDD – Model Driven Development● MDSD – Model Driven Software Development● MDA – Model Driven Architect● MDSE – Model Driven Software Engineering● MDRE – Model Driven Reverse Engineering● MM – Model Management● ADM – Architecture Driven Modernization● DDD – Domain Driven Design● MBD – Model Based Development● DSL – Domain Specific Language● … → infinito

Page 17: [Ci2015] mbse

ENTENDENDO O PROBLEMA  A SER MODELADO

22:25:44 17

Page 18: [Ci2015] mbse

Exemplo de um projeto

• Representar o comportamento de um satélite simples através das ferramentas MatLab e JPlavisFSM.

• Projeto similar foi feito no Curso de Inverno 2014 – INPE. Com orientação de: Christopher, Paulo, Italo e Rodrigo. Utilizando LabView.

22:25:45 18Entendendo o problema

Page 19: [Ci2015] mbse

Identificando Eventos

• Iluminação* (não foi colocado) 

• Ligado. (Sigla: E – Enable / nE – not Enable)

• Transmissão. (Sigla T – Transmit / nT – not Transmit)

• Filmagem. (Sigla: F – Film / nF – not Film)

• Estados possíveis = • 4 eventos binários = 16 estados possíveis (teóricos)

• Para simplificar ( e fazer sentido) utilizou-se 5 estados:• (1) Desligado, (2) Stand-by, (3) Transmitindo e Gravando, (4) 

Transmitindo e (5) Gravando

22:25:45 19Entendendo o problema

Page 20: [Ci2015] mbse

Autômato do Satélite (JPlavisFSM)

22:25:45 20Entendendo o problema

Casos de testes gerados automaticamente:

Page 21: [Ci2015] mbse

SYSML

22:25:45 21

Page 22: [Ci2015] mbse

SysML

22:25:45● SysML é uma linguagem de modelagem gráfica em resposta ao UML para

Engenharia de Sistemas

● SysML suporta especificação, análise, projeto, verificação e validação de sistemas incluindo hardware, software, dados, pessoal, procedimento e infraestruturas.

● Dados são salvos, em XML.

● http://www.omgsysml.org/

● SysML V1.4 Beta Specification – Março 2014

Page 23: [Ci2015] mbse

SysML - Modelos

Page 24: [Ci2015] mbse

Básico do SysML (System Modelling Language)

Page 25: [Ci2015] mbse

MODELANDO NO MATLAB

22:25:45 25

Page 26: [Ci2015] mbse

MATLAB e StateFlow

• Modeling  environment,  graphical components,  and  simulation  engine  for modeling and simulating complex logic

• Deterministic  execution  semantics  with hierarchy, parallelism, temporal operators, and events

• State diagrams, state transition tables, and state transition matrices representing finite state machines

• Flow  charts,  MATLAB  functions,  and  truth tables for representing algorithms

• State diagram animation, state activity logging, data  logging,  and  integrated  debugging  for analyzing  the  design  and  detecting  run-time errors

• Static  and  run-time  checks  for  transition conflicts,  cyclic  problems,  state inconsistencies,  data-range  violations,  and overflow conditions

• Mealy and Moore finite-state machines

http://www.mathworks.com/products/stateflow/

22:24:38 26MATLAB

Page 27: [Ci2015] mbse

Exemplo de funcionamento: Controle power supply via simulink

22:25:46 27MATLAB

Page 28: [Ci2015] mbse

GRAPH BASED DESIGN LANGUAGE

22:25:46 28

Page 29: [Ci2015] mbse

Desafio: Como implantar

MBSE em uma etapa do ciclo de vida??(no estudo de

caso: Fase 0)

29

Page 30: [Ci2015] mbse

Perguntas:

Page 31: [Ci2015] mbse

1. Quais são as linguagens

computacionais para descrever

modelos!??!

Page 32: [Ci2015] mbse

2. Os engenheiros

tem facilidade de modelar

nas linguagens disponíveis!??!

Page 33: [Ci2015] mbse

3. Como simplificar o linguajar para descrição

de modelos? E tornar modelagem e simulação

natural para a engenharia...

Page 34: [Ci2015] mbse

E por fim4. Como aplicar este

linguajar a um cenário de engenharia espacial ?

Page 35: [Ci2015] mbse

Evolução das linguagens computacionais

Page 36: [Ci2015] mbse

Evolução das linguagens computacionais

36

Page 37: [Ci2015] mbse

Linguagens de design

Page 38: [Ci2015] mbse

Mudança de paradigma de design

38

Page 39: [Ci2015] mbse

Motor de decisão baseado em regras – if then (ASAP)

Sequência de atividades

Regras de construção (topologia)

Page 40: [Ci2015] mbse

Programando em lógica de design

Page 41: [Ci2015] mbse

Topologias x Interfaces entre os elementos de sistema

Page 42: [Ci2015] mbse

Grafo final de um

sistema

Page 43: [Ci2015] mbse

O que nós aprendemos hj?!!?

Page 44: [Ci2015] mbse

● Deve-se evoluir os modelos no ciclo de vida. REUSO = NÃO PERDER TEMPO

● Deve-se entender os papéis de cada um da sua instituição.

● Modelando PlavisFSM

Page 45: [Ci2015] mbse
Page 46: [Ci2015] mbse

Fundamentos e Modelagem

Msc. Christopher Cerqueira

fb.com/RVA.BR

[email protected]

Satélite – 95. R:7321