SlideShare uma empresa Scribd logo
Especificação de Projeto
Modelagem e Arquitetura de Sistemas de Software
Modelagem de sistemas
 A modelagem de sistemas é o processo de desenvolvimento
de modelos abstratos de um sistema, de maneira que cada
modelo apresenta uma visão ou perspectiva diferente do
sistema.
 Atualmente, a modelagem de sistemas se tornou a
representação de um sistema usando algum tipo de notação
gráfica, que hoje em dia quase sempre são baseadas em
notações em Unified Modeling Language (UML).
 A modelagem de sistemas ajuda o analista a entender a
funcionalidade do sistema e os modelos são usados para
comunicação com os clientes.
Perspectivas de sistemas
 Uma perspectiva externa, na qual você modela o contexto ou
ambiente do sistema.
 Um perspectiva de interação, em que você modela as
interações entre um sistema e seu ambiente ou entre os
componentes de um sistema.
 Uma perspectiva estrutural, na qual você modela a
organização de um sistema ou a estrutura dos dados
processados pelo sistema.
 Uma perspectiva comportamental, em que você modela o
comportamento dinâmico do sistema e como ele responde a
eventos.
Uso de modelos gráficos
 Como forma de facilitar a discussão sobre um sistema
existente ou proposto
 Os modelos incompletos e incorretos podem ser usados já
que servem para auxiliar a discussão.
 Como uma forma de documentar um sistema existente
 Os modelos devem ser uma representação precisa do
sistema mas não precisam estar completos.
 Como uma descrição detalhada do sistema, a qual pode ser
usada para gerar uma implementação do sistema
 Os modelos precisam e estar corretos e completos.
Tipos de diagramas UML
 Os diagramas de atividades, que mostram as atividades
envolvidas em um processo ou no processamento de dados.
 Os diagramas de casos de uso, que mostram as interações
entre um sistema e seu ambiente.
 Os diagramas de sequência, que mostram as interações entre
os atores e o sistema e entre os componentes do sistema.
 Os diagramas de classe, que mostram as classes de objeto
no sistema e as associações entre as classes.
 Os diagramas de estado, que mostram como o sistema reage
a eventos internos e externos.
Modelos de contexto
 Os modelos de contexto são usados para ilustrar o
contexto operacional de um sistema – eles mostram o
que existe fora dos limites do sistema.
 Interesses sociais e organizacionais podem afetar a
decisão de onde posicionar os limites do sistema.
 Modelos de arquitetura mostram o sistema e seu
relacionamento com outros sistemas.
Limites do sistema
 Os limites do sistema são estabelecidos para definir o que
está dentro e o que está fora do sistema.
 Eles mostram outros sistemas que são usados ou dependem
do sistema que está sendo desenvolvido.
 A posição do limite do sistema tem um efeito profundo nos
requisitos do sistema.
 A definição de um limite de sistema é uma decisão política
 Podem haver pressões para desenvolver limites de sistema
que aumentem/diminuam a influência ou carga de trabalho de
diferentes partes de uma organização.
O contexto do MHC-PMS
Perspectivas de processo
 Os modelos de contexto mostram apenas os outros
sistemas no ambiente, e não como o sistema que está
sendo desenvolvido é usado nesse ambiente.
 Os modelos de processo revelam como o sistema em
desenvolvimento está sendo desenvolvido é como esse
é utilizado em processos de negócio mais amplos.
 Os diagramas de atividades da UML podem ser usados
para definir os modelos de processo do negócio.
Modelo de processo de internação
involuntária
Modelos de interação
 A modelagem da interação do usuário é importante por
auxiliar a identificar os requisitos do usuário.
 Modelar a interação sistema-a-sistema destaca os problemas
de comunicação que possam vir a surgir.
 Modelar a interação de componentes auxilia a entender se
uma estrutura proposta de sistema pode fornecer um
desempenho e uma confiança requeridas do sistema.
 Os diagramas de caso de uso e os diagramas de sequência
podem ser usados para modelagem de interação.
Modelagem de caso de uso
 Os casos de uso foram desenvolvidos originalmente para
auxiliar na elicitação de requisitos e atualmente, estão
incorporados na UML.
 Cada caso de uso representa uma tarefa distinta que envolve
interação externa com um sistema.
 Os atores em um caso de uso podem ser pessoas ou outros
sistemas.
 São representados esquematicamente para fornecer uma
visão geral do caso de uso e em uma forma textual mais
detalhada.
Caso de uso de transferência de dados
Descrição tabular do caso de uso
‘Transferir dados’
Casos de uso envolvendo o papel da
‘Recepcionista do médico’
Diagramas de sequência
 Os diagramas de sequência são parte da UML e são usados
para modelar as interações entre os atores e os objetos no
sistema.
 Um diagrama de sequência mostra a sequência de interações
que ocorrem durante um caso de uso em particular ou uma
instância de caso uso.
 Os objetos e os atores envolvidos são listados na parte
superior do diagrama com uma linha pontilhada desenhada
verticalmente a partir deles.
 As interações entre os objetos são indicadas por setas
anotadas.
Diagrama de sequência para
‘Ver informações de pacientes’
Diagrama de sequência para
‘Transferir dados’
Modelos estruturais
 Modelos estruturais de software mostram a organização
de um sistema em termos de seus componentes que
compõem este sistema e seus relacionamentos.
 Os modelos estruturais podem ser modelos estáticos,
que mostram a estrutura do projeto do sistema, ou
modelos dinâmicos, que mostram a organização do
sistema quando ele está em execução.
 Você cria modelos estruturais de um sistema quando se
está discutindo e projetando a arquitetura do sistema.
Diagramas de classe
 Os diagramas de classe são usados quando se está
desenvolvendo um modelo de sistema orientado a objetos
para mostrar as classes em um sistema e as associações
entre as classes.
 Uma classe de objeto pode ser considerada como uma
definição geral de um tipo de objeto do sistema.
 Uma associação é uma ligação entre classes que indica que
há algum relacionamento entre essas classes.
 Quando se está desenvolvendo os modelos durante os
