UML Msc Luiz Barboza
<ul><li>Um abstração </li></ul><ul><li>Descreve: </li></ul><ul><ul><li>Propriedades (atributos) </li></ul></ul><ul><ul><li...
Revisão  Boundary Entity Control = = =
Uso do Diagrama de Classe <ul><li>Modelar uma visão estática do sistema, pode ser obtido com técnicas de analise com base ...
<ul><li>Mecanismo de organização para agrupamento de outros elementos. </li></ul>Pacote Camada de  Negócio
<ul><li>Relacionamento fraco entre dois elementos </li></ul><ul><li>Usado quando não existe uma relação de  associação  pe...
<ul><li>Associações </li></ul><ul><ul><li>Relacionamentos estruturais permanentes </li></ul></ul><ul><li>Dependência </li>...
Processo de Análise <ul><li>Identificar </li></ul><ul><ul><li>Associação vs Dependência </li></ul></ul><ul><ul><li>Refinam...
<ul><li>Agregação </li></ul><ul><ul><li>Tempo de vida da classe ‘parte’ independente do tempo da classe ‘todo’  </li></ul>...
Atributo Primitivo vs Associação <ul><li>Associação quando: </li></ul><ul><ul><li>Elemento não restrito a um tipo primitiv...
Navegabilidade <ul><li>Indica o sentido da navegação </li></ul><ul><ul><li>Para cada destino de navegação é preciso um atr...
Multiplicidade <ul><li>Não especificado </li></ul><ul><li>Apenas 1 </li></ul><ul><li>Zero ou mais </li></ul><ul><li>Um ou ...
<ul><li>Multiplicidade = 1, ou Multiplicidade = 0..1 </li></ul><ul><ul><li>Atributo simples  </li></ul></ul><ul><li>Multip...
Estrutura de Dados <ul><li>Explícito </li></ul><ul><li>Por nota </li></ul>instructor Professor Materia 0..* 0..1 Materia <...
Classe Parametrizada (Template) Generics <ul><li>Classe que necessita de um tipo adicional para sua instanciação  </li></u...
Generalização (Herança) <ul><li>Define </li></ul><ul><ul><li>Relacionamento de ‘é-um’ </li></ul></ul><ul><ul><li>Herança d...
Classes Concretas e Abstratas <ul><li>Abstrata </li></ul><ul><ul><li>Basta um método sem comportamento, abstrato </li></ul...
Generalização vs Agregação <ul><li>Generalização = relação ‘é-um’ </li></ul><ul><li>Agregação = relação ‘tem-um’ </li></ul...
WindowWithScrollbar “é-uma” Window WindowWithScrollbar “tem-uma” Scrollbar Generalização vs Agregação Scrollbar Window Win...
UML: Diagrama de Seqüência  1: cadastrarCliente() Objeto Cliente Objeto Fornecedor Mensagem Escopo de atividade Chamada lo...
 
 
 
UML Msc Luiz Barboza
Próximos SlideShares
Carregando em…5
×

Uml

