Escolar Documentos
Profissional Documentos
Cultura Documentos
Florianópolis – SC - Brasil
www.producaoonline.ufsc.br
ISSN 1676 - 1901 / Vol. 6/ Num. 2/ Agosto de 2006
RESUMO
Universidade Federal de Santa Catarina
Florianópolis – SC - Brasil
www.producaoonline.ufsc.br
ISSN 1676 - 1901 / Vol. 6/ Num. 2/ Agosto de 2006
ABSTRACT
1. OBJETIVO
Este artigo se propôs a apresentar uma utilização do PSP[1] em um processo brasileiro de fábrica de
desenvolvimento de software. O uso desta prática pode ser um bom ponto de partida para a
viabilização do CMMI na gestão integrada de projeto. A pesquisa está centrada na customização da
metodologia PSP, buscando o atendimento dos requisitos do nível 2 do CMMI de uma linha de
produção de software. Um estudo de caso foi realizado em um lote de programas que foram
encomendados por um determinado cliente.
O ponto relevante deste estudo é apresentar uma experiência na análise de desempenho de um
processo de engenharia de software utilizando duas estratégias, uma com a tomada de dados manuais e
outra amparada por ferramenta CASE visando obter êxito no gerenciamento básico de projeto. Em
ambos os casos o cumprimento dos prazos foi conseguido a partir do momento em que a especificação
e o andamento das atividades foram controlados pelas práticas sugeridas pelo PSP.
2. A ORGANIZAÇÃO DO TRABALHO
O trabalho possui oito seções dispostas para apresentar o conceito do PSP no acompanhamento no
ciclo de desenvolvimento de software. Com esta diretriz, começamos com a seção 1 onde
apresentamos o objetivo do trabalho e sua organização na seção 2; na seção 3 contextualizamos o
Universidade Federal de Santa Catarina
Florianópolis – SC - Brasil
www.producaoonline.ufsc.br
ISSN 1676 - 1901 / Vol. 6/ Num. 2/ Agosto de 2006
3. INTRODUÇÃO
A indústria de software no Brasil tem uma história recente, e as suas atuais características estruturais
refletem a sua dinâmica competitiva. A partir dos diversos estudos realizados sobre esta indústria,
pode-se dividir a sua evolução em basicamente dois períodos: 1º antes de 1990, em um contexto de
substituição de importações; e 2º a partir de 1990, em um contexto de competição global [SOFTEX,
02].
Desde o começo do ano de 2004 a empresa AML[2] estava em processo de implantação do programa
CMMI[3] para melhorar suas competências e seus requisitos formais que um cliente da área
financeira estabeleceu para os seus fornecedores. Um grupo de estudo de CMMI no início das
atividades decidiu adotar as práticas do PSP [PSF, 06] para disciplinar os processos de
desenvolvimento. O grupo coletou dados referentes às técnicas e práticas aplicadas com a finalidade
de contemplar os requisitos do nível 2 do modelo CMMI.
A abordagem incremental do desenvolvimento de software foi formulada por Watts Humphrey como
um conjunto de regras [PEDRYCZ, 03] que permitem que o monitoramento do processo de
desenvolvimento seja amparado por métricas. A pesquisa seguiu os indicadores especificados de
Hunphrey em seu modelo evolutivo.
Segundo Sommerville [SOMMERVILLE, 03] o PSP[4] constitui-se como sendo um processo de
trabalho pessoal que colabora no planejamento das atividades do desenvolvimento sendo que para isto
utiliza-se um sistema de informações amparado por formulários. Antes de chegarmos a este ponto, o
núcleo de projeto teve de tomar algumas decisões sobre a sua atuação nos processos. Porém quais
seriam as variáveis envolvidas neste tipo de definição?
Processo de Medição Pessoal PMC M&A PSP 0 Registro de Tempo, Registro de Defeitos e
Padrão de tipos de defeitos
PMC M&A PSP 0.1 Padrão de Codificação, Medida de Tamanho,
Proposta de Melhoramento de Processo.
Processo de Planejamento Pessoal PMC M&A PSP 1 Estimativa de Trabalho e Relatório de Testes
PMC PPQA PSP 1.1 Planejamento de Tarefas e Cronogramas
Processo de Gerenciamento de PMC PPQA PSP 2 Revisões de Código e Revisões de Projeto
Qualidade Pessoal PMC PP PSP 2.1 Padrões de Projeto
Processo Pessoal Cíclico PMC PP PSP 3 Desenvolvimento Cíclico
Quadro 2 – Comparativo dos níveis do PSP com CMMI - Adaptado de [HUMPHREY, 00][5].
Os colaboradores envolvidos no desenvolvimento utilizam o PSP (insumos-scripts de orientação;
etapas – planejamento; design; codificação; compilação, testes; postmortem; produtos gerados – log´s
de traceabilidade e planejamento sumário das atividades), para disciplinar as atividades globais
planejadas buscando implementar um programa de melhoria do processo de software sem a
preocupação da certificação. O processo manual é trabalhoso, porém fundamental para a constituição
da maturidade da empresa. Cada colaborador precisa ser treinado e monitorado pelo engenheiro de
software (Software Engineering Process Group – SEPG). A limitação do processo manual está na
capacidade humana de coletar, tabular e analisar os dados, logo o próximo passo para viabilidade desta
informação para que a gerencia evite a perda de recursos e acelerar o processo com a automação.
A diferença entre a aplicação manual do processo PSP e a utilização da CASE para apoiar o processo
de desenvolvimento está na avaliação das capacidades de produção da equipe de desenvolvimento de
software. Os diferenciais foram os rendimentos nas possíveis comparações e similaridades dos
resultados entre os métodos. A equipe que trabalhou manualmente com os questionários, a adequação
ao uso foi mais fácil em relação à adequação que as equipes que utilizaram a automação. O uso da
ferramenta CASE não é intuitivo e precisa de um treinamento mais sofisticado para disciplinar o uso
do método. Em ambos os casos os colaboradores precisam de treinamentos para operar os métodos e
identificamos que em ambos os métodos aplicados identificaram-se nos processos pontos fortes e
oportunidades de melhoria.
O processo manual é mais fácil de assimilar e é mais trabalhoso, no caso da ferramenta é justificado o
esforço quando a empresa tende a realizar as operações diversas vezes, e precisa de resultados
apurados pela criticidade do processo, pois a informação é mais ágil, porém é mais custoso e
demorado para se implementar o treinamento e só se justifica a partir de um certo tamanho de
software. A preocupação inicial com os resultados foi o impacto obtido com a apuração e o
processamento dos dados obtidos. Então apresentaremos a tabulação dos dados utilizados nos
processos manuais e eletrônicos. O sucesso parcial da técnica que visava o controle e melhoria na
estimativa em ambos os casos foi obtida pela empresa mesmo com diversos fatores adversos. No
quadro 3 apresentamos o resultado alcançado com o uso dos modelos:
Equipe Desenvolvimento Qualidade
Testes:
Programação: Números de pontos de Números de não
Atividade Total de horas
Total de horas utilizadas controle conformidades
utilizadas
Previsão 297 72
236 102
Consumo 313 53,5
A identificação das distorções entre o estimado e o realizado foi corrigida durante a operação,
injetando recursos para assegurar a data de entrega. A diferença de habilidade entre os recursos que
acabam gerando uma distorção significativa no planejamento. Os dados foram analisados e
interpretados gerando um resultado que pode antecipar problemas e utilizar os recursos para minimizar
alguns dos efeitos do não cumprimento dos prazos de entrega ou multa por atraso. Após esta avaliação
a empresa passou a ter conhecimento do comportamento das suas variáveis de projeto, antes com o
Universidade Federal de Santa Catarina
Florianópolis – SC - Brasil
www.producaoonline.ufsc.br
ISSN 1676 - 1901 / Vol. 6/ Num. 2/ Agosto de 2006
pré-projeto, durante com o acompanhamento e depois com as análises e o cadastro dos componentes
para a sua reutilização. O processo manual foi mais fácil de se utilizar para projetos de até 100 pontos
de função. A ferramenta CASE passa a ganhar escala e se justificar a partir desde ponto, pois
possibilita o cruzamento de informações e previsões que o processo manual demoraria semanas para
realizar.
O diferencial encontrado pela equipe de engenharia reside no fato de que os dois métodos que apoiam
o processo PSP forneceram saídas de qualidade e de custo e prazo diferentes com resultados
semelhantes. Cada um com sua vantagem específica possibilitando um leque de opções para os
engenheiros na hora de realizar a escolha de qual método é o mais adequado para a situação em
análise. Logo o ganho está nas variações estratégicas para a implementação de projeto onde a empresa
passa a contar com mais este grau de adaptabilidade relevante com se está participando de uma
licitação.
8. CONCLUSÃO
[1] PSP – Personal Software Process – Processo de Software Pessoal – que se constituí como
sendo um processo disciplinado de auto melhoria para desenvolvimento de software. Watts S.
Humphrey, The Personal Process in Software Engineering, Software Engineering Institute,
Carnegie Mellon 1994.
[2] AML System Ltda. Empresa de engenharia e desenvolvimento de Software. Rua Vergueiro,
1855 – 4º Andar – Paraíso – São Paulo – SP – 04101-000. Fone: (0xx11) 5572-7007 – R.236
[3] O Instituto de Engenharia de Software, Software Engineering Institute, SEI, desenvolveu a sua
visão sobre o modelo de maturação de projeto de desenvolvimento de software, o modelo de
capacitação e maturidade, CMM, Capability and Maturity Model, e o modelo de capacitação e
maturidade integrado, CMMI-CMM Integrated. A diferença entre os dois é a integração com a
gerência de projeto fortemente explorada na CMMI.
[4] O PSP é um framework de formulários, diretrizes e procedimentos de desenvolvimento de
software. O PSP corretamente usado provê os dados históricos para que o engenheiro de
software possa conhecer melhor seus compromissos, tornar os elementos rotineiros de seu
trabalho mais previsíveis, confiáveis e possibilitar a medição da qualidade dos produtos
gerados. Adaptado de [HUMPHREY, 00].
[5] Notas dos autores: As áreas de processos do CMMI nível 2 envolvidos neste estudo: PMC -
Product Monitoring and control – Controle e monitoração de produto, M &A –Measurement
and Analysis – Análise e medição, PPQA – Process and Product Quality Assurance – Garantia
da Qualidade de produtos e processos, PP - Project Planning – Planejamento e projeto -
[RASMUSSEN, 03] Rasmussen, Karen, STBC Mapping CMMI-SE/SW Software Engineering
Institute (SEI) – Instituto de Engenharia de Software - Encontrado no site: http://
www.sei.cmu.edu/cmmi/adoption/stsc-mappings.pdf
[6] A Innovative Suíte 1.0 é aplicada a engenharia de software com um compromisso de qualidade
no projeto e integração com todo o ciclo de desenvolvimento do produto. Av. Barbosa Lima
149 Sala 217 - Bairro do Recife, Recife-PE Brasil - CEP 50330-030. - Tel. (55-81) 3424.6206 -
Encontrado no site: innovative@innovative.inf.br.
Universidade Federal de Santa Catarina
Florianópolis – SC - Brasil
www.producaoonline.ufsc.br
ISSN 1676 - 1901 / Vol. 6/ Num. 2/ Agosto de 2006
REFERÊNCIAS
[ABNT, 03] NBR ISO 9000:200, Sistemas de Gestão da qualidade – Diretrizes para a
melhoria de desempenho. Encontrada na Associação Brasileira de Normas
Técnicas São Paulo em http://www. abnt. org. br. ABNT, 2003.
[HUMPHREY, 94] Watts S. Humphrey, The Personal Process in Software Engineering, Software
Engineering Institute (SEI), Carnegie Mellon 1994.
[HUMPHREY, 00] Humphrey, Watts S, TECHNICAL REPORT CMU/SEI-2000-TR-022, Software
Engineering Institute – Encontrado no site: http:
//www.sei.cmu.edu/publications/documents /00.reports/00tr022.html – SEI-2000.
[INNOVATIVE, 04] Innovative Suíte 1.0, Suíte de Engenharia de software, Encontrado no site:
innovative@innovative.inf.br - Innovative, 2004.
[PEDRYCZ, 03] James F. Peters/ Witold Pedrycz Engenharia de Software Rio de Janeiro, Editora
Campus, 6a edição. 2001.
[PRESSMAN, 02] PRESSMAN, S. Roger, Engenharia de Software São Paulo, Editora Mc Graw
Hill Wesley, 5º edição, 2002.
[RASMUSSEN,03] Rasmussen, Karen, STBC Mapping CMMI-SE/SW Software - Engineering Institute
(SEI) – Instituto de Engenharia de Software - Encontrado no site: http://
www.sei.cmu.edu/cmmi/adoption/stsc-mappings.pdf - SEI, 2003.
[SOMMERVILLE, 03] SOMMERVILLE, Ian, Engenharia de Software São Paulo, Editora Addison
Wesley, 6a edição, 2003.
[STROMBERG,MUTAFELIJA,03] Stromberg, Harvey, Mutafelija, Boris, ISO-9901:2000 – CMMI V 1.1
Mappings CMMI-SE/SW Software Engineering Institute (SEI) – Instituto de
Engenharia de Software - Encontrado no site: http://www.sei.
cmu.edu/cmmi/adoption/iso-mapping.pdf SEI, 2003.
[SOFTEX, 02] A indústria de software no Brasil 2002: fortalecendo a economia do
conhecimento - Massachussets Institute of Technology – MIT; Brasil
Coordenação geral Sociedade SOFTEX. - Campinas: SOFTEX, 2002.