Your SlideShare is downloading. ×
Introdução à linguagem UML
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Introdução à linguagem UML

1,544
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,544
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
104
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Engenharia de SoftwareUnidade IV – A Linguagem UMLObjetivo: Visualizar a simbologia e os elementos daLinguagem de Modelagem Unificada (UML) bem comoos principais diagramas Prof. Nécio de Lima Veras
  • 2. Roteiro Introdução (métodos OO) UML  Conceitos  História  Utilidade e Desenvolvimento  Modelos e Diagramas
  • 3. Introdução – Métodos Orientado a Objetos• Booch (Grady Booch): 1. Um objeto = um modelo do mundo real com dados e habilidades; 2. Desenho estruturado e OO; Estruturado: Separa o sistema em módulos; OO: Problema com os objetos que existem em um domínio de problema;
  • 4. Introdução – Métodos Orientado aObjetos• OMT (Rumbaugh): Técnica de Modelagem de Objetos 1. Desenvolvido pela GE Corporation; 2. Baseado na modelagem semântica de dados; 3. Suporta: • Atributos e relacionamentos (modelagem de dados); • composição/agregação (objetos); e • Herança. 4. Ponto forte: Notação utilizada (OMT reformula E-R); 5. Ponto fraco: Sem notação específica para representar troca de mensagens entre os objetos;
  • 5. Introdução – Métodos Orientado aObjetos• OOSE (Jacobson): Object-Oriented Software Engineering;1. A diferença em relação aos outros métodos é o seu foco: – Casos de uso (domínio do problema e interfaces); – Categorização de pessoas e equipamentos, dependendo do seu papel no sistema;2. Ponto fraco: Notação simplista para objetos de domínios (objetos = círculos);3. Ponto forte: Foi adaptado a engenharia de negócios (idéias usadas para modelar e melhorar processos);
  • 6. Introdução – Métodos Orientado aObjetos• Shlaer/Mellor (Sally Shlaer e Stephen Mellor):1. Pode utilizar ferramentas tradicionais (DFD);2. Pode ser usado quando a organização decide manter suas antigas ferramentas de trabalho, enquanto avalia outra (OO);3. Utilizava diagrama de ER e transição de estados;4. Recebeu muitas críticas por: – Não fornecer esquema de tratamento de mensagens e encapsulamento; – pobreza no suporte a conceitos e herança;
  • 7. Introdução – Métodos Orientado aObjetos• Coad/Yourdon (Peter Coad e Ed Yourdon):1. Enfoque simples e eficaz;2. Divide a análise em classes e objetos;3. Objetos = Abstrações do mundo real;4. Classes = Coleção de um ou mais objetos com atributos e serviços;
  • 8. Introdução – Métodos Orientado aObjetos Outros métodos:  Embley/Kurtz;  Martin/Odell;  Wirfs-Brock;  UML Leitura recomendada:UML Essencial: Um breve guia para a linguagem-padrão de modelagem de objetos. Martin Fowler, Bookman, 3a Edição, 2004.
  • 9. UML O que é UML?  Linguagem de modelagem unificada;  Projetada para descrever modelos de sistemas (do mundo real e de softwares);  Baseada em Objetos; Padrão  É hoje um padrão consolidado (adotada pela indústria de hardware e software);  Tem evoluído bastante durante os últimos anos;
  • 10. Como surgiu UML? Inicio-se com um esforço de Grady Booch e Jim Raumbaugh em 1994 para combinar seus métodos populares (Booch e OMT); Posteriormente, juntou-se a eles Ivar Jacobson (OOSE); Assim originou-se o termo “UNIFICADA”; Em 1997, foi submetida pela OMG como candidata a se tornar uma linguagem e uma notação padrão de modelagem;
  • 11. Como surgiu UML?(cont.) A OMG aceitou e assim a UML tem recebido a aprovação geral (indústrias de hardware e software); Muitas empreses de desenvolvimento de software e vendedores de ferramentas CASE adotaram a UML; Assim, a UML está acessível a todos, sendo uma linguagem padrão que é elegante, expressiva e flexível;Leitura complementar sobre as especificações danotação UML: www.uml.org
  • 12. Utilidade da UML É independente do processo de desenvolvimento de software; Finalidade principal: Ser uma linguagem para modelagem e não um guia de desenvolvimento de software, como por exemplo:  Como fazer análise e projeto OO;  Qual o processo (etapas, workflows) a seguir; Não define um ciclo padrão de desenvolvimento;
  • 13. Desenvolvimento da UML Os esforço iniciais dos autores foram:  Identificar e definir a semântica dos conceitos fundamentais;  Criar uma representação gráfica, cuja sintaxe pudesse ser bem simples, intuitiva e expressiva; Foi dividida em subconjuntos da UML,definida como meta-modelagem;  Vantagem: Permitir a classificação dos conceitos por nível de abstração, complexidade e pelo domínio da aplicação;
  • 14. Desenvolvimento da UML(cont.) Um meta-modelo descreve formalmente os elementos do modelo; O modelo é uma descrição abstrata de um sistema ou processo;  A forma do modelo depende do meta-modelo;  Cada meta-modelo define elementos do modelo e suas regras para composição;  O conteúdo do modelo depende do problema;  É a unidade básica do desenvolvimento e é construído por elementos com suas diferentes representações;
  • 15. Tipo de Modelos em UML A UML (v2) define diferentes tipos de modelos para representar sistemas. Exemplos:  Classes: Captura a estrutura estática;  Estados: Expressa o comportamento dinâmico dos objetos;  Casos de Uso: Descreve os requerimentos dos usuários;  Interações: Representa os cenários do fluxo de mensagens;  Implementação: Mostra as unidades trabalhando;  Implantação: Fornece os detalhes pertencentes ao processo de alocação de recursos;
  • 16. Tipos de Diagramas em UML• Um modelo pode ser constituído por um ou mais diagramas correspondentes;• A UML 2 define 13 diferentes tipos de diagramas divididos em grupos:
  • 17. Tipos de Diagramas em UML 1. Diagrama de classes;  Descreve os tipos de objetos em um sistema e os vários tipos de relações estáticas entre eles;  Demonstra os atributos e métodos de uma classe e a com que os objetos estão conectados;
  • 18. Tipos de Diagramas em UML 2. Diagrama de seqüências:  Mostra as interações entre objetos organizados em uma seqüência de tempo, ilustrando as mensagens trocadas; 3. Diagrama de Comunicações:  Mostra as interações organizadas em torno dos “roles” – objetos ou links; 4. Diagrama de Objetos:  Mostra objetos e suas relações em um certo ponto no tempo;  É considerado um caso especial do diagrama de classes em que instâncias e classes podem ser mostradas;
  • 19. Tipos de Diagramas em UML 5. Diagrama de Máquina de Estados:  Mostra uma máquina de estados, incluindo estados simples, transições e compostos;  Descreve todos os possíveis estados que este objeto pode assumir; 6. Diagrama de Atividades:  Descreve uma seqüência de atividades, com suporte de comportamento condicional e paralelo; 7. Diagrama de Casos de Uso:  Mostra seqüências de ações entre atores e “uses cases”;
  • 20. Tipos de Diagramas em UML8. Diagrama de Componentes:  Mostra dependências entre componentes de software – incluindo componentes de código-fonte, código objeto e executáveis;9. Diagrama de Implantação:  Mostra as relações físicas entre componentes de hardware e software;10. Diagrama de Estrutura Composta:  Descreve a estrutura interna de uma classe ou componente, além de permitir a descrição de colaboradores;11. Diagrama de Pacotes:  Representa um subsistema englobado por um sistema de forma a determinar as partes que o compõem.
  • 21. Tipos de Diagramas em UML 12. Diagrama de Interação Geral:  Uma variação do diagrama de atividades que fornece uma visão geral do fluxo de informações; 13. Diagrama de Tempo:  Descreve uma mudança de estado ou condição de instância, ou ainda, seu papel durante o tempo, tipicamente, em resposta a eventos externos; Assim, a UML fornece uma notação compreensível para todo o ciclo de desenvolvimento OO;
  • 22. Exercícios