4.482 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
4.482
No SlideShare
0
A partir de incorporações
0
Número de incorporações
84
Ações
Compartilhamentos
0
Downloads
157
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide
  • Uml

    1. 1. UML Msc Luiz Barboza
    2. 2. <ul><li>Um abstração </li></ul><ul><li>Descreve: </li></ul><ul><ul><li>Propriedades (atributos) </li></ul></ul><ul><ul><li>Comportamento (operações) </li></ul></ul><ul><ul><li>Relacionamentos </li></ul></ul><ul><ul><li>Semântica </li></ul></ul>UML Representação de Classe <ul><li>Interface </li></ul>Nome da classe Atributos Operações
    3. 3. Revisão Boundary Entity Control = = =
    4. 4. Uso do Diagrama de Classe <ul><li>Modelar uma visão estática do sistema, pode ser obtido com técnicas de analise com base no: </li></ul><ul><ul><li>Entidades do sistema. </li></ul></ul><ul><ul><li>Arquitetura desejada. </li></ul></ul><ul><ul><li>Modelo da base de dados. </li></ul></ul>Estudante + get tuition() + add schedule() + get schedule() + delete schedule() + has pre-requisites() Professor - name - employeeID : UniqueId - hireDate - status - discipline - maxLoad + submitFinalGrade() + acceptCourseOffering() + setMaxLoad() + takeSabbatical()
    5. 5. <ul><li>Mecanismo de organização para agrupamento de outros elementos. </li></ul>Pacote Camada de Negócio
    6. 6. <ul><li>Relacionamento fraco entre dois elementos </li></ul><ul><li>Usado quando não existe uma relação de associação permanente entre os dois elementos. </li></ul><ul><li>Em termos técnicos se trata tipicamente passagem de parâmetros ou variáveis locais de métodos. </li></ul>Dependências Aluno NotaParc
    7. 7. <ul><li>Associações </li></ul><ul><ul><li>Relacionamentos estruturais permanentes </li></ul></ul><ul><li>Dependência </li></ul><ul><ul><li>Relacionamento ‘fraco’ temporário. </li></ul></ul><ul><li>Ambas são identificadas pelo diagrama de seqüência gerado na atividade de análise. </li></ul>Dependências vs. Associações Association Estudante NotaFinal NotaParcial Dependency
    8. 8. Processo de Análise <ul><li>Identificar </li></ul><ul><ul><li>Associação vs Dependência </li></ul></ul><ul><ul><li>Refinamento de Associação </li></ul></ul><ul><ul><ul><li>Composição </li></ul></ul></ul><ul><ul><ul><li>Agregação </li></ul></ul></ul><ul><ul><li>Atributo Primitivo x Associação </li></ul></ul><ul><ul><li>Navegabilidade </li></ul></ul><ul><ul><li>Multiplicidade </li></ul></ul>
    9. 9. <ul><li>Agregação </li></ul><ul><ul><li>Tempo de vida da classe ‘parte’ independente do tempo da classe ‘todo’ </li></ul></ul><ul><li>Composição </li></ul><ul><ul><li>Tempo de vida restrito. </li></ul></ul>Associação: Agregação vs Composição Multiplicidade = 1 1 Todo Parte 0..* Composição Todo Parte 1..* 0..* Multiplicidade > 1
    10. 10. Atributo Primitivo vs Associação <ul><li>Associação quando: </li></ul><ul><ul><li>Elemento não restrito a um tipo primitivo </li></ul></ul><ul><ul><li>Tipicamente um atributo correlacionado a outros da mesma classe. </li></ul></ul><ul><ul><li>Alem da propriedade o elemento possuir um comportamento. </li></ul></ul><ul><ul><li>Ex Cliente vs Endereço. </li></ul></ul>
    11. 11. Navegabilidade <ul><li>Indica o sentido da navegação </li></ul><ul><ul><li>Para cada destino de navegação é preciso um atributo na classe de origem </li></ul></ul><ul><ul><ul><li>Nome do atributo determina pelo nome da extremidade destino da associação </li></ul></ul></ul>Estudante Curso curso Associação nomeada: ‘Role’ (papel)
    12. 12. Multiplicidade <ul><li>Não especificado </li></ul><ul><li>Apenas 1 </li></ul><ul><li>Zero ou mais </li></ul><ul><li>Um ou mais </li></ul><ul><li>Zero ou um </li></ul><ul><li>‘ Range’ específico </li></ul><ul><li>Vários ‘Range’ </li></ul>1 2..4 0..1 1..* 0..* * 2, 4..6
    13. 13. <ul><li>Multiplicidade = 1, ou Multiplicidade = 0..1 </li></ul><ul><ul><li>Atributo simples </li></ul></ul><ul><li>Multiplicidade > 1 </li></ul><ul><ul><li>É preciso utilizar alguma estrutura de dados </li></ul></ul>Implementação da Multiplicidade 0..* 0..1 instructor Needs a container Professor Materia 0..* 0..1 instructor Materia Professor
    14. 14. Estrutura de Dados <ul><li>Explícito </li></ul><ul><li>Por nota </li></ul>instructor Professor Materia 0..* 0..1 Materia <<entity>> Professor <<entity>> CadastroaMaterias + new() + add() 1 0..* 0..1 0..1 +instructor Materia 0..* 0..1 instructor ListaLigada Professor
    15. 15. Classe Parametrizada (Template) Generics <ul><li>Classe que necessita de um tipo adicional para sua instanciação </li></ul><ul><li>Tipicamente Coleções </li></ul><ul><ul><li>ex Lista, Dicionário, Fila e Pilha </li></ul></ul>Item List Classe Parametrizada Tipo
    16. 16. Generalização (Herança) <ul><li>Define </li></ul><ul><ul><li>Relacionamento de ‘é-um’ </li></ul></ul><ul><ul><li>Herança de atributos e métodos </li></ul></ul>Conta balance name number Withdraw() CreateStatement() CCorrente Poupança GetInterest() Superclass Subclasses Relacionamento Generalização
    17. 17. Classes Concretas e Abstratas <ul><li>Abstrata </li></ul><ul><ul><li>Basta um método sem comportamento, abstrato </li></ul></ul><ul><ul><li>Não pode ser instanciado </li></ul></ul><ul><li>Concreto </li></ul><ul><ul><li>Caso precise redefinir o método, indicar como ‘virtual’ (C#) </li></ul></ul><ul><ul><li>Pode ser instanciado </li></ul></ul>Leao talk () Tigre talk () Animal {abstract} talk () {abstract}
    18. 18. Generalização vs Agregação <ul><li>Generalização = relação ‘é-um’ </li></ul><ul><li>Agregação = relação ‘tem-um’ </li></ul>Esta correto? Window WindowWithScrollbar Scrollbar
    19. 19. WindowWithScrollbar “é-uma” Window WindowWithScrollbar “tem-uma” Scrollbar Generalização vs Agregação Scrollbar Window WindowWithScrollbar 1 1 Window WindowWithScrollbar Scrollbar
    20. 20. UML: Diagrama de Seqüência 1: cadastrarCliente() Objeto Cliente Objeto Fornecedor Mensagem Escopo de atividade Chamada local Linha de vida 1.1: validarCredito() Numeração de seqüência de mensagens : Boundary : Control
    21. 24. UML Msc Luiz Barboza

    ×