O
NOVO PARADIGMA - PRODUZIR COM QUALIDADE
VISÃO GERALTodo trabalho de desenvolvimento de software tem
como um dos seus objetivos obter um resultado final que atenda aos requisitos do cliente e
seja isento de erros. Para atingir tal objetivo, observa-se que as metodologias vigentes
estabelecem formalismos para o processo e adotam fortemente o conceito de revisões
técnicas e gerenciais durante o andamento do projeto, visando identificar desvios, o mais
cedo possível, em relação à sua geração, evitando-se, deste modo, a propagação de
erros para fases posteriores, o que aumentaria o custo para correção do desvio. Nessa
abordagem, para se atingir um nível adequado de eficiência, requer-se um trabalho
exaustivo de verificação, que por vezes pode vir a comprometer os resultados do projeto
em termos de produtividade e de prazo para conclusão, uma vez que o processo de revisão
demanda, para sua própria consecução, esforço específico para preparação e
execução da revisão, decorrendo, então, retrabalho para correção de erros e
implementação de melhorias.
Por outro lado, para que se possa assumir o
risco de restringir-se os produtos intermediários que necessitam ser avaliados com maior
rigor, é necessário que o próprio processo de elaboração do produto assegure a
qualidade do mesmo. Além da vantagem da maior agilidade do processo, esta abordagem tem
como ganho adicional um melhor nível do moral da equipe de desenvolvimento, posto que a
existência de erros é um fator frustrante para quem o produz, e o trabalho para sua
correção é mais desgastante que o esforço empregado para a primeira execução da
tarefa.
O paradigma Produzir com Qualidade propõe
uma mudança em relação à abordagem comumente adotada, criando mecanismos que asseguram
a qualidade do produto durante a sua própria execução, através de etapas que visam
avaliar e questionar a atividade a ser executada, além de definir orientações que devem
ser observadas durante a execução. A figura 1 representa um modelo das etapas que
compõem essa nova abordagem, e que são detalhadas nos itens a seguir.
FIGURA 1 - MODELO PARA EXECUÇÃO DAS
IDADES

