Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Engenharia de Software para Sistemas Embarcados: Arquitetura, Padrões e Linguagem de Modelagem UML/SysML

Graduado em Ciência da Computação pela Universidade Presbiteriana Mackenzie (2005). Mestre em Engenharia Elétrica com enfase em Sistemas de Comunicações Ópticas pela Universidade Presbiteriana Mackenzie (2008). Doutorando em Engenharia de Software pe
by

Erik Antonio

on 26 October 2012

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Engenharia de Software para Sistemas Embarcados: Arquitetura, Padrões e Linguagem de Modelagem UML/SysML

Engenharia de Software para Sistemas Embarcados: Arquitetura, Padrões e Linguagem de Modelagem UML/SysML Erik Aceiro Antonio
erik_antonio@dc.ufscar.br Embedded Systems have changed the way the society
deals with different technologies http://www.fraunhofer.de/ http://www.fraunhofer.de/ http://www.fraunhofer.de/ Civaux nuclear power plant, France - © Claude Pauquet/AREVA NP EESC (USP/São Carlos) Motivação Existe uma ampla faixa de funcionalidades em Sistemas Embarcados Modernos A Engenharia de Software Embarcado tem promovido o desenvolvimento de bem-fundamentadas práticas de Engenharia de Software Engenharia de Requisitos
Documentação
Arquitetutra de Software
Certificação
Verificação e Validação Contextualização Motivação Engenharia de Software Roteiro Qualidade
"É importante explorar novos processos e técnicas de desenvolvimento de SEs e integração com diferentes áreas do conhecimento " (LIGGESMEYER; TRAPP, 2009) "Práticas mais formais e rigorosas
aliadas a um processo de desenvolvimento
são fundamentais para se garantir a qualidade
do Sistema Embarcado" (EBERT e JONES 2009) Explorar
Estender
Definir Sistemas Embarcados Críticos Técnicas, Processos, ... Ideias ... sugestões Obrigado !! (SIMON, 1999)
(LIGGESMEYER; TRAPP, 2009) VANT Tiriba (AGX/INCT-SEC) Desafios da área de SE Sistemas cada vez mais complexos
Desenvolvimento com baixo nível de abstração
Garantia de qualidade dos SEs Engenharia de Sistemas Embarcados ESE Engenharia
de
Software Engenharia
de
Sistemas Engenharia de Sistemas Embarcados Benefícios de Model-Based Design Model-Based Design "Texto Design" Melhora a comunicação
Assistência no gerênciamento da complexidade de SEs
Separação de Interesses (SoC)
Modelagem Hierarquica
Processo de Desenvolvimento incremental
Melhora no projeto
"Early Design"
Redução de riscos com atividades de V&V Stakeholders - Interessados O que é SysML ? Linguagem gráfica de modelagem em resposta a UML para a Engenharia de Sistemas. Mantida pela OMG/INCOSE/AP233

É um profile (perfil) que representa um subconjunto da UML

Suporte
Especificação
Análise
Projeto
Verificação e Validação UML/SysML status 2005 2012 2010 Maio 2006 UML v2.0 UML para ESE 2003 SysML v1.0 - Adotada pela OMG
- Começa ser Implementada 2008 Programa de Certificação

OMG-Certified Systems Modeling Professional (OCSMP) 11 de jun. 2010 16 de jun. SysML v1.2 SysML v1.1 Sync com UML v2.3 2011 OMG lança wiki de MBSE http://www.omgwiki.org/MBSE/ SysML v1.3 8 de jun. Sync com UML v2.4.1 SysML Diagram Frames Cada diagrama SysML representa um elemento do modelo
Cada diagrama SysML deve ter um frame
O contexto é indicado no header
Tipos de Diagramas: act, bdd, ibd, seq, ...
Tipo dos Elementos: atividade, bloco, interação, requisito
Nome do Modelo
Descrição Package Diagram Usado para organizar o modelo
Representa múltiplas visões
Hierarquia (app,sistema,componentes)
Domínio (requisitos, casos de uso, comportamento)
viewpoints
Relacionamento de Import melhora a legibilidade viewpoints podem fornecer insights dentro do modelo:
Restrições e regras
Consistente com a taxonomia IEEE 1471 Representar
HW/SW
Procedimento
Dados
Pessoas
Facility

Pode ter múltiplos compartimentos, descrevendo as suas características
Propriedades (partes, referências e valores)
Operações
Constraints
Alocação de bloco
Requisito que o bloco deve fazer Propriedade Característica estrutural de um bloco Part Property

Reference Property


Value Property Usado no contexto/entorno do bloco Não faz parte do contexto/entorno do bloco
É uma referência externa (ex: uma porta) Valor da propriedade Block Diagrams Inspirados em classes da UML a partir dos diagramas de composição estrutural da UML Block Definition Diagram

Internal Block Diagram Portas em SysML Especifica pontos de interação entre blocos e parts

