If you can't read please download the document
Upload
fabio-nogueira-de-lucena
View
1.792
Download
2
Embed Size (px)
Citation preview
2. Cenrio
3. UML uma linguagem para ... Artefatos do desenvolvimento de software 4. Contexto
UML Modelagem OO Mtodo Linguagem 5. UML formal?
6. Imprecises da UML
A primary requirement for the future UML2 specification is the elimination of ambiguities by providing a precise definition of the semantics of each UML concept. Evolution, not Revolution Bran Selic, Guus Ramackers, and Cris Kobryn CACM, november, 2002, pp. 70-72 7. Evoluo 8. O que OMG? Aonix Colorado State University Computer Associates Concept Five Data Access EDS Enea Data Hewlett-Packard IBM I-Logix InLine Software Intellicorp Kabira Technologies Klasse Objecten Lockheed Martin Microsoft ObjecTime Oracle Ptech OAO Technology Solutions Rational Software Reich SAP Softeam Sterling Software Sun Taskon Telelogic Unisys 9. UML em exemplos 10. Classe 11. Classe Pessoa Atividade natural ao longo de um desenvolvimento. 12. Pessoa (UML e Java) Transformaes podem ser necessrias. public class Pessoa { private String nome;private int dia, mes, ano;private char sexo;private String cpf, id; public int obtemIdade() { // Atualizar em 2004 return (2003 ano); } } 13. Melhor que a anterior ... Cdigo no depende de constante. import java.util.Calendar; public class Pessoa { private String nome;private int dia, mes, ano;private char sexo;private String cpf, id; public int obtemIdade() { Calendar c = Calendar.getInstance(); return (c.get(Calenadr.YEAR) - ano); } } 14. Diagrama de objetos 15. Diagrama de objetos 16. Diagrama de objetos 17. Diagrama de objetos 18. Diagrama de classes Modelo que contempla diagramas de objetos. 19. Diagrama de objetos Instncia de cargo faz uso de uma instncia de PessoaFisica e outra de PessoaJuridica como parmetros em alguma operao. Em algum instante de tempo ... 20. Casos de Uso
Vendedores deslocam-se at os clientes (jcadastrados) para recolher eventuaispedidos. Negcio Requisitos de software 21. Casos de Uso (refinamento I) Vendedores deslocam-se at os clientes (jcadastrados) para recolher eventuaispedidosde produtos tambm cadastrados . Negcio Requisitos de software 22. Casos de Uso (refinamento II) Vendedores deslocam-se at os clientes (jcadastrados) para recolher eventuaispedidosde produtos tambm cadastrados . Dever ser fornecida uma previso de entrega. Negcio Requisitos de software 23. Modelagem do Negcio Efetuar pedido (negcio) Requisitos de software 24. Diagrama de seqncia 25. Diagrama de seqncia
26. Quiosque (ingressos) Ingressos podem ser obtidos atravs de um quiosque. Como a compra ocorre? Diagrama para descrever UC 27. Diagrama de colaborao Diagramas de seqncia e colaborao so equivalentes 28. Diagrama de colaborao if(f.isFile() && f.getCanonicalPath().endsWith(ext)){ owtd.doWork(f); System.out.println(f.toString()); } 29. O que estado de objeto?
30. Objetos e Estados Ciclo de vida Estado civil 31. Diagrama de estados 32. Diagrama de estados 33. Diagrama de estados public class Porta { private boolean aberta;public void fechar() {aberta = false; } public void abrir() { aberta = true; } } 34. java.lang.Thread (estados) 35. Diagrama de atividades romntico 36. Diagramas de atividades Workflow 37. Associao Conexo semntica entre objetos de uma classe representada por .... Casa Pessoa Morador 38. Associao
39. Relacionamento semntico Mulher Homem 1 1 1 1 Casamento 40. Relacionamento semntico 41.
Diagrama de objetos 42. Mais um exemplo 43. Relacionamento todo/parte 44. Relacionamento todo/parte 45. Relacionamento todo/parte 46. Agregao 47.
Agregao 48. Agregao 49. Associaes 50.
Regras de negcio Toda pessoa faz parte de um grupo Grupo Pessoa Elemento Parte OCL (Object Constraint Language) Lngua Portuguesa 51. Mais associaes ...
52. Dependncias Tipo de relacionamento entre classes, pacotes, ... 53. Objeto composto 54. Restries e comentrios Restrio = condio que deve ser satisfeita Nota = comentrio 55. Esteretipos
Esteretipo = estende a semntica da UML 56. Esteretipos Esteretipos para aplicaes Web 57. Componente Componente = parte fsica e substituvel de um sistema 58. Componentes Teste.classdepende de Teste.java Componente = parte fsica e substituvel de um sistema 59. Gerncia de modelos I 60. Gerncia de modelos II 61. Ferramentas
Anlise 62. Consideraes finais Nem todos precisam aprender e aplicar toda a UML, espera-se que usurios se especializem nas reas que precisam pararealizar suas tarefas. Architecting Systems with UML 2.0 Bjrkander & Kobryn, IEEE Software, august, 2003