primeiros estágios do processo de engenharia de software, os
objetos representam alguma coisa no mundo real como um
paciente, uma receita médica, um médico, etc.
Classes e associação em UML
Classes e associações no MHC-PMS
A classe Consulta
Pontos Importantes
 Um modelo é uma visão abstrata de um sistema que ignora
alguns detalhes do sistema.
 Modelos de sistema complementares podem ser
desenvolvidos para mostrar o contexto, interações, estrutura e
comportamento do sistema.
 Os modelos de contexto mostram como um sistema que está
sendo modelado está posicionado em um ambiente com
outros sistemas e processos.
 Os diagramas de caso de uso e os diagramas de sequência
são usados para descrever as interações entre o usuário do
sistema que está sendo projetado e usuários ou outros
sistemas.
Pontos Importantes
 Os casos de uso descrevem as interações entre um
sistema e atores externos; diagramas de sequência
adicionam mais informações a esses mostrando as
interações entre os objetos do sistema.
 Os modelos estruturais mostram a organização e
arquitetura de um sistema.
 Os diagramas de classe são usados para definir a
estrutura estática de classes em um sistema e suas
associações.
Generalização
 A generalização é uma técnica de uso cotidiano para
gerenciar complexidade.
 Ao invés de aprender as características detalhadas de
todas as entidades envolvidas, colocamos essas
entidades em classes mais gerais (animais, carros,
casas, etc.) e aprendemos as características dessas
classes.
 O que nos permite supor que membros diferentes dessas
classes possuem algumas características comuns como,
por exemplo, esquilos e ratos são roedores.
Generalização
 Na modelagem de sistemas é geralmente útil examinar as classes
de um sistema para ver se há escopo para generalização. Se
mudanças forem propostas você não precisará examinar todas as
classes no sistema para ver se são afetadas pela mudança.
 Em linguagens orientadas a objeto, como o Java, generalização é
implementada usando os mecanismos de herança de classe que já
existem na linguagem.
 Em uma generalização, os atributos e operações associados a
classes mais altas também são associados com as classes de nível
mais baixo.
 As classes de nível mais baixo são subclasses e herdam os
atributos e operações de suas superclasses. Essas classes mais
baixas adicionam atributos e operações mais específicas.
Uma hierarquia de generalização
Uma hierarquia de generalização com
detalhes adicionais
Modelos de agregação de classes de
objetos
 Um modelo de agregação mostra como as classes que
são coleções são compostas de outras classes.
 Os modelos de agregação são similares aos
relacionamentos parte-de em modelos de dados
semânticos.
A associação por agregação
Modelos comportamentais
 Os modelos comportamentais são modelos do
comportamento dinâmico do sistema enquanto esse está em
execução. Eles mostram o que acontece ou o que deveria
acontecer quando um sistema responde a um estimulo de seu
ambiente.
 Podem-se considerar esses estimulos como sendo de dois
tipos:
 Dados: Alguns dados que chegam e precisam ser
processados pelo sistema.
 Eventos: Alguns eventos que acontecem disparam o
processamento do sistema. Os eventos podem ter dados
associados, embora isso não ocorra sempre.
Modelagem dirigida a dados
 Vários sistemas de negócio são sistemas de processamento
de dados que são dirigidos principalmente a dados.
 Eles são controlados pela entrada de dados no sistema com
relativamente quase nenhum processamento de eventos
externos.
 Os modelos dirigidos a dados mostram a sequência de ações
envolvidas no processamento dos dados entrantes e na
geração de uma saída associada.
 Eles são particularmente úteis durante a análise de requisitos
por poderem ser usados para mostrar o processamento fim-a-
fim em um sistema.
Um modelo de atividades de
funcionamento da bomba de insulina
Processamento de pedidos
Modelagem dirigida a eventos
 Geralmente , os sistemas em tempo real são dirigidos a
eventos, com o mínimo de processamento de dados.
 Por exemplo, um sistema de comutação de linhas telefônicas
responde a eventos como ‘recebimento de chamada’ gerando
um tom de discagem.
 A modelagem dirigida a eventos mostra como um sistema
responde a eventos externos e internos.
 Essa se baseia na suposição de que um sistema tem um
número limitado de estados e que os eventos (estímulos)
podem causar a transição de um estado para outro.
Modelos de máquina de estados
 Esses modelam o comportamento do sistema em resposta a
eventos externos e internos.
 Eles mostram as respostas do sistema a estímulos, e por isso,
geralmente são usados para modelar sistemas de tempo real.
 Os modelos de máquina de estados mostram os estados do
sistema, tais como nós, e os eventos desses, tais como arcos
entre esses nós. Quando um evento ocorre, o sistema move-
se de um estado para outro.
 Os gráficos de estado são uma parte integral da UML e são
usados para representar os modelos de máquina de estados.
Diagrama de estados de um forno de
micro-ondas
Estados e estímulos para o forno de
micro-ondas (a)
Estados e estímulos para o forno de
micro-ondas (b)
Operação do forno de micro-ondas
Engenharia dirigida a modelos
 A engenharia dirigida a modelos (MDE – Model-Driven
Engineering) é uma abordagem do desenvolvimento de
software, na qual os modelos e não os programas são os
principais produtos do processo de desenvolvimento.
 Os programas executados em uma plataforma de
hardware/software são gerados automaticamente, a partir dos
modelos.
 Os proponentes da MDE argumentam que isso aumenta o
nível de abstração na engenharia de software, o que faz com
que os engenheiros não precisem mais se preocupar com
detalhes de linguagem de programação ou com as
especifidades das plataformas de execução.
Uso da engenharia dirigida a modelos
 A engenharia dirigida a modelos ainda está em um estágio de
desenvolvimento inicial e ainda não é certo se essa terá um efeito
significativo na prática da engenharia de software.
 Prós
 Permite tratar dos sistemas em níveis mais altos de abstração
 A geração automática do código significa menor custo de
adaptação dos sistemas à novas plataformas.
 Contras
 Os modelos são para abstração e não estão necessariamente
corretos para implementação.
 A economia criada pela geração de código pode ser
contrabalanceada pelos custos de desenvolver tradutores para
novas plataformas.
Arquitetura dirigida a modelos
 A arquitetura dirigida a modelos (MDA – Model-Driven
Architeture) foi a precursora da mais genérica engenharia
dirigida a modelos.
 A MDA é uma abordagem de projeto e implementação de
