Participação
no IX Simpósio Brasileiro de Engenharia de Software e II Workshop
de Qualidade e Produtividade em Software.
Autores: Cristina Angela Filipak Machado - Luiz Carlos de A. Oliveira - Rosane Antunes
Fernandes
Foi realizado em Recife,
de 03 a 06 de outubro do corrente, o IX Simpósio Brasileiro de Engenharia
de Software e, em paralelo, o II Workshop de Qualidade e Produtividade
em Software. Os eventos foram promovidos pela SBC - Sociedade Brasileira
de Computação, através da sua comissão especial de Engenharia de
Software. A realização esteve a cargo do Departamento de Informática
da Universidade Federal de Pernambuco - UFPE.
Tanto o Simpósio quanto
o Workshop apresentaram temas atuais e tiveram como uma de suas
características mais marcantes a apresentação de trabalhos e painéis
com uma forte ênfase na integração entre a comunidade acadêmica
e o meio empresarial/comercial.
Outro aspecto que chamou
a atenção foi a apresentação de alguns trabalhos com um enfoque
bastante abrangente, tratando de aspectos como Qualidade na Terceirização
de Serviços, Aspectos Sociais do Processo de Desenvolvimento do
Software, Qualidade de Vida dos profissionais associada a Cultura
de Qualidade da Organização, Integração Escola e Empresa e outros.
A CELEPAR esteve presente
no Workshop de Qualidade com a apresentação de dois trabalhos: Avaliação
da Qualidade de Produto de Software, elaborado por Danilo Scalet
e Inserção de Qualidade no Processo Metodológico, elaborado por
Cristina Ângela Filipak Machado, Luiz Carlos de A. Oliveira e Rosane
Antunes Fernandes, abaixo transcrito./p>
Introdução
O trabalho apresentado
está inserido no contexto do tratamento da questão de qualidade
no processo de desenvolvimento de software da Celepar - Cia. de
Informática do Paraná. A Celepar, como responsável pelo processo
de informatização do Estado, atua também no desenvolvimento e manutenção
de aplicativos para diversos segmentos do Estado. A nível de contextualização
cabe registrar que esta circunstância faz com que a sua atuação
se dê em Clientes com diferenciados níveis de informatização, exigindo
soluções diferenciadas tanto em função de aspectos tecnológicos
como de aspectos culturais dos Clientes. A maioria dos aplicativos
desenvolvidos são voltados à gestão das diversas organizações do
Estado.
Neste contexto esteve
sempre presente uma forte preocupação com a qualidade dos serviços
a serem prestados, em especial os gerados pelo processo de desenvolvimento
de software. Esta preocupação foi reforçada com o desenvolvimento
de um programa de qualidade total e com a dedicação de alguns técnicos
ao estudo mais efetivo destas questões.
A Visão da
Qualidade
A visão básica da qualidade
foi sempre pautada no atendimento às necessidades do Cliente. Desta
forma foi identificado, num primeiro instante, que o foco principal
deve estar na identificação e clarificação destas necessidades.
Isto traz uma variável diferenciada ao tratamento normalmente dado
à questão da qualidade de software. Esta visão é baseada no fato
de um sistema de informações ser apenas uma parte de um sistema
maior que se chama organização. Os principais fatores de sucesso
de um sistema estão cada vez mais associados a um convívio adequado
deste sistema com os demais sistemas existentes. A visão e preocupação
passa a ser muito mais organizacional do que técnica, principalmente
a partir do fato das organizações já contarem com suas necessidades
mais operacionais atendidas e apresentarem demandas por sistemas
num nível mais gerencial e estratégico. É neste nível que as interferências
de outros sistemas ( tipo políticos, culturais, de poder, econômicos,
de estilo de gestão e outros) atuam fortemente sobre os sistemas
de informações e a análise destas variáveis passa a ser determinante
na definição do problema a ser tratado e da solução a ser proposta.
Considerando a necessidade
de atuação nestes níveis, é importante que os aspectos de qualidade
também sejam tratados sob este enfoque. Neste contexto a questão
de qualidade, embora associada ao processo de desenvolvimento de
software, deve estar muito voltada a aspectos de adequação da solução
com um todo à realidade e possibilidade do Cliente. Se isto não
tiver equacionado, a solução não terá qualidade, mesmo que observados
aspectos mais técnicos normalmente tratados nas questões de qualidade
de software.
Portanto, o enfoque adotado
pela Celepar foi voltado, neste momento, ao processo de desenvolvimento
de software, principalmente considerando as características particulares
dos serviços desenvolvidos na empresa.
A Visão de
Metodologia
Neste cenário, e com
este entendimento, foi necessária a definição de um processo metodológico
para a Celepar. Houve um entendimento que este processo metodológico
devesse incorporar e tratar algumas questões:
- forte ênfase em aspectos
de qualidade;
- forte preocupação
com o gerenciamento do processo de desenvolvimento de software,
entendendo este também como um meio de garantia de qualidade;
- compatível com estágio
atual do processo de desenvolvimento da Empresa. Não se pode esperar
um salto enorme num primeiro instante;
- compatível às situações
dos diversos Clientes, com aplicações com características culturais
e tecnológicas diferenciadas;
- flexível quanto a
ciclo de vida, técnicas e ferramentas a serem adotadas.
Entendemos que o tratamento
desta questão pode ser dado por um processo metodológico que contemple
os aspectos acima referenciados. Na busca desta combinação desenvolvemos
um processo metodológico que do ponto de vista de qualidade contribui
da seguinte forma:
- clara identificação
do problema, envolvendo principalmente os aspectos organizacionais,
e garantia de uma solução associada a este problema;
- forte ação de gerenciamento
e acompanhamento do processo de desenvolvimento;
- flexível quanto a
ciclo de vida e utilização de técnicas e ferramentas;
- estabelecimento de
indicadores de qualidade do processo de desenvolvimento.
Este último item é determinante
na obtenção de qualidade. Entendemos que uma necessidade básica
para a obtenção de qualidade nos produtos é a determinação e estabilização
de um processo que garanta um nível de qualidade. Sem a estabilização
deste processo muitas vezes não é possível sequer identificar os
produtos que deveriam ter sua qualidade aferida.
Considerações
Entendemos que esta é
a alternativa de consolidação de um processo de qualidade de desenvolvimento
de software, principalmente se considerarmos que a Celepar atualmente,
apesar de não ter sido efetuada uma medição formal, encontra-se
muito provavelmente no nível 1 (Inicial) do Modelo de Maturidade
(CMM - Capability Maturity Model) do SEI - Software Engineering
Institute da CMU - Carnegie Mellon University, cuja principal
característica é um processo imprevisível e pouco controlado.
O enfoque adotado busca
a progressão, a médio prazo, neste nível de maturidade, do nível
1 (Inicial) para o nível 2 (Repetitivo), onde as tarefas possam
ser executadas de acordo com um processo estável, atendendo a alguns
dos processos para seu atingimento:
- gerenciamento de requisitos;
e
- planejamento do projeto
de software.
Também estabelece processos
de outros níveis de maturidade do CMM, descritos a seguir, já incorporados
no próprio processo de desenvolvimento, abrangendo questões referentes
à garantia de qualidade do produto de software, necessidades específicas
de treinamento e ações para garantia de qualidade do processo.
Pontos de revisão e check-lists
nas diversas fases do processo; e
Programa de treinamentos.
Gerenciamento do processo,
baseado em medições (indicadores de qualidade do processo).
Indicadores
de Qualidade do Processo
Para atender à visão
de qualidade adotada, voltada ao processo, foram definidos diversos
indicadores de qualidade. Têm como objetivo medir aspectos considerados
indispensáveis no desenvolvimento de software, para projetos de
sistemas (apurados quinzenalmente) e manutenção de sistemas (apurados
mensalmente), bem como a análise destes e a proposição de ações
que visam a melhoria no processo.
Indicadores de qualidade
do processo de desenvolvimento de sistemas:
- INDICADOR 1 (I1) -
PLANEJAMENTO/REPLANEJAMENTO: O planejamento possui grande importância
para o desenvolvimento de um projeto. Diversos aspectos devem
ser planejados: prazos, organização da equipe, forma de trabalho,
técnicas e ferramentas, fases, produtos, forma de revisão, aprovação
e acompanhamento, auxiliando na busca de um resultado estabelecido.
Este indicador tem por objetivo refletir o nível de planejamento
com o qual as tarefas são executadas pela equipe.
- INDICADOR 2 (I2) -
ATUAÇÃO DA EQUIPE: A atuação da equipe influencia diretamente
o andamento do projeto, nas questões de distribuição de tarefas,
definição de papéis e gerenciamento de conflitos. Este indicador
tem por objetivo refletir o nível de atuação da equipe, nos aspectos
acima citados, na execução das tarefas.
- INDICADOR 3 (I3) -
GERAÇÃO DE PRODUTOS: Cada fase deve gerar produtos concretos (propostas,
documentos ou outros compatíveis com a fase na qual se encontra
o projeto). Uma fase adequadamente desenvolvida é refletida pela
geração do(s) produto(s) previsto(s). Este indicador tem por objetivo
refletir o nível de geração dos produtos previstos com a execução
das tarefas na equipe.
- INDICADOR 4 (I4) -
ACOMPANHAMENTO: O acompanhamento do projeto, associado a medidas
corretivas quando identificados desvios em relação ao planejado,
é uma ação fundamental no processo de desenvolvimento. Sem esta
ação não se garante o resultado projetado, não se cria condições
de corrigir distorções nem contempla novas variáveis que certamente
surgem no desenvolvimento de um projeto. Este indicador tem por
objetivo refletir o nível de acompanhamento com o qual as tarefas
são executadas na equipe.
- INDICADOR 5 (I5) -
PARTICIPAÇÃO DO CLIENTE: O envolvimento e a participação do Cliente
é de vital importância ao adequado andamento do projeto, possibilitando
alcançar os resultados por ele esperados. O Cliente deve ser parceiro
no projeto, acompanhando seu andamento e participando ativamente
das decisões. Este indicador tem por objetivo refletir o nível
de participação do Cliente nas tarefas desenvolvidas pela equipe.
Indicadores de qualidade
do processo de manutenção de sistemas (denominada atividade contínua
- A.C. - dentro da Celepar):
- INDICADOR 1 (I1) -
FORMALIZAÇÃO DA A.C.: Este indicador reflete o nível de registro
e identificação dos serviços referentes à Atividade Contínua.
É importante, pois determina a apuração dos demais indicadores
de A.C.
- INDICADOR 2 (I2) -
CARACTERIZAÇÃO DA A.C.: Este indicador reflete o nível de caracterização
correta de um serviço como atividade contínua. Atualmente, neste
processo, ocorrem falhas na caracterização de serviços, onde projetos
de sistemas ou rotinas acabam sendo tratados como atividade contínua.
- INDICADOR 3 (I3) -
GERAÇÃO DE PRODUTOS: Geração de produtos concretos (desenvolvimento/alteração
de programas e bases de dados) através da execução de tarefas
na equipe.
Próximas
Atividades
Como descrito anteriormente,
neste primeiro momento o enfoque adotado na empresa foi mais voltado
aos aspectos de gerenciamento do que aos técnicos, e também mais
voltado ao processo do que ao produto. Na continuidade, visualizamos
o desenvolvimento de algumas atividades, que basicamente visam contemplar
estes aspectos técnicos, bem como a aplicação dos conceitos de qualidade
voltados ao produto.
Para o atendimento às
atividades de desenvolvimento (especificação, projeto, codificação,
teste), devem ser criados roteiros específicos, contemplando questões
de arquitetura, plataforma, técnicas, ferramentas e padrões. Também
devem ser definidos e aplicados procedimentos e indicadores de qualidade
voltados ao produto de software.
cristina@lepus.celepar.br
l_carlos@lepus.celepar.br
rosane@lepus.celepar.br

|