Desenvolvimento

Ξ Deixe um comentário

A Grande Viagem 3 – Falando Sobre Qualidade

publicado por Gilberto Ribeiro

Após a publicação dos dois artigos anterioriores, falaremos um pouco sobre a qualidade sem nos aprofundarmos muito nas normas, com foco no desenvolvimento de sistemas.

Qualidade, conceituando:

“Qualidade é a totalidade das características de uma entidade (produto) que lhe confere a capacidade de satisfazer às necessidades explícitas (requisitos funcionais) e implícitas (requisitos não funcionais)”. (Antiga norma ABNT NBR ISSO 8402)

O que o cliente espera quando nos contratam? Que o produto ou serviço contratado tenha ”a totalidade das características de uma entidade que lhe confere a capacidade de satisfazer às necessidades explícitas e implícitas”.

Segundo Pressman, em seu famoso livro Engenharia de Software, “Qualidade de software é a conformidade a requisitos funcionais e de desempenho explicitamente declarados, a padrões de desenvolvimento claramente documentados e a características implícitas que são esperadas de todo software profissionalmente desenvolvido”. Poderia ser resumido em: …”a totalidade das características de uma entidade que lhe confere a capacidade de satisfazer às necessidades explícitas e implícitas”.

Aumentou a nossa responsabilidade…

Podemos também dizer que qualidade é estar em conformidade com especificações, ou seja, quando os produtos possuem as características que estão descritas no projeto, catálogos ou listas de especificações.

Devemos sempre nos perguntar: Entendemos o que nos foi confiado a desenvolver?

Fechamos o conceito de qualidade, com definição mais antiga e que nos reporta ao tempo acadêmico: “Qualidade é a adequação ao uso”.

Com base nos conceitos acima, podemos avaliar a qualidade de um produto, verificando se ele atendeu ou não as necessidades do cliente. Entregamos aquilo que o cliente nos solicitou? Atendemos as suas expectativas?

Uma série de questionamentos que embora não estejam explícitos nas normas, nos direciona a satisfação do cliente, como por exemplo:
• Qual o objetivo do investimento no desenvolvimento do sistema?
• Existe alguma solução pronta?
• O que vale mais a pena desenvolver ou de fato comprar uma solução?
• O sistema tem como objetivo reduzir custos?
• O sistema tem como objetivo aumentar o lucro?
• O sistema tem como objetivo melhorar os processos internos automatizando?
• Quem vai usar o sistema?
• O que os envolvidos esperam do sistema?
• Como eles trabalham atualmente?
• Qual o impacto na rotina dos envolvidos?
• Levantamos todos os fluxos principais e alternativos do sistema?
• Foram identificados todos os atores primários e secundários do sistema?
• O ambiente operacional?
• Se o sistema vai interagir com outros sistemas?
• Se vamos consumir, gerar, ou seja, compartilhar informações com outros sistemas?
• Temos um layout aprovado pelo cliente?
• Conseguimos satisfazer as expectativas do cliente?

Ainda seriamos capazes de sentarmos em frente ao computador e sairmos escrevendo códigos feito um alucinado, sem nos preocupamos em entender o domínio do negócio, os requisitos do cliente? Se a nossa resposta for sim, estamos com sérios problemas, pois não percebemos a importância de conseguir um cliente e a responsabilidade em mantê-lo.

Aprofundando mais um pouquinho, questiono ainda:
• Como fomos preparados para a vida profissional?
• O que aprendemos com aplicação prática no âmbito da qualidade?

Recordando as atividades na vida acadêmica, se não me falha a memória, aprendemos uma linguagem de programação, noções de orientação o objetos, noções de UML, banco de dados, noções sobre sistemas operacionais, mas nossa vida acadêmica é direcionada para desenvolvermos o senso ético e moral na vida profissional? O que isso tem há ver com a qualidade? Qualidade – Ética – Moral? (consulte: Código de Ética dos Engenheiros de Software)

Vamos supor que aprendêssemos, antes de qualquer coisa, as normas de qualidade, em seguida fossemos orientados a entender o domínio do negócio, passando em seguida para a elicitação de requisitos, a análise orientada a objeto, a diagramação em UML, ao desenho da arquitetura do sistema, o uso de ferramentas que automatizam os processos, a documentação do sistema, enfim a entender e participar durante toda a vida acadêmica de todo o ciclo de vida do sistema. Sem falar nas metodologias de desenvolvimento como RUP, XP, SCRUM, ASD.

Voltando ao tema, várias são as vantagens da implementação do sistema da gestão da qualidade, destacando o aumento da credibilidade da organização frente ao mercado consumidor, o aumento da competitividade do produto ou serviço no mercado, a prevenção da ocorrência de deficiências e mitigação dos riscos comerciais (reivindicações de garantia e responsabilidades pelo produto).

Outro questionamento interessante: Qualidade se implanta?

