Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl



Documentos relacionados
SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

FERRAMENTA DE APOIO A GERÊNCIA DE CONFIGURAÇÃO DE SOFTWARE

FERRAMENTA WEB DE SUPORTE A AVALIAÇÃO DE SOFTWARE COM A METODOLOGIA CERTICS

FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS

APLICATIVO PARA ATUALIZAÇÃO EMPRESARIAL

Controle de Versão de Software. Luiz Jácome Júnior

GERÊNCIA DE CONFIGURAÇÃO. Isac Aguiar isacaguiar.com.br

Clóvis Diego Schuldt. Orientador: Prof. Wilson Pedro Carli

Processo de garantia da qualidade baseado no modelo MPS.BR. Acadêmico: Anildo Loos Orientador: Everaldo Artur Grahl

ISO/IEC 12207: Gerência de Configuração

Gestão de Modificações. Fabrício de Sousa

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

O uso do gestor de conteúdos plone no suporte a processos de software

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Universidade Paulista

SISTEMA GERENCIADOR DE BANCO DE DADOS

GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD. Acadêmico: Maicon Klug Orientadora: Joyce Martins

Gerenciamento de configuração. Gerenciamento de Configuração. Gerenciamento de configuração. Gerenciamento de configuração. Famílias de sistemas

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Gerência de Configuração de Software Funções

2.0. Uma Nova Geração de Ferramentas para Gestão de Processos de Software. Coordenação Carla Alessandra Lima Reis Rodrigo Quites Reis

Política Gestão de Configuração e Mudança

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Gerência de Configuração. Professor: Dr. Eduardo Santana de Almeida Universidade Federal da Bahia

ADMINISTRAÇÃO DE ATIVOS DE TI GERENCIAMENTO DE CONFIGURAÇÃO

SOFTWARE DE APOIO A GESTÃO DE SOLICITAÇÃO DE MUDANÇAS

Projeto Disciplinar de Infra-Estrutura de Software SISPA FACULDADE SENAC

Gerência de Configuração. Profº Rômulo César

Gerenciamento de software como ativo de automação industrial

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick

APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA

PROJECT-TRAN: Ferramenta para gerenciamento de transição de conhecimento de projeto

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

Mobile Command. Diego Armando Gusava. Orientador: Mauro Marcelo Mattos

UM CASE DE IMPLANTAÇÃO DA GERÊNCIA DE CONFIGURAÇÃO E MUDANÇA (NÍVEL F) DO MPS.BR UTILIZANDO PADRÕES ABERTO PARA O DESENVOLVIMENTO CORPORATIVO

Ferramenta para gestão ágil

VisTrails. Fernando Seabra Chirigati Aluno de Engenharia de Computação e Informação COPPE/UFRJ fernando_seabra@cos.ufrj.br

SISTEMA PARA CONTROLE DE ESTOQUE DOS ALMOXARIFADOS DE AGÊNCIAS DE CORREIOS NO ESTADO DE SANTA CATARINA

LISTA DE EXERCÍCIOS. 1. Binário: Bit: Menor unidade de dados; dígito binário (0,1) Byte: Grupo de bits que representa um único caractere

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena


Disciplina: Administração de Departamento de TI. Professor: Aldo Rocha. Aula XI - 15/09/2011

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013

SISTEMA DE CONTROLE DE ACESSO, PARA AMBIENTE ACADÊMICO

Ferramenta de gerenciamento de mudanças e configurações de infraestrutura de TI Acadêmico: Joni Rodrigo Manke Orientador: Cláudio Ratke Banca:

Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate

Manual de Procedimentos para Desenvolvimento de Softwares

GARANTIA DA QUALIDADE DE SOFTWARE

CIGAM SOFTWARE CORPORATIVA LTDA.

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado

Documentação EPL - Clientes

//Sobre VISÃO MISSÃO. Honestidade, Responsabilidade. Respeito. Colaboração.

Fundamentos dos Sistemas de Informação Organização de Dados e Informações

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES

WebApps em Java com uso de Frameworks

Organização dos Estados Ibero-americanos. Para a Educação, a Ciência e a Cultura

SISTEMA WEB DE APOIO AO PROCESSO DE GERÊNCIA DE PROJETOS BASEADO NA NORMA ABNT ISO/IEC TR 29110

Controle de Versão. Prof. Msc. Bruno Urbano Rodrigues.

Desenvolvimento de um integrador de sistemas por meio de leiautes

Sistema de Help Desk e Controle de Chamados Baseado em Workflow. Cristian Paulo Prigol Marcel Hugo