software centrada em modelos, que usa um subconjunto de
modelos da UML para descrever o sistema.
 São criados modelos em diferentes níveis de abstração.
 Em princípio, a partir de um modelo independente de
plataforma de alto nível, é possível gerar um programa
funcional sem intervenção manual.
Tipos de modelos
 Um modelo independente de computação (CIM –
Computation Independent Model)
 Esses modelam as importantes abstrações de domínio
usadas em um sistema. Ás vezes, os CIMs são chamados de
modelos de domínio.
 Um modelo independente de plataforma (PIM – Platform
Independent Model)
 Esses modelam a operação do sistema sem referência para a
sua implementação. Geralmente, o PIM é descrito pelo uso de
modelos da UML que mostram a estrutura estática do
sistema, e como esse responde a eventos externos e
internos.
Tipos de modelos
 Modelos específicos de plataforma (PSM – Platform
Specific Models)
 Esses são transformações do modelo independente de
plataforma com um PSM separado para cada aplicativo
da plataforma. A princípio, devem haver camadas de
PSM, com cada camada adicionando algum detalhe
específico à plataforma.
Transformações de MDA
Vários modelos especificos de plataforma
Métodos ágeis e MDA
 Os desenvolvedores de MDA alegam que a intenção da MDA
é auxiliar uma abordagem iterativa ao desenvolvimento e por
isso, essa pode ser usada nos métodos ágeis.
 A noção da modelagem inicial extensiva contradiz as idéias
fundamentais do manifesto ágil e eu suspeito que poucos
desenvolvedores ágeis sentem-se confortáveis com a
engenharia dirigida a modelos.
 Se as transformações puderem ser completamente
automáticas e um programa completo gerado a partir de um
PIM, então, em princípio, a MDA poderia ser usada em um
processo de desenvolvimento ágil já que não seria necessária
nenhuma codificação separada.
Pontos Importantes
 Os modelos comportamentais são usados para descrever o
comportamento dinâmico de um sistema em execução. Esse
comportamento pode ser modelado da perspectiva dos dados
processados pelo sistema, ou pelos eventos que estimulam respostas de
um sistema.
 Os diagramas de atividades podem ser usados para modelar o
processamento dos dados, no qual cada atividade representa um passo
do processo.
 Os diagramas de estado são usados para modelar o comportamento de
um sistema em resposta a eventos internos e externos.
 A engenharia dirigida a modelos é uma abordagem do desenvolvimento de
software, na qual um sistema é representado como um conjunto de
modelos que podem ser automaticamente transformados em códigos
executáveis.
Referências e dicas
 Sommer 9ed. caps 5 e 6
 A leitura do capítulo e dos casos no final do capítulo é
altamente recomendada.
 A pesquisa pelos itens do quadro de ideias discutidos em
sala de aula vai contribuir para expandir os seus
horizontes de conhecimento – independente de ser ou
não item de cobrança em avaliações futuras.
Especificação de Projeto
Modelagem de Sistemas de Software

Mais conteúdo relacionado

Mais procurados

Unidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetosUnidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetos
Rene Guaman-Quinche
 
As aula 1 - introdução a análise de sistemas
As   aula 1 - introdução a análise de sistemasAs   aula 1 - introdução a análise de sistemas
As aula 1 - introdução a análise de sistemas
tontotsilva
 
Zachman framework
Zachman frameworkZachman framework
Zachman framework
Alexander Vilcapaza Chavez
 
Historia De Dinamica
Historia De DinamicaHistoria De Dinamica
Historia De Dinamica
Mg_Epifania
 
Teoría general de sistemas (tgs) 1
Teoría general de sistemas (tgs) 1Teoría general de sistemas (tgs) 1
Teoría general de sistemas (tgs) 1
Juan Manuel Carrión Delgado
 
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. CarvalhoAula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Rudson Kiyoshi Souza Carvalho
 
Clasificacion de sistemas
Clasificacion de sistemasClasificacion de sistemas
Clasificacion de sistemas
Edwin Ortega
 
Uml
UmlUml
Unidad III Teoría General de Sistemas. Tema IV Enfoque de Sistemas en las Org...
Unidad III Teoría General de Sistemas. Tema IV Enfoque de Sistemas en las Org...Unidad III Teoría General de Sistemas. Tema IV Enfoque de Sistemas en las Org...
Unidad III Teoría General de Sistemas. Tema IV Enfoque de Sistemas en las Org...
AnaCedeo19
 
Ciclo Vida del Software
Ciclo Vida del SoftwareCiclo Vida del Software
Ciclo Vida del Software
Wilfredo Mogollón
 
Estrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaEstrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na prática
Leinylson Fontinele
 
Modelo essencial
Modelo essencialModelo essencial
Modelo essencial
Gabriel Moura
 
Banco de Dados (parte 01)
Banco de Dados (parte 01)Banco de Dados (parte 01)
Banco de Dados (parte 01)
Alex Camargo
 
Ch10 dependable systems
Ch10 dependable systemsCh10 dependable systems
Ch10 dependable systems
software-engineering-book
 
Teoria de sistemas point 02
Teoria de sistemas point 02Teoria de sistemas point 02
Teoria de sistemas point 02
maritaramos17
 
Sadcw 7e chapter06-done
Sadcw 7e chapter06-doneSadcw 7e chapter06-done
Sadcw 7e chapter06-done
LamineKaba6
 
Pensamiento sistémico
Pensamiento sistémicoPensamiento sistémico
Pensamiento sistémico
Jaime Suárez Tobar
 
Caso De Uso
Caso De UsoCaso De Uso
Caso De Uso
Rayol Neto
 
Introdução à Análise de Sistemas
Introdução à Análise de SistemasIntrodução à Análise de Sistemas
Introdução à Análise de Sistemas
Nécio de Lima Veras
 
Sem 8 Modelo De Analisis
Sem 8 Modelo De AnalisisSem 8 Modelo De Analisis
Sem 8 Modelo De Analisis
guest0a6e49
 

Mais procurados (20)

Unidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetosUnidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetos
 
