Componentes SQA
Software Quality Assurance(SQA) é um conjunto de atividades para garantir a qualidade nos processos de engenharia de software. Ele garante que o software desenvolvido atenda e esteja em conformidade com as especificações de qualidade definidas ou padronizadas. SQA é um processo contínuo dentro do Ciclo de Vida de Desenvolvimento de Software (SDLC) que verifica rotineiramente o software desenvolvido para garantir que ele atenda às medidas de qualidade desejadas.
As práticas de SQA são implementadas na maioria dos tipos de desenvolvimento de software, independentemente do modelo de desenvolvimento de software subjacente usado. SQA incorpora e implementa metodologias de teste de software para testar o software. Em vez de verificar a qualidade após a conclusão, os processos SQA testam a qualidade em cada fase de desenvolvimento, até que o software seja concluído. Com o SQA, o processo de desenvolvimento de software passa para a próxima fase apenas quando a fase atual / anterior está em conformidade com os padrões de qualidade exigidos. SQA geralmente funciona em um ou mais padrões da indústria que ajudam na construção de diretrizes de qualidade de software e estratégias de implementação.
Inclui as seguintes atividades -
- Definição e implementação de processos
- Auditing
- Training
Os processos podem ser -
- Metodologia de Desenvolvimento de Software
- Gerenciamento de Projetos
- Gerenciamento de configurações
- Desenvolvimento / Gerenciamento de Requisitos
- Estimation
- Design de software
- Teste, etc.
Uma vez que os processos tenham sido definidos e implementados, a Garantia da Qualidade tem as seguintes responsabilidades -
- Identifique as fraquezas nos processos
- Corrija esses pontos fracos para melhorar continuamente o processo
Componentes do Sistema SQA
Um sistema SQA sempre combina uma ampla variedade de componentes SQA. Esses componentes podem ser classificados nas seguintes seis classes -
Componentes de pré-projeto
Isso garante que os compromissos do projeto tenham sido claramente definidos considerando os recursos necessários, o cronograma e o orçamento; e os planos de desenvolvimento e qualidade foram corretamente determinados.
Avaliação dos componentes do ciclo de vida do projeto
O ciclo de vida do projeto é composto por duas fases: a fase do ciclo de vida de desenvolvimento e a fase de operação-manutenção.
Os componentes do estágio do ciclo de vida de desenvolvimento detectam erros de design e programação. Seus componentes são divididos nas seguintes subclasses: Avaliações, Opiniões de especialistas e Teste de software.
Os componentes SQA usados durante a fase de operação-manutenção incluem componentes de manutenção especializados, bem como componentes do ciclo de vida de desenvolvimento, que são aplicados principalmente para funcionalidade para melhorar as tarefas de manutenção.
Componentes de prevenção e melhoria de erros de infraestrutura
O objetivo principal desses componentes, que são aplicados em toda a organização, é eliminar ou pelo menos reduzir a taxa de erros, com base na experiência acumulada de SQA da organização.
Componentes de gerenciamento de qualidade de software
Essa classe de componentes lida com diversos objetivos, como o controle das atividades de desenvolvimento e manutenção, e a introdução de ações de apoio gerencial antecipado que principalmente previnem ou minimizam falhas de cronograma e orçamento e seus resultados.
Componentes de padronização, certificação e avaliação do sistema SQA
Esses componentes implementam padrões profissionais e gerenciais internacionais dentro da organização. Os objetivos principais desta classe são a utilização de conhecimentos profissionais internacionais, a melhoria da coordenação dos sistemas de qualidade organizacional com outras organizações e a avaliação das realizações dos sistemas de qualidade de acordo com uma escala comum. Os vários padrões podem ser classificados em dois grupos principais: padrões de gerenciamento de qualidade e padrões de processo de projeto.
Organização para SQA - os componentes humanos
A base organizacional SQA inclui gerentes, pessoal de teste, a unidade SQA e as pessoas interessadas na qualidade de software, como curadores SQA, membros do comitê SQA e membros do fórum SQA. Seus objetivos principais são iniciar e apoiar a implementação dos componentes do SQA, detectar desvios dos procedimentos e metodologia do SQA e sugerir melhorias.
Componentes de qualidade de software pré-projeto
Esses componentes ajudam a melhorar as etapas preliminares tomadas antes de iniciar um projeto. Inclui -
- Revisão de contrato
- Planos de Desenvolvimento e Qualidade
Revisão de contrato
Normalmente, um software é desenvolvido para um contrato negociado com um cliente ou para um pedido interno para desenvolver um firmware a ser incorporado em um produto de hardware. Em todos esses casos, a unidade de desenvolvimento está comprometida com uma especificação funcional, orçamento e cronograma acordados. Portanto, as atividades de revisão do contrato devem incluir um exame detalhado da minuta da proposta do projeto e das minutas do contrato.
Especificamente, as atividades de revisão de contrato incluem -
Esclarecimento dos requisitos do cliente
Revisão do cronograma do projeto e estimativas de requisitos de recursos
Avaliação da capacidade da equipe profissional para realizar o projeto proposto
Avaliação da capacidade do cliente de cumprir suas obrigações
Avaliação de riscos de desenvolvimento
Planos de Desenvolvimento e Qualidade
Após a assinatura do contrato de desenvolvimento de software com uma organização ou departamento interno da mesma organização, é preparado um plano de desenvolvimento do projeto e suas atividades integradas de garantia de qualidade. Esses planos incluem detalhes adicionais e revisões necessárias com base em planos anteriores que forneceram a base para a proposta e o contrato atuais.
Na maioria das vezes, decorrem vários meses entre a apresentação da proposta e a assinatura do contrato. Durante esse período, recursos como disponibilidade de pessoal e capacidades profissionais podem ser alterados. Os planos são então revisados para refletir as mudanças que ocorreram nesse ínterim.
As principais questões tratadas no plano de desenvolvimento do projeto são -
- Schedules
- Recursos humanos e de hardware necessários
- Avaliações de risco
- Questões organizacionais: membros da equipe, subcontratados e parcerias
- Metodologia de projeto, ferramentas de desenvolvimento, etc.
- Planos de reutilização de software
As principais questões tratadas no plano de qualidade do projeto são -
Metas de qualidade, expressas em termos mensuráveis apropriados
Critérios para iniciar e terminar cada fase do projeto
Listas de análises, testes e outras atividades de verificação e validação programadas