Qualidade do Processo de Manutenção de Software

Tamanho: px
Começar a partir da página:

Download "Qualidade do Processo de Manutenção de Software"

Transcrição

1 Qualidade do Processo de Manutenção de Software CLAUDIA CAPPELLI¹ MARCOS R. S. BORGES² RENATA ARAUJO 3α 1 PROCESS IMPROVEMENT TECHNOLOGY Rua Cambaúba 1145 / Ilha do Governador, Rio de Janeiro, RJ, , Brasil cappelli@ism.com.br ² NCE & IM / UFRJ Caixa Postal 2324 Rio de Janeiro, RJ, , Brasil mborges@nce.ufrj.br 3 Escola de Informática Aplicada UNIRIO Av. Pasteur 458, Térreo, Urca Rio de Janeiro, RJ, , Brasil renata.araujo@uniriotec.br Resumo A Engenharia de Software tem avançado muito na definição de modelos de qualidade para melhoria do processo de desenvolvimento de software, visando obter software totalmente aderente aos requisitos do usuário e com menor nível de defeitos. Isso se torna possível na medida que estes modelos procuram garantir a qualidade dos produtos de software gerados ao longo do processo de desenvolvimento. Levando-se em conta que a Manutenção do Software também pode ser considerada como parte do processo de desenvolvimento, esses modelos deveriam ter continuidade de utilização qualquer que fosse a modificação realizada no software, de forma a se garantir a não deterioração da qualidade atestada ao mesmo durante seu desenvolvimento. O que ocorre no entanto é que a maioria dos modelos propõe processos bastante formais que podem não se justificar para determinados tipos de manutenções. O presente trabalho descreve uma proposta de adaptação de um modelo para garantia da continuidade da qualidade de software durante toda sua vida útil, assim como o desenvolvimento de uma ferramenta (TRACE) para auxílio neste processo. PALAVRAS-CHAVE: padrões, processo, manutenção, adaptação de processo, CMM. α também professora colaboradora do Programa de Mestrado NCE & IM/UFRJ

2 Qualidade do Processo de Manutenção de Software 1 Introdução Atualmente, a área de Engenharia de Software tem parte de sua atenção voltada para a definição de modelos para melhoria da qualidade na construção de software. Hoje já são utilizados largamente, de forma prática, modelos que buscam melhoria da qualidade de software [1][2][3][5][4]. Estes modelos, em sua maioria, atribuem a qualidade do software ao processo como ele foi construído e aos produtos gerados. Entretanto, a qualidade alcançada ao término do processo de desenvolvimento não garante necessariamente que a mesma irá se perpetuar durante toda a vida útil deste software. Ou seja, utilizar um modelo de qualidade para desenvolvimento de projetos não é garantia para uma manutenção de software com qualidade. Os produtos de software gerados durante o desenvolvimento de um projeto e que poderão sofrer algum tipo de alteração após a implantação do mesmo, necessitam de processos que garantam sua qualidade durante o ciclo de manutenção. O problema que vamos focar neste artigo é a deterioração da qualidade do software a partir do momento em que este é implantado e passa a sofrer manutenções. Se as manutenções que o software for sofrendo ao longo de sua existência não forem realizadas utilizando-se também algum modelo de qualidade, esta irá se deteriorar rapidamente. Por outro lado, utilizar o mesmo modelo de qualidade para o desenvolvimento de projetos pode tornar o processo inviável por ser, em muitos casos, principalmente para manutenções pequenas e emergenciais, mais custoso e demorado que a própria manutenção. Este artigo apresenta uma proposta para a adaptação de um modelo de qualidade de software para a manutenção de sistemas tanto corretivas, adaptativas e perfectivas, mas, cuja característica principal seja seu caráter de pequeno porte de alteração e a urgência de sua realização. O modelo que nos baseamos nesta proposta é o modelo CMM [5], dada sua demanda por utilização nas organizações de software. Tal adaptação do CMM compreende a revisão dos processos, padrões e procedimentos deste modelo para apoiar efetivamente e com menos custos as manutenções mencionadas. A proposta apresentada neste artigo compreende também a definição de uma ferramenta de suporte à atividade de manutenção baseada no modelo adaptado. O artigo está dividido em seis partes. A segunda seção apresenta definições de manutenção de software. A terceira seção apresenta a manutenção no modelo de maturidade de software CMM. A quarta seção trata da adaptação das práticas do modelo CMM, através da adaptação de procedimentos e padrões utilizados para projetos e determinados tipos de manutenção - pequenas manutenções e manutenções emergenciais. A quinta seção apresenta os objetivos da construção de uma ferramenta para apoio ao processo de manutenção, seus pré-requisitos, escopo, sua arquitetura e seus requisitos funcionais. Finalmente, a sexta seção apresenta as conclusões do trabalho.

3 2 Manutenção de Software Após a implantação, grande parte dos sistemas sofre alterações ao longo do período em que estão sendo utilizados. Seus requisitos originais são modificados para refletir algum tipo de mudança nas necessidades do usuário, mudança de ambiente, introdução de novo hardware ou software, correção de erros e outros. Este processo de mudança do software após sua implementação é chamado de Manutenção de Software [6]. A literatura classifica a manutenção de software basicamente em quatro categorias: preventiva, adaptativa, corretiva e perfectiva [6]. A manutenção preventiva, por se tratar de uma modificação do software para melhorias em sua confiabilidade, manutenibilidade, ou para oferecimento de uma base melhor para futuras ampliações, pode ser desenvolvida como um projeto e consequentemente usar na íntegra a aplicação de um modelo de qualidade utilizado para desenvolvimento de novos projetos. Para as demais categorias (corretiva, adaptativa e perfectiva), não fica tão clara a aplicação direta de um mesmo modelo utilizado para o desenvolvimento de software. Os fatores que irão decidir a forma como iremos utilizar um modelo de qualidade para manutenção de software, são o que chamaremos de características ou sub-classificações, que se referem basicamente ao tamanho da manutenção e o prazo de entrega da mesma: o Prazo de entrega: Agendável: Manutenção necessária, porém para a qual não existe uma data final pré-determinada, ou seja, a mesma pode ser planejada sem que previamente já se tenha uma data para o término da mesma; Emergencial: Manutenção para a qual tem-se uma data final prédeterminada, mesmo antes de ser feito um levantamento inicial do escopo da mesma; o Tamanho: Grande / Média: Manutenção que envolve mais do que 40 HH (homens hora) de esforço para sua realização; Pequena: Manutenção que envolve menos do que 40 HH (homens hora) de esforço para sua realização. Estas 4 (quatro) classificações podem ser combinadas, onde manutenções agendáveis podem ser grandes/médias ou pequenas, bem como manutenções emergenciais também podem ser de grande/médio porte ou pequenas.

4 1.1. Dificuldades da Manutenção Podemos dizer que a manutenção do software é um processo de mudança para garantir a sobrevivência do mesmo. No entanto, segundo Schneidewind [7], o processo de manutenção é bastante árduo devido a 3 fatores: a) Não existem formas ainda eficazes de acompanhar os produtos gerados e o processo de geração dos mesmos na manutenção de software. Os modelos disponíveis para garantia da qualidade de software são bastante completos, porém muito focados no desenvolvimento de novos projetos; b) Dependendo de como o software foi construído, a realização de mudanças em geral desencadeia um efeito dominó sobre o qual tem-se muita dificuldade de previsão. Isso se deve ao fato de não se ter uma ferramenta apropriada para identificação de conseqüências que uma manutenção poderá acarretar. Este efeito é citado também por Rajlich [10], o qual propõe um modelo que permite identificar a propagação da mudança; c) Em geral a manutenção é apresentada na Engenharia de Software como um processo iniciado imediatamente após a implantação do software. Isso não seria um problema, não fosse o pouco ou nenhum envolvimento das equipes de manutenção durante o processo de desenvolvimento do software. Uma visão diferente é dada por Cousin e Collofello [8]. Eles acreditam que as equipes de manutenção poderiam resolver melhor todos os problemas de manutenção de software se dispusessem de documentação atualizada, treinamento contínuo e ferramentas automatizadas. Uma combinação destes três itens poderia ser o melhor caminho para a continuidade da qualidade do software. Focando mais diretamente a documentação do software, muitos esforços tem sido feitos na tentativa de melhorar o processo de documentação de software. No estudo de Garland [11] é discutido um método para se incorporar informações sobre a solução de problemas numa base de dados que contém todo o acompanhamento da manutenção do software. Muitas das questões citadas nos levam a identificar que a falta de modelos de qualidade definidos especificamente para a manutenção de software ou adaptados para a mesma, e a carência de ferramentas que permitam a implementação destes modelos, podem vir a deteriorar a qualidade do software ao longo do processo de manutenção. 3 A Manutenção de Software no modelo CMM O modelo de maturidade e capacitação em software CMM (Capability Maturity Model), assim como tantos outros modelos desenvolvidos ao longo do final dos anos 80, propõe mudanças culturais na organização referente ao trabalho de desenvolvimento de software nas empresas. Ele tem como principal objetivo a padronização e a documentação através da definição de procedimentos do processo de desenvolvimento de software, assim como a melhoria de qualidade. O modelo vem sendo implantado em várias empresas ao longo dos últimos anos ao redor do

