CursoUML - Unified Modeling Language
-
Upload
elliando-dias -
Category
Technology
-
view
3.051 -
download
0
Transcript of CursoUML - Unified Modeling Language
![Page 2: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/2.jpg)
UML Histórico Conceitos
Visão Geral da UML Modelos Visões Diagramas
Diagramas Classes Objetos Casos de Uso Sequência Colaboração Estado Atividade Componentes Implantação
Um Exemplo para Utilizar UML
![Page 3: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/3.jpg)
Bibliografia Booch, G., Jacobson, I., Rumbaugh, J., The Unified Software
Development Process, Addison-Wesley Object Technology Series, 1999.
Larman, C., Applying UML and Patterns – An Introduction to Object-Oriented Analysis and Design, Prentice Hall, 1997.
Pressman, R. S., Software Engineering: A Practitioner’s Approach, 4th Edition (1997), McGraw-Hill.
Ferramenta de Modelagem UML Poseidon, 2002, http://www.gentleware.com
Ferramenta de Modelagem UML Rational Rose, 2002, http://www.rational.com
UML 1.4 Specification. Chapter 2 and 3 - UML Notation Guide, September, 2001, http://www.omg.org/technology/documents/formal/uml.htm.
![Page 4: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/4.jpg)
UML – Unified Modeling Language
O que é UML? Linguagem visual para modelar sistemas
de software. Objetivo:
simplificar e consolidar métodos já conhecidos. Não proprietária. Propósito geral.
![Page 5: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/5.jpg)
UML – Unified Modeling Language
Propósito Geral (sistemas de software):
especificar; visualizar; construir; documentar.
![Page 6: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/6.jpg)
UML – Unified Modeling Language Modelagem abrange:
aspectos estáticos: tipos de objetos e relacionamentos entre eles.
aspectos dinâmicos: evolução dos objetos no tempo e interação entre eles.
aspectos de ambiente. aspectos organizacionais:
particionamento de grandes sistemas; representação de decisões de implementação; implantação do sistema (organização em tempo de
execução).
![Page 7: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/7.jpg)
Histórico Evolução das metodologias de desenvolvimento:
análise Estruturada e Projeto Estruturado (Yordon, 1979);
projeto Estruturado para Tempo-Real (Ward, 1985). metodologias OO (Goldberg/Robson,83; Cox, 86;
Meyer, 88; Shlaer/Mellor, 88; CRC – Wirfs-Brock et al, 90; Coad/Yourdon, 91; Booch, 91; OMT – Rumbaugh et al, 91; Objectory – Jacobson, 92)
UML – Booch/ Rumbaugh/Jacobson, 1995 ; 1996 - requisição de padrão pelo OMG (object
Management Group) 1997 – adotada como padrão pelo OMG.
![Page 8: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/8.jpg)
Modelos de Software Definem semântica e notação:
informação semântica: descreve o significado ou intenção do sistema;
notação: apresentação visual mostram o modelo de forma facilmente
compreensível; não adicionam semântica;
podem ser apresentados de várias formas, incluindo texto e diagramas.
![Page 9: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/9.jpg)
Modelos de Software Objetivos:
apreender e indicar precisamente requisitos e conhecimento do domínio;
facilitar o desenvolvimento; gerenciar complexidade:
manter informações sobre o sistema; visualizar o sistema sob diferentes pontos de
vista; visualizar o sistema em diferentes níveis de
abstração.
![Page 10: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/10.jpg)
Visões
Diferentes pontos de vista devem ser usados para refletir os aspectos desejados.
Cada visão mostra um conjunto de aspectos do sistema numa notação adequada à sua compreensão.
UML apresenta diferentes visões do sistema sendo modelado.
![Page 11: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/11.jpg)
Visões
A arquitetura de um sistema pode ser refletida em cinco visões distintas:
Projeto Implementação
Processo Implantação
Casos de Uso
![Page 12: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/12.jpg)
Diagramas
Formas de apresentação, menos detalhadas, facilitam a compreensão do modelo descrito. Ex: diagramas (gráficos e desenhos).
UML apresenta diversos diagramas: cada visão tem seu conjunto de diagramas; cada diagrama pode apresentar diferentes
versões, em diferentes níveis de detalhamento.
![Page 13: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/13.jpg)
Diagramas de Classes Apresenta as classes e relacionamentos
entre elas. Entidades Classes. Relacionamentos generalização, associação, etc.
![Page 14: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/14.jpg)
Diagrama de Classes
AssociaçãoClasse
![Page 15: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/15.jpg)
Diagrama de Objetos Retrato do sistema em determinado
instante. Representação dos objetos e as
ligações entre eles. Não descreve o sistema. Facilita o entendimento e validação do
sistema e modelos.
![Page 16: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/16.jpg)
Diagrama de Objetos
Objetos
![Page 17: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/17.jpg)
Diagramas de Casos de Uso
Descrevam o comportamento do sistema.
Especifica os argumentos funcionais que determinarão a macro-arquitetura do sistema.
Não descreve a organização interna do software.
![Page 18: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/18.jpg)
Diagramas de Casos de Uso Elementos básicos de modelagem:
atores, agentes externos ( clientes do sistema); caso de uso, unidade de funcionalidade coerente,
expressa pelas transações (comunicação) entre os atores e o sistema;
Comunicação, ligação entre ator e caso de uso expressando comunicação entre eles (associação, extensão, inclusão, generalização).
![Page 19: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/19.jpg)
Diagramas de Casos de UsoAtor
Caso de Uso
Fronteira do sistema
![Page 20: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/20.jpg)
Diagrama de Seqüência Apresenta o conjunto de mensagens trocadas entre
objetos na execução de transações. Cada diagrama mostra um cenário de execução de
uma transação. Elementos de Modelagem:
papéis, objetos são representados pelo papel que desempenham na transação, mas não são referenciados diretamente;
mensagens, representam a execução de uma operação de uma classe ou a ocorrência de um evento em uma máquina de estados, e são ordenadas no tempo (de cima para baixo);
linha de vida, representa o período de existência de um objeto;
período de atividade, representa os períodos em que um objeto está ativo.
![Page 21: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/21.jpg)
Diagrama de Seqüência
Período ativo
Linha de vida
![Page 22: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/22.jpg)
Diagrama de Colaboração Modela objetos e ligações de uma
interação: apresenta somente os objetos e ligações
significativas para a interação; as mensagens são numeradas
sequencialmente; mostra implementação de operações,
descrevendo parâmetros e variáveis locais usadas.
![Page 23: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/23.jpg)
Diagramas- Seqüência e Colaboração
Visual, relacionando mensagens a ligações entre papéis
Implícito (pelos números de seqüência)
implícito
Relacionamento entre papéis
Colaboração
Seqüência
Seqüência no tempo
Visível (explícito) graficamente
aspecto interações
![Page 24: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/24.jpg)
Diagrama de Colaboração
mensagemobjeto
![Page 25: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/25.jpg)
Diagrama de Estados Modela as possíveis histórias de um
objeto de uma classe através de máquinas de estados. Apresenta possíveis estados do objeto
conectados por transições. Usado para descrever:
sistemas reativos, como interface com usuário; objetos passivos que apresentam períodos com
comportamento distinto no decorrer do tempo.
![Page 26: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/26.jpg)
Diagrama de Estado
Abrir janela
ProntoCampo alterado
Pronto
Botão consultar
Botão sair
![Page 27: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/27.jpg)
Diagrama de Atividades Variação de máquinas de estado. Mostra atividades computacionais
envolvidas em uma operação.Atividade:
trabalho ou tarefa a ser realizada Passos em um workflow; Execução de uma operação;
podem ocorrer seqüencialmente ou concorrentemente.
![Page 28: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/28.jpg)
Diagrama de Atividades
![Page 29: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/29.jpg)
Diagrama de Componentes Modela os componentes do sistema e
dependências entre eles.Elementos de modelagem:
componente unidade de software usada para compor o sistema;
interface conjunto de operações suportado (realizado) por um
componente; cada componente pode prover múltiplas interfaces; componentes podem utilizar (depender) interfaces de
outros componentes.
![Page 30: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/30.jpg)
Diagrama de ComponentesInterface
Classe
![Page 31: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/31.jpg)
Diagrama de Implantação Descreve o arranjo de componentes
executáveis em nós de execução. Permite avaliar conseqüências da distribuição e
alocação de recursos. São apresentados em dois níveis:
Descritivo (geral); De instância (específico).
Nó Recurso computacional (tempo de execução)
Computadores, memória, dispositivos periféricos.
![Page 32: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/32.jpg)
Diagrama de Implantação Nível descritivo (geral)
Descreve os elementos contidos em cada nó.
Especifica as dependências entre elementos (possivelmente em nós distintos).
Padrão de comunicação entre nós.
![Page 33: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/33.jpg)
Diagrama de Implantação
nódependência
comunicação
![Page 34: CursoUML - Unified Modeling Language](https://reader033.fdocument.pub/reader033/viewer/2022052400/55970eff1a28abde1e8b4843/html5/thumbnails/34.jpg)
Diagrama de Implantação De Instância (específico)
Apresenta instâncias de nós, e comunicação efetiva entre eles.
Apresenta os nós para uma versão/configuração especifica do sistema.
Nó
Comunicação