As aula 1 - introdução a análise de sistemas
As   aula 1 - introdução a análise de sistemasAs   aula 1 - introdução a análise de sistemas
As aula 1 - introdução a análise de sistemas
 
Zachman framework
Zachman frameworkZachman framework
Zachman framework
 
Historia De Dinamica
Historia De DinamicaHistoria De Dinamica
Historia De Dinamica
 
Teoría general de sistemas (tgs) 1
Teoría general de sistemas (tgs) 1Teoría general de sistemas (tgs) 1
Teoría general de sistemas (tgs) 1
 
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. CarvalhoAula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
 
Clasificacion de sistemas
Clasificacion de sistemasClasificacion de sistemas
Clasificacion de sistemas
 
Uml
UmlUml
Uml
 
Unidad III Teoría General de Sistemas. Tema IV Enfoque de Sistemas en las Org...
Unidad III Teoría General de Sistemas. Tema IV Enfoque de Sistemas en las Org...Unidad III Teoría General de Sistemas. Tema IV Enfoque de Sistemas en las Org...
Unidad III Teoría General de Sistemas. Tema IV Enfoque de Sistemas en las Org...
 
Ciclo Vida del Software
Ciclo Vida del SoftwareCiclo Vida del Software
Ciclo Vida del Software
 
Estrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaEstrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na prática
 
Modelo essencial
Modelo essencialModelo essencial
Modelo essencial
 
Banco de Dados (parte 01)
Banco de Dados (parte 01)Banco de Dados (parte 01)
Banco de Dados (parte 01)
 
Ch10 dependable systems
Ch10 dependable systemsCh10 dependable systems
Ch10 dependable systems
 
Teoria de sistemas point 02
Teoria de sistemas point 02Teoria de sistemas point 02
Teoria de sistemas point 02
 
Sadcw 7e chapter06-done
Sadcw 7e chapter06-doneSadcw 7e chapter06-done
Sadcw 7e chapter06-done
 
Pensamiento sistémico
Pensamiento sistémicoPensamiento sistémico
Pensamiento sistémico
 
Caso De Uso
Caso De UsoCaso De Uso
Caso De Uso
 
Introdução à Análise de Sistemas
Introdução à Análise de SistemasIntrodução à Análise de Sistemas
Introdução à Análise de Sistemas
 
Sem 8 Modelo De Analisis
Sem 8 Modelo De AnalisisSem 8 Modelo De Analisis
Sem 8 Modelo De Analisis
 

Destaque

Cap1 introd-engenharia de software
Cap1 introd-engenharia de softwareCap1 introd-engenharia de software
Cap1 introd-engenharia de software
Adilson Nascimento
 
Articulo amcham pdf
Articulo amcham pdfArticulo amcham pdf
Articulo amcham pdf
Federico Valera
 
Modelando Sistemas com UML
Modelando Sistemas com UMLModelando Sistemas com UML
Modelando Sistemas com UML
armeniocardoso
 
Primeira Aula PHP
Primeira Aula PHPPrimeira Aula PHP
Primeira Aula PHP
Helton Ritter
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
Norivan Oliveira
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
Luiz Junior
 
Diagramas de estados
Diagramas de estadosDiagramas de estados
Diagramas de estados
still01
 

Destaque (7)

Cap1 introd-engenharia de software
Cap1 introd-engenharia de softwareCap1 introd-engenharia de software
Cap1 introd-engenharia de software
 
Articulo amcham pdf
Articulo amcham pdfArticulo amcham pdf
Articulo amcham pdf
 
Modelando Sistemas com UML
Modelando Sistemas com UMLModelando Sistemas com UML
Modelando Sistemas com UML
 
Primeira Aula PHP
Primeira Aula PHPPrimeira Aula PHP
Primeira Aula PHP
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
 
Diagramas de estados
Diagramas de estadosDiagramas de estados
Diagramas de estados
 

Semelhante a 07 Modelagem (Sommer)

Relatório da uml
Relatório da umlRelatório da uml
Relatório da uml
Andre Oliveira
 
Trabalho de análise e projeto 2
Trabalho de análise e projeto 2Trabalho de análise e projeto 2
Trabalho de análise e projeto 2
Meire Dos Santos Aguiar
 
Aula 5 uml1 (1)
Aula 5   uml1 (1)Aula 5   uml1 (1)
Aula 5 uml1 (1)
Tiago Vizoto
 
Documentar Requisitos Usando Modelos
Documentar Requisitos Usando ModelosDocumentar Requisitos Usando Modelos
Documentar Requisitos Usando Modelos
Barbara Lima
 
Diagrama de implantação
Diagrama de implantaçãoDiagrama de implantação
Diagrama de implantação
elliando dias
 
4º semestre
4º semestre4º semestre
4º semestre
Jean Pierry
 
Aula-04-UML.pptx
Aula-04-UML.pptxAula-04-UML.pptx
Aula-04-UML.pptx
rubens708870
 
Diagramas uml
Diagramas umlDiagramas uml
Diagramas uml
Gabriel Faustino
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
Rodrigo Cascarrolho
 
Analise sistemas 03
Analise sistemas 03Analise sistemas 03
Analise sistemas 03
Caroline Raquel Rodrigues
 
Analise sistemas 03
Analise sistemas 03Analise sistemas 03
Analise sistemas 03
Caroline Raquel Rodrigues
 
Principais diagramas da UML
Principais diagramas da UMLPrincipais diagramas da UML
Principais diagramas da UML
Jéssica Nathany Carvalho Freitas
 
CursoUML - Unified Modeling Language
CursoUML - Unified Modeling LanguageCursoUML - Unified Modeling Language
CursoUML - Unified Modeling Language
elliando dias
 
Es capítulo 5 - modelagem de sistemas
Es   capítulo 5  - modelagem de sistemasEs   capítulo 5  - modelagem de sistemas
Es capítulo 5 - modelagem de sistemas
Felipe Oliveira
 
Uml ppoint
Uml ppointUml ppoint
Uml ppoint
MindSolutions
 
UML1.pdf
UML1.pdfUML1.pdf
Aula modelagem de dados
Aula modelagem de dadosAula modelagem de dados
Aula modelagem de dados
Gabriel Moura
 
