Es capítulo 5 - modelagem de sistemas

45
MODELAGEM DE SISTEMAS Felipe Cunha [email protected] Yugo Alencar [email protected] PPGI/UFPB 1 Chapter 5 System modeling

description

Engenharia de software - modelagem de sistemas

Transcript of Es capítulo 5 - modelagem de sistemas

Page 1: Es   capítulo 5  - modelagem de sistemas

MODELAGEM DE SISTEMAS

Felipe Cunha – [email protected]

Yugo Alencar – [email protected]

PPGI/UFPB

1Chapter 5 System modeling

Page 2: Es   capítulo 5  - modelagem de sistemas

TÓPICOS

Fundamentos

Modelos de contexto

Modelos de interação

Modelos de estrutura

Modelos de comportamento

Engenharia dirigida a modelos

Considerações finais

2Chapter 5 System modeling

Page 3: Es   capítulo 5  - modelagem de sistemas

FUNDAMENTOS

Modelagem de sistemas é o processo de

desenvolvimento de modelos abstratos de um sistema,

onde cada modelo apresenta uma diferente visão

daquele sistema.

“Um modelo abstrai o que o sistema faz e oculta os

detalhes”

UML – Linguagem de Modelagem Unificada

3Chapter 5 System modeling

Page 4: Es   capítulo 5  - modelagem de sistemas

FUNDAMENTOS - Modelos de uso gráfico

Como forma de facilitar a discussão sobre um sistema

existente ou proposto

Os modelos podem ser incompletos e usar notação informal

Como forma de documentar um sistema já existente

Modelos para algumas partes do sistema.

Como uma descrição detalhada para o D.B.Modelos

Modelos têm que ser tanto corretos e precisos, quanto

completos.

4Chapter 5 System modeling

Page 5: Es   capítulo 5  - modelagem de sistemas

FUNDAMENTOS - conceitos

Modelos do sistema existente

Ajudam a esclarecer o que o sistema faz

Levar os requisitos para um novo sistema

Modelos do sistema a ser desenvolvido

Ajudam a explicar os requisitos propostos para outros stakeholders do

sistema.

Em um processo de Engenharia dirigida a modelos, é

possível gerar a implementação total ou parcial do sistema a

partir do modelo de sistema

5Chapter 5 System modeling

Page 6: Es   capítulo 5  - modelagem de sistemas

FUNDAMENTOS - Perspectivas de sistema

6Chapter 5 System modeling

Perspectiva externa

Perspectiva de interação

Perspectiva estrutural

Perspectiva comportamental

Page 7: Es   capítulo 5  - modelagem de sistemas

FUNDAMENTOS - Tipos de diagramas UML

7Chapter 5 System modeling

Diagramas de atividades

Diagramas de caso de uso

Diagramas de sequência

Diagramas de classe

Diagramas de estado

Page 8: Es   capítulo 5  - modelagem de sistemas

FERRAMENTAS

Astah - http://astah.net/editions/community

Cacoo - https://cacoo.com/diagrams/

Comparação entre ferramentas:

http://en.wikipedia.org/wiki/Comparison_of_data_modeli

ng_tools

Chapter 5 System modeling 8

Page 9: Es   capítulo 5  - modelagem de sistemas

MODELOS DE CONTEXTO

Usados para ilustrar o contexto operacional de um

sistema e seu relacionamento com outros sistemas.

Ajuda a definir os limites e funcionalidades do sistema.

Cenário do sistema MHC-PMS

Processo de negócio do sistema MHC-PMS

9Chapter 5 System modeling

Page 10: Es   capítulo 5  - modelagem de sistemas

MODELOS DE CONTEXTO – Cenário MHC-PMS

Sistema de Gerenciamento de Pacientes com

Problemas de Saúde Mental

Principais requisitos:

Mantém dados dos pacientes

Utilizados em clínicas especializadas e em hospitais

Acesso aos dados on line e off line

Não contém outras informações médicas dos pacientes

Gerar informação gerencial

Fornecer ao pessoal médico informações atualizadas

Usuários do sistema da área da saúde e de outras áreas

Registra, Gerencia e Monitora consultas, condições e evolução

privacidade e segurança são requisitos críticos10Chapter 5 System modeling

Page 11: Es   capítulo 5  - modelagem de sistemas

MODELOS DE CONTEXTO - MHC-PMS

11Chapter 5 System modeling

Page 12: Es   capítulo 5  - modelagem de sistemas

MODELOS DE CONTEXTO – Processo

Modelos de contexto simplesmente mostram os

sistemas em seu ambiente