5 mundo e tem sido também utilizado como parte do processo de globalização das mesmas. O modelo CMM é composto de cinco níveis de maturidade que determinam qual a capacitação do processo. Com exceção do nível 1, cada nível é composto por várias Áreas Chave de Processo (KPAs). Uma visão das áreas-chave de processo sugeridas para cada nível de maturidade é apresentada na Figura 1. Processo continuamente aprimorado Otimizado 5 Prevenção de defeitos Gerência de mudanças tecnológicas Gerência de mudanças no processo Processo disciplinado Inicial 1 Processo consistente, padrão Repetitível 2 Processo previsível Definido 3 Gerenciado 4 Gerência de requisitos Planejamento de Projetos Acompanhamento de projetos Gerência de subcontratos Garantia de qualidade Gerência de configuração Foco no processo Definição do processo Programa de treinamento Administração de software integrada Engenharia de produto Coordenação entre grupos Gerência quantitativa de p rocessos Gerência da qualidade de software Figura 1 Áreas-Chave de Processo por nível de maturidade CMM Cada área conduz a metas de melhoria do processo para um determinado nível. A definição de cada Área Chave está organizada em cinco seções chamadas de Características Comuns. As Características Comuns, por sua vez contém as Práticas Chave, que por sua vez determinam as atividades necessárias para a melhoria de uma Área Chave do Processo. A Figura 2 mostra um esquema detalhado desta estrutura. Para as manutenções agendáveis de porte grande / médio, podemos aplicar por completo as práticas sugeridas pelo modelo CMM utilizads para desenvolvimento independentemente de serem corretivas, adaptativas ou perfectivas. Como se tratam de manutenções agendáveis e de grande ou médio porte, podemos seguir os mesmos passos utilizados para o desenvolvimento de novos projetos. Os fatores que permitem isso se deve ao fato de serem agendáveis, ou seja, não terem uma data pré-definida para término e de necessitarem de mais de 40 HH para sua elaboração, permitindo então o seguimento de todos os processos previstos para atendimento de um modelo de qualidade e documentação formal. Para as manutenções pequenas agendáveis e para as emergenciais, não importando se são corretivas, adaptativas ou perfectivas, já não podemos dizer o mesmo. A pequenas agendáveis não justificariam um processo tão completo quanto os definidos para desenvolvimento de projetos. Na maioria das vezes o simples seguimento do processo formal de desenvolvimento poderia ser mais extenso do que a execução da manutenção em si. Para as emergenciais normalmente o

6 requisito principal é o prazo (já possui uma data de término pré definida para a mesma), o que implica num cronograma com data fim já pré-estabelecida e sendo assim, devido a premência de tempo, faz-se o que é necessário (vai-se direto para a fase de construção do software) e depois documenta-se (em alguns casos) o que foi feito e não o processo de desenvolvimento da manutenção. Processo Capacitação indica Objetivos Nível de Maturidade contém Área Chave Processo alcança Implementação ou Institucionalização abordam Infraestrutura ou Atividades organizado por Características Comuns contém Práticas Chaves descrevem Figura 2 - Estrutura do modelo CMM Algumas práticas definidas pelo CMM não são de tão fácil aplicação nas manutenções emergenciais e de pequeno porte principalmente pela premência de tempo e pela inviabilidade do custo, ou seja, para serem aplicadas necessitam de adaptação ou redução de escopo. O problema está no tratamento a ser dado aos requisitos e as necessidades do gerenciamento. Deve haver um processo de adaptação para cada uma das práticas, se necessário. As áreas chaves do processo devem ser interpretadas de acordo com os princípios das práticas de manutenção de software. Neste processo é importante verificar que o escopo da manutenção é limitado a correções e melhorias, o que é bastante diferente da criação de novos softwares [9]. 4 Adaptação do Modelo CMM para manutenções emergenciais e de pequeno porte

7 De acordo com o que foi discutido em seções anteriores, temos dois casos basicamente para os quais deveríamos adaptar a utilização do modelo CMM. São eles: Manutenções de Pequeno Porte e Manutenções Emergenciais. Para estes tipos de manutenção precisamos de processos mais ágeis. Para tal mostramos abaixo as atividades definidas em cada Área Chave do modelo que poderiam ser aplicadas ou não nestes tipos de manutenções de forma diferente do que num projeto ou outro tipo de manutenção. Tais adaptações foram devidamente analisadas e não impactam na perda de qualidade do produto. Nível 2 Área Chave: Gerência de Requisitos Finalidade: Estabelecer e manter um acordo com o usuário com relação aos requisitos a serem observados no software a fim de se ter um entendimento comum entre as partes envolvidas. Esta gerência controla a evolução dos requisitos de um sistema. Atividade Revisar requisitos alocados antes de incorporá-los ao projeto de software Utilizar requisitos alocados como base para o desenvolvimento do software Revisar alterações nos requisitos alocados e incorporá-los ao projeto de software Aplicável Prática (S/N) S - Identificar requisitos imcompletos ou ausentes - Verificar se os requisitos são apropriados, possíveis e consistentes - Negociar os compromissos resultantes da implementação destes requisitos - Analisar impacto de inclusão alteração do requisito S - Os requisitos devem ser a base para a manutenção - Os requisitos devem ser a base para o modelo de dados - Os requisitos devem estar integrados aos já existentes N - Como estamos tratando de manutenções emergenciais e de pequeno porte, os requisitos costumam ser definidos uma primeira vez e como o tempo é premissa básica para implementação ou sua complexidade é muito pequena em geral não há alterações nos requisitos ao longo de sua implementação, não sendo portanto necessário um processo de revisão no caso de alteração dos mesmos.

8 Área Chave: Planejamento do Projeto de Software Finalidade: Estabelecer planos exeqüíveis para desenvolver um determinado software, bem como para gerenciar o projeto de software segundo estes planos. Atividade Estimar o tamanho dos produtos de Software Estimar o esforço e custo do projeto de software Estimar recursos computacionais críticos Estabelecer o cronograma de software do projeto Identificar os produtos de software Aplicável Prática (S/N) S - Realizar estimativa para os principais produtos a serem criados/alterados assim como para as atividades a serem realizadas. No caso de manutenções emergenciais identificar para cada produtos quais serão contemplados antes e quais serão contemplados após a realização da manutenção. S - Baseado no tamanho estimado, derivar o esforço necessário e o custo da manutenção. S - No caso da manutenção envolver aquisição ou alteração de recursos computacionais, estimar o custo dos mesmos. S - Identificar a data de realização da manutenção e o prazo para execução da mesma. No caso das manutenções emergenciais a data de término já é pré-definida S - Os produtos de software que deverão ser mantidos atualizados para as manutenções emergenciais e de pequeno porte são os requisitos, modelos de dados, código e testes. Todas as demais atividades previstas nesta Área Chave dizem respeito à elaboração do plano do projeto, participar da proposição do projeto, iniciar planejamento, documentar o plano e gerenciar dados de planejamento que não se aplicam às manutenções emergenciais e de pequeno porte. Área Chave: Supervisão e Acompanhamento do Projeto de Software Finalidade: Fornecer uma visão realista do progresso do projeto de software, permitindo que a gerência tome ações eficazes quando o projeto desviar-se de forma significativa dos planos de software. Como esta área chave é apoiada na premissa da existência de um plano para o desenvolvimento do software, nos tipos de manutenção abordados neste trabalho, sua prática não será necessária. Nestes tipos de manutenção em geral não é feito

