SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems...

36
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS Campus Barreiro Instituto de Informática Bacharelado em Sistemas de Informação SYSML, UMA EXTENSÃO DA UML À ÁREA INDUSTRIAL Robert Pereira Orientador: Prof. Sylvio Silveira Santos Belo Horizonte 2010

Transcript of SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems...

Page 1: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS

Campus Barreiro

Instituto de Informática

Bacharelado em Sistemas de Informação

SYSML, UMA EXTENSÃO

DA UML À ÁREA INDUSTRIAL

Robert Pereira

Orientador: Prof. Sylvio Silveira Santos

Belo Horizonte

2010

Page 2: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

Robert Pereira

SYSML, UMA EXTENSÃO

DA UML À ÁREA INDUSTRIAL

Orientador: Prof. Sylvio Silveira Santos

Belo Horizonte

2010

Projeto de pesquisa apresentado em

cumprimento parcial às exigências do

Curso de Sistemas de Informação da

Pontifícia Universidade Católica de Minas

Gerais – PUC Minas, para obtenção do

diploma de graduação.

Page 3: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

Robert Pereira

SysML, uma extensão

da uml à área industrial

__________________________________________

Sylvio Silveira Santos (Orientador) - PUC Minas

__________________________________________

Renato Moreira Hadad - PUC Minas

__________________________________________

Marcley Lazarini Pereira - PUC Minas

Belo Horizonte

2010

Projeto de pesquisa apresentado em

cumprimento parcial às exigências do

Curso de Sistemas de Informação da

Pontifícia Universidade Católica de Minas

Gerais – PUC Minas, para obtenção do

diploma de graduação.

Page 4: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

AGRADECIMENTOS

Agradeço primeiramente a Deus por ter me dado forças nos momentos de cansaço.

Ao sábio professor Sylvio, por compartilhar um pouco de seu imensurável

conhecimento.

Aos meus pais por serem um exemplo vivo de fé, trabalho e honestidade.

A minha amada noiva Priscila, por estar sempre ao meu lado, mesmo nos momentos

que eu estava distante.

Aos meus irmãos e meus amigos pelo constante incentivo.

Aos meus colegas de faculdade pelas trocas de informação e conhecimento.

Enfim, a todos que de alguma forma colaboraram para a concretização deste trabalho.

Page 5: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

Resumo

Este trabalho fala sobre Systems Modeling Language (Linguagem de Modelagem de

Sistemas), conhecida como SysML, uma linguagem de modelagem para Engenharia de

Sistemas. Apresentamos seu histórico, características, diagramas, utilidades e perspectivas.

Também é apresentado um modelo utilizando a linguagem e são descritos suas vantagens em

relação à UML quando tratamos de sistemas embarcados.

Palavras-chave: SysML, Engenharia de Sistemas, UML

Abstract

This paper talks about Systems Modeling Language, known as SysML, a modeling language

for Systems Engineering. Introducing its history, characteristics, diagrams, utility and

perspectives. It also presents a model using the language and its advantages are described in

relation to the UML when dealing with embedded systems.

Key-words: SysML, Systems Engineering, UML

Page 6: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

SUMÁRIO

1. INTRODUÇÃO ............................................................................................................................................ 6

1.1 JUSTIFICATIVA ........................................................................................................................................... 7 1.2 OBJETIVOS ................................................................................................................................................. 7

1.2.1 Objetivo Geral ................................................................................................................................. 7 1.2.2 Objetivos Específicos ....................................................................................................................... 8

1.3 PROBLEMA ................................................................................................................................................. 8 1.4 ORGANIZAÇÃO DA MONOGRAFIA .............................................................................................................. 8

2. REFERENCIAL TEÓRICO – REVISÃO DA LITERATURA .............................................................. 9

2.1 SYSML .................................................................................................................................................... 11 2.1.1 Diagramas ..................................................................................................................................... 12 2.1.2 Componentes de um diagrama ...................................................................................................... 14 2.1.3 Exemplo de Modelo ....................................................................................................................... 15

3. METODOLOGIA ...................................................................................................................................... 17

4. FERRAMENTAS ....................................................................................................................................... 18

4.1 ENTREPRISE ARCHITECT .......................................................................................................................... 18 4.2 ARTISAN STUDIO ..................................................................................................................................... 20 4.3 MAGICDRAW ........................................................................................................................................... 21

5. MODELO ................................................................................................................................................... 22

6. BLOG .......................................................................................................................................................... 31

7. PESQUISAS RELACIONADAS E ESTUDOS FUTUROS ................................................................... 32

7.1 MODELICA ............................................................................................................................................... 32 7.1.1 Bibliotecas de Componentes .......................................................................................................... 32

8. CONCLUSÕES .......................................................................................................................................... 33

9. BIBLIOGRAFIA ....................................................................................................................................... 34

Page 7: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

6

1. INTRODUÇÃO

Systems Modeling Language (Linguagem de Modelagem de Sistemas) ou simplesmente

SysML é uma linguagem de modelagem de uso para aplicações em Engenharia de Sistemas.

