RASPUTIN P ROMOVENDO O R EUSO DE S OFTWARE A TRAVÉS DO P ADRÃO RAS Felipe Roos da Rosa Orientador: Prof. Marcelo Soares Pimenta.

Slides:



Advertisements
Apresentações semelhantes
Projeto Qualified Curriculum
Advertisements

Auditoria de Processo Marcelo Waihrich Souza
Programa das Aulas 20/09/05 - Apresentação da disciplina
Raphael Gatti Thomás Bryan
Rational Unified Process
15/1/2014 Professor Leomir J. Borba- – 1 Tec. Em Analise e desenvolv. De Sistemas analise.
Engenharia de Software
> Fases de Engenharia de SW > Gestão de Projectos de SW
Garantia de Qualidade do software
ISO/IEC – 6 Avaliação do Produto – Módulos de Avaliação
Rational Unified Process(RUP)
Gerenciamento do escopo do projeto
Gerenciamento de custos do projeto
INTRODUÇÃO A INFORMÁTICA
Component-Based Frameworks for E-Commerce Agnaldo Kiyoshi Noda.
Metodologia de Desenvolvimento de Software
CK 119: Engenharia de Software DC/CC/UFC © Rossana Andrade, Setembro CK119: Engenharia de Software Rossana Andrade Ph.D, SITE, University of Ottawa,
Gerenciamento de Configuração
April 05 Prof. Ismael H. F. Santos - 1 Modulo II CheckStyle Professor Ismael H F Santos –
Engenharia de Requisitos
Auditoria de Segurança da Informação
Implementação de Sistemas
Como Desenvolver Sistemas de Informação
Gestão de Defeitos Vanilson Burégio.
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Gerenciamento do Escopo
Classes e objetos Modelagem
Business Intelligence SAP Disclosure Management
DIAGRAMA DE COMPONENTES
Gerenciamento de Implantação
Engenharia de Requisitos
DFD – Data Flow Diagram Diagrama de Fluxo de Dados
José Roberto Blaschek Gerência do Escopo José Roberto Blaschek.
RUPinho Qualidade de Software
Business Intelligence SAP Disclosure Management
Avaliação de um processador FemtoJava multiprocesso CMP502 – Sistemas Embarcados Leomar Soares da Rosa Junior Porto Alegre, março de 2003.
Aluno: Mário Monteiro Orientador: Sérgio Soares 1.
Visão Geral do RUP.
Validação experimental de uma abordagem baseada em busca para projeto de arquitetura de linha de produto de software Thelma Elita Colanzi Adaptação do.
Cap 2 – Processo de Software
Universidade São Marcos Curso: Gestão de Negócios Internacionais
PMBOK 5ª Edição Capítulo 7
Processos de Desenvolvimento de Software – Parte 2
BENCHMARKING.
GESTÃO DE PROJETOS Aula 5 1.
GERENCIAMENTO DE REDES UTILIZANDO O PROTOCOLO SNMP
Prof. Alexandre Vasconcelos
Planejamento e Gerenciamento
 - PSF Grupo: abc, agsj, fcac.
Projeto de Banco de Dados
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Gerência de Configuração - GC
Técnicas e Projeto de Sistemas
Repositório de Suporte ao Reuso de Software Felipe Roos Joana Trindade.
RASPUTIN P ROMOVENDO O R EUSO DE S OFTWARE A TRAVÉS DO P ADRÃO RAS Felipe Roos da Rosa Orientador: Prof. Marcelo Soares Pimenta.
RASPUTIN P ROMOVENDO O R EUSO DE S OFTWARE A TRAVÉS DO P ADRÃO RAS Felipe Roos da Rosa Orientador: Prof. Marcelo Soares Pimenta.
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
Software engineering, the software process and their support M.M. Lehman Apresentadora: Tarciana Dias da Silva.
Processo de Aquisição Adilson de Almeida Cezar Meriguetti
CALENDÁRIO 2013 MÓDULO II.
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
Bruno Silva Desenvolvido a partir de
Engenharia de Software
Modelo de Qualidade para Componentes de Software
Desenvolvimento com reuso Desenvolvimento para reuso IdentificaçãoImplementaçãoEmpacotamento RecuperaçãoCompreensãoAdaptação Repositório de Reuso LiberaçãoReuso.
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
Lenylda Albuquerque ISO Processos de Ciclo de Vida de Software Universidade Federal de Pernambuco.
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
YOUR LOGO Tópicos Avançados em Internet Prof. Lincoln Ferreira Dantas Sistemas de Informação UNIESP – Presidente Epitácio.
Transcrição da apresentação:

