UML Components MO409 – Eng. de Software Profa. Eliane Martins Fernando J. C. de Lima Fo - RA014861 Rodrigo Teruo Tomita – RA992432 1 Introdução O que são componentes? Componentes X Objetos Por que usá-los? Unificação de dados e função Encapsulamento Identidade* Gerenciar mudanças com maior facilidade Reuso Visão muito diferente da do RUP 2 Elementos de um Componente 3 UML Components Um método para a construção de sistemas baseados em componentes com foco na notação proposta pela UML Ênfase na especificação de componentes Engloba as atividades de projeto Componentes vistos como elementos de modelagem (e não apenas implementação) Supõe um processo iterativo 4 Visão Geral da Arquitetura Escopo de UML Components Interface com Diálogo com o usuário o usuário Serviços do sistema Serviços de negócios 5 Processo de Desenvolvimento UML Components 6 Fluxo de Especificação 7 Qualidade, Padrões e Testes Passo a passo para desenvolvimento dos componentes (“como”) com razoável nível de detalhes Visão pragmática do desenvolvimento Método iterativo => refinamentos contínuos UML Components não inclui diretrizes de testes – utilizar outro processo 8 Gerenciamento do Projeto UML Components não inclui diretrizes de gerenciamento Processo de desenvolvimento vs. Processo de gerenciamento Alternativas: RUP, Scrum , DSDM 9 Ferramentas CASE Propõe extensão da UML para modelar componentes Usa estereótipos para manter compatibilidade Ferramentas CASE que suportam UML e estereótipos (Rational Rose, Poseidon UML, etc.) 10 UML Components e RUP UML Components Método de desenvolvimento Cobre fases de análise e projeto Foco no desenvolvimento de componentes Pode ser aplicado diretamente Faz algumas suposições sobre o processo de desenvolvimento (iterações, casos de uso) RUP Processo de desenvolvimento e gerência Cobre todo o ciclo de vida do sistema Genérico e orientado a objetos Componentes + Arquitetura => Propaganda enganosa Precisa ser adaptado 11 Considerações Finais Componentes são o futuro (ou o presente...) UML Components é um bom substituto para OOAD tradicional Simples e fácil de aplicar na prática Facilmente adaptável às tecnologias “da moda” como EJB, CORBA, .NET e até Web Services No Silver Bullet Diagramas demais Subestima as dificuldades normalmente encontradas para integrar componentes Não dá a atenção devida a componentes OTS “... a small matter of testing and deployment.” 12 Perguntas? ? Obrigado! [email protected] [email protected] 13 Referências Chessman, J. - Daniels, J.; UML Components – A simple process for specifying component-based software; Addison-Wesley; 2001 http://www.umlcomponents.com http://www.rational.com/products/rup/ http://www.dsdm.org/ http://www.gentleware.com/ 14 Modelo de Conceitos de Negócios 15 Diagrama de Casos de Uso 16 Modelo de Tipos de Negócios 17 Interfaces de Sistema 18 Interfaces de Negócios 19 Arquitetura de Componentes Especificação do Componente Reservation System 20