1.pdf
1.pdf1.pdf
Trabalho uml
Trabalho umlTrabalho uml
Trabalho uml
leticiasbh
 
Relatorio
RelatorioRelatorio
Relatorio
Andre Oliveira
 

Semelhante a 07 Modelagem (Sommer) (20)

Relatório da uml
Relatório da umlRelatório da uml
Relatório da uml
 
Trabalho de análise e projeto 2
Trabalho de análise e projeto 2Trabalho de análise e projeto 2
Trabalho de análise e projeto 2
 
Aula 5 uml1 (1)
Aula 5   uml1 (1)Aula 5   uml1 (1)
Aula 5 uml1 (1)
 
Documentar Requisitos Usando Modelos
Documentar Requisitos Usando ModelosDocumentar Requisitos Usando Modelos
Documentar Requisitos Usando Modelos
 
Diagrama de implantação
Diagrama de implantaçãoDiagrama de implantação
Diagrama de implantação
 
4º semestre
4º semestre4º semestre
4º semestre
 
Aula-04-UML.pptx
Aula-04-UML.pptxAula-04-UML.pptx
Aula-04-UML.pptx
 
Diagramas uml
Diagramas umlDiagramas uml
Diagramas uml
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
Analise sistemas 03
Analise sistemas 03Analise sistemas 03
Analise sistemas 03
 
Analise sistemas 03
Analise sistemas 03Analise sistemas 03
Analise sistemas 03
 
Principais diagramas da UML
Principais diagramas da UMLPrincipais diagramas da UML
Principais diagramas da UML
 
CursoUML - Unified Modeling Language
CursoUML - Unified Modeling LanguageCursoUML - Unified Modeling Language
CursoUML - Unified Modeling Language
 
Es capítulo 5 - modelagem de sistemas
Es   capítulo 5  - modelagem de sistemasEs   capítulo 5  - modelagem de sistemas
Es capítulo 5 - modelagem de sistemas
 
Uml ppoint
Uml ppointUml ppoint
Uml ppoint
 
UML1.pdf
UML1.pdfUML1.pdf
UML1.pdf
 
Aula modelagem de dados
Aula modelagem de dadosAula modelagem de dados
Aula modelagem de dados
 
1.pdf
1.pdf1.pdf
1.pdf
 
Trabalho uml
Trabalho umlTrabalho uml
Trabalho uml
 
Relatorio
RelatorioRelatorio
Relatorio
 

Mais de Waldemar Roberti

06 Requisitos
06 Requisitos06 Requisitos
06 Requisitos
Waldemar Roberti
 
05 agile
05 agile05 agile
02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais
Waldemar Roberti
 
03 Modelo de processo de software
03 Modelo de processo de software03 Modelo de processo de software
03 Modelo de processo de software
Waldemar Roberti
 
04 Unified process
04 Unified process04 Unified process
04 Unified process
Waldemar Roberti
 
01 Introdução - Contextualização Engenharia de Software
01 Introdução - Contextualização Engenharia de Software01 Introdução - Contextualização Engenharia de Software
01 Introdução - Contextualização Engenharia de Software
Waldemar Roberti
 
00 Apresentação
00 Apresentação00 Apresentação
00 Apresentação
Waldemar Roberti
 

Mais de Waldemar Roberti (7)

06 Requisitos
06 Requisitos06 Requisitos
06 Requisitos
 
05 agile
05 agile05 agile
05 agile
 
02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais
 
03 Modelo de processo de software
03 Modelo de processo de software03 Modelo de processo de software
03 Modelo de processo de software
 
04 Unified process
04 Unified process04 Unified process
04 Unified process
 
01 Introdução - Contextualização Engenharia de Software
01 Introdução - Contextualização Engenharia de Software01 Introdução - Contextualização Engenharia de Software
01 Introdução - Contextualização Engenharia de Software
 
00 Apresentação
00 Apresentação00 Apresentação
00 Apresentação
 

Último

Rimas, Luís Vaz de Camões. pptx
Rimas, Luís Vaz de Camões.          pptxRimas, Luís Vaz de Camões.          pptx
Rimas, Luís Vaz de Camões. pptx
TomasSousa7
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
Escola Municipal Jesus Cristo
 
O que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdfO que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdf
Pastor Robson Colaço
 
the_story_garden_5_SB_with_activities.pdf
the_story_garden_5_SB_with_activities.pdfthe_story_garden_5_SB_with_activities.pdf
the_story_garden_5_SB_with_activities.pdf
CarinaSoto12
 
Caça-palavras ortografia M antes de P e B.
Caça-palavras    ortografia M antes de P e B.Caça-palavras    ortografia M antes de P e B.
Caça-palavras ortografia M antes de P e B.
Mary Alvarenga
 
Redação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptxRedação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptx
DECIOMAURINARAMOS
 
educação inclusiva na atualidade como ela se estabelece atualmente
educação inclusiva na atualidade como ela se estabelece atualmenteeducação inclusiva na atualidade como ela se estabelece atualmente
educação inclusiva na atualidade como ela se estabelece atualmente
DeuzinhaAzevedo
 
livro ciclo da agua educação infantil.pdf
livro ciclo da agua educação infantil.pdflivro ciclo da agua educação infantil.pdf
livro ciclo da agua educação infantil.pdf
cmeioctaciliabetesch
 
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptxSlides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
LuizHenriquedeAlmeid6
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
MarcosPaulo777883
 
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdfCaderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
enpfilosofiaufu
 
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdfPowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
1000a
 
Caderno de Formação_PORTUGUÊS ESTRAN.pdf
Caderno de Formação_PORTUGUÊS ESTRAN.pdfCaderno de Formação_PORTUGUÊS ESTRAN.pdf
Caderno de Formação_PORTUGUÊS ESTRAN.pdf
carlaslr1
 
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
AntnioManuelAgdoma
 
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdfAPOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
RenanSilva991968
 
.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt
IslanderAndrade
 
Estrutura Pedagógica - Laboratório de Educação a Distância.ppt
Estrutura Pedagógica - Laboratório de Educação a Distância.pptEstrutura Pedagógica - Laboratório de Educação a Distância.ppt
Estrutura Pedagógica - Laboratório de Educação a Distância.ppt
livrosjovert
 