9 um acompanhamento do progresso da mesma devido as suas próprias características de tempo de execução. Área Chave: Garantia de Qualidade de Software Finalidade: Fornecer à gerência a visibilidade da eficácia do processo que está sendo utilizado para o desenvolvimento do software e da qualidade dos produtos que estão sendo gerados. No caso das práticas previstas por esta área, a proposta é que as mesmas sejam realizadas por amostragem e não necessariamente durante a execução da manutenção emergencial ou de pequeno porte. As revisões e auditorias poderiam ser realizadas para um grupo de manutenções de forma a documentar desvios e recomendar melhorias caso necessário. A visibilidade destas manutenções poderia ser dada em grupo ao invés de caso a caso. Área Chave: Gerência de Configuração de Software Finalidade: Estabelecer e manter a integridade dos produtos de software ao longo do ciclo de vida do software. As práticas previstas por esta área são gerais para toda a instalação. Não se aplicando diretamente a um tipo específico de manutenção ou projeto. Os itens que devem ser colocados sob gerência de configuração já devem estar definidos para o processo de manutenção como um todo e serão os mesmos para manutenções emergenciais e de pequeno porte. Deve haver uma área encarregada de manter o repositório de baselines, controlar a liberação de produtos para manutenção, gerar relatórios de problemas entre outras atividades. Quanto à geração de planos para gerência de configuração e registros dos itens que ficarão sob gerência de configuração, estas só se justificariam no caso de projetos ou manutenções maiores. Área Chave: Gerência de Contrato de Software Finalidade: Selecionar contratadas de software qualificadas e gerenciá-las efetivamente. Esta área chave em geral não se aplica diretamente para manutenções emergenciais e de pequeno porte pelas próprias características das mesmas. Não é prática nas organizações que vá se desenvolver um contrato para a realização de uma manutenção emergencial ou de pequeno porte. Em geral estas são realizadas nas próprias instalações da empresa ou nas instalações da empresa responsável pela manutenção do software, não sendo necessária a elaboração e gerência de um contrato específico para as mesmas. Nível 3 Área Chave: Foco no Processo da Organização Finalidade: Estabelecer a responsabilidade organizacional para as atividades do processo de software que melhoram a capacitação de processo de software da organização. Esta área chave é responsável pela criação de um grupo de processo de engenharia de software que por sua vez é o encarregado de coordenar, desenvolver e manter os processos de software da organização. Como suas metas estão voltadas para

10 esta coordenação e planejamento de atividades de melhoria e para a identificação de pontos de melhoria no processo de software, não há aqui nenhuma prática específica para o processo de manutenção de software. Área Chave: Definição do Processo da Organização Finalidade: Desenvolver e manter um conjunto de ativos de processo de software que sejam úteis e melhorem o desempenho dos processos utilizados nos diversos projetos. Esta área chave é responsável pela criação do processo padrão da organização de onde são derivados os processos de software definidos do projeto que por sua vez derivam no plano do projeto. Como suas atividades estão voltadas para o desenvolvimento e manutenção do processo de software padrão e para a coleta e disponibilização de informações a respeito do uso do processo de software padrão da organização, nenhuma de suas práticas é específica para a manutenção de software. Área Chave: Gerência de Software Integrada Finalidade: Integrar as atividades de engenharia e gerência de software em um processo de software coerente e bem definido, e que é adaptado a partir do processo de software padrão da organização. Esta área chave implementa a forma de se gerar o processo de software definido do projeto a partir do processo de software padrão da organização. Sendo assim tem como maioria de suas atividades itens já relacionados na área chave de planejamento de projetos, apenas agregando a elas o fato de estarem baseadas num processo padrão e como derivá-las deste processo. O único item que tem relevância para manutenções emergenciais e de pequeno porte é o mesmo citado na área chave de planejamento de projetos, ou seja, estimativa. Nesta área chave, é agregada à estimativa o fato de utilizar dados contidos em bancos de dados da organização, ou seja, dados reais sobre outros projetos ou manutenções já realizadas. Esta atividade também é recomendada para as manutenções contidas no escopo deste trabalho. Área Chave: Engenharia de Produtos de Software Finalidade: Executar de forma consistente um processo de engenharia bem definido que integra todas as atividades de engenharia de software, para conduzir, de maneira eficaz e eficiente, produtos de software corretos e consistentes. Atividade Integrar instrumentos de engenharia de software ao processo de software definido do projeto Implementar os requisitos de software Implementar o projeto do software Aplicável Prática (S/N) N - Esta atividade é definida para o processo de desenvolvimento e manutenção como um todo. S - Idem ao que foi definido na Área Chave de Gerência de Requisitos (Nível 2) S - Aderir aos padrões de projeto - Aderir aos padrões de interfaces

11 e bases de dados - Integrar-se na arquitetura do software - Afetar o projeto com todos os requisitos solicitados - Atualizar documentação que demonstre os padrões de dados e relacionamentos da aplicação. Controlar o código S - Identificar que módulos estarão sendo alterados para garantir a implementação dos requisitos solicitados - Garantir que o código contenha todos os requisitos incluídos e alterados - Identificar bases de dados afetadas - Utilizar os mesmos métodos e padrões utilizados pelo desenvolvimento - Integrar novo código ao já existente Implementar testes de software S - Identificar testes por módulo alterado - Ter definido para cada teste os dados envolvidos e o resultado esperado. Planejar e executar testes de integração Planejar e executar testes de sistema e aceitação Implementar documentação de software Coletar e analisar dados de defeitos Manter consistência do conjunto de produtos de software S - Testar os componentes do software afetados pela manutenção S - Identificar testes para verificação de requisitos - Apresentar ao usuário os testes executados para aceitação destes. S - Documentar requisitos alterados / incluídos - Atualizar documentação dos módulos - Atualizar documentação de dados - Atualizar documentação de testes N - Esta atividade deve ser realizada na organização como um processo geral para a manutenção e desenvolvimento. S - Garantir a coerência entre requisitos, dados, código e

12 testes. Área Chave: Coordenação entre Grupos Finalidade: Estabelecer mecanismos para o grupo de engenharia de software participar ativamente junto aos outros grupos de engenharia de maneira que o projeto satisfaça as necessidades dos clientes. Esta área chave envolve a interação do grupo de engenharia de software com outros grupos de engenharia e procura resolver através de alguns procedimentos as questões técnicas e as dependências críticas entre estes grupos. No caso de manutenções emergenciais e de pequeno porte não há necessariamente um procedimento específico para a coordenação entre grupos caso isso se faça necessário. O procedimento que estiver definido para qualquer outro tipo de manutenção também pode ser aqui utilizado dado que qualquer negociação antecederá a execução da mesma. Área Chave: Revisão por Pares Finalidade: Remover de forma eficiente os defeitos de software ainda nos estágios iniciais de sua criação e como conseqüência identificar melhorias para estes produtos. Esta área chave estabelece a prática de revisões de software do tipo Walkthrough e Inspeções. No caso das manutenções emergenciais e de pequeno porte, o que recomendamos é que sejam feitos grupos para realização das atividades previstas por esta área por amostragem. Todo software que sofrer alteração emergencial ou de pequeno porte deverá poder ser identificado e posteriormente verificado, identificando-se se a manutenção foi realizada dentro dos padrões de qualidade estabelecidos para a organização. Não haveria portanto nenhuma prática específica para estes tipos de manutenção a não ser o fato de serem realizadas por amostragem e posteriormente a sua implantação. Área Chave: Programa de Treinamento Finalidade: Desenvolver as habilidades e os conhecimentos das pessoas da organização, de maneira que venham a desempenhar efetiva e eficientemente seus papéis. Esta área chave define a existência de um Programa de Treinamento para toda a Área de desenvolvimento e manutenção de software de forma a capacitar seus profissionais. Portanto não há nenhuma prática específica a ser praticada de forma diferenciada para profissionais que realizem manutenções emergenciais ou de pequeno porte. O mesmo treinamento deve ser dado para qualquer profissional que atue em manutenção de software Benefícios Esperados