Projeto Disciplinar de Infra-Estrutura de Software SILC - SISTEMA DE LOCAÇÃO E CONTROLE

Rotina de Discovery e Inventário

Plano de Gerenciamento do Projeto

Política Organizacional para Desenvolvimento de Software no CTIC

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki

CONCORRÊNCIA AA Nº 05/2009 BNDES ANEXO X PROJETO BÁSICO: DESCRIÇÃO DOS PROCESSOS DE TI

SISTEMA PARA AUTOMATIZAR O MONITORAMENTO DE ROTEADORES DE UM PROVEDOR DE ACESSO

Desenvolvimento de um Sistema de Informação para Monitoramento de Dados Hidrometeorológico voltado para Web

Projeto Arquitetural do IEmbedded

Atividades da Engenharia de Software GERENCIAMENTO DA CONFIGURAÇÃO DE SOFTWARE. Atividades da Engenharia de Software. Processo de Desenvolvimento de

Gerência de Requisitos: MPS.BR, BABOK e Agile possuem algo em comum? Uma experiência no Governo com software Open Source

PROTÓTIPO DE UM SISTEMA DE RASTREAMENTO PARA COMPUTADORES

gestão eletrônica do sistema da qualidade: uma ferramenta para o Coordenador da Qualidade A gestão eletrônica QUALIDADE QUALIDADE PROJETOS SAC

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

3 Estudo de Ferramentas

Projeto Disciplinar de Infra-Estrutura de Software SISCOP TORRE FORTE CONSTRUÇÕES LTDA.

Ferramenta para Acompanhamento de Projetos Utilizando o Método Kanban. Luiz Fernando Debatin Orientador: Everaldo Artur Grahl

Noções de. Microsoft SQL Server. Microsoft SQL Server

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

Cargo Função Superior CBO. Tarefas / Responsabilidades T/R Como Faz

Sistema para Reservas de Veículos de uma Cooperativa de Saúde. Ricardo Hoffmann Orientador: Wilson Pedro Carli

TERMO DE REFERÊNCIA PARA CONTRATAÇÃO DE PESSOA FÍSICA

PPS - Processo de Proposta de Solução Versão 1.3.1

GOVERNO DO ESTADO DO PARÁ MINISTÉRIO PÚBLICO DE CONTAS DOS MUNICÍPIOS DO ESTADO DO PARÁ MPCM CONCURSO PÚBLICO N.º 01/2015

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Arquitetura dos Sistemas de Informação Distribuídos

HIBERNATE EM APLICAÇÃO JAVA WEB

José Benedito Lopes Junior ¹, Marcello Erick Bonfim 2

SISTEMA DE GESTÃO DE PESSOAS SEBRAE/TO UNIDADE: GESTÃO ESTRATÉGICA PROCESSO: TECNOLOGIA DA INFORMAÇÃO

APOSTILAS: NORMAS; ABNT NBR ISO; MPS BR

Nota de Aplicação. Utilizando os recursos de segurança dos controladores HI. HI Tecnologia. Documento de acesso público

? O SQL SERVER é um sistema de gerenciamento de banco de dados relacional que foi desenvolvido inicialmente pela Microsoft em parceria com a Sybase.

sendo bastante acessível e compreendido pelos usuários que o utilizarem.

Sistema de Bancos de Dados. Conceitos Gerais Sistema Gerenciador de Bancos de Dados

GEOS GERENCIAMENTO DE ORDENS DE SERVIÇO.

Transcrição:

Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração de Software Melhoria de Processo do Software Brasileiro (MPS.BR) Desenvolvimento do trabalho Requisitos Especificação Implementação Resultados e discussão Conclusão Extensões

Introdução Com o aumento da complexidade do desenvolvimento de software, crescem também os problemas no gerenciamento de alterações durante o processo de criação ou manutenção do mesmo. O problema agrava-se ainda mais quando as equipes não estão bem integradas ou não se usa um ambiente que permita um controle adequado das mudanças realizadas no software. Na engenharia de software existe a gerência de configuração, na qual se definem etapas para os trabalhos em equipe e controle dos artefatos no ciclo de vida do produto. O gerenciamento de configuração é o desenvolvimento e a aplicação de padrões e procedimentos para gerenciar um produto de sistema em evolução.