“A classe operária vai ao paraíso os modos de produzir e trabalhar ao longo ...
“A classe operária vai ao paraíso  os modos de produzir e trabalhar ao longo ...“A classe operária vai ao paraíso  os modos de produzir e trabalhar ao longo ...
“A classe operária vai ao paraíso os modos de produzir e trabalhar ao longo ...
AdrianoMontagna1
 
Sócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slidesSócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slides
jbellas2
 
UFCD_5420_Integração de sistemas de informação - conceitos_índice.pdf
UFCD_5420_Integração de sistemas de informação - conceitos_índice.pdfUFCD_5420_Integração de sistemas de informação - conceitos_índice.pdf
UFCD_5420_Integração de sistemas de informação - conceitos_índice.pdf
Manuais Formação
 

Último (20)

Rimas, Luís Vaz de Camões. pptx
Rimas, Luís Vaz de Camões.          pptxRimas, Luís Vaz de Camões.          pptx
Rimas, Luís Vaz de Camões. pptx
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
 
O que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdfO que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdf
 
the_story_garden_5_SB_with_activities.pdf
the_story_garden_5_SB_with_activities.pdfthe_story_garden_5_SB_with_activities.pdf
the_story_garden_5_SB_with_activities.pdf
 
Caça-palavras ortografia M antes de P e B.
Caça-palavras    ortografia M antes de P e B.Caça-palavras    ortografia M antes de P e B.
Caça-palavras ortografia M antes de P e B.
 
Redação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptxRedação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptx
 
educação inclusiva na atualidade como ela se estabelece atualmente
educação inclusiva na atualidade como ela se estabelece atualmenteeducação inclusiva na atualidade como ela se estabelece atualmente
educação inclusiva na atualidade como ela se estabelece atualmente
 
livro ciclo da agua educação infantil.pdf
livro ciclo da agua educação infantil.pdflivro ciclo da agua educação infantil.pdf
livro ciclo da agua educação infantil.pdf
 
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptxSlides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
 
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdfCaderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
 
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdfPowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
 
Caderno de Formação_PORTUGUÊS ESTRAN.pdf
Caderno de Formação_PORTUGUÊS ESTRAN.pdfCaderno de Formação_PORTUGUÊS ESTRAN.pdf
Caderno de Formação_PORTUGUÊS ESTRAN.pdf
 
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
 
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdfAPOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
 
.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt
 
Estrutura Pedagógica - Laboratório de Educação a Distância.ppt
Estrutura Pedagógica - Laboratório de Educação a Distância.pptEstrutura Pedagógica - Laboratório de Educação a Distância.ppt
Estrutura Pedagógica - Laboratório de Educação a Distância.ppt
 
“A classe operária vai ao paraíso os modos de produzir e trabalhar ao longo ...
“A classe operária vai ao paraíso  os modos de produzir e trabalhar ao longo ...“A classe operária vai ao paraíso  os modos de produzir e trabalhar ao longo ...
“A classe operária vai ao paraíso os modos de produzir e trabalhar ao longo ...
 
Sócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slidesSócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slides
 
UFCD_5420_Integração de sistemas de informação - conceitos_índice.pdf
UFCD_5420_Integração de sistemas de informação - conceitos_índice.pdfUFCD_5420_Integração de sistemas de informação - conceitos_índice.pdf
UFCD_5420_Integração de sistemas de informação - conceitos_índice.pdf
 