Tipos de Portas
- Porta UML Padrão
Especifica um conjunto de operações e/ou sinais
"Tipado" por uma interface
- Flow Port
Especifica o que pode fluir para dentro/fora (in/out) em um bloco/part
"Tipado" pela especificação de fluxo Delegação de Portas em SysML Parametric Diagram Usado para expressar constraints (restrições) entre propriedades
Descrevem matematicamente o comportamento dinâmico
Constraint Block capturam equações
Expressa formalmente em OCL/MathML/Z ou informalmente
Parametric Diagram representam o uso de restrições no contexto da análise do projeto
Vinculo de restrição de projeto no diagrama de bloco
Exemplo, a massa de um veículo ligado fica limitada a F=m x a Parametric Diagram permite a integração entre Análise do Engenheiro de Sistema e o projeto do modelo Definindo Equações Reutilizáveis Usando Equações Activity Diagram Usado para especificar o fluxo de entrada/saída, controle, sequencias e condições.
Separa atividades em 'swim lanes'
Extensão dos diagramas de atividades da UML
Suporte para a modelagem de fluxo contínuo
Alinhamento de atividades com EFFBD Black Box Sequence Diagram White Box Sequence Diagram Fornece com base no comportamento da troca de mensagens

- representa o controle de fluxo
- descreve interações Máquina de Estados Diagrama de Máquina de Estados Usado para representar o ciclo de vida de um bloco
Generalização de um Statecharts
Comportamento baseado em evento
Modo Assíncrono
Transição com gatilho, condição, ação
Estados com entry, exit e do
Podem incluir superestados, estados concorrentes e broadcasting Casos de Uso Requirement Diagram Usado para especificar as funcionalidades de um sistema
Visa especificar :
requisitos, interações entre artefatos, rastreabilidade, casos de teste, alocação/implantação Allocation Requirements O estereótipo <<requerement>> indica um requisito em modo texto
- Incluí id e propriedade de texto
- Pode ser utilizado para indicar propriedades de verificação e validação
- Pode ser utilizada com categorias
Requisitos Funcionais
Requisitos Não-Funcionais (desempenho, tipos de interface ...) Uso de diferentes modos de relacionamento DeriveReqt
Satisfy
Verify
Refine
Trave
Copy Estereótipos e Bibliotecas Mecanismos para customizar a SysML

Perfis (Profiles) - extensão da linguagem
- Estereótipos estendem classes com metadados
- Associam propriedades, valores e restrição
- Perfis são aplicados a um modelo
- Perfis podem restringir um determinado grupo
de modelos (classificação)

Bibliotecas - conjunto de elementos reutilizáveis SysML/UML Principais Diagramas SYSMOD Processo de Desenvolvimento Evolução, características SysML/UML Principais Diagramas Evolução, características SYSMOD Processo de Desenvolvimento Parte III Parte II Parte I Parte II Parte III SYSMOD Processo de desenvolvimento pragmático

Toolbox
- Atividades, guidelines (diretrizes), entradas e saídas para os processos, melhores práticas, uso de padrões

Abordagem Top-Down
- Modelagem de Requisitos
- Arquitetura do Sistema
- Funcionalidades de HW/SW

Usa a Linguagem SysML

Fornece um perfil com extensões da SysML Outros processos SIMILAR Process Model
State the problem
Investigate alternatives
Model System
Integrate
Launch the System
Assess Performance
Re-evaluate AUTOSAR
Structure
Behaviour
Requirements
Validation and Verification
Support
Variants Goal: Identificar a existência de processos para Sistemas Embarcados DePES (Development Process for Embedded Systems)
12 etapas
inicia com o levantamento de requisitos com base na abordagem problem frames (JACKSON, 2001)

(HATEBUR, 2006 e HEISEL; HATEBUR, 2005) DePES
GENESYS
NoTa Análise Projeto TRIZ/TIPS - "Theory of Inventive Problem Solving" (1956) "Todos os pensamentos inteligentes já foram pensados; o que é necessário é apenas tentar pensar novamente" "Olhe os sistemas em seu ambiente e pense sobre como estes sistemas evoluiram ao longo dos anos" Genrikh Saulovich Altshuller http://www.leansigmauk.com/key-people.php Os requisitos podem ser agrupados em categorias,
como FURPS de Robert Grady:

Functionality
Usability
Reliability
Performance
Supportability Requisito Essencial
Descreve a intenção específica do domínio
Independente da implementação técnica
Independente de plataforma (PIM) Requisito Técnico
Descreve a solução técnica
Específica de plataforma (PSM) Qual é o propósito ?

Por que o tamanho do gabinete da unidade central deve ser igual ao tamanho do compartimento DIN de rádio do veículo ? Atividades de Verificação Design Patterns Os requisitos são realmente independente de qualquer nível de abstração ou solução ? http://model-based-systems-engineering.com/2012/03/26/the-sysmod-zigzag-pattern/ Similar a KAOS/GORE 76,25 m 605 Pessoas Peso 214,503 kg
Operation Empty Weight - OEW Pesso 442.253 kg
Maximum Takeoff Weigth - MTOW 918 km/h (velocidade de cruzeiro)
988 km/h (máxima)
85% velocidade do som 6 milhões de partes 275 km de fios SYSMOD SysML Meta Object Facility (MOF) Core Specification
OMG Available Specification
Version 2.0
formal/06-01-01 "A mente que se abre a uma nova ideia jamais voltará ao seu tamanho original"

Albert Einstein Quiz Qual das alternativas abaixo melhor descreve o tratamento sintático e semântico das Linguagens SysML e UML ? a) BNF
b) Diagramas de Requisitos e Diagramas de Blocos
c) Classes e suas restrições
d) Estereótipos
e) Metamodelo e Meta-metamodelo (MOF)
Full transcript