SysML é uma linguagem de modelagem gráfica de uso geral para especificar, analisar,

projetar, e verificar sistemas complexos que podem incluir hardware, software, informação

pessoal, procedimentos e facilidades. Especificamente, essa linguagem fornece representações

gráficas com significado semântico para modelar requisitos, comportamento, estrutura e

integração do sistema com uma análise da engenharia em larga escala (ROBINSON et al,

2004).

SysML é uma extensão da versão 2.0 da já amplamente estudada e divulgada UML -

Unified Modeling Language (Linguagem de Modelagem Unificada), possuindo conteúdo

necessário para satisfazer as necessidades da Engenharia de Sistemas. “Embora a UML

forneça um conjunto considerável de diversos diagramas que ajudam a definir uma aplicação,

de algum modo é uma lista completa de todos os diagramas que você poderia querer usar. Em

muitos lugares, diferentes diagramas podem ser úteis, e você não deve hesitar em usar um

diagrama que não seja feito com UML, se nenhum diagrama da UML atender seu propósito”

(FOWLER, 2005).

Devido à sabida importância e necessidade de documentar tudo que se produz, os

engenheiros de sistemas perceberam que a UML não estava sendo suficiente para atender seus

interesses e, então, a partir de uma iniciativa do INCOSE (International Council on Systems

Engineering) que se uniu a OMG (Object Management Group, responsável pela UML),

criaram em 2001 um grupo de trabalho que definiu os requisitos de uma linguagem de

modelagem para Engenharia de Sistemas. Estes requisitos foram publicados em 2003 como

uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for

SE RFP). Foi então organizado o SysML Partners, um grupo de trabalho composto por

representantes do setor industrial e produtores de ferramentas CASE. Este grupo iniciou a

elaboração da SysML Open Source, uma linguagem que respondesse aos requisitos

especificados na SE RFP. A versão draft da SysML foi publicada em 2004, enquanto que a

primeira versão, SysML 1.0, foi proposta no final de 2005. A versão pública formal

da SysML OMG ™ v1.2 foi publicada pela OMG em Junho de 2010.

Page 8: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

7

1.1 Justificativa

UML é uma linguagem que embora muito ampla pode não conseguir abranger

algumas situações. Quando trabalhamos com produtos que envolvam principalmente

hardware com software embutido, a dificuldade em se usar UML começa a ficar evidente. É

neste ponto que SysML aparece para tentar suprir esta carência.

SysML possui hoje um leque de diagramas que permitem perfeitamente modelar a

estrutura de objetos compostos não apenas de parte física ou somente lógica.

A SysML está definida com base na UML 2, utilizando em parte sua sintaxe e

semântica. Como consequência, engenheiros de sistemas que modelam com SysML e

engenheiros de software que modelam com UML 2, estarão aptos a colaborarem

intensivamente no modelo do software e do sistema. Isso irá melhorar a comunicação entre os

vários projetistas que participam do desenvolvimento do sistema, promovendo a

interoperabilidade entre as ferramentas de modelagem (Especificação, 2008)

Da mesma forma que a UML disponibiliza várias formas de visualizar um sistema a

ser modelado, SysML também fornece várias maneiras de expor um produto, analisando-o e

modelando-o sob diferentes pontos de vista. Para isto são disponibilizados vários diagramas

que serão amplamente estudados e explicados neste projeto.

Tendo em vista a importância e a necessidade de se documentar tudo que se produz,

buscarei neste projeto conhecer, aprimorar e justificar formas de modelagem utilizando a

linguagem SysML.

1.2 Objetivos

1.2.1 Objetivo Geral

Este trabalho tem como objetivo mostrar as formas de utilização e benefícios da

linguagem SysML na modelagem de sistemas que utilizem software e hardware, assim como

um estudo das perspectivas futuras para a linguagem. Para isto são descritos os diagramas

existentes na linguagem e apresentado um modelo de um produto utilizando SysML.

Page 9: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

8

1.2.2 Objetivos Específicos

• Aprender sobre a linguagem de modelagem SysML;

• Analisar os diagramas que mostram os elementos da SysML;

• Conhecer, analisar e utilizar ferramentas de modelagem com suporte a SysML;

• Elaborar um modelo de um produto utilizando SysML;

• Publicar um website com conteúdo sobre SysML em português.

1.3 Problema

É comum em um projeto de software embutido, a utilização de diagramas de formato

livre e diagramas de blocos que lembrem a UML, diagrama de fluxo de dados (DFD) e

fluxogramas. A falta de sintaxe e semântica padronizada pode e normalmente proporciona a

interpretação errada dos diagramas, isto é ainda mais claro quando os envolvidos no sistema

possuem formações diferentes. SysML tem o propósito de unificar e padronizar os modelos e

diagramas envolvidos.

1.4 Organização da Monografia

Será apresentado neste trabalho no capítulo 2 uma pequena revisão da literatura com

trechos de autores especialistas no assunto. Em seguida no item 2.1 é mostrada a linguagem

SysML, assim como seus diagramas e alguns modelos. O capítulo 3 descreve a metodologia