07 Modelagem (Sommer)

  • 1. Especificação de Projeto Modelagem e Arquitetura de Sistemas de Software
  • 2. Modelagem de sistemas  A modelagem de sistemas é o processo de desenvolvimento de modelos abstratos de um sistema, de maneira que cada modelo apresenta uma visão ou perspectiva diferente do sistema.  Atualmente, a modelagem de sistemas se tornou a representação de um sistema usando algum tipo de notação gráfica, que hoje em dia quase sempre são baseadas em notações em Unified Modeling Language (UML).  A modelagem de sistemas ajuda o analista a entender a funcionalidade do sistema e os modelos são usados para comunicação com os clientes.
  • 3. Perspectivas de sistemas  Uma perspectiva externa, na qual você modela o contexto ou ambiente do sistema.  Um perspectiva de interação, em que você modela as interações entre um sistema e seu ambiente ou entre os componentes de um sistema.  Uma perspectiva estrutural, na qual você modela a organização de um sistema ou a estrutura dos dados processados pelo sistema.  Uma perspectiva comportamental, em que você modela o comportamento dinâmico do sistema e como ele responde a eventos.
  • 4. Uso de modelos gráficos  Como forma de facilitar a discussão sobre um sistema existente ou proposto  Os modelos incompletos e incorretos podem ser usados já que servem para auxiliar a discussão.  Como uma forma de documentar um sistema existente  Os modelos devem ser uma representação precisa do sistema mas não precisam estar completos.  Como uma descrição detalhada do sistema, a qual pode ser usada para gerar uma implementação do sistema  Os modelos precisam e estar corretos e completos.
  • 5. Tipos de diagramas UML  Os diagramas de atividades, que mostram as atividades envolvidas em um processo ou no processamento de dados.  Os diagramas de casos de uso, que mostram as interações entre um sistema e seu ambiente.  Os diagramas de sequência, que mostram as interações entre os atores e o sistema e entre os componentes do sistema.  Os diagramas de classe, que mostram as classes de objeto no sistema e as associações entre as classes.  Os diagramas de estado, que mostram como o sistema reage a eventos internos e externos.
  • 6. Modelos de contexto  Os modelos de contexto são usados para ilustrar o contexto operacional de um sistema – eles mostram o que existe fora dos limites do sistema.  Interesses sociais e organizacionais podem afetar a decisão de onde posicionar os limites do sistema.  Modelos de arquitetura mostram o sistema e seu relacionamento com outros sistemas.
  • 7. Limites do sistema  Os limites do sistema são estabelecidos para definir o que está dentro e o que está fora do sistema.  Eles mostram outros sistemas que são usados ou dependem do sistema que está sendo desenvolvido.  A posição do limite do sistema tem um efeito profundo nos requisitos do sistema.  A definição de um limite de sistema é uma decisão política  Podem haver pressões para desenvolver limites de sistema que aumentem/diminuam a influência ou carga de trabalho de diferentes partes de uma organização.
  • 8. O contexto do MHC-PMS
  • 9. Perspectivas de processo  Os modelos de contexto mostram apenas os outros sistemas no ambiente, e não como o sistema que está sendo desenvolvido é usado nesse ambiente.  Os modelos de processo revelam como o sistema em desenvolvimento está sendo desenvolvido é como esse é utilizado em processos de negócio mais amplos.  Os diagramas de atividades da UML podem ser usados para definir os modelos de processo do negócio.
  • 10. Modelo de processo de internação involuntária
  • 11. Modelos de interação  A modelagem da interação do usuário é importante por auxiliar a identificar os requisitos do usuário.  Modelar a interação sistema-a-sistema destaca os problemas de comunicação que possam vir a surgir.  Modelar a interação de componentes auxilia a entender se uma estrutura proposta de sistema pode fornecer um desempenho e uma confiança requeridas do sistema.  Os diagramas de caso de uso e os diagramas de sequência podem ser usados para modelagem de interação.
  • 12. Modelagem de caso de uso  Os casos de uso foram desenvolvidos originalmente para auxiliar na elicitação de requisitos e atualmente, estão incorporados na UML.  Cada caso de uso representa uma tarefa distinta que envolve interação externa com um sistema.  Os atores em um caso de uso podem ser pessoas ou outros sistemas.  São representados esquematicamente para fornecer uma visão geral do caso de uso e em uma forma textual mais detalhada.
  • 13. Caso de uso de transferência de dados
  • 14. Descrição tabular do caso de uso ‘Transferir dados’
  • 15. Casos de uso envolvendo o papel da ‘Recepcionista do médico’
  • 16. Diagramas de sequência  Os diagramas de sequência são parte da UML e são usados para modelar as interações entre os atores e os objetos no sistema.  Um diagrama de sequência mostra a sequência de interações que ocorrem durante um caso de uso em particular ou uma instância de caso uso.  Os objetos e os atores envolvidos são listados na parte superior do diagrama com uma linha pontilhada desenhada verticalmente a partir deles.  As interações entre os objetos são indicadas por setas anotadas.
  • 17. Diagrama de sequência para ‘Ver informações de pacientes’
  • 18. Diagrama de sequência para ‘Transferir dados’
  • 19. Modelos estruturais  Modelos estruturais de software mostram a organização de um sistema em termos de seus componentes que compõem este sistema e seus relacionamentos.  Os modelos estruturais podem ser modelos estáticos, que mostram a estrutura do projeto do sistema, ou modelos dinâmicos, que mostram a organização do sistema quando ele está em execução.  Você cria modelos estruturais de um sistema quando se está discutindo e projetando a arquitetura do sistema.
  • 20. Diagramas de classe  Os diagramas de classe são usados quando se está desenvolvendo um modelo de sistema orientado a objetos para mostrar as classes em um sistema e as associações entre as classes.  Uma classe de objeto pode ser considerada como uma definição geral de um tipo de objeto do sistema.  Uma associação é uma ligação entre classes que indica que há algum relacionamento entre essas classes.  Quando se está desenvolvendo os modelos durante os primeiros estágios do processo de engenharia de software, os objetos representam alguma coisa no mundo real como um paciente, uma receita médica, um médico, etc.
  • 24. Pontos Importantes  Um modelo é uma visão abstrata de um sistema que ignora alguns detalhes do sistema.  Modelos de sistema complementares podem ser desenvolvidos para mostrar o contexto, interações, estrutura e comportamento do sistema.  Os modelos de contexto mostram como um sistema que está sendo modelado está posicionado em um ambiente com outros sistemas e processos.  Os diagramas de caso de uso e os diagramas de sequência são usados para descrever as interações entre o usuário do sistema que está sendo projetado e usuários ou outros sistemas.
  • 25. Pontos Importantes  Os casos de uso descrevem as interações entre um sistema e atores externos; diagramas de sequência adicionam mais informações a esses mostrando as interações entre os objetos do sistema.  Os modelos estruturais mostram a organização e arquitetura de um sistema.  Os diagramas de classe são usados para definir a estrutura estática de classes em um sistema e suas associações.
  • 26. Generalização  A generalização é uma técnica de uso cotidiano para gerenciar complexidade.  Ao invés de aprender as características detalhadas de todas as entidades envolvidas, colocamos essas entidades em classes mais gerais (animais, carros, casas, etc.) e aprendemos as características dessas classes.  O que nos permite supor que membros diferentes dessas classes possuem algumas características comuns como, por exemplo, esquilos e ratos são roedores.
  • 27. Generalização  Na modelagem de sistemas é geralmente útil examinar as classes de um sistema para ver se há escopo para generalização. Se mudanças forem propostas você não precisará examinar todas as classes no sistema para ver se são afetadas pela mudança.  Em linguagens orientadas a objeto, como o Java, generalização é implementada usando os mecanismos de herança de classe que já existem na linguagem.  Em uma generalização, os atributos e operações associados a classes mais altas também são associados com as classes de nível mais baixo.  As classes de nível mais baixo são subclasses e herdam os atributos e operações de suas superclasses. Essas classes mais baixas adicionam atributos e operações mais específicas.
  • 28. Uma hierarquia de generalização
  • 29. Uma hierarquia de generalização com detalhes adicionais
  • 30. Modelos de agregação de classes de objetos  Um modelo de agregação mostra como as classes que são coleções são compostas de outras classes.  Os modelos de agregação são similares aos relacionamentos parte-de em modelos de dados semânticos.
  • 31. A associação por agregação
  • 32. Modelos comportamentais  Os modelos comportamentais são modelos do comportamento dinâmico do sistema enquanto esse está em execução. Eles mostram o que acontece ou o que deveria acontecer quando um sistema responde a um estimulo de seu ambiente.  Podem-se considerar esses estimulos como sendo de dois tipos:  Dados: Alguns dados que chegam e precisam ser processados pelo sistema.  Eventos: Alguns eventos que acontecem disparam o processamento do sistema. Os eventos podem ter dados associados, embora isso não ocorra sempre.
  • 33. Modelagem dirigida a dados  Vários sistemas de negócio são sistemas de processamento de dados que são dirigidos principalmente a dados.  Eles são controlados pela entrada de dados no sistema com relativamente quase nenhum processamento de eventos externos.  Os modelos dirigidos a dados mostram a sequência de ações envolvidas no processamento dos dados entrantes e na geração de uma saída associada.  Eles são particularmente úteis durante a análise de requisitos por poderem ser usados para mostrar o processamento fim-a- fim em um sistema.
  • 34. Um modelo de atividades de funcionamento da bomba de insulina
  • 36. Modelagem dirigida a eventos  Geralmente , os sistemas em tempo real são dirigidos a eventos, com o mínimo de processamento de dados.  Por exemplo, um sistema de comutação de linhas telefônicas responde a eventos como ‘recebimento de chamada’ gerando um tom de discagem.  A modelagem dirigida a eventos mostra como um sistema responde a eventos externos e internos.  Essa se baseia na suposição de que um sistema tem um número limitado de estados e que os eventos (estímulos) podem causar a transição de um estado para outro.
  • 37. Modelos de máquina de estados  Esses modelam o comportamento do sistema em resposta a eventos externos e internos.  Eles mostram as respostas do sistema a estímulos, e por isso, geralmente são usados para modelar sistemas de tempo real.  Os modelos de máquina de estados mostram os estados do sistema, tais como nós, e os eventos desses, tais como arcos entre esses nós. Quando um evento ocorre, o sistema move- se de um estado para outro.  Os gráficos de estado são uma parte integral da UML e são usados para representar os modelos de máquina de estados.
  • 38. Diagrama de estados de um forno de micro-ondas
  • 39. Estados e estímulos para o forno de micro-ondas (a)
  • 40. Estados e estímulos para o forno de micro-ondas (b)
  • 41. Operação do forno de micro-ondas
  • 42. Engenharia dirigida a modelos  A engenharia dirigida a modelos (MDE – Model-Driven Engineering) é uma abordagem do desenvolvimento de software, na qual os modelos e não os programas são os principais produtos do processo de desenvolvimento.  Os programas executados em uma plataforma de hardware/software são gerados automaticamente, a partir dos modelos.  Os proponentes da MDE argumentam que isso aumenta o nível de abstração na engenharia de software, o que faz com que os engenheiros não precisem mais se preocupar com detalhes de linguagem de programação ou com as especifidades das plataformas de execução.
  • 43. Uso da engenharia dirigida a modelos  A engenharia dirigida a modelos ainda está em um estágio de desenvolvimento inicial e ainda não é certo se essa terá um efeito significativo na prática da engenharia de software.  Prós  Permite tratar dos sistemas em níveis mais altos de abstração  A geração automática do código significa menor custo de adaptação dos sistemas à novas plataformas.  Contras  Os modelos são para abstração e não estão necessariamente corretos para implementação.  A economia criada pela geração de código pode ser contrabalanceada pelos custos de desenvolver tradutores para novas plataformas.
  • 44. Arquitetura dirigida a modelos  A arquitetura dirigida a modelos (MDA – Model-Driven Architeture) foi a precursora da mais genérica engenharia dirigida a modelos.  A MDA é uma abordagem de projeto e implementação de software centrada em modelos, que usa um subconjunto de modelos da UML para descrever o sistema.  São criados modelos em diferentes níveis de abstração.  Em princípio, a partir de um modelo independente de plataforma de alto nível, é possível gerar um programa funcional sem intervenção manual.
  • 45. Tipos de modelos  Um modelo independente de computação (CIM – Computation Independent Model)  Esses modelam as importantes abstrações de domínio usadas em um sistema. Ás vezes, os CIMs são chamados de modelos de domínio.  Um modelo independente de plataforma (PIM – Platform Independent Model)  Esses modelam a operação do sistema sem referência para a sua implementação. Geralmente, o PIM é descrito pelo uso de modelos da UML que mostram a estrutura estática do sistema, e como esse responde a eventos externos e internos.
  • 46. Tipos de modelos  Modelos específicos de plataforma (PSM – Platform Specific Models)  Esses são transformações do modelo independente de plataforma com um PSM separado para cada aplicativo da plataforma. A princípio, devem haver camadas de PSM, com cada camada adicionando algum detalhe específico à plataforma.
  • 49. Métodos ágeis e MDA  Os desenvolvedores de MDA alegam que a intenção da MDA é auxiliar uma abordagem iterativa ao desenvolvimento e por isso, essa pode ser usada nos métodos ágeis.  A noção da modelagem inicial extensiva contradiz as idéias fundamentais do manifesto ágil e eu suspeito que poucos desenvolvedores ágeis sentem-se confortáveis com a engenharia dirigida a modelos.  Se as transformações puderem ser completamente automáticas e um programa completo gerado a partir de um PIM, então, em princípio, a MDA poderia ser usada em um processo de desenvolvimento ágil já que não seria necessária nenhuma codificação separada.
  • 50. Pontos Importantes  Os modelos comportamentais são usados para descrever o comportamento dinâmico de um sistema em execução. Esse comportamento pode ser modelado da perspectiva dos dados processados pelo sistema, ou pelos eventos que estimulam respostas de um sistema.  Os diagramas de atividades podem ser usados para modelar o processamento dos dados, no qual cada atividade representa um passo do processo.  Os diagramas de estado são usados para modelar o comportamento de um sistema em resposta a eventos internos e externos.  A engenharia dirigida a modelos é uma abordagem do desenvolvimento de software, na qual um sistema é representado como um conjunto de modelos que podem ser automaticamente transformados em códigos executáveis.
  • 51. Referências e dicas  Sommer 9ed. caps 5 e 6  A leitura do capítulo e dos casos no final do capítulo é altamente recomendada.  A pesquisa pelos itens do quadro de ideias discutidos em sala de aula vai contribuir para expandir os seus horizontes de conhecimento – independente de ser ou não item de cobrança em avaliações futuras.
  • 52. Especificação de Projeto Modelagem de Sistemas de Software