Objetivos do Trabalho O objetivo principal deste trabalho é desenvolver uma ferramenta que suporte o processo de gerência de configuração de software. Definir o processo de gestão de configuração a ser suportado pela ferramenta; Comparar a ferramenta criada com outras ferramentas open-source existentes no mercado; Acrescentar novas funcionalidades nesta ferramenta não implementadas em trabalhos correlatos já desenvolvidos na FURB; Incorporar funcionalidades na ferramenta para atender diretrizes previstas no processo de gerência de configuração do modelo MPS.BR.

Fundamentação Teórica

Gerência de Configuração de Software A gerência de configuração é um conjunto de atividades de apoio ao desenvolvimento que permite que as mudanças inerentes ao mesmo sejam absorvidas pelo projeto de maneira controlada, mantendo a estabilidade na evolução do software.

Principais objetivos Identificar todos os itens da configuração de software; Gerir modificações em um ou mais itens; Facilitar a construção de diferentes versões de uma aplicação; Garantir que a qualidade do software seja mantida ao longo do seu ciclo de vida.

Item de Configuração Item de configuração é todo tipo de artefato que está ligado ao software em si, como código fonte, documentos de análise, compiladores, executáveis, etc. A quantidade de itens aumenta conforme o projeto avança.

Controle de Versão Recuperar versões anteriores; Auditar as modificações realizadas: quem, quando, o quê; Automatizar o rastreamento de arquivos; Estabelecer meios para obter a situação de um projeto em determinado ponto do tempo; Prevenir conflitos entre desenvolvedores; Permitir o desenvolvimento paralelo.

Controle de Versão (Repositório)

Controle de Versão (Revisões)

Controle de Versão (Política)

Controle de Versão (Ramificações)

Controle de Modificação Os procedimentos de gerenciamento de mudanças devem ser concebidos para assegurar que os custos e os benefícios das mudanças sejam adequadamente analisados e as mudanças em um sistema sejam feitas de maneira controlada.

Auditoria de Configuração Esta atividade visa assegurar que as alterações tenham sido implementadas corretamente.

MPS.BR Este modelo visa definir e aprimorar um modelo de melhoria e avaliação de processo de software, visando preferencialmente as micro, pequenas e médias empresas, de forma a atender as suas necessidades de negocio e ser reconhecido nacional e internacionalmente como um modelo aplicável à indústria de software.

MPS.BR

Ferramentas de apoio a gerência de configuração Foram pesquisadas duas ferramentas de apoio à gerência de configuração para o desenvolvimento deste trabalho: Subversion e o Trac.

Subversion É uma ferramenta de controle de versão. Esta ferramenta não só controla a versão do conteúdo dos arquivos, mas também de diretórios, cópias, renomeações e metadados.

Subversion

Trac O Trac (TRAC, 2006) é uma ferramenta para rastreamento de mudança em projetos de desenvolvimento de software, e executa em um ambiente web. É desenvolvido e mantido pela empresa Edgewall software e por colaboradores da comunidade open source.

Trac

Trabalhos correlatos Em Barbaresco (2000) são apresentadas de uma forma bem detalhada as atividades relacionadas ao processo de gerência de configuração. O ponto forte deste trabalho é o estudo de modelos e normas de qualidade. Em Bohn (2005) é apresentado o desenvolvimento de uma ferramenta de apoio à gerência de configuração de software baseado no modelo CMMI.

Desenvolvimento do trabalho Com base nos estudos realizados, foram definidos os requisitos do sistema proposto.

Requisitos permitir o cadastramento de usuários, projetos, clientes e tipos de itens de configuração (requisito funcional - RF); registrar os itens de configuração (RF); buscar itens de configuração do repositório (RF); bloquear e desbloquear os itens de configuração (RF); permitir o rastreamento dos artefatos (RF); criar ramificação nos itens de configuração (RF); listar diferenças encontradas nos itens de configuração (RF); controlar as versões dos itens de configuração (RF); controlar as linhas básicas (RF); registrar os pedidos de modificação (RF);

Requisitos registrar a avaliação, decisão e auditoria de um pedido de modificação (RF); registrar histórico de versões no sistema (RF); empacotar linhas básicas de projetos (RF); gerar relatórios de acompanhamento das modificações e liberações dos itens de configuração, informações sobre linhas básicas de um determinado projeto, auditorias realizadas e evolução dos itens de configuração (RF); ser implementado na linguagem Java, utilizando o ambiente Eclipse 3.2 (requisito não-funcional - RNF); utilizar banco de dados MySQL 4.1 (RNF); utilizar o framework de persistência de objetos Hibernate (RNF); atender diretrizes previstas no modelo de referência MPS.BR (RNF).

Especificação Casos de uso; Diagrama de atividades; Diagrama de classes;

Casos de uso de configuração