utilizada no trabalho. No quarto capítulo são mostradas algumas ferramentas existentes. No

capítulo 5 é exibido o modelo de um veículo hibrido elaborado a partir de exemplos existentes

na literatura e no capítulo seguinte, o blog criado com conteúdo em português para divulgar a

linguagem. Por fim, no sétimo capítulo, uma pequena descrição sobre pesquisas relacionadas

ao tema e estudos futuros.

Page 10: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

9

2. REFERENCIAL TEÓRICO – REVISÃO DA LITERATURA

Weilkiens (2007) afirma: “UML, a Unified Modeling Language, foi a primeira

linguagem projetada para atender a exigência de "universalidade". No entanto, é uma

linguagem específica de software, e não suporta as necessidades dos engenheiros de

concepção dos sistemas de base mais ampla perspectiva.

Portanto, a SysML foi criada com vistas a atender a esta necessidade. Atualmente tem

vindo a ganhar popularidade, e muitas empresas, especialmente nas indústrias fortemente

regulamentadas como defesa, automobilística, aeroespacial, dispositivos médicos e de

telecomunicações, já estão usando SysML, ou algum processo de planejamento para passar a

ela no futuro próximo. No entanto, pouca informação está disponível no mercado a respeito

da SysML. Seu uso é apenas sobre a crista de tornar-se um fenômeno generalizado, e assim

milhares de engenheiros estão começando agora a olhar para a sua formação e recursos.”

Holt (2007) refere-se a ela dentro do conceito de modelagem de sistemas:

“Modelagem de Sistemas é uma técnica essencial para qualquer empresa que permita

engenharia de sistemas. Estas técnicas de modelagem, em particular, a Unified Modeling

Language (UML), têm sido amplamente empregadas no mundo da engenharia de software e

com muito êxito em engenharia de sistemas por muitos anos. No entanto, nos últimos anos

tem havido uma necessidade percebida para uma versão adaptada da UML que atenda às

necessidades dos atuais sistemas de engenharia profissional.”

Weilkiens (2007) afirma ainda: “Sistemas são constituídos por componentes de

diferentes disciplinas, tais como hardware, software e mecânica. O progresso sempre leva a

sistemas mais complexos, o mercado exige desenvolvimentos cada vez mais rápidos e a

globalização conduz a equipes de desenvolvimento distribuído internacionalmente. A

Engenharia de Sistemas com a abordagem holística e multidisciplinar tem uma enorme

importância neste ambiente.”

Friedenthal (2008), “Engenheiros de sistemas e arquitetos devem compreender como

integrar todas as partes de um sistema de trabalho em conjunto para satisfazer as suas

necessidades. SysML é uma linguagem de modelagem gráfica de propósito geral usada para

especificar, analisar e projetar sistemas que podem incluir hardware, software e pessoal. Ela

permite que os engenheiros possam descrever como um sistema interage com seu ambiente, e

Page 11: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

10

como suas partes devem interagir para alcançar o comportamento desejado do sistema e

desempenho. Um modelo SysML fornece uma visão compartilhada do sistema, permitindo

que uma equipe de design de superfície perceba algumas questões mais cedo e assim evitar

problemas que de outra forma provoquem atraso no desenvolvimento e degradam a qualidade

do projeto. SysML é baseado em UML, que também facilita a integração entre sistemas e

desenvolvimento de software. SysML agora está sendo adotado pelas empresas através de

uma ampla gama de indústrias, incluindo aeroespacial e defesa, automotiva e

desenvolvimento de Sistemas de TI.”

Weilkiens deixa clara a importância de separar modelagem de software, da

modelagem de sistemas embarcados. Não há dúvidas acerca do poder e da qualidade de se

utilizar UML para software, mas quando tratamos de sistemas de engenharia, a linguagem não

é a mais indicada. SysML surgiu para tentar acabar com as interpretações erradas ou

ambíguas, além das lacunas ainda existentes.

Holt também mostra que UML não é mais indicada para modelagem de sistemas

embutidos, que existe uma necessidade de uma adaptação na linguagem. SysML faz

exatamente isto, adapta e cria novos diagramas para atender às necessidades atuais.

Friedenthal mostra a importância de se conhecer as características e propriedades do

produto e fala das características que podem ser melhor explicitadas com o uso de SysML

A aplicação de um modelo SysML neste trabalho surgiu depois de uma análise das

ferramentas de modelagem existentes para o tratamento de sistemas de elevada complexidade.

Sistemas que possuem características híbridas, com elementos eletrônicos, circuitos,

dispositivos mecânicos e outros em sua constituição, além de software, podem ser

considerados alvo da disciplina denominada Engenharia de Sistemas, que tem na linguagem

SysML uma de suas bases.

A Engenharia de Sistemas é um campo interdisciplinar da engenharia que foca no

desenvolvimento e organização de sistemas artificiais complexos. A engenharia de sistemas

integra outros grupos de disciplinas.

O termo Engenharia de Sistemas foi introduzido na década de 40 nos Laboratórios