Mas sob perspectiva de processo, mostram como o

sistema é desenvolvido em processos de negócio

Modelo de processo de internação involutária

12Chapter 5 System modeling

Page 13: Es   capítulo 5  - modelagem de sistemas

MODELOS DE CONTEXTO – Processo de

internação involuntária

13Chapter 5 System modeling

Page 14: Es   capítulo 5  - modelagem de sistemas

MODELOS DE INTERAÇÃO - conceitos

Modelar a interação de usuários do sistema é importante

para ajudar a identificar requisitos de usuário

Modelar a interação entre sistemas ajuda a identificar

problemas de comunicação que podem surgir

Modelar a interação de componentes ajuda a definir se a

estrutura do sistema será capaz de produzir o

desempenho e confiabilidade desejados

14Chapter 5 System modeling

Page 15: Es   capítulo 5  - modelagem de sistemas

MODELOS DE INTERAÇÃO - modelagem de

casos de uso

Cada caso de uso representa uma tarefa discreta que

envolve a interação com um sistema externo

Atores em um caso de uso podem ser pessoas ou

outros sistemas

Representado esquematicamente para fornecer uma

visão geral do caso de uso e de forma textual mais

detalhada

15Chapter 5 System modeling

Page 16: Es   capítulo 5  - modelagem de sistemas

MODELOS DE INTERAÇÃO - modelagem de

casos de uso

Caso de uso do MHC-PMS

16Chapter 5 System modeling

Page 17: Es   capítulo 5  - modelagem de sistemas

MODELOS DE INTERAÇÃO - modelagem de

casos de uso

MHC-PMS: Transferir dados

Atores Recepcionista, Sistema de Registro de Pacientes (SRP)

Descrição A recepcionista pode transferir dados do MHC-PMS para

um banco de dados geral de registro do paciente que é

mantido por uma autoridade de saúde. As informações

transferidas tanto pode ser atualizado de informações

pessoais (endereço, telefone, etc) ou um resumo do

diagnóstico e tratamento do paciente.

Dados Informações pessoais do paciente, resumo tratamento

Estímulo Comando de usuário emitido pela Recepcionista

Resposta Confirmação de que SRP foi atualizado

Comentários A recepcionista deve ter permissões de segurança

apropriadas para acessar as informações do paciente e

do PRS

17Chapter 5 System modeling

Page 18: Es   capítulo 5  - modelagem de sistemas

MODELOS DE INTERAÇÃO - modelagem de

casos de uso

18Chapter 5 System modeling

Page 19: Es   capítulo 5  - modelagem de sistemas

MODELOS DE INTERAÇÃO – usando diagramas

de sequência

Usado para modelar as interações entre atores e os

objetos com o sistema

Mostra uma sequencia de interações de um caso de uso.

19Chapter 5 System modeling

Page 20: Es   capítulo 5  - modelagem de sistemas

MODELOS DE INTERAÇÃO – usando diagramas

de sequência

20Chapter 5 System modeling

Page 21: Es   capítulo 5  - modelagem de sistemas

MODELOS DE INTERAÇÃO – usando diagramas

de sequência

Chapter 5 System modeling 21

Page 22: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS

Modelam a organização do sistema em termos de

componentes, o que ele faz e seus relacionamentos

São modelos estáticos, que mostram a estrutura do

projeto do sistema, ou dinâmicos, que mostram a

organização do sistema em execução

Os modelos estruturais são criados quando se está

discutindo e projetando a arquitetura do sistema

22Chapter 5 System modeling

Page 23: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – Diagramas de

classe

São usados no desenvolvimento Orientado a Objetos

para mostrar as classes em um sistema e as

associações entre elas

Uma classe em OO pode ser pensado como uma

definição geral de um tipo de objeto de sistema

Uma associação é um elo entre as classes que indica

que existe alguma relação entre essas classes

23Chapter 5 System modeling

Page 24: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – Diagramas de

classe

24Chapter 5 System modeling

Page 25: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – Diagramas de

classe

25Chapter 5 System modeling

Page 26: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – Diagramas de

classe

26Chapter 5 System modeling

Page 27: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – Generalização

Generalização é usada para gerenciar a complexidade

Características das entidades Caracteríscas das

classes

Membros das classes têm características comuns

Chapter 5 System modeling 27

Page 28: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – Hierarquia de

generalização

28Chapter 5 System modeling

Page 29: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – Hierarquia de

generalização

29Chapter 5 System modeling

Page 30: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – agregação

Um modelo de agregação mostra como as classes que

são coleções são compostas de outras classes

Modelos de agregação são semelhantes a