Casos de uso de execução

Diagrama de atividades

Diagrama de classes

Implementação

Técnicas e Ferramentas Utilizadas Plataforma Java 5; Netbeans; Eclipse; MySQL; Hibernate; API itext; API Zip; Arquitetura cliente/servidor; Soquete.

Framework de persistência Hibernate Facilitar o mapeamento das classes feitas em Java para tabelas no banco de dados; O mapeamento é realizado através de arquivos XML; Com esta ferramenta, o desenvolvedor não precisa se preocupar com os comandos Structured Query Language (SQL).

Framework de persistência Hibernate

Arquitetura cliente/servidor É usado praticamente em todos os processos distribuídos em que a aplicação servidora aguarda conexões, executa serviços e retorna resultados. Já a aplicação cliente é quem estabelece a conexão com o servidor, envia mensagens para o mesmo e aguarda pelas mensagens de resposta.

Arquitetura cliente/servidor

Operacionalidade Controle de versões de projetos

Operacionalidade Controle de modificações

Resultados e discussão No trabalho desenvolvido por Bohn (2005), foi desenvolvida uma ferramenta de apoio à gerência de configuração seguindo o modelo CMMI. No entanto esta ferramenta não guarda histórico de arquivos binários e possui um fluxo de trabalho limitado, além de não permitir criar ramos nas linhas de desenvolvimento de um projeto; Com esta ferramenta de gerência de configuração desenvolvida é possível definir responsáveis pelas atividades, assim como por projeto. Pode-se também manter o histórico não apenas de arquivos texto, mas também de binários. Permite ainda criar ramos nas linhas de desenvolvimento dos projetos.

Comparativo das ferramentas Registro de rastreamento Subversion Não Ferramenta desenvolvida Sim Definições e gerenciamento de múltiplas versões Geração de versões Sim Sim Sim Sim Capacidade de arquivamento Sim Sim Desenvolvimento sincronizado Sim Não Ramificação de arquivos Sim Sim

Comparativo das ferramentas Acompanhamento do ciclo de vida do pedido de mudança Rastreamento da mudança Trac Sim Sim Ferramenta desenvolvida Sim Sim Anexação de arquivos ao pedido Sim Não Configuração do fluxo de trabalho Não Não Notificações para acompanhamento da evolução do pedido Sim Não

Análise de aderência ao modelo MPS.BR Resultados esperados GCO 1. Os itens de configuração são identificados GCO 2. Os itens de configuração gerados pelo projeto são definidos e colocados sob uma linha básica GCO 3. É estabelecido e mantido um sistema de gerência de configuração GCO 4. As modificações e liberações dos itens de configuração são controladas GCO 5. As modificações e liberações são disponibilizadas para todos os envolvidos; Ferramenta desenvolvida Atende Atende Atende Atende Atende

Análise de aderência ao modelo MPS.BR Resultados esperados GCO 6. A situação dos itens de configuração e as solicitações de mudanças são registradas, relatadas e o seu impacto é analisado GCO 7. A completeza e a consistência dos itens de configuração são asseguradas GCO 8. O armazenamento, o manuseio e a entrega dos produtos de trabalho são controlados GCO 9. A integridade das linhas básicas é estabelecida e mantida, através de auditoria da configuração e de registros da gerência de configuração Ferramenta desenvolvida Atende Atende Atende Parcialmente Atende

Conclusão Foi definido um processo de gestão de configuração; A ferramenta foi comparada com outras ferramentas existentes no mercado. Foram acrescentadas novas funcionalidades nesta ferramenta não implementadas em trabalhos correlatos; Foram incorporadas funcionalidades na ferramenta que atendeu diretrizes previstas no processo de gerência de configuração do modelo MPS.BR.

Conclusão As ferramentas de apoio à gerência de configuração são fundamentais para corporações que pretendem melhorar o desenvolvimento de seus projetos e organização de suas equipes de desenvolvimento; As tecnologias utilizadas contribuíram para este desenvolvimento. Algumas foram estudas no decorrer do trabalho ; Os objetivos definidos na proposta deste trabalho foram alcançados, a ferramenta possibilitou o controle das atividades da gerência de configuração de software.

Extensões permitir modificação de um item de configuração concorrentemente atualizando os arquivos dos envolvidos a cada atualização no repositório; desenvolver um algoritmo específico para armazenar arquivos binários; permitir anexar arquivos nos pedidos de modificação; permitir modelar o fluxo de atividades.

Demonstração da implementação

Obrigado! Rodrigo Furlaneto rodrigo.furlaneto@gmail.com