13 A utilização das práticas do CMM para controle do processo de manutenções pequenas e emergenciais pode trazer grandes benefícios para a organização. A aplicação de um modelo na manutenção de software poderá trazer como resultado métricas que poderão ajudar na melhoria contínua do processo e consequentemente na redução de custo e risco da manutenção de software. O principal resultado esperado na viabilidade de adoção de algumas atividades de um modelo de qualidade para a manutenção de software, poderia proporcionar: Atualização contínua da documentação dos produtos de software que sofrem algum tipo de alteração após sua implantação; Geração de medições sobre o processo de manutenção de software; Atualização da base de conhecimento da organização sobre seus produtos de software; Suporte do trabalho das equipes de manutenção de software; Redução de risco; Aumento do controle sobre as manutenções que estão sendo realizadas no software; Redução do prazo de entrega; Aprimoramento das estimativas por se ter produtos com documentação atualizada. 5 A Ferramenta TRACE Em geral, o processo tradicional de desenvolvimento e manutenção de software define que a documentação do software deve ser feita através de manuais que expliquem seu funcionamento e operação. A documentação dos processos e produtos de software que foram produzidos durante a concepção do mesmo, ficam muito mais por definição do responsável pelo projeto de desenvolvimento ou manutenção. A documentação sobre o funcionamento e operação do software tem uma conotação mais forte do que as demais, por se tratar de produtos que terão utilização imediata após sua entrada em funcionamento, ou seja, são necessário à sua implantação. A documentação dos processos utilizados para a criação do software e os produtos gerados ao longo desta criação, só passarão a ser utilizados após a implantação do mesmo no caso deste ser alterado. Ou seja, esta documentação não é vital para a implementação do software. Um outro grande problema encontrado é que em geral esta documentação, apesar de poderem seguirem determinados padrões e procedimentos documentados para sua elaboração, os quais são definidos pelo CMM, não seguem necessariamente uma forma estruturada de utilização destes padrões e não obrigatoriamente são utilizadas ferramentas para este fim. Esta forma de documentação não estruturada, apesar de armazenar processos e produtos que documentam o desenvolvimento do software, não são capazes de permitir a utilização destes dados, e mais, não permitem que se possa transformar estes dados em informações úteis para o próprio processo de desenvolvimento e manutenção. O que se precisa para se manter qualidade no software é justamente o maios número de informações sobre o mesmo de forma fácil e simples de acesso. A

14 necessidade de conhecimento sobre os software existentes numa organização é fundamental para se garantir uma redução nos riscos de processamento dos mesmos e um aumento de produtividade no processo de desenvolvimento e manutenção. Atentado para estes e outros problemas, podemos dizer que para o processo de documentação de software ser viável é necessário que o mesmo seja feito de forma automatizada. Isso eqüivale a dizer que deve haver uma ferramenta de software que auxilie neste processo de forma a viabilizá-lo. Voltando agora as atenções para a manutenção de software, podemos dizer, que um dos fatores primordiais para se manter a qualidade do mesmo, é a existência de uma ferramenta na qual seja permitido o cadastramento de todos os produtos de software que são modificados durante toda a vida útil do software (Requisitos, Design, Código e Testes), os quais são gerados ao longo do desenvolvimento do software ou de manutenções no mesmo. O uso efetivo das adaptações às práticas do CMM nas pequenas manutenções e manutenções emergenciais exige a existência de uma ferramenta para suporte e consequente aumento de produtividade deste processo. Neste sentido, foi especificada uma ferramenta TRACE cujo objetivo principal é permitir a atualização constante dos produtos de software em manutenção, facilitando e agilizando o trabalho, tornando viável a documentação com qualidade de qualquer tipo de manutenção. 5.1 Principais Funcionalidades A ferramenta TRACE permite um conjunto de funcionalidades próprias do modelo proposto, desde o armazenamento de requisitos, módulos, casos de teste, estruturas de dados até a inclusão/manutenção de regras de negócio da empresa (Figura 3) ao acompanhamento de todas as mudanças ocorridas (Figura 4), verificando através de medições, se há aumento na produtividade e melhoria de qualidade. A ferramenta proporciona visibilidade aos diversos grupos de manutenção e as gerências, sobre o que está sendo realizado, de forma a facilitar o processo inter-grupos e o melhor gerenciamento da área. O tipo de informação contida nesta ferramenta pode aumentar a produtividade das equipes de manutenção e facilitar a documentação dos produtos de software alteradois pois permite o conhecimento da lista de requisitos por sistema, do mapa de requisitos X os módulos que os implementam, do mapa de módulos X os testes utilizados pelos mesmos, entre outros. 6 Conclusão Este artigo apresentou a adaptação de um modelo e a adoção de uma ferramenta para melhoria da qualidade no processo de manutenção de software. Este trabalho foi baseado na utilização do modelo de maturidade e capacitação em software CMM. Figura 3 Principais funçoes TRACE e exemplo de cadastramento de módulos

15 Foram identificados diversas atividades neste modelo que poderiam dificultar na utilização completa no processo de manutenção de software, provocando a degradação da qualidade dos software ao longo do processo de manutenção. A aplicação de processos sugeridos pelo CMM também durante o processo de manutenção pode auxiliar a continuidade da qualidade atestada ao software no momento de sua criação. A principal contribuição deste trabalho é a proposta de uma adaptação do CMM para a área de manutenção de software. Esta adaptação tem por objetivo identificar atividades deste modelo que poderiam não ser realizadas no processo de manutenção, tornando o mesmo mais rápido e menos custoso. Algumas necessidades podem ser citadas como fortes argumentos para a adaptação de um modelo de qualidade para a manutenção de software e a instalação de uma ferramenta como a desenvolvida neste trabalho num ambiente de manutenção de software. São eles: Existência de controle sobre o processo de manutenção; Existência de padrões e procedimentos adaptados às necessidades da manutenção; Identificação da abrangência da manutenção; Redução do risco da manutenção;

16 Aumento da produtividade; Melhoria das estimativas de custo e esforço Figura 4 Principais relatórios TRACE Para que se tenha bons resultados com a utilização da adaptação do modelo CMM e com a utilização da ferramenta desenvolvida, é esperado que de certa forma haja uma mudança na forma de trabalho da área de manutenção de software. Todos os envolvidos com manutenção de software precisam utilizar o modelo adotado e a ferramenta, que servirá de auxílio a eles próprios. No caso das manutenções emergenciais, o processo a ser realizado não muda muito o que acontece na maioria das instalações. Devido a premência de tempo, constroe-se o que for necessário e depois documenta-se o que foi feito. O fator prazo continua sendo o mais importante nas manutenções emergenciais. O que muda na realidade são dois fatores. O primeiro é que após a manutenção toda a documentação do que foi realizado poderá ser registrada e segundo, e mais