Bell. Surgiu da necessidade de identificar e manipular as propriedades de um sistema como

um todo, o que em projetos complexos pode ser diferente de apenas somar as diversas

propriedades de cada componente individual (HALL, 1962)

A partir do momento onde não foi possível confiar na evolução dos projetos para

melhorar um sistema e as ferramentas disponíveis não eram mais suficientes para atender às

Page 12: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

11

crescentes demandas, novos métodos que abordavam diretamente a complexidade começaram

a ser desenvolvidos (SAGE, 1992)

A evolução dos sistemas de engenharia, que ainda hoje continua, compreende o

desenvolvimento e a identificação de novos métodos e técnicas de análise. Estes métodos

ajudam a melhorar a compreensão do sistema em causa à medida que a sua complexidade

aumenta.

A área técnica desta disciplina, através do uso da SysML, vem obtendo ganhos

significativos ao substituir, na documentação de sistemas complexos, páginas descritivas por

modelos estruturados, cuja utilização consiste em um dos objetivos deste trabalho.

2.1 SysML

SysML é uma linguagem gráfica de modelagem que apóia a análise, especificação,

projeto, verificação e validação de sistemas complexos (FRIEDENTHAL, 2008).

A SysML reutiliza um subconjunto de UML 2 e fornece extensões adicionais

necessários para atender aos requisitos em UML para SE RFP. Desta maneira suporta a

especificação, análise, desenho, verificação e validação de sistemas o que inclui hardware,

software, dados, pessoal, processos e infra-estrutura. Abaixo, na figura 1, mostra-se como a

SysML divide com a UML alguns de seus modelos e extensões.

Figura 1: Comparativo SysML x UML

Fonte: Especificação V.1.1, 2008

Page 13: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

12

A SysML coloca comportamento, estrutura e análise de requisitos em um único

modelo de sistemas integrados.

2.1.1 Diagramas

Um diagrama é a representação gráfica de um conjunto de elementos, geralmente

representados como gráficos de vértices (itens) e arcos (relacionamentos). São desenhados

para permitir a visualização de um sistema sob diferentes perspectivas, ou seja, um diagrama

constitui uma projeção de um determinado sistema. Em todos os sistemas, com exceção dos

mais triviais, um diagrama representa uma visão parcial dos elementos que compõem o

sistema. O mesmo elemento pode aparecer em todos os diagramas, apenas em alguns (o caso

mais comum) ou em nenhum (caso mais raro) (BOCK, 2005).

SysML reutiliza alguns diagramas da UML de forma idêntica, aplica alterações em

alguns e propõe outros novos, conforme demonstrado na figura 2.

Figura 2: Diagrama de Taxonomia SysML

Fonte: WEILKIENS, 2007

Os diagramas da SysML são divididos em três grupos: Diagramas estruturais,

diagramas comportamentais e diagramas transversais.

Page 14: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

13

2.1.1.1 Diagramas Comportamentais

Diagrama de Atividades: usado para demonstrar através de fluxos de entrada, saída e

controle, o comportamento.

Diagrama de Sequência: utilizado para representar as interações entre objetos através

de mensagens. Mensagem é o serviço solicitado por um objeto a outro, e a respectiva

resposta da solicitação.

Diagrama de Máquina de Estados: têm o propósito de exibir o comportamento do

sistema como seqüências de estados que um componente ou uma experiência de

interação apresenta em resposta a eventos.

Diagramas de Caso de Uso: usado para representar as funcionalidades propostas para o

sistema. Casos de Uso descrevem as interações entre usuários do sistema e o próprio

sistema.

2.1.1.2 Diagramas Estruturais

Diagrama de Definição de Blocos: é utilizado para definir as características dos blocos

em termos de características estruturais e comportamentais, e as relações entre os

blocos, tais como a sua relação hierárquica. Extensões do diagrama são utilizadas para

definir restrições paramétricas e também para mostrar uma hierarquia das atividades.

Diagrama de Bloco Interno: é usado para descrever a estrutura interna de um bloco em

termos de como as suas partes estão interligadas.

Diagrama Paramétrico: representa as restrições entre os elementos estruturais; as

restrições são criadas a partir de sistemas equações.

Diagrama de Pacotes: descreve os pacotes ou partes do sistema dividido em

agrupamentos lógicos mostrando as dependências entre eles, ou seja, pacotes podem

depender de outros pacotes. Podem ser utilizados para ilustrar a arquitetura de um

sistema - as camadas, subsistemas, pacotes, etc. São também usados para definir

extensões da linguagem SysML, chamados perfis.

2.1.1.3 Diagramas Transversais

Diagrama de Requisitos: utilizado para representar hierarquias entre requisitos ou

mostrar uma exigência individual e sua relação com outros elementos do modelo. Ao

invés de representar os requisitos apenas como texto ou mesmo acompanhado por

Page 15: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

14

figuras, como é feito tradicionalmente, SysML permite a representação de requisitos

como os elementos do modelo.

2.1.2 Componentes de um diagrama

Os diagramas SysML possuem alguns componentes que merecem uma atenção