relacionamento em modelos de dados semânticos

30Chapter 5 System modeling

Page 31: Es   capítulo 5  - modelagem de sistemas

MODELOS ESTRUTURAIS – modelos de

agregação

31Chapter 5 System modeling

Page 32: Es   capítulo 5  - modelagem de sistemas

MODELOS COMPORTAMENTAIS

Modelos comportamentais são modelos do

comportamento dinâmico de um sistema como ele está

em execução

Dados – de entrada, que tem de ser processado pelo

sistema

Eventos – Algum evento acontece no sistema de

gatilhos

32Chapter 5 System modeling

Page 33: Es   capítulo 5  - modelagem de sistemas

MODELOS COMPORTAMENTAIS - Modelagem

dirigida a Dados

Chapter 5 System modeling 33

Page 34: Es   capítulo 5  - modelagem de sistemas

Processamento de pedidos – sistema bomba de

insulina

34Chapter 5 System modeling

Page 35: Es   capítulo 5  - modelagem de sistemas

MODELOS COMPORTAMENTAIS - Modelagem

dirigida a Eventos

Sistemas de tempo real

Por exemplo, um sistema de comutação de telefone fixo

Os eventos pode provocar uma transição de um estado

para outro

Chapter 5 System modeling 35

Page 36: Es   capítulo 5  - modelagem de sistemas

MODELOS COMPORTAMENTAIS - Modelagem

dirigida a eventos - Microondas

36Chapter 5 System modeling

Page 37: Es   capítulo 5  - modelagem de sistemas

MODELOS COMPORTAMENTAIS - Modelagem

dirigida a eventos

37Chapter 5 System modeling

Page 38: Es   capítulo 5  - modelagem de sistemas

MODELOS COMPORTAMENTAIS - Modelagem

dirigida a eventos

38Chapter 5 System modeling

Page 39: Es   capítulo 5  - modelagem de sistemas

MODELOS COMPORTAMENTAIS - Modelagem

dirigida a eventos – Operação do Microondas

39Chapter 5 System modeling

Page 40: Es   capítulo 5  - modelagem de sistemas

ENGENHARIA DIRIGIDA A MODELOS

Engenharia Dirigida a Modelos (MDE) é uma abordagem

para o desenvolvimento de software onde os modelos,

em vez de programas são os principais resultados do

processo de desenvolvimento

Os programas que executam em uma plataforma de

software são então gerados automaticamente a partir

dos modelos

Chapter 5 System modeling 40

Page 41: Es   capítulo 5  - modelagem de sistemas

ENGENHARIA DIRIGIDA A MODELOS

Prós

Permite considerar níveis mais altos de abstração

Gerando Código significa automaticamente que é mais barato

para adaptar os sistemas para novas plataformas.

Contras

Modelos de abstração nem sempre corretos e completos

Custo alto no desenvolvimento de tradutores para as novas

plataformas.

Chapter 5 System modeling 41

Page 42: Es   capítulo 5  - modelagem de sistemas

ENGENHARIA DIRIGIDA A MODELOS - MDA

transformations

42Chapter 5 System modeling

Page 43: Es   capítulo 5  - modelagem de sistemas

CONSIDERAÇÕES FINAIS

Um modelo é uma visão abstrata de um sistema que ignora

detalhes. Desenvolvido sob diferentes perspectivas.

Modelos de contexto mostram como o sistema está posicionado em

relação a outros sistemas. Define as funcionalidades e limites.

Modelos de interação usam diagramas de caso de uso e de

sequência para modelar interações entre usuários e sistemas.

Modelos de estrutura mostram a organização e arquitetura do

sistema usando diagramas de classes e suas associações.

Modelos de comportamento são usados para mostrar o

comportamento do sistema em execução quando processar dados

ou lidar com eventos, usando diagramas de atividades e de estado.

EDM é a abordagem que gera códigos a partir de modelos.

Chapter 5 System modeling 43

Page 44: Es   capítulo 5  - modelagem de sistemas

CONSIDERAÇÕES FINAIS

1. Por que modelar sistemas?

2. Que erros acontecem quando não se entende o

contexto?

3. Como modelar um sistema existente?

4. Por que não é sempre preciso que um modelo

contenha detalhes?

5. Você como parte de uma equipe que propõe usar o

Desenvolvimento Baseado em Modelos, quais fatores

devem ser levados em conta?

Chapter 5 System modeling 44

Page 45: Es   capítulo 5  - modelagem de sistemas

REFERÊNCIAS

Ian Sommerville. Engenharia de Software, 9a. Edição. 2011

Chapter 5 System modeling 45