17 importante, é a utilização da ferramenta para dar apoio ao processo, pois a mesma possui inúmeros recursos que podem auxiliar o desenvolvedor na construção. Mesmo com o prazo bastante exíguo o desenvolvedor pode lançar mão da ferramenta através de suas listas de referências cruzadas (relatórios disponíveis) a fim de identificar que itens estarão sendo afetados na manutenção. A ferramenta TRACE é relativamente genérica e pode ser utilizada no processo de manutenção de software independentemente das técnicas adotadas para o levantamento de requisitos ou definição de testes. A simplicidade de utilização permite que pessoas pouco familiarizadas com modelos de qualidade possam realizar contribuições de maneira bem intuitiva, sem necessidade de treinamento. Por ser uma ferramenta projetada para a web, pode ser facilmente disponibilizada. Permite ainda, por ter arquitetura aberta, integração com outras ferramentas de Engenharia de Software, como para Gerência de Configuração, Gerência de Requisitos, Design etc. Referências [1] K. El Eman, J. Drouin, W. Melo, SPICE The theory and practice of Software Process Improvement and Capability Determination. 1 ed. Los Alamitos, California, IEEE Computer Society Press [2] ISO/IEC a ISO/IEC Information Technology Software Process Assessment, [3] W.S. Humphrey, Characterizing the Software Process Maturity Framework, CMU-SEI-87-TR-11 ESD-TR , Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pennsylvania. [4] ISO-/IEC Information Technology Software Life-Cycle Processes, [5] M.C.Paulk, Capability Maturity Model for Software version 1.1 CMU/SEI-93-TR-24, Carnegie Mellon University, Software Engineering Institute, Pittsburgh, Pennsylvania, [6] R.S. Pressman, Engenharia de Software. MAKRON Books do Brasil Editora Ltda., [7] N.F.Schneidewind, Introduction to the Special Section on Software Maintenance. The State of Software Maintenance. IEEE Transactions on Software Engineering, [8] L. Cousin, J.S. Collofello, A task-based approach to improving the software maintenance process - International Conference on Software Maintenance (ICSM) IEEE Orlando, Flórida Nov., 9-12, [9] D. Drew, Tailoring the software engineering Institute (SEI) Capability Maturity Model (CMM) to a software sustaining engineering organization - International Conference on Software Maintenance (ICSM) IEEE Orlando, Flórida Nov., 9-12, [10] V. Rajlich, R. Sridhar, VIFOR 2: A tool for browsing and documentation - International Conference on Software Maintenance (ICSM) IEEE Monterey, California Nov., 4-8, [11] J. Garland, F. Calliss, Improved change tracking for software maintenance - International Conference on Software Maintenance (ICSM) IEEE Sorrento, Italy Oct., 15-17, 1991.

MODELO CMM MATURIDADE DE SOFTWARE

MODELO CMM MATURIDADE DE SOFTWARE MODELO CMM MATURIDADE DE SOFTWARE O modelo CMM Capability Maturity Model foi produzido pelo SEI (Software Engineering Institute) da Universidade Carnegie Mellon (CMU), em Pittsburgh, EUA, por um grupo

Leia mais

QUALIDADE DE SOFTWARE AULA N.7

QUALIDADE DE SOFTWARE AULA N.7 QUALIDADE DE SOFTWARE AULA N.7 Curso: SISTEMAS DE INFORMAÇÃO Disciplina: Qualidade de Software Profa. : Kátia Lopes Silva 1 CMM: DEFINIÇÃO Capability Maturity Model Um modelo que descreve como as práticas

Leia mais

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

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

PEDRO HENRIQUE DE OLIVEIRA E SILVA MESTRE EM MODELAGEM MATEMÁTICA E COMPUTACIONAL E-MAIL: PEDROHOLI@GMAIL.COM CMM E CMMI

PEDRO HENRIQUE DE OLIVEIRA E SILVA MESTRE EM MODELAGEM MATEMÁTICA E COMPUTACIONAL E-MAIL: PEDROHOLI@GMAIL.COM CMM E CMMI PEDRO HENRIQUE DE OLIVEIRA E SILVA MESTRE EM MODELAGEM MATEMÁTICA E COMPUTACIONAL E-MAIL: PEDROHOLI@GMAIL.COM CMM E CMMI INTRODUÇÃO Aumento da Importância do Software Software está em tudo: Elemento crítico

Leia mais

C.M.M. Capability Maturity Model Modelo de Maturidade da Capacidade

C.M.M. Capability Maturity Model Modelo de Maturidade da Capacidade UNISUL Universidade do Sul de Santa Catarina. Campus da Grande Florianópolis Pedra Branca. CIÊNCIA DA COMPUTAÇÃO ENGENHARIA DE SOFTWARE ALUNO: Volnei A. Caetano Palhoça 02 de Junho de 2000 C.M.M. Capability

Leia mais

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

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

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

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1. ARCO - Associação Recreativa dos Correios Sistema para Gerenciamento de Associações Recreativas Versão Histórico da Revisão Data Versão Descrição Autor Página

Leia mais

Universidade Paulista

Universidade Paulista Universidade Paulista Ciência da Computação Sistemas de Informação Gestão da Qualidade Principais pontos da NBR ISO/IEC 12207 - Tecnologia da Informação Processos de ciclo de vida de software Sergio Petersen

Leia mais

Implantação de um Processo de Medições de Software

Implantação de um Processo de Medições de Software Departamento de Informática BFPUG Brazilian Function Point Users Group Implantação de um Processo de Medições de Software Claudia Hazan, MSc., CFPS claudinhah@yahoo.com Agenda Introdução Processo de Medições

Leia mais

Gerenciamento de Problemas

Gerenciamento de Problemas Gerenciamento de Problemas O processo de Gerenciamento de Problemas se concentra em encontrar os erros conhecidos da infra-estrutura de TI. Tudo que é realizado neste processo está voltado a: Encontrar

Leia mais

CMM - Capability Maturity Model

CMM - Capability Maturity Model Tema da Aula Normas e Padrões de Qualidade em II CMM Prof. Cristiano R R Portella portella@widesoft.com.br CMM - Capability Maturity Model Desenvolvido pelo SEI (Instituto de Engenharia de ) Carnegie Mellon

Leia mais

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como: Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código

Leia mais

Ciência da Computação ENGENHARIA DE SOFTWARE. Recursos e Cronograma

Ciência da Computação ENGENHARIA DE SOFTWARE. Recursos e Cronograma Ciência da Computação ENGENHARIA DE SOFTWARE Recursos e Cronograma Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com Roteiro Introdução; Recursos; Pessoal; Software; Hardware; Outros recursos;

Leia mais

O que é CMMI? Base do CMMI. Melhorando o processo é possível melhorar-mos o software. Gerais. Processo. Produto

O que é CMMI? Base do CMMI. Melhorando o processo é possível melhorar-mos o software. Gerais. Processo. Produto Gerais Processo Produto Propostas NBR ISO 9000:2005 define principios e vocabulário NBR ISO 9001:2000 define exigências para sistema de gerência de qualidade NBR ISO 9004:2000 apresenta linha diretivas

Leia mais

Qualidade de. Software. Definições. Qualidade do Produto ISO 9126. Processo de. Software. Modelo de Processo de. Software CMM SPICE ISO 12207

Qualidade de. Software. Definições. Qualidade do Produto ISO 9126. Processo de. Software. Modelo de Processo de. Software CMM SPICE ISO 12207 Qualidade de : Visão Geral ISO 12207: Estrutura s Fundamentais Aquisição Fornecimento s de Apoio Documentação Garantia de Qualidade Operação Desenvolvimento Manutenção Verificação Validação Revisão Conjunta

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

Políticas de Qualidade em TI

Políticas de Qualidade em TI Políticas de Qualidade em TI Prof. www.edilms.eti.br edilms@yahoo.com Aula 03 CMMI Capability Maturity Model Integration Parte II Agenda sumária dos Processos em suas categorias e níveis de maturidade

Leia mais

CHECK - LIST - ISO 9001:2000

CHECK - LIST - ISO 9001:2000 REQUISITOS ISO 9001: 2000 SIM NÃO 1.2 APLICAÇÃO A organização identificou as exclusões de itens da norma no seu manual da qualidade? As exclusões são relacionadas somente aos requisitos da sessão 7 da

Leia mais

Gerenciamento de Serviços de TI ITIL v2 Módulo 1 Conceitos básicos

Gerenciamento de Serviços de TI ITIL v2 Módulo 1 Conceitos básicos Gerenciamento de Serviços de TI ITIL v2 Módulo 1 Conceitos básicos Referência: An Introductory Overview of ITIL v2 Livros ITIL v2 Cenário de TI nas organizações Aumento da dependência da TI para alcance

Leia mais

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

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Versão 1.6 15/08/2013 Visão Resumida Data Criação 15/08/2013 Versão Documento 1.6 Projeto Responsáveis

Leia mais

Melhorias de Processos de Engenharia de Software

Melhorias de Processos de Engenharia de Software Melhorias de Processos de Engenharia de Software CMMI 1 Profa. Reane Franco Goulart O que é CMMI? O Capability Maturity Model Integration (CMMI) é uma abordagem de melhoria de processos que fornece às

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo

Leia mais

MUDANÇAS NA ISO 9001: A VERSÃO 2015

MUDANÇAS NA ISO 9001: A VERSÃO 2015 MUDANÇAS NA ISO 9001: A VERSÃO 2015 Está em andamento o processo de revisão da Norma ISO 9001: 2015, que ao ser concluído resultará na mudança mais significativa já efetuada. A chamada família ISO 9000

Leia mais

Gerenciamento de Riscos do Projeto Eventos Adversos

Gerenciamento de Riscos do Projeto Eventos Adversos Gerenciamento de Riscos do Projeto Eventos Adversos 11. Gerenciamento de riscos do projeto PMBOK 2000 PMBOK 2004 11.1 Planejamento de gerenciamento de riscos 11.1 Planejamento de gerenciamento de riscos

Leia mais

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES CELG DISTRIBUIÇÃO S.A EDITAL N. 1/2014 CONCURSO PÚBLICO ANALISTA DE GESTÃO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI RESPOSTAS ESPERADAS PRELIMINARES O Centro de Seleção da Universidade Federal de Goiás

Leia mais

Fundamentos de Teste de Software

Fundamentos de Teste de Software Núcleo de Excelência em Testes de Sistemas Fundamentos de Teste de Software Módulo 2- Teste Estático e Teste Dinâmico Aula 3 Teste Estático SUMÁRIO INTRODUÇÃO... 3 1. Definição... 3 2. Custo Versus Benefício...

Leia mais

ITIL - Information Technology Infraestructure Library

ITIL - Information Technology Infraestructure Library ITIL Biblioteca de infra estrutura de TI (do Inglês, Information Technology Infraestructure Library) e ISO/IEC 20.000 ITIL - Information Technology Infraestructure Library Foi criado no fim dos anos 80

Leia mais

Análise de Pontos por Função

Análise de Pontos por Função Análise de Pontos por Função Uma Aplicação na Gerência de Subcontratação de Software Claudia Hazan, MSc. Certified Function Point Specialist Agenda! Introdução à Gerência de Subcontratação! Melhores Práticas:!

Leia mais

FACULDADE SENAC GOIÂNIA

FACULDADE SENAC GOIÂNIA FACULDADE SENAC GOIÂNIA NORMA ISO 12.207 Curso: GTI Matéria: Auditoria e Qualidade de Software Professor: Elias Ferreira Acadêmico: Luan Bueno Almeida Goiânia, 2015 CERTIFICAÇÃO PARA O MERCADO BRASILEIRO

Leia mais

CMM Capability Maturity Model. Silvia Regina Vergilio

CMM Capability Maturity Model. Silvia Regina Vergilio CMM Capability Maturity Model Silvia Regina Vergilio Histórico O DoD patrocinou a fundação do SEI (Software Engineering Institute) na Universidade de Carnegie Mellon (Pittsburg) com o objetivo de propor

Leia mais

CES-32 e CE-230 Qualidade, Confiabilidade e Segurança de Software. Conceitos de Qualidade. CURSO DE GRADUAÇÃO e DE PÓS-GRADUAÇÃO DO ITA

CES-32 e CE-230 Qualidade, Confiabilidade e Segurança de Software. Conceitos de Qualidade. CURSO DE GRADUAÇÃO e DE PÓS-GRADUAÇÃO DO ITA CURSO DE GRADUAÇÃO e DE PÓS-GRADUAÇÃO DO ITA 2º SEMESTRE 2002 CES-32 e CE-230 Qualidade, Confiabilidade e Segurança de Software Prof. Dr. Adilson Marques da Cunha Conceitos de Qualidade CES-32 / CE-230

Leia mais

Padrões de Qualidade de Software e Métricas de Software