especial.

Todo diagrama SysML tem no canto superior direito uma abreviação indicando o tipo

do diagrama em questão. A seguir a relação sigla x tipo de diagrama.

req – Diagrama de Requisitos

act – Diagrama de Atividades

sd – Diagrama de Sequência

stm – Diagrama de Máquina de Estados

uc – Diagrama de Caso de Uso

bdd – Diagrama de Definição de Bloco

ibd – Diagrama de Bloco Interno

par – Diagrama Paramétrico

pkg – Diagrama de Pacotes

Outro item importante que merece cuidados no momento de criar os diagramas é a

conexão entre elementos, os principais tipos de conexão existentes em SysML são

apresentados a seguir na figura 3.

Figura 3: Tipos de Conexões entre elementos

Fonte: Elaborado pelo autor

Page 16: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

15

2.1.3 Exemplo de Modelo

Com o intuito de bem exemplificar o uso da SysML, podemos citar seu emprego no

desenvolvimento de um produto bastante conhecido. Trata-se de um limpador de pára-brisas

automático, que tem como sigla original RSW (Rain Sensing Wiper). O produto em questão

foi inicialmente desenvolvido e patenteado em outubro de 1986, ou seja, este exemplo

constitui um produto real na área de eletrônica embarcada para a indústria automotiva, cujo

projeto obteve melhorias consideráveis a partir de uma representação SysML.

O RSW tem como objetivo limpar a superfície do pára-brisa automaticamente sempre

que alguma gota de líquido cair sobre a área externa do pára-brisa, sem que o usuário precise

intervir. Além disto, a quantidade de líquido determina a velocidade do limpador.