Pensei em iniciar este item como o seguinte título “Implantando a Qualidade”, mas preferi fazer o questionamento “Qualidade se Implanta?”.

Qualidade não deveria ser implantada, mas praticada, nas mais variadas atividades em nossa vida profissional e também pessoal, quando a entendemos em sua essência, ela passa a ser natural e não precisamos implantá-la porque trabalhamos sempre com qualidade. É interessante o questionamento, pois se precisamos implantar a qualidade é por que trabalhamos sem qualidade, ou seja, de forma errada ou precária (sendo menos rigoroso, nível 1 CMM). A sistematização, a documentação dos processos, e todas as atividades pertinentes à implantação da gestão da qualidade seria a formalização do que se pratica.

Fatores que motivam a organização a implantar um sistema de gestão da qualidade:

• É preciso a conscientização da alta administração, é o efeito chuveiro, só funciona de cima para baixo. Podemos afirmar que essa é a mais eficaz entre todas.
• O interesse por outros mercados no fornecimento de produtos e serviços, ou para órgãos ou empresas governamentais nos levam por forças contratuais, a implantação dos sistemas de gestão da qualidade. O tempo de maturação neste tipo de conscientização é maior, mas normalmente se alcança por razões de sobrevivência no mercado.
• A agressiva competitividade no mercado força a conscientização da alta administração, ou seja, ou se adequa ao sistema de gestão da qualidade ou então morre.
• Dançar conforme a música, é o conceito do modismo, é a menos eficaz, normalmente não se chega a alcançar o objetivo maior, que é a conscientização da alta administração.

Encerro este artigo relacionando as normas em vigor, relacionadas a tecnologia da informação, vale a pena pesquisar.

– ABNT NBR ISO/IEC 14102:2002
Orientação para avaliação e seleção de ferramentas CASE
– ABNT ISO/IEC TR 14471:2003
Engenharia de software – Orientação para adoção de ferramentas CASE
– ABNT NBR ISO/IEC 9126-1:2003
Engenharia de software – Qualidade de produto Parte 1: Modelo de qualidade
– ABNT NBR ISO/IEC 14598-2:2003
Engenharia de software – Avaliação de produto Parte 2: Planejamento e gestão
– ABNT NBR ISO/IEC 14598-3:2003
Engenharia de software – Avaliação de produto Parte 3: Processo para desenvolvedores
– ABNT NBR ISO/IEC 14598-4:2003
Engenharia de software – Avaliação de produto Parte 4: Processo para  adquirentes
– ABNT NBR ISO/IEC 14598-5:2001
Engenharia de software – Avaliação de produto Parte 5: Processo para a avaliadores
– ABNT NBR ISO/IEC 14598-6:2004
Engenharia de software – Avaliação de produto Parte 6: Documentação de módulos de avaliação
– ABNT ISO/IEC TR 24774:2010
Engenharia de software e de sistemas — Gerenciamento de ciclo de vida
– ABNT NBR ISO/IEC 25000:2008
Engenharia de software – Guia do SQuaRE
– ABNT NBR ISO/IEC 25001:2009
Engenharia de software – SQuaRE – Planejamento e gestão
– ABNT NBR ISO/IEC 25020:2009
Engenharia de software – SQuaRE – Guia e modelo de referência para medição
– ABNT NBR ISO/IEC 25030:2008

 

Autor

Atualmente Consultor na Paulista IT Services. Gerencio equipe de projeto e desenvolvimento de sistemas desde 1991, sou formado em Análise de Sistemas, Pós-Graduado em Engenharia de Software pelo Instituto de Ensino INFNET. Presto consultoria em sistema de Gestão da Qualidade, Implantação e Gestão de Fábrica de Software, com base no CMMI/PMI/MPS.BR e identificação e mapeamentos dos ciclos de vida do projeto, desde o estudo da viabilidade até a homologação do sistema. Atuo também em formação de equipe de desenvolvimento, definindo o perfil do profissional segundo as necessidades do projeto. Implantação dos conceitos de gerenciamento de projeto, elaboração de plano de treinamento visando o nivelamento da equipe - Fábrica de Talentos - implantação de Plano de Capacitação na Empresa com base em projetos reais, reduzindo custos no ciclo de formação dos profissionais e elaboração de Planos de Carreira, mantendo os profissionais na empresa. Customizo as boas práticas de gestão, e execução de projetos de acordo com o perfil da empresa (cultura), analisando e mapeado os processos adequando as melhores prática do mercado. Implantação de metodologias de desenvolvimento ágil, como SCRUM ou XP. Blog: http://es-it.blogspot.com.br/ - Site: http://www.paulistaitservices.com.br

Gilberto Ribeiro

Comentários

You must be logged in to post a comment.

Busca

Patrocínio

Publicidade



Siga-nos!

Newsletter: Inscreva-se

Para se inscrever em nossa newsletter preencha o formulário.

Artigos Recentes