Padrões de Qualidade de Software e Métricas de Software Universidade Federal do Vale do São Francisco Padrões de Qualidade de Software e Métricas de Software Engenharia de Software I Aula 3 e 4 Ricardo Argenton Ramos Agenda da Aula Introdução (Qualidade de

Leia mais

UNIP Ciência da Computação / Sistemas de Informação TED I - Orientações Gerais para Elaboração dos Documentos

UNIP Ciência da Computação / Sistemas de Informação TED I - Orientações Gerais para Elaboração dos Documentos I - Orientações Gerais para Elaboração dos Documentos A seguir, orientações fundamentais para a elaboração dos documentos do projeto, tendo em vista a complexidade inerente neste processo. Este roteiro

Leia mais

Webinário : Os vinte passos da implantação SGQ baseado na ISO 9001 Sistema de gestão qualidade implantado e certificado pela norma NBR ISO 9001:2008

Webinário : Os vinte passos da implantação SGQ baseado na ISO 9001 Sistema de gestão qualidade implantado e certificado pela norma NBR ISO 9001:2008 Sistema de gestão qualidade implantado e certificado pela norma NBR ISO 9001:2008 torna uma necessidade da empresa por: competitividade no mercado interno Competitividade no mercado externo Aumentar a

Leia mais

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento

Leia mais

APLICACAÇÃO DE METRICAS E INDICADORES NO MODELO DE REFERENCIA CMMI-Dev NIVEL 2

APLICACAÇÃO DE METRICAS E INDICADORES NO MODELO DE REFERENCIA CMMI-Dev NIVEL 2 APLICACAÇÃO DE METRICAS E INDICADORES NO MODELO DE REFERENCIA CMMI-Dev NIVEL 2 Renan J. Borges 1, Késsia R. C. Marchi 1 1 Universidade Paranaense (UNIPAR) Paranavaí, PR Brasil renanjborges@gmail.com, kessia@unipar.br

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

Introdução Fatores de Qualidade Garantia de Qualidade Rivisões de Software Conclusão. Qualidade. Plácido A. S. Neto 1

Introdução Fatores de Qualidade Garantia de Qualidade Rivisões de Software Conclusão. Qualidade. Plácido A. S. Neto 1 Qualidade Plácido A. S. Neto 1 1 Gerência Educacional de Tecnologia da Informação Centro Federal de Educação Tecnologia do Rio Grande do Norte 2006.1 - Planejamento e Gerência de Projetos Agenda Introdução

Leia mais

TRIBUNAL REGIONAL FEDERAL DA 2ª REGIÃO Secretaria de Tecnologia da Informação

TRIBUNAL REGIONAL FEDERAL DA 2ª REGIÃO Secretaria de Tecnologia da Informação TRIBUNAL REGIONAL FEDERAL DA 2ª REGIÃO Secretaria de Tecnologia da Informação REGIONALIZAÇÃO DE SERVIÇOS DE TI MAPEAMENTO DE PROVIDÊNCIAS INICIAIS Março/2014 V 1.1 REGIONALIZAÇÃO DE SERVIÇOS DE TI MAPEAMENTO

Leia mais

Qualidade de Processo de Software Normas ISO 12207 e 15504

Qualidade de Processo de Software Normas ISO 12207 e 15504 Especialização em Gerência de Projetos de Software Qualidade de Processo de Software Normas ISO 12207 e 15504 Prof. Dr. Sandro Ronaldo Bezerra Oliveira srbo@ufpa.br Qualidade de Software 2009 Instituto

Leia mais

Padrões de Qualidade de Software

Padrões de Qualidade de Software Universidade Federal do Vale do São Francisco Padrões de Qualidade de Software Engenharia de Software I Aula 4 Ricardo Argenton Ramos Agenda da Aula Introdução (Qualidade de Software) Padrões de Qualidade

Leia mais

A visão do modelo MPS.BR para Gerência de Projeto - Nível G. por Adriana Silveira de Souza

A visão do modelo MPS.BR para Gerência de Projeto - Nível G. por Adriana Silveira de Souza A visão do modelo MPS.BR para Gerência de Projeto - Nível G por Adriana Silveira de Souza Agenda Visão Geral do MPS.BR Processos e Capacidade de Processo Níveis de Maturidade Atributos de Processo Processo

Leia mais

ANÁLISE DOS REQUISITOS NORMATIVOS PARA A GESTÃO DE MEDIÇÃO EM ORGANIZAÇÕES

ANÁLISE DOS REQUISITOS NORMATIVOS PARA A GESTÃO DE MEDIÇÃO EM ORGANIZAÇÕES V CONGRESSO BRASILEIRO DE METROLOGIA Metrologia para a competitividade em áreas estratégicas 9 a 13 de novembro de 2009. Salvador, Bahia Brasil. ANÁLISE DOS REQUISITOS NORMATIVOS PARA A GESTÃO DE MEDIÇÃO

Leia mais

PLANOS DE CONTINGÊNCIAS

PLANOS DE CONTINGÊNCIAS PLANOS DE CONTINGÊNCIAS ARAÚJO GOMES Capitão SC PMSC ARAÚJO GOMES defesacivilgomes@yahoo.com.br PLANO DE CONTINGÊNCIA O planejamento para emergências é complexo por suas características intrínsecas. Como

Leia mais

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

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

ALESSANDRO PEREIRA DOS REIS PAULO CESAR CASTRO DE ALMEIDA ENGENHARIA DE SOFTWARE - CAPABILITY MATURITY MODEL INTEGRATION (CMMI)

ALESSANDRO PEREIRA DOS REIS PAULO CESAR CASTRO DE ALMEIDA ENGENHARIA DE SOFTWARE - CAPABILITY MATURITY MODEL INTEGRATION (CMMI) ALESSANDRO PEREIRA DOS REIS PAULO CESAR CASTRO DE ALMEIDA ENGENHARIA DE SOFTWARE - CAPABILITY MATURITY MODEL INTEGRATION (CMMI) APARECIDA DE GOIÂNIA 2014 LISTA DE TABELAS Tabela 1 Áreas de processo por

Leia mais

Profa. Gislaine Stachissini. Unidade III GOVERNANÇA DE TI

Profa. Gislaine Stachissini. Unidade III GOVERNANÇA DE TI Profa. Gislaine Stachissini Unidade III GOVERNANÇA DE TI Information Technology Infrastructure Library ITIL Criado pelo governo do Reino Unido, tem como objetivo a criação de um guia com as melhores práticas

Leia mais

GERÊNCIA DE INTEGRAÇÃO DO PROJETO

GERÊNCIA DE INTEGRAÇÃO DO PROJETO GERÊNCIA DE INTEGRAÇÃO DO PROJETO Estevanir Sausen¹, Patricia Mozzaquatro² ¹Acadêmico do Curso de Ciência da Computação ²Professor(a) do Curso de Ciência da Computação Universidade de Cruz Alta (UNICRUZ)

Leia mais

Processos de Desenvolvimento de Software

Processos de Desenvolvimento de Software Processos de Desenvolvimento de Software Gerenciamento de Projetos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

Gerenciamento da Integração (PMBoK 5ª ed.)

Gerenciamento da Integração (PMBoK 5ª ed.) Gerenciamento da Integração (PMBoK 5ª ed.) O PMBoK diz que: O gerenciamento da integração do projeto inclui os processos e as atividades necessárias para identificar, definir, combinar, unificar e coordenar

Leia mais

CENTRAL DE SERVIÇOS APOIADA EM SOFTWARE LIVRE

CENTRAL DE SERVIÇOS APOIADA EM SOFTWARE LIVRE CENTRAL DE SERVIÇOS APOIADA EM SOFTWARE LIVRE Juliano Flores Prof. Wagner Walter Lehmann Centro Universitário Leonardo da Vinci - UNIASSELVI Gestão de Tecnologia da Informação (GTI0034) Prática do Módulo

Leia mais

SIMULADO: Simulado 3 - ITIL Foundation v3-40 Perguntas em Português

SIMULADO: Simulado 3 - ITIL Foundation v3-40 Perguntas em Português 1 de 7 28/10/2012 16:47 SIMULADO: Simulado 3 - ITIL Foundation v3-40 Perguntas em Português RESULTADO DO SIMULADO Total de questões: 40 Pontos: 0 Score: 0 % Tempo restante: 55:07 min Resultado: Você precisa

Leia mais

A Disciplina Gerência de Projetos

A Disciplina Gerência de Projetos A Disciplina Gerência de Projetos Atividades, Artefatos e Responsabilidades hermano@cin.ufpe.br Objetivos Apresentar atividades da disciplina Gerência de Projetos Discutir os artefatos e responsáveis envolvidos

Leia mais

ATO Nº 233/2013. A PRESIDENTE DO TRIBUNAL REGIONAL DO TRABALHO DA 7ª REGIÃO, no uso de suas atribuições legais e regimentais,

ATO Nº 233/2013. A PRESIDENTE DO TRIBUNAL REGIONAL DO TRABALHO DA 7ª REGIÃO, no uso de suas atribuições legais e regimentais, ATO Nº 233/2013 Institui a Política de Gerenciamento de Serviços de Tecnologia da Informação (TI) no âmbito do Tribunal Regional do Trabalho da 7ª Região. A PRESIDENTE DO TRIBUNAL REGIONAL DO TRABALHO

Leia mais

DIRETORIA DE GESTÃO DE TECNOLOGIA DA INFORMAÇÃO COORDENAÇÃO DE SISTEMAS DE INFORMAÇÃO

DIRETORIA DE GESTÃO DE TECNOLOGIA DA INFORMAÇÃO COORDENAÇÃO DE SISTEMAS DE INFORMAÇÃO NORMA TÉCNICA DE SISTEMAS I. CONTROLE DA NORMA Data de elaboração da Norma: Janeiro/2012 Versão da Norma: Versão 1.0 Diretoria de Gestão de Tecnologia da Informação: Alberto Cezar de Carvalho Número: 001/2012

Leia mais

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br Gerenciamento de projetos cynaracarvalho@yahoo.com.br Projeto 3URMHWR é um empreendimento não repetitivo, caracterizado por uma seqüência clara e lógica de eventos, com início, meio e fim, que se destina

Leia mais

Modernização e Evolução do Acervo de Software. Gustavo Robichez de Carvalho guga@les.inf.puc-rio.br

Modernização e Evolução do Acervo de Software. Gustavo Robichez de Carvalho guga@les.inf.puc-rio.br Modernização e Evolução do Acervo de Software Gustavo Robichez de Carvalho guga@les.inf.puc-rio.br Tópicos 1. Estudo Amplo sobre Modernização 2. Visão IBM Enterprise Modernization 3. Discussão - Aplicação

Leia mais

Projeto Você pede, eu registro.

Projeto Você pede, eu registro. Projeto Você pede, eu registro. 1) IDENTIFICAÇÃO 1.1) Título do Projeto: Você pede eu registro. 1.2) Equipe responsável pela coordenação do projeto: Pedro Paulo Braga Bolzani Subsecretario de TI Antonio

Leia mais

Qualidade de software

Qualidade de software Qualidade de software É cada dia maior o número de empresas que buscam melhorias em seus processos de desenvolvimento de software. Além do aumento da produtividade e da diminuição do retrabalho, elas buscam

Leia mais

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Cronograma das Aulas. Hoje você está na aula Semana

Leia mais

INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS

INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS Asia Shipping Transportes Internacionais Ltda. como cópia não controlada P á g i n a 1 7 ÍNDICE NR TÓPICO PÁG. 1 Introdução & Política 2 Objetivo 3 Responsabilidade

Leia mais

Fundamentos de Teste de Software

Fundamentos de Teste de Software Núcleo de Excelência em Testes de Sistemas Fundamentos de Teste de Software Módulo 3 Planejamento e Aula 8 do Projeto Aula 08 do Projeto SUMÁRIO INTRODUÇÃO... 3 ACOMPANHAMENTO DO PROJETO... 3 1. do Progresso...

Leia mais

Project Builder: uma Ferramenta de Apoio a Implementação do Processo Gerência de Projetos do MPS.BR

Project Builder: uma Ferramenta de Apoio a Implementação do Processo Gerência de Projetos do MPS.BR Project Builder: uma Ferramenta de Apoio a Implementação do Processo Gerência de Projetos do MPS.BR Bernardo Grassano, Eduardo Carvalho, Analia I.F. Ferreira, Mariano Montoni bernardo.grassano@projectbuilder.com.br,

