Adequando processos a Fabrica de Software

A fim de obter um ganho maior de produtividade e facilitar o atendimento dos objetivos que a Fabrica de Software se propõe, é importante saber escolher o processo de desenvolvimento que melhor se adeque.

Os objetivos da Fabrica de Software  podem ser definidos de acordo com vários fatores,

dependendo do tipo de fábrica. Neste trabalho, estamos classificando as Fábricas de

Software em: fábricas de código, de projetos, de componentes e outsourcing de

sistemas. Já os processos de desenvolvimento foram classificados em: ágeis e

tradicionais. Desta forma, o mapeamento destas classes de processos aos tipos de fábrica

se torna mais simples e baseado no objetivo final da fábrica.

É importante salientar que no caso da fábrica em questão possuir meta de adoção

de algum modelo de qualidade, maiores cuidados devem ser tomados acerca da escolha

do processo, e não apenas as características que estamos levando em consideração, pois

pode ser necessária a formalização de alguns processos de suporte que podem não ser

definidos, ou ser parcialmente, pelo processo de desenvolvimento adotado, ainda que

este seja um processo classificado como tradicional.

Modelos de qualidade como CMM [Paulk 1993], CMMI [Chrissis 2003] e

SPICE [SPICE 2004] são mais abrangentes que os processos de desenvolvimento mais

conhecidos e usados pelo mercado, pois se estendem a áreas como controle de qualidade

e atendimento aos fornecedores, que não fazem parte do processo de produção da

solução diretamente. Desta forma, mesmo que o processo de desenvolvimento fosse

escolhido corretamente, este não seria suficiente para o sucesso total da fábrica. A

inclusão das características dos modelos de qualidade está prevista como um trabalho

futuro.

 

A tabela a seguir (ver Tabela 1) ilustra o mapeamento proposto, que será descrito

em seguida.

Tabela 1 – Mapeamento de Processos para Fabrica de Software 

Para a fábrica de código, que requer maior agilidade e pouco formalismo na

documentação do produto final, os métodos ágeis poderiam ser bem utilizados, desde

que respeitando os requisitos mínimos de documentação e gerência exigidos para uma

fábrica de software institucionalizada. A velocidade e o dinamismo deste tipo de

processo pode dar o ritmo necessário para o sucesso da operação, entretanto, deve-se

manter em pequenas equipes cujos membros estejam reunidos em um mesmo ambiente

físico.

A fábrica de componente também pode se adaptar ao pouco formalismo dos

métodos ágeis, optando por documentar os componentes apenas através ferramentas

como JavaDoc [JavaDoc 2004]. Da mesma forma que na fábrica de código, o

dinamismo dos métodos ágeis também podem ser o diferencial da fábrica, porém, algum

formalismo ou processo auxiliar deve ser definido para a catalogação e distribuição dos

componentes gerados. As restrições de pequenas equipes cujos membros estejam

reunidos em um mesmo ambiente físico também devem ser observadas.

Na fábrica de projeto, que se assemelha à maioria das fábricas que

desenvolvem aplicações personalizadas, a necessidade dos métodos tradicionais ou

aparece em maior destaque, uma vez que se faz necessário documentar e não raramente,

validar formalmente com o cliente as decisões de requisitos e/ou projeto. Estes produtos

também possuem um ciclo de vida maior, o que torna comum durante o

desenvolvimento de um determinado projeto a entrada e saída de pessoal, o que

dificultaria a utilização de um processo orientado a pessoas como os processos ágeis.

Por fim, o outsourcing de sistemas, que requer além de maior formalismo,

maior controle por parte do cliente dos índices gerados pela fábrica – a fim de

acompanhar o SLA – prática comum nesta situação, é claramente orientado a processos

tradicionais. É bastante comum, e muitas vezes requerido pelo próprio cliente, a

certificação da fábrica em um modelo de qualidade reconhecido mundialmente, o que

reforça a necessidade da utilização de processos bem definidos e acima de tudo da

coleta e acompanhamento de métricas de produção. Apesar do posicionamento adotado

neste artigo, é importante citar a referência de uma experiência relatada por Fowler

(2004) em uma iniciativa de implantação um processo ágil em um outsourcing de

sistemas utilizando processos ágeis.

Fonte:

VI Simpósio Internacional de

Melhoria de Processos de Software

São Paulo, SP – Brasil 24-26/11/2004

www.simpros.com.br

 

Sobre a DANRESA – Com mais de 14 anos de experiência no mercado de TI, a DANRESA é uma Consultoria de Informática com atuação em todo o território nacional, focada em duas linhas de serviços principais e complementares: Fábrica de SoftwareDesenvolvimento de Sistemas, Infraestrutura e Outsourcing de TI. A área de Desenvolvimento é voltada a Projetos de Negócios por meio de Sistemas Personalizados de TI de acordo com a especificidade de cada cliente, realizando levantamento dos processos, análise e programação através de sua fábrica de software ou com profissionais alocados no cliente. Já a área de Infraestrutura inclui serviços como Outsourcing de TI, Gerenciamento e Monitoramento de equipamentos de missão crítica como Servidores, Roteadores, Switches e Links de conectividade, Instalação e Manutenção de pontos de rede, voz e dados, Suporte Técnico por meio de Service Desk – em que os atendimentos são feitos por uma equipe especializada e certificada nas práticas do ITIL – entre outros. Com cerca de 400 colaboradores e 100 clientes, a DANRESA possui em sua carteira empresas como ANFAVEA, BASF (Suvinil), Ernst Young, Sem Parar, Schneider, CBC, Eurobras, Avape, Alves Feitosa Advogados, Instituto Airton Senna, Grupo Kaduna, CVC, WoodBrook, Salles Leite (Iguaçu Energia ), etc. Para mais informações, ligue: (11) 4452-6450