(http://www.wikipatents.com/US-Patent-4620141/rain-controlled-windshield-wipers)

Este sistema possui três componentes principais: o software que controla o

comportamento do limpador, uma unidade de controle eletrônico que executa o software, e

um sensor fixo na superfície interior do pára-brisa, cuja tarefa é a de perceber as gotículas

através do pára-brisa.

A seguir o primeiro diagrama SysML mostrado neste projeto. Trata-se de um

diagrama de contexto, uma parte do diagrama de Definição de Blocos, sendo uma maneira de

representar os limites do sistema, ou seja, define o escopo do sistema.

Page 17: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

16

Figura 4: Diagrama de contexto para o sistema Rain Wiper Sensing

Fonte: BALMELLI, 2006

Podemos perceber a existência de três atores: Maintenance (Manutenção), Car

Electrical System (Sistema elétrico do carro) e Driver (Motorista), além de três sistemas

externos: wiper interface (a interface limpa pára-brisas), windshield (o pára-brisa) e car

electrical system (sistema elétrico do carro). Note que uma palavra-chave definida pelo

usuário “external” é usada para qualificar os componentes externos.

Na seqüência do trabalho mais diagramas e detalhes desta forma de documentar um

projeto serão apresentados.

Page 18: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

17

3. METODOLOGIA

Para alcançar nossos objetivos, inicialmente foi feita uma pesquisa de materiais já

publicados, seleção dos mesmos e tradução dos descritos em língua estrangeira. Uma revisão

da linguagem UML também se fez necessária uma vez que ela é a base da SysML.

Realizamos uma pesquisa sobre as ferramentas que permitem a modelagem SysML. A

maioria são ferramentas que originalmente modelam UML, mas introduziram suporte para

SysML. Instalamos e testamos várias ferramentas que modelam SysML. Um detalhamento

sobre as ferramentas estudadas é feito no próximo item deste trabalho.

Analisamos alguns modelos SysML existentes para podermos entender melhor suas

características e propriedades. A partir de então, fizemos um modelo pessoal utilizando

SysML, com auxílio de alguns exemplos publicados na literatura.

Após todo o trabalho descrito anteriormente, logramos obter informações e

conhecimento para relatar alguns dos benefícios da SysML em relação à UML, quando

tratamos de modelagem de sistemas embarcados.

Para finalizar nosso trabalho, criamos um blog contendo partes deste trabalho,

incluindo o modelo criado, além de outras informações sobre a linguagem. Todo o blog foi

escrito em português uma vez que entendemos que a quantidade de referência em nossa

língua mãe ainda é muito rara. O blog foi publicado no endereço

http://www.sysmlbrasil.blogspot.com.

Page 19: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

18

4. FERRAMENTAS

Existem algumas ferramentas disponíveis para modelar SysML, a maioria ferramentas

que originalmente modelam UML, mas introduziram suporte para SysML. Várias ferramentas

de modelagem que suportam SysML foram pesquisadas, instaladas e testadas, entre elas

podemos destacar:

Enterprise Architect (Sparx System);

Artisan Studio (Artisan Software);

SysML Toolkit (EmbeddedPlus) + Rational Software Modeler/Architect

(IBM);

Rhapsody (IBM/Telelogic);

TAU G2 (IBM/Telelogic);

Papyrus for SysML (Papyrus Open Source Project) ;

MagicDraw (No Magic).

A seguir um pequeno detalhamento de três ferramentas testadas.

4.1 Enterprise Architect

Para reproduzir e criar novos modelos inicialmente utilizamos a ferramenta Enterprise

Architect versão 8.0, acrescida do add-in SysML Technology, de propriedade da Sparx

Systems e MDG Technologies.

O motivo para tal escolha foi a facilidade de instalação, além da existência de tutoriais

no próprio web site da empresa.

Abaixo alguns dos diagramas apresentados no Modelo RSW citado neste projeto.

Desta vez estão reproduzidos através do Enterprise Architect e traduzidos.

Page 20: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

19

bdd [SysML Block Definition] TD Robert RSW [diagrama de contexto]

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

«external,block»

Sistema Eletrico

Manutenção

Motorista

Sistema Eletrico

«block,external»

Interface limpa para-brisa

«block,external»

Para-brisa

«RequirementRelated,allocated»

RSW

Descrição do RSW

Um sistema de controle eletrônico para limpadores de pára-brisas dos veículos a motor para iniciar a de ação

limpeza em resposta à ocorrência de precipitação ao nível do pára-brisa. A unidade sensora compreende um

bloco contendo um conjunto de foto-sensores dispostos em uma configuração de ponte e uma matriz

correspondente de fontes de luz é montada na superfície interna do pára-brisa em uma posição atravessada

pelo caminho das lâminas do limpador de pára-brisa do veículo. Os elementos foto-sensor são normalmente

orientados a receber a luz refletida pelo vidro / interface ar na superfície do pára-brisa fora da foto-emissores,

mas quando a chuva está presente em pára-brisas, os raios de luz se espalham para criar uma condição

desequilibrada. O desequilíbrio da ponte gera um sinal que é desmodulado em um demodulador síncrono e,

em seguida, aplicado através de um controle automático de ganho (AGC) do circuito de um comparador de

janela. A saída do comparador, por sua vez, aplicado a um oscilador controlado por tensão tal que a

frequência do pulso é produzido, assim, determinado pelo nível de precipitação. A saída do oscilador em

seguida, é aplicada a um relé de motor do limpador de pulso da mesma em funcionamento. O uso do

desmodulador síncrono, AGC amplificador de erro e os resultados comparativos janela em um sistema que

opera de forma fiável sob severas condições ambientais.

Figura 5: Diagrama de Definição de Blocos – Diagrama de contexto

Fonte: BALMELLI, 2006 (adaptado)

Page 21: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

20

uc [Use Case] TD Robert RSW [Caso de Uso]

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version EA 8.0 Unregistered Trial Version

RSW

Manutenção

Sistema Eletrico

Motorista

«allocated»

Iniciação

Limpando

automaticamente

«allocated»

Desativ a

manualmente

«allocated»

Sensoriamento

«allocated»

Acionar

«include»

«include»

«include»«include»

11

1

1

1

1

1

1

Figura 6: Diagrama de Caso de Uso

Fonte: BALMELLI, 2006 (adaptado)

Para utilizar a ferramenta Enterprise Architect é necessário fazer o download

diretamente da página da Sparx System. O usuário pode baixar uma versão de avaliação que

pode ser utilizada por 30 dias, assim como o add-in SysML, porém após este período para

continuar utilizando a ferramenta é necessário pagar U$135,00 pela versão mais simples e

individual além de U$105,00 pelo add-in.

4.2 Artisan Studio

O Artisan Studio é outra ferramenta que modela SysML que utilizamos bastante neste

trabalho. Ela possui alguns modelos que auxiliam bastante no entendimento da linguagem. É

uma ferramenta bastante robusta e utilizada inclusive por setores do Departamento de Defesa

Britânico, no entanto para aplicações individuais ele gera obrigatoriamente uma conta no

sistema operacional do usuário, fato que pode incomodar um pouco.

Page 22: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

21

4.3 MagicDraw

Uma licença individual do software para modelagem MagicDraw custa U$149,00,

lembrando que para criar modelos SysML também é necessário a instalação de um plugin

para a linguagem, que eleva o preço do produto.

A ferramenta MagicDraw foi a última que utilizamos e foi através dela que

produzimos o modelo exposto no próximo capítulo deste trabalho.

Outro ponto a favor da ferramenta MagicDraw é que ela pode ser utilizada como ponto

de partida para pesquisas futuras envolvendo a integração de SysML com outra linguagem de

modelagem de sistemas, a linguagem Modelica. Esse assunto será abordado no item 7.1

Page 23: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

22

5. MODELO

A seguir apresentamos um modelo completo em SysML. É um modelo simples, que

mostra as propriedades e atividades que envolvem um veículo esportivo híbrido, movido a

gasolina e eletricidade. Através deste modelo podemos observar o poder e a completude de

SysML.

Os diagramas abaixo apresentados foram criados com a ferramenta MagicDraw.

Figura 7: Diagrama de Pacotes

Fonte: Elaborado pelo autor

Neste primeiro diagrama do modelo são mostradas as partes do sistema agrupadas de

forma lógica, é uma maneira de subdividir o modelo em camadas. Cada um dos pacotes pode

ser expandido para dar origem a outras partes, como subsistemas e mais pacotes.

Page 24: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

23

Figura 8: Diagrama de Definição de Blocos

Fonte: Elaborado pelo autor

O diagrama de definição de blocos tem a responsabilidade de mostrar as características

estruturais e comportamentais, assim como as relações entre os blocos. Na figura 8, podemos

observar que neste exemplo do modelo o veículo pode ter de 0 à 4 passageiros, além do

motorista, e que a velocidade será medida em Km por hora, etc.

Page 25: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

24

Figura 9: Diagrama de Requisitos

Fonte: Elaborado pelo autor

O diagrama de requisitos é um dos diagramas novos da SysML em relação à UML.

Nele são especificados requisitos que o automóvel deve atender, como desempenho, conforto,

segurança. Cada um destes requisitos pode ser subdivido em outros como espaço, vibração e

ruído no caso do conforto, por exemplo.

Page 26: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

25

Figura 10: Diagrama de Caso de Uso

Fonte: Elaborado pelo autor

O diagrama de caso de uso é um dos diagramas UML que foram mantidos sem

alterações. Na figura 10, vemos que no modelo em questão um ocupante do veículo pode

entrar ou sair do mesmo, pode controlar os acessórios do automóvel e caso o ocupante for um

motorista ele pode ainda dirigir o automóvel, o que não pode ocorrer se ele for um passageiro.

Page 27: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

26

Figura 11: Diagrama de Sequência

Fonte: Elaborado pelo autor

O diagrama de sequência serve para representar as interações entre os objetos através

de mensagens. Mensagem é definida como o serviço solicitado por um objeto a outro, e a

respectiva resposta. Na figura 11 podemos ver que o motorista é responsável por ligar a

ignição, passando então uma mensagem ao veículo que será ligado.

Page 28: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

27

Figura 12: Diagrama de Máquina de Estados

Fonte: Elaborado pelo autor

Este diagrama mostra o comportamento do sistema através de sequências de

estados que ocorrem em resposta a um evento ou uma operação. Na figura 12 podemos

observar que estando no estado Veículo Desligado, a operação Ligar Ignição leva ao estado

Veículo Ligado, assim como para o veículo ir para Frente, o motorista deve Selecionar

Marcha quando o veículo estiver no estado Neutro.

Page 29: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

28

Figura 13: Diagrama de atividades

Fonte: Elaborado pelo autor

O diagrama de atividades visa mostrar o comportamento do sistema através de fluxos

de entrada, saída e controle. Aqui temos detalhada a atividade denominada Aceleração, onde

de acordo com a entrada fornecida pelo motorista e as condições do veículo, é gerada a

energia que irá alimentar o mesmo, lembrando que aqui consideramos um veículo hibrido.

Page 30: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

29

Figura 14: Diagrama de Bloco Interno

Fonte: Elaborado pelo autor

O diagrama de bloco interno tem a função de descrever a estrutura interna de um

bloco. Mostramos na figura 14 a estrutura interna do Subsistema de Energia. Podemos

observar que os comandos originários do Controlador de Energia Elétrica, da Transmissão e

do Motor de Combustão Interna são interligados por um barramento chamado CAN_Bus e

então repassados para a Unidade de Controle de Potência.

Page 31: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

30

Figura 15: Diagrama Paramétrico

Fonte: Elaborado pelo autor

Por fim temos o diagrama paramétrico, que representa as restrições entre os

elementos estruturais. Estas restrições são criadas a partir de sistemas de equações. Podemos,

através da figura 15, observar que a velocidade depende da aceleração, ou que a potência

influencia na velocidade, por exemplo.

Page 32: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

31

6. BLOG

Parte das pesquisas realizadas neste trabalho foi publicada na internet através de um

blog. Nele é possível conhecer um pouco da história da SysML, ler sobre os diagramas,

ferramentas e links para seus respectivos downloads, além de visualizar todos os diagramas

do modelo aqui mostrado. Uma outra preocupação ao construir o blog foi a de colocar tudo

em língua portuguesa, uma vez que entendemos que ainda há muito pouco sobre SysML em

português.

O blog foi hospedado no endereço http://sysmlbrasil.blogspot.com

Figura 16: Blog SysML Brasil

Fonte: Elaborado pelo Autor

Page 33: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

32

7. PESQUISAS RELACIONADAS E ESTUDOS FUTUROS

SysML é um assunto que tende a despontar no mercado e, pensando nisto algumas

pesquisas e estudos podem ser relacionados à ela. Podemos destacar os relacionados à

Modelica, que é uma linguagem de modelagem voltada para Engenharia de Sistemas,

possuindo características e propriedades de simulação dinâmica que, se combinadas com as de

SysML, podem permitir a criação de modelos ainda mais abrangentes e detalhados.

Existem hoje iniciativas para tentar integrar as duas linguagens, de forma que a partir

de um modelo em uma das linguagens seria possível criar o modelo equivalente ou

complementar na outra.

Atualmente as linhas de pesquisa trabalham com a possibilidade de manipular as

propriedades de alguns diagramas SysML utilizando XMI como interface entre as linguagens.

7.1 Modelica

Modelica é uma linguagem de modelagem, não proprietária, orientada a objeto com

uma definição textual para descrever sistemas físicos complexos, por exemplo, sistemas

mecânicos, elétricos, hidráulicos, térmicos e de controle.

Em 1996 um grupo de especialistas em simulação começou a desenvolver a

linguagem, que teve sua primeira versão lançada em setembro de 1997. Atualmente a

linguagem está na versão 3.2, que foi lançada oficialmente em março de 2010.

É uma linguagem open source mantida pela The Modelica Association.

7.1.1 Bibliotecas de Componentes

A Modelica Standard Library é uma biblioteca disponibilizada gratuitamente pela

organização The Modelica Association. A biblioteca contém os componentes mais

comumente usados na modelagem de sistema de vários domínios da engenharia, tais como:

mecânica, elétrica, hidráulica, termodinâmica, controle, etc. Atualmente ela dispõe de mais de

920 modelos de componentes genéricos e 620 funções de vários domínios.

Page 34: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

33

8. CONCLUSÕES

SysML é uma linguagem bastante completa e com grande potencial. Embora ainda

pouco conhecida, ela tende a crescer bastante e se popularizar principalmente nas

organizações que trabalham com sistemas embutidos.

Para modelagem de sistemas, ela possui algumas vantagens consideráveis em relação à

UML. O principal talvez seja o fato de conseguir expor em um diagrama as propriedades,

requisitos e restrições de um sistema de forma clara e objetiva.

O fato de já existirem estudos buscando a sua integração com Modelica é outro

incentivo para aprender SysML, uma vez que Modelica já é amplamente utilizada na

indústria, principalmente automotiva.

Page 35: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

34

9. BIBLIOGRAFIA

BALMELLI, Laurent. An overview of the Systems Modeling Language for product and

systems development, USA, IBM, 2006

BOCK, C. Systems engineering in the product lifecycle. US National Institute of Standards

and Technology, USA, 2005.

BUSTAMANTE, Bruno. Um enfoque baseado em conhecimento e dirigido a modelos de

engenharia de requisitos para projeto conceitual de satélites. São José dos Campos, INPE,

2010.

DA SILVA, Alexandre José. Aspectos da modelagem em SysML ligados à seleção de

processador para sistema embutido. Florianópolis, UFSC, 2006.

EHSANI, M., GAO, Y., EMADI, A., Modern, Electric, Hybrid Electric, and Fuel Cell

Vehicles - Fundamentals, Theory and Design, CRC Press, 2.ed., USA, 2010,

FORUM SYSML, Disponível em <http://www.sysmlforum.com/>, Acessado em: 02 mar.

2010

FOWLER, Martin. UML essencial: um breve guia para a linguagem-padrão de

modelagem de objetos. 3. ed. Porto Alegre: Bookman, 2005.

FRIEDENTHAL, S., MOORE, A., STEINER, R., OMG Systems Modeling Language

(OMG Tutorial), USA, 2008.

HALL, Arthur D. ; A Methodology for Systems Engineering, 1962

HOLT, Jon; PERRY, Simon. SysML for Systems Engineering (Professional Applications

of Computing), Editora IET, 2007

OMG SYSML, Disponível em <http://www.omgsysml.org/>, Acessado em: 02 mar. 2010

OMG SYSML, Systems Modeling Language (SysML) Specification. Version 1.1, 2008,

Disponível em <http://www.sysmlforum.com/docs/specs/OMGSysML-v1.1-08-11-01.pdf>

Acessado em 02 mar. 2010.

OMG SYSML, Systems Modeling Language (SysML) Specification. Version 1.2, 2010,

Disponível em <http://www.sysml.org/docs/specs/OMGSysML-v1.2-10-06-02.pdf>

Acessado em: 15 jul 2010.

ROBINSON, G.; SCOPEL, M.;GIRAFFA, L.; RHEINHEIMER L., Modelando Requisitos

Especificados com Mapas Conceituais Através da UML-MC, Manaus, Brasil, 2004.

ROSENBERG, Doug; MANCERELLA, Sam, Embedded Systems Development using

SysML: An Illustrated Example using Enterprise Architect, Sparx Systems Pty Ltd and

ICONIX, 2010

Page 36: SysML, uma extensão da UML a área industrial · uma chamada para propostas (UML for Systems Engineering Request for Proposal - UML for SE RFP). Foi então organizado o SysML Partners,

35

SAGE, Andrew Patrick; Systems Engineering, 1992

SYSML FÓRUM, Disponível em <http://www.sysmlforum.com> Acessado em 03 mar. 2010

WEILKIENS, Tim, Systems Engineering with SysML/UML ,1 ª edição, Morgan

Kaufmann Publishers Inc .,2007

WIKIPATENTS. Rain Controlled Windshield Wipers, Disponível em

<http://www.wikipatents.com/US-Patent-4620141/rain-controlled-windshield-wipers>

Acessado em: 06 abr. 2010