RASPUTIN P ROMOVENDO O R EUSO DE S OFTWARE A TRAVÉS DO P ADRÃO RAS Felipe Roos da Rosa Orientador: Prof. Marcelo Soares Pimenta

R OTEIRO Introdução Motivação Objetivo Reuso e Conceitos Repositório de Reuso Artefato RAS RASPUTIN Passo a Passo Conclusão Trabalhos Futuros 06/07/ RASPUTIN

R EUSO : I NTRODUÇÃO Segundo Frakes Uso do conhecimento de software existente para construir novos artefatos de software Segundo Lim Reuso sistemático de artefatos com um plano estruturado contendo processos e ciclos de vida bem definidos e garantias de financiamento, pessoal e incentivo para produção e uso de artefatos reusáveis Segundo Ezran Prática sistemática de desenvolvimento de software Tem sido estudada por décadas Mass Produced Software Components : McILROY, Enfrenta barreiras em sua adoção Quando aplicada corretamente, gera resultados positivos 06/07/ RASPUTIN

R EUSO : B ENEFÍCIOS Confiabilidade Aumentada Componentes já testados Risco Reduzido Menos incerteza sobre custo Padrões Organizacionais Por exemplo, interfaces com usuário Time to Market Chega ao mercado mais rápido Documentação Para ser reusado é necessário estar documentado 06/07/ RASPUTIN

R EUSO : D ESAFIOS PARA A DOÇÃO Maiores barreiras são fatores psicológicos, sociológicos e econômicos Not Invented Here Investimento inicial Resistência gerencial Maiores barreiras técnicas Dificuldade de encontrar componentes reusáveis Qualidade dos componentes encontrados Considerar também Indefinição quanto à descrição necessária 06/07/ RASPUTIN

R EUSO : S OLUÇÕES A VALIADAS Ferramentas Estudadas BART e CORE (RiSE) Mecanismo de busca e repositório de suporte ao reuso sistemático de software Rational Asset Manager (Rational) Auxilia as tarefas de submissão, categorização, acesso e medição ARCSeeker (SPARX) Possibilita reuso de modelos UML gerados com a ferramenta Enterprise Architect Maven e Archiva Gerenciamento, compreensão, construção e documentação de projetos de software. 06/07/ RASPUTIN

O BJETIVO Suporte à promoção do reuso Através do padrão RAS Reusable Asset Specification, OMG Solução open source Integração com solução existente 06/07/ RASPUTIN

D ESENVOLVENDO COM R EUSO 06/07/2009 RASPUTIN 8 Maximizar reuso de software existente Redução de custo. Acontece logo após a fase de especificação Algumas condições Custo de procura deve ser relativamente baixo Componentes devem ser confiáveis Documentação associada Mas como eles são construídos? RecuperaçãoCompreensãoAdaptação

D ESENVOLVENDO PARA R EUSO 06/07/2009 RASPUTIN 9 Identificação e geração de componentes reusáveis Adaptação dos compoentes Tornar componentes existentes passíveis de reuso Exemplos de mudanças Nomenclatura Adição e remoção de operações Verificação da qualidade IdentificaçãoImplementaçãoEmpacotamento

R EUSO : R EPOSITÓRIO 06/07/ RASPUTIN Desenvolvimento para reuso Desevolvimento com reuso Repositório de Reuso Liberação Reuso

R EUSO : R EPOSITÓRIO Funcionalidades do Repositório de Reuso Identificação e descrição de artefato Inserção de artefato Navegação através do catálogo Busca Recuperação Dentre diversas outras. Quem precisa? Considerar número de desenvolvedores e número de artefatos Vantagens Reconhecimento, homogeneidade, processo 06/07/ RASPUTIN

RAS: A RTEFATO R EUSÁVEL 06/07/2009 RASPUTIN 12 Provê solução para um problema num contexto Pontos de variabilidade Regras de utilização Granularidade # soluções Variabilidade # pontos de extensão Articulação Grau de definição RAS Variabilida de Articulaçã o Granularidad e

RAS: A RTEFATO RAS Representa um elemento reusável: Empacotado como arquivo ZIP ou como parte do sistema de arquivos Possui, em sua raiz, um descritor XML que segue um perfil baseado no RAS: rasset.xml Contém Zero ou mais arquivos XSD Um arquivo rasset.xml Um ou mais arquivos reusáveis. Cada arquivo dentro do artefato RAS precisa ser referenciado no rasset.xml RASPUTIN trabalha com o perfil padrão 06/07/ RASPUTIN

Um passo em direção à adoção extensiva do RAS Suporte à promoção do reuso Baseado em solução open source Geração, armazenamento, procura, recuperação de artefatos RAS Passo Inicial (escopo) Integra o RAS com a solução Archiva a fim de permitir armazenamento, busca e recuperação 06/07/ RASPUTIN