ETAPAS DO NOVO PARADIGMA
1 AVALIAR VIABILIDADE
As ações de garantia de qualidade dessa etapa visam aplicar princípios gerais de
qualidade, válidos para todas as fases de desenvolvimento dos sistemas, de modo a
conduzir a realização das tarefas em condições favoráveis, que possibilitem alcançar
resultados com alto índice de qualidade e produtividade.
A avaliação da viabilidade de realização de uma atividade qualquer, dentro do ciclo de
desenvolvimento de sistemas, deverá ser feita considerando os requisitos e restrições
estabelecidos para a atividade, que devem ser obtidos a partir de seleção nos requisitos
e restrições gerais do sistema.
Para avaliação da viabilidade, deverão ser considerados os seguintes tópicos:
1.1 A atividade atende aos objetivos do sistema?
Caso a atividade não esteja vinculada a qualquer objetivo, os objetivos precisarão ser
revistos, ou a atividade é desnecessária ou é, até mesmo, conflitante com os objetivos
do sistema, não devendo ser executada.
1.2 Os requisitos estão todos especificados?
Requisitos funcionais, requisitos de qualidade para o sistema, requisitos de performance,
requisitos de segurança de acesso a informações, requisitos de risco envolvido em caso
de falhas no resultado da atividade.
A execução de uma tarefa buscando resultados com qualidade exige que os requisitos
necessários estejam especificados de forma clara, precisa e explícita
1.3 As restrições estão explicitadas?
Se o sistema possuir restrições que devem ser consideradas, as atividades necessárias
para o desenvolvimento do sistema são afetadas pelas restrições. O executor da
atividade deverá ter claras quais são as restrições associadas à sua atividade, de
maneira a considerá-las no projeto.
1.4 A atividade a ser executada é necessária?
Toda atividade de projeto deve ter alguma finalidade que contribua com a realização do
mesmo. Deste modo, devem ser tomadas precauções no sentido de se evitar a presença de
atividades parasitas no processo, que consomem recursos e tempo, não agregando qualquer
valor ao produto. Para a avaliação da validade da atividade, poderão ser respondidas
questões como:
- O pressuposto para a realização da atividade está correto?
- O que acontece se a atividade não for feita?
1.5 O momento para a execução é o adequado?
Algumas atividades podem ser executadas a qualquer momento, independentemente de
requisitos prévios que as viabilizem, ou ainda facilitem sua realização. Nesse caso, a
opção para executar a atividade depende da existência de recursos e da prioridade de
aplicá-los numa ou noutra tarefa. Por outro lado, há situações em que é necessária a
realização de atividades preliminares, que proporcionam maior clareza aos requisitos da
atividade em questão ou, ainda, podem produzir como componentes reusáveis para a mesma.
1.6 O produto já não existe pronto?
A existência de um produto pronto que possa ser aproveitado integralmente ou, ainda, com
algumas modificações, possibilita um grande ganho de produtividade e de tempo.
2 PLANEJAR EXECUÇÃO
O planejamento de cada atividade específica a ser realizada visa estabelecer condições
necessárias para que se possa obter resultados com nível de qualidade adequado.
O enfoque tradicional para a realização das tarefas do ciclo de desenvolvimento de
sistemas acaba por deixar de lado atividades de análise de problema e planejamento da
solução, direcionando esforços, no menor tempo possível, para a execução da tarefa.
Como todo trabalho de natureza intelectual - como se caracteriza a maior parte das
atividades de desenvolvimento de sistemas - exige a realização de um projeto preliminar
à execução, conclui-se que o planejamento sempre é realizado, porém de forma
intuitiva e sem o rigor necessário para possibilitar a obtenção de elevados níveis de
qualidade no produto gerado. Esta simplificação pode ser explicada pela reação dos
indivíduos em executarem atividades centradas em pensamento e avaliação de
alternativas, encontrando conforto em atividades operacionais que tragam a sensação de
realização concreta do produto final esperado.
O paradigma de Produzir com Qualidade pretende quebrar o estilo de ação operacional, que
produz resultados que precisam ser posteriormente verificados e corrigidos, num ciclo
oneroso de atividades operacionais, para a realização da tarefa apoiada em base sólida
que resulte em produtos de qualidade com mínimo retrabalho.
Como resultado da etapa de planejamento da execução deverão ser obtidos os seguintes
itens:
2.1 Requisitos para a atividade
O entendimento da tarefa a ser realizada é fundamental para sua execução com qualidade
e produtividade. Desta forma, deverão estar definidos de modo claro e sem ambigüidade os
seus requisitos funcionais, especificando-se as ações que deverão ser cumpridas pelo
produto a ser gerado.
2.2 Produtos esperados
No planejamento da execução da atividade, deverão estar especificados todos os produtos
necessários para considerar a tarefa concretizada com qualidade. Assim sendo, deverão
ser definidos, além do produto principal, produtos intermediários, documentação, dados
para validação e outros específicos de cada atividade.
2.3 Métodos
A elaboração de uma tarefa não pode ser feita segundo uma escolha aleatória de
métodos, devendo haver consistência entre os métodos aplicados no decorrer do
desenvolvimento, de modo a permitir maior clareza, além de possibilitar processos
científicos de derivação de uma atividade para outra, ou até mesmo o uso de
ferramentas automatizadas de suporte à engenharia de software (CASE).
2.4 Padrões
No paradigma de Produzir com Qualidade, para cada atividade deverão ser definidos os
padrões a serem utilizados, sejam eles internacionais, nacionais, da organização ou
ainda padrões do próprio projeto, quando não houver definição nos demais níveis.
2.5 Recursos humanos
Cada tarefa deverá estar associada a um técnico capacitado para realizá-la, ou então
deverão ser tomadas ações de contorno. Não se admite, neste paradigma, que as tarefas
sejam executadas de forma experimental, sem qualquer garantia quanto aos resultados,
fazendo-se uma aposta no potencial das pessoas, sem que se criem condições para que
essas, efetivamente, consigam utilizar seu potencial de maneira produtiva.
2.6 Dimensionamento do esforço
A questão de qualidade de um produto de software está associada ao atendimento dos
requisitos funcionais, além de outros requisitos de uso do software, além de dois outros
fatores de caráter gerencial que são o custo e o prazo para desenvolvimento.
No processo de desenvolvimento de software foram criados pressupostos básicos que
persistem ao longo do tempo. Um dos pressupostos é que prazo e custo sempre são
extrapolados em projetos. Essa lacuna de qualidade, que efetivamente se comprova em
qualquer análise histórica, tem raízes na maneira com que são feitas as estimativas de
esforço e prazo para realização das tarefas.
2.7 Dimensionamento de prazos
As estimativas de prazos para realização de tarefas de desenvolvimento de sistemas é
outro fator importante de impacto na qualidade do serviço, tendo em vista que o não
cumprimento de prazos gera frustrações e descrédito junto ao cliente.
O dimensionamento prévio do esforço para realização de uma tarefa é requisito para o
estabelecimento de uma estimativa de prazos com maior grau de certeza. Além do esforço
previsto, há ainda outros fatores influência, tais como interdependências entre
tarefas, processo de comunicação entre membros da equipe que realiza o trabalho, além
de fatores externos que podem prejudicar o andamento do trabalho, como, por exemplo,
cancelamento de reuniões pré-agendadas.
2.8 Requisitos de qualidade
A norma ISO/IEC 9126 que define características e subcaracterísticas de qualidade de
software pode ser utilizada como referência para especificação dos atributos de
qualidade a serem contratados para os sistemas, e como base em todo processo de
desenvolvimento do sistema, seja na execução das atividades, bem como durante as
revisões de qualidade ou, ainda. nas atividades necessárias para a validação e
aceitação por parte do usuário.
Tomando como base essa norma, é possível estabelecer uma orientação geral para
desenvolvimento de software, considerando as suas fases de projeto e construção e as
ações que precisam ser tomadas nas diversas atividades, no sentido da garantia de
qualidade, segundo a ótica das características e subcaracterísticas definidas na norma.
Independentemente da explicitação por parte do usuário quanto aos atributos esperados
para cada característica e subcaracterística, de qualidade do produto, é importante
que, para cada fase, sejam estabelecidos critérios de qualidade a serem observados
durante a atividade de "PlANEJAR A EXECUÇÃO" e, também, na própria
execução de cada tarefa, de modo que haja, no mínimo, avaliação de que critérios de
qualidade interferem na execução de cada tarefa. Sempre que possível, devem ser
explicitadas dimensões de qualidade esperada para os produtos gerados em cada fase do
projeto.
No paradigma de Produzir com Qualidade, a observação prévia das características e
subcaracterísticas esperadas orientará a execução das atividades, como um checklist de
apoio à obtenção de produtos segundo a qualidade esperada, além de servir como
referência durante as atividades de revisão técnica para avaliação da qualidade do
produto.
Considerando a Metodologia de Desenvolvimento de Serviços utilizada na CELEPAR, e mais
especificamente o Roteiro de Análise e Construção de Sistemas (RACS), serão
relacionadas a seguir as características e subcaracterísticas a serem consideradas em
cada fase do roteiro, de maneira a conduzir o processo à geração de produtos com a
qualidade projetada. A tabela 1 apresenta um resumo das características e
subcaracterísticas de qualidade relacionadas às fases e atividades do RACS.

