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.

Slides:



Advertisements
Apresentações semelhantes
APS I Análise e Projeto de Sistemas I
Advertisements

Raphael Gatti Thomás Bryan
ViewPoint (Trabalho Nº 2)
Modelagem de Software Orientado a Objetos
15/1/2014 Professor Leomir J. Borba- – 1 Tec. Em Analise e desenvolv. De Sistemas analise.
Identificando requisitos
Ferramentas de Engenharia de Software
Planificação do Projecto de SW
Implementação do CIBAC no SIE usando SOA
RMI-IIOP.
UML Material retirado da apostila do Professor Cesar Augusto Tacla
Projeto de Sistemas de Software
Componentes e Frameworks
Get Ready for Agile Methods, with Care
Component-Based Frameworks for E-Commerce Agnaldo Kiyoshi Noda.
Frameworks Conceituais
Cartões CRC (Class Responsibility Card)
CK 119: Engenharia de Software DC/CC/UFC © Rossana Andrade, Setembro CK119: Engenharia de Software Rossana Andrade Ph.D, SITE, University of Ottawa,
MO409 / Engenharia de Software I - 1º Semestre / Prof. Eliane 1 1ª Apresentação (A1) Modelos de Processos de Software RA: / Edson Amorina.
Arquitetura de Aplicações Web
ArchC: Uma linguagem de descrição de arquiteturas
Componentes: A Abordagem Catalysis
Metodologia para Desenvolvimento Web
Adélia Barros Requisitos Adélia Barros
Aline Vasconcelos D.Sc. em Sistemas e Computação/COPPE UFRJ
APSI III Aline Vasconcelos
Técnicas de Apoio ao Processo de Engenharia de Requisitos
Engenharia de Requisitos
ANÁLISE E PROJETO ORIENTADA A OBJETOS UFRJ/IM/DCC Lab PSI mai/1999.
Seminário de Andamento UNILASALLE André Sandri Maio 2006 PROFILE EM UML PARA MODELAGEM SIMPLIFICADA DE INTERFACES GRÁFICAS EM APLICATIVOS.
Carlos Alberto de Freitas Pereira Júnior
Composição e Geração de Aplicações usando Aspectos
Introdução Visão Geral do Método.
Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Classes e objetos Modelagem
dbCheck! uma ferramenta para teste de banco de dados
Análise de Casos de Uso Alexandre Motnteiro.
Modelagem para Web Aula de 11/04/2011.
Introdução a Arquitetura Orientada a serviços
Engenharia de Requisitos
Técnicas e Projeto de Sistemas
OdysseyShare: Desenvolvimento Colaborativo de Componentes COPPE - UFRJ Marco Aurélio Souza Mangan Webmidia/CSCW 2003.
GAW Uma ferramenta de percepção de grupo aplicada no desenvolvimento de software Marco Mangan Isabella Almeida Cláudia Werner
Supporting Use Case Based Requirements Engineering David Marques Filipe Garcês Ricardo Cruz.
Projeto de Sistemas de Software
UML Modelagem e Programação Orientada a Objetos
Prof. Alexandre Vasconcelos
Ritornello Um Framework para Representação de Conhecimento Musical
1.
1 1.
Aula 4: Áreas de Conhecimento em Gerenciamento de Projeto, Escopo
APLICANDO O PROCESSO DIRIGIDO POR RESPONSABILIDADES PARA A CRIAÇÃO DE UM SUBFRAMEWORK PARA VALIDAÇÃO SINTÁTICA DE FÓRMULAS Autores: Rafael Hornung Simone.
Aluna: Carolina Paloma Gasperoni
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
O Processo Unificado (UP)
Uma Abordagem para o Desenvolvimento de Apoio à Percepção em Ambientes Colaborativos de Desenvolvimento de Software Marco Aurélio Souza Mangan Orientadores:
Processos do Design 27/09.
Análise e Especificação de Requisitos © 2001 Jaelson CastroInformações Gerais 1 Análise e Especificação de Requisitos - IF119 Centro de Informática Jaelson.
Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.
Mestrando: Pedro Barbosa Cordeiro Orientador: Bernardo Lula Júnior
Desenvolvimento Global de Software
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
UML Components MO409 – Eng. de Software Profa. Eliane Martins
Catalysis - Visão Geral Alexandre Alvaro
APS II Análise e Projeto de Sistemas de Informação II
/ de Julho de UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Pós-Graduação em Ciência da Computação Tópicos Avançados.
SOA SOA – Arquitetura Orientada a Serviços Conceitos e Aplicações
Catalysis Engenharia de Software Douglas Gabriel Bernardes Matheus Zure Pablo.
Uma Extensão do Fluxo de Análise e Projeto do RUP com suporte a Desenvolvimento Baseado em Componentes Eduardo Almeida
Transcrição da apresentação:

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 {bmiranda,lages}@cos.ufrj.br Orientação Profª Cláudia Maria Lima Werner, D.Sc. Prof° Marco Aurélio Souza Mangan, M.Sc.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 (http://www.sei.cmu.edu/cbs/icse98/papers/p14.html) (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

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