View
216
Download
0
Category
Preview:
Citation preview
Introdução à Modelagem Conceitual4. UML – Unified Modeling Language
Luiz A M Palazzo
Outubro, 2010
Universidade Católica de Pelotas
Centro Politécnico
Bacharelado em Ciência da Computação
Roteiro
1. Introdução a UML
2. Diagramas de Casos de Uso
3. Diagramas de Classes e Objetos
4. Diagramas de Sequência
5. Diagramas de Colaboração
6. Diagramas de Estados e Atividades
7. Exemplos
8. Trabalho Prático
04 – UML Unified Modeling Language 2
Bibliografia
04 – UML Unified Modeling Language 3
1. Introdução a UML
• O que é UML?
• História da UML
• Modelagem no Desenvolvimento de Software
• Modelagem Orientada a Objetos
• Visão Geral da UML
• Exemplos
• Exercícios
04 – UML Unified Modeling Language 4
O que é UML?
• Unified Modeling Language
• Modelos de Processos do Mundo Real
• Modelos de Processos em Arquiteturas de Software
• Utilizada para:
• Análise dos elementos ontológicos participantes de um processo
• Análise do comportamento destes elementos no processo
• Modela todas as etapas de desenvolvimento de um software
• Linguagem Visual, baseada em diferentes tipos de diagramas
04 – UML Unified Modeling Language 5
História da UML
04 – UML Unified Modeling Language 6
Nov ‘97 UML é aprovada pelo OMG
Os “Caras” da UML
04 – UML Unified Modeling Language 7
Booch,
Rumbaugh, e
Jacobson.
A Modelagem no
Desenvolvimento de Software
• Cinco Princípios Básicos:
• É impossível fugir da modelagem
• As decisões de modelagem tem profunda influência sobre a qualidade das soluções encontradas
• Não há um único modelo suficiente
• Cada modelo deve ser expresso em diferentes níveis de precisão
• Os melhores modelos são os que estão conectados com a realidade
04 – UML Unified Modeling Language 8
Modelagem Orientada a Objetos
• A modelagem tradicional: algorítmica/procedimental
• Construções monolíticas
• Elevado custo de manutenção/alteração/evolução
• Vinculação do desenvolvedor ao sistema
• A abordagem contemporânea: orientação a objetos
• Modelos locais, semanticamente precisos
• Evolução consistente e facilitada
• Maior independência do desenvolvedor
04 – UML Unified Modeling Language 9
Visão Geral da UML
• Linguagem padrão para a especificação de software
• Usada para visualizar, projetar, construir e documentar
• Apropriada para diversos tipos de sistemas. Por exemplo:
• Sistemas de informações empresariais
• Aplicações distribuídas na Web
• Sistemas de controle em tempo real, etc.
• Parte de uma metodologia de desenvolvimento de software
• Independente de processo
• Centrada na arquitrtura orientada a objetos
• Interativa e incremental
04 – UML Unified Modeling Language 10
Blocos Construtores da UML
• O vocabulário da linguagem UML compreende três tipos de blocos construtores:
• Entidades
• Relacionamentos
• Diagramas
04 – UML Unified Modeling Language 11
Entidades UML
• As entidades são elementos primários para a UML.
• Há quatro tipos de Entidades UML:
• Entidades Estruturais
• Entidades Comportamentais
• Entidade de Agrupamento
• Entidade de Anotação
04 – UML Unified Modeling Language 12
Entidades Estruturais
• Correspondem à parte estática de um modelo UML
• Podem ser conceituais ou físicas
• São seis as entidades estruturais:
• Classes
• Interfaces
• Colaborações
• Casos de Uso
• Componentes
• Nodos
• Artefatos
• Estereótipos
04 – UML Unified Modeling Language 13
Classe
04 – UML Unified Modeling Language 14
Janela
OrigemTamanho
Mostrar()Mover()Redimensionar()Minimizar()
Nome da Classe
Atributos
Operações
Interface
04 – UML Unified Modeling Language 15
Interface Requerida
iDefiniçãoiPronúncia
iDicionárioiProcessador de Palavra
Componente
Interfaces Existentes
Colaboração
04 – UML Unified Modeling Language 16
Comunicação Interna
Colaboração
Nome da Colaboração
Caso de Uso
04 – UML Unified Modeling Language 17
Empréstimo
Gerente
Ator Caso de Uso
Nomes
Componentes: Nodos
04 – UML Unified Modeling Language 18
Estação de Trabalho
<< 100-T Ethernet >>
Servidor
Componentes: Artefatos
04 – UML Unified Modeling Language 19
<< artefato>>
janela.dll
Componentes: Estereótipos
04 – UML Unified Modeling Language 20
Entidades Comportamentais
• Correspondem à parte dinâmica de um modelo UML
• Denotam o comportamento no espaço e no tempo
• São três as entidades comportamentais:
• Interações
• Máquinas de Estados
• Atividades
04 – UML Unified Modeling Language 21
Interações
04 – UML Unified Modeling Language 22
displayMensagem
Máquinas de Estado
04 – UML Unified Modeling Language 23
TMario TSuperMario
TMarioInvencívelTMarioMorto
[New()][PegarCogumelo()]
[ReceberDano()]
[ReceberDano()] [PegarEstrela()][PegarEstrela()]
[Destroy()]
Início
Final
Atividades
04 – UML Unified Modeling Language 24
Processar Pedido
Entidade de Agrupamento
• Corresponde à parte organizacional de um modelo UML.
• Há uma única entidades de agrupamento:
• Package ou Pacote
• Um Pacote pode encapsular entidades estruturais, comportamentais, de agrupamento e de anotação.
• É uma entidade puramente conceitual, o que significa que só existe em tempo de desenvolvimento.
04 – UML Unified Modeling Language 25
Pacote
04 – UML Unified Modeling Language 26
+FormulárioPedido
+RastreamentoPedido
-Pedido
Cliente
Entidade de Anotação
• Corresponde à parte explicativa de um modelo UML.
• Há uma única entidades de anotação:
• A Nota
• As notas são empregadas nos diagramas UML para detalhar informações quando necessário.
04 – UML Unified Modeling Language 27
Nota
04 – UML Unified Modeling Language 28
Considerar o uso docomponente c64-311bneste contexto.
Relacionamentos
• Há quatro tipos de relacionamentos em UML:
• Dependência
• Generalização
• Associação
• Avançados
• Realização
• Refinamento
• Agregação
04 – UML Unified Modeling Language 29
Dependências
• São relacionamentos de utilização
• Por exemplo: Os canos dependem do aquecedor para transportar água quente
04 – UML Unified Modeling Language 30
Janela
OrigemTamanho
Mostrar()Mover()Redimensionar()Minimizar()
Evento
Dependência
Generalizações
• Conectam classes mais especializadas para outras mais gerais, caraterizando os relacionamentos subclasse/superclasse
04 – UML Unified Modeling Language 31
Janela
OrigemTamanho
Mostrar()Mover()Redimensionar()Minimizar()
MiniJanela
Generalização
DialogBox
Associações
• São relacionamentos estruturais entre instâncias.
• Por exemplo: Salas são delimitadas por paredes. Paredes podem apresentar portas, janelas, etc.
04 – UML Unified Modeling Language 32
DialogBox
Controle
Texto
Relacionamentos Avançados
• Serão estudados posteriormente:
• Realização
• Refinamento
• Agregação
04 – UML Unified Modeling Language 33
Diagramas
• São representações gráficas de conjuntos de elementos.
• Usualmente sob a forma de grafos, onde os vértices são entidades e os arcos correspondem aos relacionamentos.
• Em teoria, os diagramas podem apresentar qualquer conjunto de entidades e relacionamentos.
• Na prática, um pequeno número de combinações ocorrem.
• Isto se traduz em cinco diferentes visões, representadas por treze diagramas.
04 – UML Unified Modeling Language 34
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 cinco diferentes visões do sistema sendo modelado.
04 – UML Unified Modeling Language 35
As Cinco Visões UML
04 – UML Unified Modeling Language 36
Projeto Implementação
Processo Distribuição
Casos de Uso
Os Treze Diagramas UML
• Diagrama de Classes
• Diagrama de Objetos
• Diagrama de Componentes
• Diagrama de Composição Estrutural
• Diagrama de Casos de Uso
• Diagrama de Sequência
• Diagrama de Comunicação
• Máquinas de Estados
• Diagrama de Atividades
• Diagrama de Implementação
• Diagrama de Pacotes
• Diagrama Temporal
• Diagrama de Interações
04 – UML Unified Modeling Language 37
Atividade Prática
• Pesquisar ferramentas livres para construção de diagramas UML.
• Localizar reviews, examinar as funcionalidadesdisponíveis e a qualidade dos produtos gerados.
• Selecionar uma ferramenta e instalar.
• Localizar diagramas prontos produzidos com a ferramenta escolhida.
• Selecionar dois diagramas para estudo e discussão em grupo.
04 – UML Unified Modeling Language 38
Recommended