RASPUTIN: I NFRA -E STRUTURA DE S UPORTE AO RAS 06/07/ RASPUTIN Contexto do Ator do Reuso (produtor ou consumidor) Contexto do Repositório de Reuso Recuperador RAS Gerador RAS Armazenamento Artefatos RAS Base de Dados Busca Artefatos RAS Recuperação Artefatos RAS Recuperação Artefatos RAS Escopo do RASPUTIN Disco

RASPUTIN: A MBIENTES Contexto do Ator do Reuso Aquele que realiza o reuso Gerando artefatos reusáveis Reusando artefatos disponíveis Geralmente associado a um IDE Contexto do Repositório de Reuso Aquele que viabiliza o reuso Mas o reuso já existia antes da definição Tudo depende da necessidade 06/07/ RASPUTIN

RASPUTIN: A PACHE A RCHIVA Repositório de Reuso Na verdade, gerenciador de repositórios Maven Suporta diversas instâncias de repositórios Maven Fortemente ligado ao Maven Mesma estrutura de sistema de arquivos Fortemente baseado no arquivo POM Informações do POM na base de dados Permitem o funcionamento do sistema de busca Adaptação da ferramenta para o RAS Consumidor de conteúdo de repositório Consumidor de base de dados 06/07/ RASPUTIN

P ASSO A P ASSO : U M A RQUIVO RAS <asset xmlns=" xmlns:xs=" name="JUnit" id="junit" version="3.8.1" short-description="JUnit is a regression testing framework." > JUnit is a regression testing frameword written by Erich Gamma and kent Beck. It is used by the developer who implements unit tests in Java. This is the JAR package for JUnit Java Package 06/07/ RASPUTIN

P ASSO A P ASSO : I NSERÇÃO 06/07/ RASPUTIN

P ASSO A P ASSO : I NSERÇÃO Campos obrigatórios para o Maven Podemos garantir que informações do RAS sejam reconhecidas Consumidor de Repositório RAS Leitura de informações relevantes do rasset.xml para indexar o artefato Consumidor de Base de Dados RAS Leitura de informações relevantes do rasset.xml para colocá-las na base de dados Adaptação das informações ao formato necessário POM 06/07/ RASPUTIN

P ASSO A P ASSO : B USCA POR C AMINHO L ÓGICO 06/07/ RASPUTIN

P ASSO A P ASSO : B USCA POR P ALAVRA - C HAVE 06/07/ RASPUTIN

C ONCLUSÃO Suporte ao padrão RAS Serviço de Repositório Definição do resultados Maneira padrão para Descrever Armazenar Consultar Recuperar artefatos Buscando aprovação Necessária aprovação do time Apache Archiva para inclusão das alterações em uma versão futura 06/07/ RASPUTIN

T RABALHOS F UTUROS Qualidade dos Componentes Qualidade da Pesquisa Índice de certeza Pontuação dos artefatos Métricas de Reuso Quantidade, custo de manutenção, etc. Informações do artefato RAS na interface Hoje está atrelada ao POM Suporte diretamente no Maven Substituição do POM pelo rasset.xml Juntamente com a interface de pesquisa, poderia suportar a arquitetura completamente. 06/07/ RASPUTIN

RASPUTIN P ROMOVENDO O R EUSO DE S OFTWARE A TRAVÉS DO P ADRÃO RAS Felipe Roos da Rosa Orientador: Prof. Marcelo Soares Pimenta

B ACKUP S LIDES 06/07/2009 RASPUTIN 26

RASPUTIN: XPATH S DE P ESQUISA 06/07/2009 RASPUTIN 27 /asset/classification// context/description /asset/classification// context//descriptor/text() Nome do AtivoIdentificador do AtivoVersão do AtivoDescrição breve do AtivoDescrição do AtivoDescrição dos ContextosDescritores dos Contextos

RASPUTIN: A DAPTANDO AO RAS 06/07/2009 RASPUTIN 28 /project/groupId/project/artifactId/project/version/project/description/project/name XPATH POMXPATH RAS

RASPUTIN: A RQUIVO POM Project Object Model Arquivo XML utilizado pelo Maven para representar informações sobre um projeto Representado internamente pelo Archiva em sua base de dados Integra informações sobre testes unitários, repositório de defeitos, dependências, etc. Diferente do rasset.xml Possui elementos relacionados, mas funções diferentes rasset.xml define estrutura e elementos de um artefato reusável O POM define dependências entre artefatos e processo de construção de um determinado artefato ou pacote. 06/07/ RASPUTIN