1 / 50

Unified Modeling Language

Unified Modeling Language. Agenda. Software e modelagem; UML Introdução; Diagramas; Comentários finais;. Agenda. Software e modelagem; UML Introdução; Diagramas; Comentários finais;. Evolução do software.

maura
Download Presentation

Unified Modeling Language

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UnifiedModelingLanguage

  2. Agenda • Software e modelagem; • UML • Introdução; • Diagramas; • Comentários finais;

  3. Agenda • Software e modelagem; • UML • Introdução; • Diagramas; • Comentários finais;

  4. Evolução do software • O surgimento de sistemas de software complexos resultou na necessidade de reavaliar a forma de desenvolver sistemas; • As técnicas tem evoluído de forma impressionante, notavelmente no que tange à modelagem de sistemas.

  5. Novos requisitos de sistemas • Escalabilidade; • Segurança; • Robustez; • De fácil manutenção; • Reutilizável; Como resolver isso...

  6. Modelagem • Um modelo pode ser visto como uma representação idealizada de um sistema a ser construído; • Maquetes de edifícios e de aviões e plantas de circuitos eletrônicos são apenas alguns exemplos de modelos; • Uma simplificação da realidade que nos ajuda a entender um problema complexo;

  7. Modelagem de software • A modelagem de sistemas de software consiste na utilização de notações gráficas e textuais com o objetivo de construir modelos que representam as partes essenciais de um sistema, considerando-se diversas perspectivas diferentes e complementares.

  8. Para que modelar • Ajuda no gerenciamento da complexidade inerente ao desenvolvimento de software; • Ajuda na comunicação entre as pessoas envolvidas; • Ajuda na predição do comportamento futuro do sistema.

  9. Evolução da modelagem • Na primeira metade da década de 90 surgiram várias propostas de técnicas para modelagem de sistemas; • Houve uma grande proliferação de propostas para modelagem de sistemas segundo o paradigma orientado a objetos; • Existiam diferentes notações gráficas para modelar uma mesma perspectiva de um sistema.

  10. Necessidade de um padrão • Percebeu-se a necessidade de um padrão para a modelagem de sistemas, que fosse aceito e utilizado amplamente; • Surgiram esforços nesse sentido de padronização, sendo o principal liderado por James Rumbaugh, Grady Booch e Ivar Jacobson (Rational).

  11. Agenda • Software e modelagem; • UML • Introdução; • Diagramas; • Comentários finais;

  12. UML... • Surge a UML em 1996 como a melhor candidata para ser a linguagem unificadora de notações; • Em 1997 a UML é aprovada como padrão pela OMG; • Desde então tem tido grande aceitação; • Atualmente na versão 2.0;

  13. Características da UML • É uma linguagem visual; • É independente de linguagem de programação; • É independente de processo de desenvolvimento; • Não é uma linguagem de programação; • Não é uma metodologia.

  14. Usos da UML • Visualização; • Especificação; • Documentação; • Comunicação; • Construção.

  15. Diagramas Podem ser usados para... • Mostrar os limites de um sistema e suas funções; • Representa a estrutura estática de um sistema; • Modelar o comportamento de objetos; • Apresentar a implementação física e a arquitetura de um sistema;

  16. Elementos Essenciais Estruturais Classe Objeto Nó Interface Componente Relacionamentos

  17. Elementos Essenciais Comportamentais Estados Mensagens Caso de uso Ator

  18. Elementos Essenciais Extensão Notas Tagged Values

  19. Elementos Essenciais Agrupamento Pacotes

  20. Agenda • Software e modelagem; • UML • Introdução; • Diagramas; • Comentários finais;

  21. Diagrama de Casos de UsoVisão Geral • Descreve o que o sistema faz do ponto de vista do observador externo; • Ajuda a esclarecer os requisitos do sistema; • Ajuda a dividir o desenvolvimento do sistema em tarefas;

  22. Diagrama de Casos de Uso Caso de uso • Representa as diferentes funcionalidades que o sistema disponibiliza aos usuários.

  23. Diagramas de Caso de Uso Atores • Diferentes usuários que operam o sistema; • Sistemas externos que interagem com o sistema;

  24. Diagramas de Caso de Uso Associação • Representa a comunicação entre o ator e o caso de uso; • Também existem associações entre casos de usos;

  25. Diagramas de Caso de Uso Diagrama completo

  26. Diagramas de Classe Visão Geral • Largamente utilizado; • Descreve os diferentes tipos de objeto e o relacionamentos entre eles.

  27. Diagramas de Classe Classes • Estereótipo; • Atributos; • Operações; • Visibilidade; • Tipo;

  28. Diagramas de Classe Relacionamentos • Associações representam relações entre ocorrências de classes;

  29. Diagramas de Classe Relacionamentos • Multiplicidade; • Navegabilidade;

  30. Diagramas de Classe Relacionamentos • Agregação; • Composição;

  31. Diagramas de Classe Relacionamentos • Generalização; • Dependência;

  32. Diagramas de Classe Pacotes • Agrupa classes relacionadas;

  33. Diagramas de Classe Diagrama completo

  34. Diagrama de Seqüência • Mostra um conjunto de objetos, seus relacionamentos e as mensagens que podem ser enviadas entre eles; • Diagrama de seqüência dá ênfase à seqüência de mensagens;

  35. Diagrama de Seqüência Objetos • Representa uma instância de uma determinada classe;

  36. Diagrama de Seqüência Mensagens • Representa troca de mensagens entre os objetos;

  37. Diagrama de Seqüência Fragmentos • Servem para separar blocos de mensagens condicionadas a teste ou laço;

  38. Diagrama de Seqüência

  39. Diagrama de estados • Exibe os possíveis estados de um objeto; • Exibe também as transições que causam a mudança de estado.

  40. Diagramas de Classe Elementos básicos • Estado inicial; • Estado final; • Estado intermediário;

  41. Diagramas de Estados Diagrama completo

  42. Diagramas de Implantação Visão Geral • Mostra a configuração de software ou hardware; • Permite avaliar as diferentes situações de implantação do sistema.

  43. Diagramas de Implantação Elementos básicos • Componente; • Nó.

  44. Diagramas de Implantação Diagrama completo

  45. Agenda • Software e modelagem; • UML • Introdução; • Diagramas; • Comentários finais;

  46. Design na metodologia hoje Exemplo do RUP

  47. Quanto esforço empregar • Projeto; • Equipe de trabalho; • Complexidade; • Automatismos possíveis;

  48. Engenharia Reversa • Útil quando se quer trabalhar com sistemas sem documentação; • Nem sempre o resultado é satisfatório;

  49. Ferramentas sugeridas • StarUML em www.staruml.com • Poseidon em www.gentleware.com • Umbrello em http://uml.sourceforge.net/index.php • Rational Rose em www.rational.com • Dentre outras...

  50. Fontes • OMG – www.omg.org • UML – www.uml.org • UML Essencial – Grady Booch, Ivar Jacobson e James Rumbaugh

More Related