Globalcode – open4education1
Exemplos práticos de UML: Diagrama de Classes, Atividades,
Sequência e Casos de uso
Globalcode – open4education2
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education3
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education4
Padrão de documentação de modelagem de software da OMG
Unifica os métodos de Ivar Jacobson, Grady Booch e James Rumbaugh
Modelagem gráfica através de diagramas
Importância da UML
Globalcode – open4education5
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education6
Na hora de escolher a ferramenta é importante verificar:
Suporte a UML 1.4 ou UML 2.0;Integração com código fonte;Grau de customização do código fonte gerado a partir dos diagramas permitido pela ferramenta;Capacidade de exportar e importar diagramas;
Ferramentas
Globalcode – open4education7
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education8
Sincronismo entre código e documentação UML;
Dificuldade em representar conceitos importantes como por exemplos exceções, generics e coleções;
Suporte das ferramentas;
Dificuldades na utilização
Globalcode – open4education9
Dependência da ferramenta devido a dificuldade de migração;
Dificuldade em determinar se os diagramas estão tecnicamente corretos ou em nível de detalhe ideal;
Dificuldade em determinar quais diagramas devem ser feitos e vão agregar valor ao projeto;
Dificuldades na utilização
Globalcode – open4education10
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education11
Representam uma unidade funcional fornecida pelo sistema.
Conceito criado por Ivar Jacobson.
Cada caso de uso captura um ou mais cenários que descrevem como o sistema deve interagir com os usuários para atingir determinada meta ou funcionalidade.
Casos de Uso
Globalcode – open4education12
Importância dos casos de uso:
• Modelagem de requisitos funcionais• Estimativa de esforço• Planejamento de testes
Casos de Uso
Globalcode – open4education13
Diagrama da UML utilizado para representação gráfica dos casos de uso.
Seus principais elementos são:• Caso de uso• Ator• Associação• Relacionamento de inclusão• Relacionamento de extensão• Generalização
Diagrama de Casos de Uso
Globalcode – open4education14
Caso de uso: representado graficamente por uma elipse com o nome do caso de uso.
Diagrama de Casos de Uso
Globalcode – open4education15
Ator: representa um papel representado por uma pessoa, sistema ou dispositivo que interage com o sistema.
Diagrama de Casos de Uso
Globalcode – open4education16
Associação: representa a interação entre um ator e um caso de uso.
Diagrama de Casos de Uso
Globalcode – open4education17
Relacionamento de inclusão: relacionamento entre casos de uso no qual um caso de uso inclui incondicionalmente outro caso de uso.
Diagrama de Casos de Uso
Globalcode – open4education18
Relacionamento de extensão: relacionamento entre casos de uso no qual um caso de uso pode estender a funcionalidade de outro caso de uso.
Diagrama de Casos de Uso
Globalcode – open4education19
Generalização: relacionamento no qual um ator ou caso de uso possui as mesmas características de um elemento base, mais suas características específicas.
Diagrama de Casos de Uso
Globalcode – open4education20
Os diagramas de casos de uso visam dois objetivos principais:• Definição de escopo: permitem que sejam
visualizadas as funcionalidades presentes no sistema.• Identificação de papéis: permitem identificar quem
interage com o sistema e a que funcionalidades tem acesso.
Não permitem detalhar os passos necessários para implementação da funcionalidade.
Diagrama de Casos de Uso
Globalcode – open4education21
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education22
Diagrama da UML utilizado para representação da estrutura das classes do sistema.
Representa os relacionamentos, atributos e métodos de cada classe.
Diagrama de Classes
Globalcode – open4education23
Classe: representa os métodos e atributos de uma classe.
Elementos - Diagrama de Classes
Globalcode – open4education24
Associação: representa um relacionamento entre classes onde uma das classes está presente como atributo na outra.
Possui algumas propriedades básicas:• Cardinalidade/Multiplicidade• Navegabilidade• Papéis• Restrições
Elementos - Diagrama de Classes
Globalcode – open4education25
Associação com cardinalidade 1-1
Associação com cardinalidade 1-n
Elementos - Diagrama de Classes
Globalcode – open4education26
Associação com cardinalidade n-n
Papéis
Elementos - Diagrama de Classes
Globalcode – open4education27
Navegabilidade
Restrições
Elementos - Diagrama de Classes
Globalcode – open4education28
Associação reflexiva
Elementos - Diagrama de Classes
Globalcode – open4education29
Agregação
Composição
Elementos - Diagrama de Classes
Globalcode – open4education30
Dependência
Elementos - Diagrama de Classes
Globalcode – open4education31
Classe Associativa
Elementos - Diagrama de Classes
Globalcode – open4education32
Herança
Elementos - Diagrama de Classes
Globalcode – open4education33
Representação de interfaces
Elementos - Diagrama de Classes
Globalcode – open4education34
Implementação de interfaces
Elementos - Diagrama de Classes
Globalcode – open4education35
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education36
Diagrama da UML utilizado para representar o fluxo de atividades dentro de um processo.
Semelhantes a fluxogramas
Utilizados para:• Detalhar os passos de um caso de uso;• Detalhar algoritmos complexos;• Representar atividades concorrentes;
Diagrama de Atividades
Globalcode – open4education37
Atividade: representa uma etapa em um processo.
Elementos - Diagrama de Atividades
Globalcode – open4education38
Transição: fluxo de uma atividade para outra.
Elementos - Diagrama de Atividades
Globalcode – open4education39
Condição de guarda: condição necessária para a realização da transição.
Elementos - Diagrama de Atividades
Globalcode – open4education40
Decisão: dependendo de uma condição, mostra as diferentes transições.
Elementos - Diagrama de Atividades
Globalcode – open4education41
Ponto de junção: mostra a união de atividades em um único fluxo.
Elementos - Diagrama de Atividades
Globalcode – open4education42
Início e fim: indicam o início e o término do fluxo de atividades.
Elementos - Diagrama de Atividades
Globalcode – open4education43
Concorrência: indica atividades executando em paralelo.
Elementos - Diagrama de Atividades
Globalcode – open4education44
Raia: separa as atividades de acordo com o ator que as executa.
Elementos - Diagrama de Atividades
Globalcode – open4education45
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education46
Diagrama da UML utilizado para representar a interação entre objetos em ordem seqüencial no tempo.
Utilizados para:• Ilustrar e validar a lógica implementada;• Identificar a necessidade de novos métodos e classes;• Identificar quais classes serão mais complexas• Identificar gargalos na modelagem de um aplicativo
Diagrama de Seqüência
Globalcode – open4education47
Objetos: representam as instâncias de classes cuja interação será representada no diagrama.
Elementos - Diagrama de Seqüência
Globalcode – open4education48
Mensagens: representam as interações entre objetos.
Elementos - Diagrama de Seqüência
Globalcode – open4education49
Mensagens de criação de objetos
Elementos - Diagrama de Seqüência
Globalcode – open4education50
Mensagens de retorno
Elementos - Diagrama de Seqüência
Globalcode – open4education51
Chamadas de um método na própria classe
Elementos - Diagrama de Seqüência
Globalcode – open4education52
Chamada condicional if com UML 1.4
Elementos - Diagrama de Seqüência
Globalcode – open4education53
Fragmentos: Elementos criados com UML 2.0 para permitir o agrupamento de diversas mensagens em fluxos mais complexos.
Elementos - Diagrama de Seqüência
Globalcode – open4education54
Chamada condicional if com UML 2.0
Elementos - Diagrama de Seqüência
Globalcode – open4education55
Chamada condicional if/else
Elementos - Diagrama de Seqüência
Globalcode – open4education56
Chamadas dentro de um laço
Elementos - Diagrama de Seqüência
Globalcode – open4education57
Importância da UMLFerramentasDificuldades na UtilizaçãoDiagrama de Casos de UsoDiagrama de ClassesDiagrama de AtividadesDiagrama de SeqüênciaEstudo de Caso
Agenda
Globalcode – open4education58
Apresentamos a seguir um estudo de caso de modelagem de um sistema de vendas online.
Nosso exemplo vai se concentrar na funcionalidade de comprar produtos.
Sistema de Vendas Online
Globalcode – open4education59
Diagrama de Casos de Uso
Globalcode – open4education60
Diagrama de Classes
Globalcode – open4education61
Diagrama de Atividades
Globalcode – open4education62
Diagrama de Seqüência
Globalcode – open4education63
Diagrama de Seqüência
Top Related