3 EXECUTAR ATIVIDADE
Cumpridos os requisitos de planejamento estabelecidos na etapa anterior,
pode-se passar à execução da tarefa, com as orientações necessárias para
a geração de produtos especificados, segundo a qualidade esperada e dentro
de prazos contratados. É importante observar que, no paradigma de Produzir
com Qualidade, a execução da tarefa necessita estar totalmente vinculada
aos resultados obtidos na etapa de planejamento, cabendo aos executores
referenciarem-se, durante toda a execução de sua tarefa, aos produtos
gerados anteriormente, considerando concluído o trabalho apenas quando
estiverem atendidos os requisitos e orientações previamente estabelecidas.
4 AVALIAR PRODUTO
A avaliação de produtos, seja através de revisões técnicas informais,
formais ou até mesmo via inspeções detalhadas, tem sido o mecanismo mais
usualmente utilizado para garantia de qualidade de produto de software.
O nível de rigor a ser aplicado na avaliação do produto depende de seu
grau de criticidade em relação ao processo e, também, ao uso ao qual será
destinado o software que está sendo produzido. No paradigma de Produzir
com Qualidade, espera-se que o nível de erros ou não aderência a padrões
e requisitos estabelecidos seja limitado pelas ações a serem tomadas antes
e durante a execução de cada tarefa. Porém, conforme as conveniências
de cada serviço e até mesmo da maturidade da equipe de desenvolvimento
em relação ao novo paradigma, deverão ser executadas revisões técnicas
para avaliação dos produtos gerados.
5 CORRIGIR PRODUTO
Nessa etapa, deverão ser introduzidas as modificações necessárias para
que o produto venha a atender satisfatoriamente aos requisitos estabelecidos.
As recomendações da equipe de revisão deverão ser avaliadas e, se procedentes,
deverão ser implementadas; caso contrário deverão ser justificadas. Na
atividade de correção de erros deverão ser tomados cuidados especiais
para que não sejam introduzidos novos erros decorrentes das alterações
efetuadas. Deve ser lembrado, também, que, mesmo nessa etapa, deverão
ser mantidos presentes os requisitos estabelecidos na etapa de planejamento.
Caso algum erro tenha sido causado por especificação incorreta gerada
naquela etapa, deverá ser solucionado no contexto da mesma.
CONCLUSÃO
Este artigo apresenta um resumo da Monografia apresentada ao Curso de
Especialização em Desenvolvimento das habilidades de Gestão na Pontifícia
Universidade Católica do Paraná, abordando um novo paradigma para desenvolvimento
de software com qualidade. Na monografia, os conceitos aqui apresentados
estão melhor detalhados e subsidiados por pesquisa exploratória e bibliográfica.
danilo@celepar.gov.br

|