Home Page
cover of Aula 1_Gestão_Proj_Qualidade_Software
Aula 1_Gestão_Proj_Qualidade_Software

Aula 1_Gestão_Proj_Qualidade_Software

Marcelo B Santiago

0 followers

00:00-16:14

Nothing to say, yet

1
Plays
0
Shares

Audio hosting, extended storage and much more

AI Mastering

Transcription

The main ideas from this information are: - The importance of quality in software development and its impact on customers and software companies. - Examples of software failures and their consequences. - Different approaches to defining quality proposed by David Garvin. - Definitions of quality by various quality gurus. - Factors that affect software quality, including technology, developers' skills, project efficiency, and process quality. - The ISO 25000 family of standards for defining software quality characteristics. - The relationship between product quality, process quality, and quality in use. - The importance of considering the user's context in software quality. - The relevance of functional adequacy and efficiency in software quality. The information cannot be summarized within 500 characters. Primeira aula, gestão de projetos e qualidade de software. A preocupação com a qualidade é inevitável no desenvolvimento de software. A baixa qualidade tem impactos negativos para os clientes de uma empresa de software. O cliente perde negócios, se o sistema sair do ar com frequência, perde vendas. O cliente perde dados, uma falha no software, geralmente perde-se informações importantes. O cliente perde tempo, um software de baixa qualidade atrasa as operações, precisa ser reiniciado frequentemente. O cliente perde dinheiro, a má qualidade de software leva a perdas financeiras para a empresa. Porém, com a má qualidade, uma empresa de software também tem impactos negativos. Aumento de custos, devido a maior necessidade de suporte, devolução de dinheiro da compra ou pagamento de multas. Processos judiciais, o cliente pode pedir indenização pelas perdas ocorridas. Perda de imagem e reputação, perda de clientes. Esses impactos ficam evidentes nas empresas, quando se realiza a análise quantitativa dos prejuízos gerados pelas falhas de software. Alguns exemplos de falhas de software A Oracle atualiza a Java, mas experts dizem que falhas continuam. Governo americano advertiu para perigosa falha no programa Java. Segundo especialistas, a atualização não protege os PCs contra ataques. Então isso aqui foi um problema, ou seja, a Oracle lançou uma atualização de emergência no software Java para navegação na web, mas especialistas em segurança afirmam que não protege os computadores pessoais contra ataques dos hackers. Número 2, ataque na WannaCry é mesmo sem precedentes, infectou 300 mil computadores em 4 dias usando uma brecha do Windows. Outro caso, exemplos de falhas de software, a explosão Ariane 5 em 1996 devido a reutilização do componente de software, esse componente gerou exceção por erro, assim ocorreu uma falha no sistema inicial, prejuízo de 500 milhões de dólares. Exemplos de falhas de software, em 2000 no Panamá, 28 pacientes receberam overdose de raios-gama para tratamento de câncer, 5 morreram e 15 desenvolveram sérias complicações. Isso ocorreu porque um software que dosava radiação falhou. Com base nos exemplos, conclui-se que é muito importante ter qualidade do software para evitar falhas de maneira proativa, mas é improvável que um software não tenha defeitos. Ter qualidade é atender corretamente os requisitos, mas o que acontece se um software não atende todas as necessidades dos stakeholders? Será que a qualidade varia de acordo com a necessidade do usuário? Esse aspecto é importante, porque um stakeholder pode ter uma visão de qualidade bem diferente do outro. Para entender o que é qualidade, é importante se ater a 5 abordagens propostas por David Garvin. Então vamos lá, quais são as 5 propostas de abordagem propostas por David Garvin? 1. Na visão transcendental, qualidade é o que se conhece, mas não se define. Exemplo, uma obra de arte sabe-se que tem valor, mas não se sabe porquê. 2. Baseada em produto, a qualidade são características inerentes ao produto. Quando maior ou menor o valor dessas características, melhor o produto. Exemplo, memória de um computador visa-se maior capacidade. 3. Baseado em processo, manufatura, a qualidade é conformidade à especificação. Isso envolve um processo adequado a um controle de qualidade, reduzindo custos e sem erros. 4. Baseado na visão do usuário, se um produto ou serviço atende suas expectativas, então tem qualidade. 5. Baseado em valor, a qualidade é considerada em termos de custo e preço, ponderando o valor percebido pelo consumidor. Qual a definição de qualidade? Hum, difícil, mas temos algumas. Os gurus da qualidade. 1. FINGENBAU Fingenbau, Armand Fingenbau, define, composição total das características de marketing, engenharia e manutenção de um produto ou serviço, por meio das quais o mesmo produto ou serviço, quando em uso, atenderá as especificações e a expectativa do cliente. 2. 2. Joseph Moses Juran Adequação ao uso do cliente por meio da percepção das suas necessidades e aperfeiçoamentos introduzidos a partir de patamares já alcançados. Ausência de deficiências, ou seja, quanto menos defeitos, melhor a qualidade. 3. Ainda definição de qualidade, agora por Philip Crosby Conformidade com as exigências do consumidor. Isso é qualidade. 4. Denning W. Edward Denning Qualidade ao resultado da perseguição às necessidades dos clientes, estabilidade e baixa variabilidade dos processos. 5. Ishikawa Kaoru Ishikawa Qualidade. É o que realmente traz satisfação ao cliente. Adquirida por meio da rápida percepção das suas necessidades, adequação ao uso dos produtos e homogeneidade destes. 6. Taguchi Gineshi Taguchi Qualidade. Falta de. Qualidade de um produto é a perda monetária mínima imposta à sociedade a partir do instante que o produto é entregue ao consumidor. 7. ISO Definição de qualidade pela ISO 9000 É o grau no qual um conjunto de características inerentes satisfaz a requisitos. 8. Nota 1. O termo qualidade pode ser usado com adjetivos tais como má, boa ou excelente. 9. 2. Inerente ao contrário de atributo significa a existência de alguma coisa, especialmente como característica permanente. Pelos conceitos apresentados, fica mais fácil responder a pergunta colocada inicialmente. Além disso, podemos definir o que é de qualidade. Um produto ou serviço de qualidade é aquele que atende perfeitamente de forma confiável, de forma acessível, de modo seguro e, no tempo certo, às necessidades dos clientes. Definição de Falconi 1992 A qualidade de software está mais associada à visão do usuário e à visão da manufatura à especificação. Segundo a norma IEEE 610, qualidade é o grau em que o sistema, componente ou processo atende os requisitos especificados e as expectativas e as necessidades dos clientes ou usuário. Mas não é fácil desenvolver um software com alta qualidade, sendo difícil descrever especificações precisas e ainda existem diversos stakeholders que têm diferentes pontos de vista que são divergentes. É difícil medir algumas características do desenvolvimento de software, exemplo, a manutenibilidade. A manutenibilidade é definida pela Norma Brasileira 5.462 da ABNT como a capacidade de um item ser mantido ou recolocado em condições de executar suas funções requeridas, sob condições de uso especificadas. Quando a manutenção é executada sob condições determinadas e mediante procedimentos e meios prescritos. No projeto de desenvolvimento de software, a manutenibilidade tem elevado grau de subjetividade. Ao desenvolver um software, existem alguns fatores que afetam a sua qualidade. De acordo com Summerville, em 2011, menciona que a qualidade de um software está relacionada a 1. Tecnologia empregada para o desenvolvimento, memória, processador, linguagens de programação e ajudam a melhorar a qualidade do produto. 2. Qualidade das pessoas desenvolvedoras, que quanto mais capacitadas, melhor será o desenvolvimento. 3. Eficiência do projeto, em termos de custos, tempo, cronograma, afetam diretamente a qualidade. 4. Qualidade do processo, usar procedimentos e técnicas corretas, levam ao software melhor. Então a qualidade do processo está diretamente relacionada aos demais fatores. Não adianta ter tecnologia de ponta, se o processo não executar corretamente. A capacidade das pessoas também precisa ser explorada no processo, assim como o controle de custos e tempo. É importante se preocupar com esses fatores para desenvolver um software de alta qualidade. Porém, a empresa de software tem custos. Prevenção, evitar problemas de qualidade. Avaliação, controlar a qualidade do produto, garantir a qualidade desejada. E resolver falhas, resolver não conformidades. Como definir o grau de qualidade? Como avaliar o grau de qualidade? O que especificar para a qualidade de software? Como especificar para a qualidade de software? A família de normas ISO 25000 ajuda a definir as características de qualidade de um software ou um sistema computacional. Modelo de qualidade considera diferentes visões da qualidade. Qualidade do produto ou qualidade em uso. Cumpre as necessidades e atinja as metas do usuário. Aqui nós temos um esquema. A qualidade do processo influencia a qualidade do produto. A qualidade do produto tem prioridades, propriedades internas e externas. Propriedades internas dentro do produto não são visíveis ao usuário. Eles apenas percebem. Exemplo, quantidade de código de linhas, quantidade de código, linhas de código. E externas? Externas são visíveis pelos usuários. Exemplo, peças e componentes. Então aqui a gente tem um esquema, onde nós temos lá em cima a qualidade e há uma troca de influência e dependência desse processo. Então ou seja, ela é influenciada por propriedades internas, que são medidas internas, e também ela depende de propriedades externas, medidas externas. Então a qualidade do produto depende disso, é influenciado por isso. Por propriedades internas que são influenciadas e dependem das propriedades internas e também por propriedades externas, que são medidas externas, e isso define então a qualidade do produto. A qualidade do produto influencia a qualidade de uso. A qualidade de uso está relacionada ao ambiente usuário, que depende do contexto de uso, pessoas diferentes com opiniões diferentes do software. E novamente o esquema agora aumentado, ele tem então essas prioridades internas e prioridades externas que influenciam a qualidade do processo. Mas quando você olha também essas propriedades internas e externas, elas também têm influência na qualidade em uso. E que também a qualidade em uso depende dessas propriedades externas ou propriedades internas. Ou seja, o contexto de uso é muito importante no processo de qualidade de software. Ou seja, a qualidade de uso e qualidade em uso são medidas de qualidade em uso. Agora vamos lá. A qualidade do software está relacionada com adequação funcional. Quanto o produto provê funções conforme solicitado pelos stakeholders. 2. Eficiência na execução, desempenho dada a quantidade de recursos, processador, rede de memória. 3. Compatibilidade, quanto o produto compartilha informações com outros produtos. 4. Usabilidade, quanto é fácil usar. 5. Confiabilidade, maturidade no funcionamento, tolerância a falhas. 6. Segurança, proteção de informações. 7. Manutenibilidade, quanto é fácil fazer manutenção. 8. Portabilidade, colocar o produto em vários ambientes. A qualidade de uso do software está relacionada a eficácia, atingir o objetivo satisfação do usuário. 2. Eficiência, atingir o objetivo satisfação dos usuários com menos recursos. Satisfação do usuário, utilidade, confiança, prazer e conforto. Ausência de riscos, mitigação de riscos econômicos, saúde, segurança e ambientais. Cobertura, flexibilidade de uso. A qualidade é entendida de maneira diferente entre os usuários. Isso dificulta a determinação das características de qualidade importantes para o desenvolvimento do software. Assim, é importante a implantação de procedimento sólido para a gestão do projeto de software. Com isso, minimiza oportunidades de falhas. A aplicação de gestão de projetos para melhorar a qualidade de software é fundamental e como é alvo de nossas aulas. Com isso nós finalizamos então a aula 1.

Listen Next

Other Creators