Prévia do material em texto
AULA DE ENGENHARIA II RESUMO DO LIVRO Resumo – Conceitos sobre Qualidade de Software A qualidade de software é essencial para garantir que os sistemas atendam às expectativas dos usuários e aos requisitos técnicos. Ela envolve processos, metodologias e normas que asseguram confiabilidade, eficiência e segurança no desenvolvimento de software. 1.1 Benefícios da Qualidade A adoção de boas práticas de qualidade resulta em software mais confiável, seguro e de fácil manutenção. Além disso, reduz custos com retrabalho e aumenta a satisfação dos usuários. 1.2 Obstáculos da Qualidade Apesar dos benefícios, algumas barreiras dificultam a implementação da qualidade, como resistência à mudança, custos iniciais elevados e falta de cultura organizacional voltada para qualidade. 1.3 Visões da Qualidade A qualidade pode ser vista sob diferentes perspectivas: do usuário (satisfação e facilidade de uso), da engenharia (boas práticas de desenvolvimento) e do produto final (desempenho e conformidade com requisitos). 1.4 Importância da Qualidade Softwares de baixa qualidade podem gerar prejuízos financeiros, falhas críticas e perda de credibilidade. A qualidade é essencial para garantir competitividade no mercado. 1.5 Garantia da Qualidade A garantia da qualidade envolve a aplicação de processos e metodologias para evitar defeitos no software desde as fases iniciais do desenvolvimento. 1.6 Controle da Qualidade O controle da qualidade consiste em atividades de verificação e validação, como testes, auditorias e revisões, para identificar falhas e garantir a conformidade do software. 1.7 Sistemas de Gestão da Qualidade (SGQ) Os SGQs organizam processos e práticas para assegurar a qualidade contínua no desenvolvimento de software. • 1.7.1 Fatores para implantação de um SGQ: Incluem comprometimento da equipe, definição de processos claros e monitoramento contínuo. • 1.7.2 NBR ISO 9000: Norma que define diretrizes gerais para sistemas de gestão da qualidade. • 1.7.3 NBR ISO 9000-3: Específica para empresas de desenvolvimento de software, garantindo conformidade com padrões internacionais. A qualidade de software é um fator determinante para o sucesso de sistemas e deve ser tratada como prioridade no desenvolvimento de produtos tecnológicos. 4o Resumo – Fundamentos e Modelos de Qualidade para Processo de Software A qualidade no processo de software é essencial para garantir eficiência, confiabilidade e conformidade com padrões internacionais. Para isso, existem normas e modelos que padronizam e avaliam a maturidade dos processos de desenvolvimento. 3. Fundamentos de Qualidade para Processo de Software 3.1 Norma ISO/IEC 15504 – SPICE (Melhoria do Processo de Software) A ISO/IEC 15504, conhecida como SPICE, é uma norma que avalia e melhora os processos de desenvolvimento de software, garantindo maior controle e qualidade. • 3.1.1 Níveis de maturidade: A norma define diferentes níveis de maturidade, indo de processos informais até processos totalmente otimizados. • 3.1.2 Pontuação dos atributos: Os processos são avaliados com base em atributos como desempenho, gerenciamento e melhoria contínua, determinando seu nível de maturidade. 4. Modelos de Qualidade para Processo de Software 4.1 Capability Maturity Model Integration (CMMI) O CMMI é um modelo de referência internacional para a melhoria de processos, ajudando empresas a aprimorar o desenvolvimento e a entrega de software. • 4.1.1 Estrutura do CMMI: Baseia-se em boas práticas para melhorar a maturidade dos processos. • 4.1.2 Áreas de processo: Inclui áreas como gestão de requisitos, desenvolvimento técnico e gerenciamento de projetos. • 4.1.3 Representação do modelo: O CMMI pode ser adotado de duas formas: o 4.1.4 Representação contínua: Permite que a organização melhore processos específicos conforme necessário. o 4.1.5 Representação por estágio: Define níveis de maturidade que devem ser seguidos em sequência. 4.2 Melhoria de Processos do Software Brasileiro (MPS.BR) O MPS.BR é um modelo brasileiro criado para atender às necessidades de pequenas e médias empresas na melhoria de processos de software. • 4.2.1 Estrutura do modelo: Baseia-se no CMMI, mas adaptado à realidade brasileira. • 4.2.2 Níveis de maturidade: Possui sete níveis, do G (inicial) ao A (otimizado). • 4.2.3 Processos do modelo: Abrange gestão, desenvolvimento e suporte ao software. • 4.2.4 Atributos do processo: Mede a eficiência dos processos baseando-se em critérios como desempenho e controle. • 4.2.5 Comparativo entre MPS.BR e CMMI: O MPS.BR é mais acessível para empresas menores, enquanto o CMMI é amplamente adotado em grandes organizações globais. Conclusão Os modelos e normas de qualidade garantem que as empresas sigam processos padronizados, reduzam falhas e entreguem softwares de alto nível. A escolha entre CMMI e MPS.BR depende do porte e das necessidades da organização. Resumo – Gestão da Qualidade do Produto de Software A gestão da qualidade do software envolve modelos, normas e métricas que garantem que o produto final seja confiável, eficiente e adequado aos requisitos dos usuários. 2.1 Modelo de McCall O modelo de McCall propõe três visões para avaliar a qualidade do software: • 2.1.1 Visão de operação: Foca na experiência do usuário, avaliando atributos como usabilidade, eficiência e correção. • 2.1.2 Visão de revisão: Relaciona-se à manutenção do software, considerando fatores como testabilidade, flexibilidade e modularidade. • 2.1.3 Visão de transição: Analisa a portabilidade e a capacidade do software de se adaptar a novos ambientes e tecnologias. 2.2 ISO/IEC 9126 – Características de Qualidade do Produto de Software Define critérios para medir a qualidade de um software, abrangendo funcionalidade, confiabilidade, usabilidade, eficiência, manutenibilidade e portabilidade. • 2.2.1 Métricas de qualidade: São usadas para avaliar objetivamente os atributos do software e garantir sua conformidade com padrões de qualidade. 2.3 Norma ISO/IEC 12207 – Ciclo de Vida do Software Estabelece processos para todas as fases do ciclo de vida do software, desde o desenvolvimento até a manutenção. • 2.3.1 Processos fundamentais: Incluem atividades essenciais, como aquisição, fornecimento e desenvolvimento. • 2.3.2 Processos de apoio: Englobam suporte técnico, documentação e garantia da qualidade. • 2.3.3 Processos organizacionais: Relacionam-se à gestão de projetos e melhoria contínua. • 2.3.4 Processos de adaptação: Ajustam os processos às necessidades específicas da organização. 2.4 ISO/IEC 14598 – Avaliação do Produto de Software Define métodos para avaliar a qualidade do software durante seu ciclo de vida, garantindo conformidade com requisitos técnicos e de mercado. • 2.4.1 Relação entre as séries das normas ISO/IEC 9126 e ISO/IEC 14598: A ISO/IEC 9126 fornece critérios de qualidade, enquanto a ISO/IEC 14598 define métodos para avaliá-los. 2.5 ISO/IEC 25000 – SQuaRE (Software Product Quality Requirements and Evaluation) Conjunto de normas que substitui a ISO/IEC 9126 e 14598, padronizando requisitos e métricas de qualidade para desenvolvimento e avaliação de software. A adoção dessas normas e modelos garante que o software atenda a altos padrões de qualidade, reduzindo falhas e aumentando sua confiabilidade.