A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Uma comparação de dois métodos de desenvolvimento de software baseado em componentes: Catalysis e UML Components Projeto Final por: Bernardo Faria de Miranda.

Apresentações semelhantes


Apresentação em tema: "Uma comparação de dois métodos de desenvolvimento de software baseado em componentes: Catalysis e UML Components Projeto Final por: Bernardo Faria de Miranda."— Transcrição da apresentação:

1 Uma comparação de dois métodos de desenvolvimento de software baseado em componentes: Catalysis e UML Components Projeto Final por: Bernardo Faria de Miranda e Diego Delgado Lages Orientação Profª Cláudia Maria Lima Werner, D.Sc. Prof° Marco Aurélio Souza Mangan, M.Sc.

2 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Roteiro Motivação Objetivo Método de trabalho Visão geral de um método de DBC Catalysis UML Components Comparação Considerações finais Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

3 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Motivação (1) Produtividade e qualidade no desenvolvimento de software Os métodos tradicionais de desenvolvimento de software ainda não atendem às expectativas da indústria [Aoyama98] O desenvolvimento baseado em componentes (DBC) tem sido apontado como solução para esta crise [Szperski99] [Szperski98] Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

4 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Motivação (2) O DBC permite o ganho de qualidade e produtividade por meio da reutilização de componentes de software [Crnkovic01] Conceito antigo Tecnologias recentes aumentam a possibilidade de reutilização EJB, COM+, CCM Os métodos de DBC ainda permanecem imaturos [Teixeira03] Falta de exemplos de aplicações de métodos de DBC na literatura Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

5 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Objetivo Nosso objetivo é comparar como os métodos atuais de DBC tratam a identificação e representação dos componentes que estão sendo criados Foram selecionados dois métodos: Catalysis [Wills99] UML Components [Cheesman01] Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

6 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Método de trabalho Coleta de bibiografia Seleção de exemplos para os estudos de caso Vídeo locadora do livro do Catalysis Sistema de hotelaria do livro do UML Components Modelagem do exemplo Estudo de caso da vídeo locadora usando o Catalysis Estudo de caso da hotelaria usando o UML Components Comparação de modelos Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

7 Visão geral de um método DBC (1)
Componentes Caixa preta Princípios OO [Cheesman01] Unificação de dados e métodos Encapsulamento Identidade Interfaces contratualmente especificadas [Szperski99] Contratos Pré-condição, pós-condição e invariantes Escritos em OCL ou linguagem natural Define tudo que um cliente precisa saber e mais nada além disso [Cheesman01] Os componentes desconhecem a parte interna de outros componentes Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

8 Visão geral de um método DBC (2)
No contexto de uma aplicação baseada em componentes, o seu desenvolvimento é composto por dois processos [Crnkovic01]: composição de componentes Análise de quais componentes podem ser utilizados para satisfazer os requisitos levantados Proporcionar um ganho de tempo de projeto desenvolvimento de componentes Menos atraente, pois requer mais esforço e tempo de projeto Por outro lado, oferece a oportunidade de desenvolver funcionalidades do sistema que vão ser, provavelmente, as de maior valor para a empresa O UML Components não orienta a composição de componentes Portanto, o desenvolvimento de componentes é o objeto de estudo Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

9 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Catalysis Especificação de requisitos Casos de uso Glossário UI Sketches Modelagem de componentes e seus serviços Ações e cenários Especificação das ações Modelos de tipos Diagrama de estados Colaborações Abstrações e Refinamentos Frameworks e Padrões Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

10 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
UML Components Especificação de requisitos Modelo conceitual Casos de uso Identificação de componentes Componentes de sistema Componentes de negócio Identificação de serviços Colaboração entre componentes Especificação de serviços OCL, linguagem natural Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

11 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Exemplo de modelo (1) Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

12 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Exemplo de modelo (2) Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

13 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Comparação (1) Catalysis  Menos didático  Induz a eliminação de inconsistências ao longo da modelagem  Existem padrões que guiam o desenvolvedor na implementação  Oferece técnicas que podem ser utilizadas fora de DBC  Aborda todas as camadas do sistema (cliente e servidor) UML Components  Bastante didático  Supõe análise completa  Não orienta a implementação, apenas a modelagem  Apenas os componentes do lado do servidor Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

14 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Comparação (2) Catalysis UML Components Análise de Requisitos Casos de uso, rascunho de interface, glossário e ações. Modelo conceitual e casos de uso. Identificação de componentes Não existe método sistemático. Sugere o uso de colaborações Tem método sistemático. Identificação de serviços Emergem da colaboração entre os tipos de um componente. Examinando as interfaces, usando a arquitetura de componentes. Representação de componentes Sugere muitas extensões da UML. Poucas extensões. Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

15 Considerações Finais (1)
Contribuições Identificar pontos forte e fracos dos métodos dentro do contexto de modelagem Verificar a aplicabilidade Servir de referência para trabalhos de DBC Detectar a inadequação das ferramentas CASE Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

16 Considerações Finais (2)
Limitações do Trabalho Apenas modelagem Estudos de caso Retirado da bibliografia Deficiência dos livros na descrição do problema Simplicidade Não permite aplicar todas as técnicas Falta de mudança de requisitos Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

17 Uma comparação de dois métodos de desenvolvimento de software baseado em componentes: Catalysis e UML Components Dúvidas?

18 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Referências (1) [Aoyama98] Aoyama, M. New age of software development: How component-based software engineering changes the way of software development. In Proceedings of International Workshop on Component-Based Software Engineering, Kyoto, Japão ( (1998). [Szperski98] Szperski, C. Component Software: Beyond Object-Oriented Programming. Addison-Wesley, 1998. [Szperski99] Szperski, C. Component and objects together. In Software Development Magazine (1999), vol. 7. [Crnkovic01] Crnkovic, I. Component-based software engineering - new challenges in software development. In Software Focus (2001), vol. 2, pp. 127–133. [Teixeira03] Teixeira, H. V. Geração de componentes de negócio a partir de modelos de análise. Tese de Mestrado, COPPE/UFRJ, 2003. Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003

19 Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003
Referências (2) [Cheesman01] Cheesman, J., e Daniels, J. UML Components. The Component Software Series. Addison-Wesley, 2001. [Wills99] Wills, A. C., e D’Souza, D. Objects, Components and Frameworks with UML: The Catalysis Approach. Addison-Wesley, 1999. Bacharelado em Informática - DCC IM/UFRJ - Outubro de 2003


Carregar ppt "Uma comparação de dois métodos de desenvolvimento de software baseado em componentes: Catalysis e UML Components Projeto Final por: Bernardo Faria de Miranda."

Apresentações semelhantes


Anúncios Google