Leia mais

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

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES Implementação MPS.BR 26 de maio de 2008 4 horas de duração e-mail: (DEIXAR EM BRANCO) RESULTADO: Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Nota INSTRUÇÕES Para a maioria das questões você tem mais de uma opção e

Leia mais

Fábrica de Software 29/04/2015

Fábrica de Software 29/04/2015 Fábrica de Software 29/04/2015 Crise do Software Fábrica de Software Analogias costumam ser usadas para tentar entender melhor algo ou alguma coisa. A idéia é simples: compara-se o conceito que não se

Leia mais

Curso preparatório para a certificação COBIT 4.1 Fundation

Curso preparatório para a certificação COBIT 4.1 Fundation Curso preparatório para a certificação COBIT 4.1 Fundation Dentro do enfoque geral em conhecer e discutir os fundamentos, conceitos e as definições de Governança de TI - tecnologia da informação, bem como

Leia mais

Processo de Implementação de um Sistema de Gestão da Qualidade

Processo de Implementação de um Sistema de Gestão da Qualidade 3 Processo de Implementação de um Sistema de Gestão da Qualidade Não existe um jeito único de se implementar um sistema da qualidade ISO 9001: 2000. No entanto, independentemente da maneira escolhida,

Leia mais

ISO 9001:2008. Alterações e Adições da nova versão

ISO 9001:2008. Alterações e Adições da nova versão ISO 9001:2008 Alterações e Adições da nova versão Notas sobe esta apresentação Esta apresentação contém as principais alterações e adições promovidas pela edição 2008 da norma de sistema de gestão mais

Leia mais

Material de Apoio. Sistema de Informação Gerencial (SIG)

Material de Apoio. Sistema de Informação Gerencial (SIG) Sistema de Informação Gerencial (SIG) Material de Apoio Os Sistemas de Informação Gerencial (SIG) são sistemas ou processos que fornecem as informações necessárias para gerenciar com eficácia as organizações.

Leia mais

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

CONCORRÊNCIA AA Nº 05/2009 BNDES ANEXO X PROJETO BÁSICO: DESCRIÇÃO DOS PROCESSOS DE TI CONCORRÊNCIA AA Nº 05/2009 BNDES ANEXO X PROJETO BÁSICO: DESCRIÇÃO DOS PROCESSOS DE TI 1. PI06 TI 1.1. Processos a serem Atendidos pelos APLICATIVOS DESENVOLVIDOS Os seguintes processos do MACROPROCESSO

Leia mais

Projeto Pé na Dança. www.penadanca.com. Bruno Barros Comunicador Visual. bruno@brunobarros.com www.brunobarros.com 21 2704 3991 / 9605 0589

Projeto Pé na Dança. www.penadanca.com. Bruno Barros Comunicador Visual. bruno@brunobarros.com www.brunobarros.com 21 2704 3991 / 9605 0589 Projeto Pé na Dança www.penadanca.com 1 Sumário I. Esta proposta... 3 II. Metodologia de trabalho... 5 III. Investimento... 6 IV. Cronograma... 6 V. Termos e Condições... 7 VI. Manutenção do site... 7

Leia mais

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling DIMENSIONANDO PROJETOS DE WEB-ENABLING Uma aplicação da Análise de Pontos de Função Dimensionando projetos de Web- Enabling Índice INTRODUÇÃO...3 FRONTEIRA DA APLICAÇÃO E TIPO DE CONTAGEM...3 ESCOPO DA

Leia mais

Qualidade na gestão de projeto de desenvolvimento de software

Qualidade na gestão de projeto de desenvolvimento de software Qualidade na gestão de projeto de desenvolvimento de software [...] O que é a Qualidade? A qualidade é uma característica intrínseca e multifacetada de um produto (BASILI, et al, 1991; TAUSWORTHE, 1995).

Leia mais

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia

Leia mais

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

Leia mais

Mapeamento de Processos

Mapeamento de Processos Agência Nacional de Vigilância Sanitária Mapeamento de Processos Projeto a ser desenvolvido no âmbito da Gerência de Sistemas/GGTIN Brasília, agosto de 2006. 1. IDENTIFICAÇÃO DO PROJETO 1.1. Título do

Leia mais

DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES. Trabalho de Graduação

DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES. Trabalho de Graduação DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES Trabalho de Graduação Orientando: Vinicius Stein Dani vsdani@inf.ufsm.br Orientadora: Giliane

Leia mais

Governança de TI. ITIL v.2&3. parte 1

Governança de TI. ITIL v.2&3. parte 1 Governança de TI ITIL v.2&3 parte 1 Prof. Luís Fernando Garcia LUIS@GARCIA.PRO.BR ITIL 1 1 ITIL Gerenciamento de Serviços 2 2 Gerenciamento de Serviços Gerenciamento de Serviços 3 3 Gerenciamento de Serviços

Leia mais

Qualidade de Software. Anderson Belgamo

Qualidade de Software. Anderson Belgamo Qualidade de Software Anderson Belgamo Qualidade de Software Software Processo Produto Processo de Software Pessoas com habilidades, treinamento e motivação Processo de Desenvolvimento Ferramentas e Equipamentos

Leia mais

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti. TI Aplicada Aula 02 Áreas e Profissionais de TI Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Gerência de Projetos Prof. Dr. Sandro Ronaldo Bezerra Oliveira srbo@ufpa.br www.ufpa.br/srbo

Gerência de Projetos Prof. Dr. Sandro Ronaldo Bezerra Oliveira srbo@ufpa.br www.ufpa.br/srbo Gerência de Projetos Prof. Dr. Sandro Ronaldo Bezerra Oliveira srbo@ufpa.br www.ufpa.br/srbo Laboratório de Tecnologia de Software LTS www.ufpa.br/lts Rede Paraense de Pesquisa em Tecnologias de Informação

Leia mais

PR 2 PROCEDIMENTO. Auditoria Interna. Revisão - 2 Página: 1 de 9

PR 2 PROCEDIMENTO. Auditoria Interna. Revisão - 2 Página: 1 de 9 Página: 1 de 9 1. OBJETIVO Estabelecer sistemática de funcionamento e aplicação das Auditorias Internas da Qualidade, fornecendo diretrizes para instruir, planejar, executar e documentar as mesmas. Este

Leia mais

MODELO SPICE Software Improvement and Capacibilty Determination Avalia o software com foco na melhoria de seus processos (identifica pontos fracos e

MODELO SPICE Software Improvement and Capacibilty Determination Avalia o software com foco na melhoria de seus processos (identifica pontos fracos e MODELO SPICE Software Improvement and Capacibilty Determination Avalia o software com foco na melhoria de seus processos (identifica pontos fracos e fortes, que serão utilizados para a criação de um plano

Leia mais

Histórico de Revisão Data Versão Descrição Autor

Histórico de Revisão Data Versão Descrição Autor H6Projetos Documento de Requisitos Versão 1.3 Histórico de Revisão Data Versão Descrição Autor 05/09/2013 1.0 Preenchimento do Capítulo 2 Requisitos Funcionais Evilson Montenegro 26/09/2013 1.1 Preenchimento

Leia mais

Resumo das Interpretações Oficiais do TC 176 / ISO

Resumo das Interpretações Oficiais do TC 176 / ISO Resumo das Interpretações Oficiais do TC 176 / ISO Referência RFI 011 Pergunta NBR ISO 9001:2000 cláusula: 2 Apenas os termos e definições da NBR ISO 9000:2000 constituem prescrições da NBR ISO 9001:2000,

Leia mais

QUALIDADE DE SOFTWARE

QUALIDADE DE SOFTWARE QUALIDADE DE SOFTWARE Luiz Leão luizleao@gmail.com http://www.luizleao.com Questão 1 A ISO 9000-3 é um guia para a aplicação da ISO 9001 para o desenvolvimento, fornecimento e manutenção de software. As

Leia mais

PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17

PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17 PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17 Índice 1. Conceitos de Ciclo de Desenvolvimento de Sistemas...3 1.1. Principais Fases... 3 1.2. Técnicas... 4 1.3. Papéis de Responsabilidades... 4 1.3.1.

Leia mais