Baixe o app para aproveitar ainda mais
Prévia do material em texto
� Datas importantes ◦ 1ª Avaliação: 09.09.2013 ◦ 2ª Avaliação: 28.10.2013 ◦ 3ª Avaliação: 25.11.2013 Individuais INTRODUÇÃO � Apresentar os conceitos básicos sobre Qualidade de Software. � Abordar a questão da qualidade de software, com ênfase em modelos de qualidade de Processo de software. � Globalização ◦ Novas exigências, alta competitividade, concorrência internacional � Qualidade como Arma Competitiva ◦ Equiparação com padrões internacionais, garantia de conformidade do produto, garantia da satisfação do cliente. � No contexto dos Sistemas de Informação ◦ Garantia de conformidade do software com os requisitos especificados qualidade de software � O principal objetivo da Engenharia de Software (ES) é ajudar a produzir software de qualidade; � Empresas que desenvolvem software de qualidade são mais competitivas; � Empresas que utilizam software de alta qualidade podem, em geral, oferecer um melhor serviço a um preço mais competitivo. “É atender plenamente os requisitos do cliente” “É superar a expectativa do cliente” � Conjunto de características que devem ser alcançadas em um determinado grau para que o produto atenda às necessidades de seus usuários. � Qualidade de software é a conformidade a requisitos funcionais e de desempenho que foram explicitamente declarados, a padrões de desenvolvimento claramente documentados, e a características implícitas que são esperadas de todo software desenvolvido por profissionais (Presmam, 1998) Professora.... Por que Qualidade de Software é importante? AtenAtenAtenAtenAtenAtenAtenAtenççççççççãoãoãoãoãoãoãoão AtenAtenAtenAtenAtenAtenAtenAtenççççççççãoãoãoãoãoãoãoão � 1) Em uma folha de papel, especifique os requisitos considerados mais importantes por você na hora de comprar um carro. Exemplo: modelo esportivo, uma cor específica, ser econômico, ter bagageiro grande, espaço para passageiros. � 2) Em outra folha de papel, especifique os requisitos considerados importantes por você no momento de comprar um CD. Exemplo: Estilo de musica, banda, cantor, encartes das letras, etc. � Através de metodologias que asseguram a garantia do software; � Melhoramento do processo de desenvolvimento de software; � Aperfeiçoamento dos testes; � Controlando a qualidade do software; � Software – Fator que diferencia um Negócio. � Permite fornecer informações estratégicas; � Agilizar o atendimento; � Aumentar a eficiência; � Diminuir desperdícios. � Problema = Qualidade!!!! ◦ Dados da IBM: 55% estouram or55% estouram or55% estouram or55% estouram orççççamentoamentoamentoamento; � 68% estouram cronograma68% estouram cronograma68% estouram cronograma68% estouram cronograma; � 88% precisam ser reprojetados;88% precisam ser reprojetados;88% precisam ser reprojetados;88% precisam ser reprojetados; � A cada 6 projetos, 2 são cancelados. � Hoje, Hoje, Hoje, Hoje, éééé o software que custa mais do que o o software que custa mais do que o o software que custa mais do que o o software que custa mais do que o hardware!hardware!hardware!hardware! � JJJJáááá hhhháááá algum tempo, gerentes e talgum tempo, gerentes e talgum tempo, gerentes e talgum tempo, gerentes e téééécnicos se cnicos se cnicos se cnicos se perguntam:perguntam:perguntam:perguntam: ◦ Porque é preciso tanto tempo para terminar os programas? ◦ Porque os custos são tão altos? ◦ Porque não se consegue encontrar todos os erros antes que o software seja liberado para os clientes? ◦ Porque existe uma dificuldade em medir o progresso à medida que o software está sendo construído? � A preocupaA preocupaA preocupaA preocupaçççção em resolver essas questões tem ão em resolver essas questões tem ão em resolver essas questões tem ão em resolver essas questões tem levado levado levado levado àààà adoadoadoadoçççção das prão das prão das prão das prááááticas da Engenharia de ticas da Engenharia de ticas da Engenharia de ticas da Engenharia de Software (Processo Unificado)Software (Processo Unificado)Software (Processo Unificado)Software (Processo Unificado) � As estimativas de prazo e de custo As estimativas de prazo e de custo As estimativas de prazo e de custo As estimativas de prazo e de custo freqfreqfreqfreqüüüüentemente são imprecisasentemente são imprecisasentemente são imprecisasentemente são imprecisas “Não dedicamos tempo para coletar dados sobre o processo de desenvolvimento de software” “Sem nenhuma indicação sólida de produtividade, não podemos avaliar com precisão a eficácia de novas ferramentas, métodos ou padrões” � A produtividade das pessoas da A produtividade das pessoas da A produtividade das pessoas da A produtividade das pessoas da áááárea de rea de rea de rea de software não tem acompanhado a demanda software não tem acompanhado a demanda software não tem acompanhado a demanda software não tem acompanhado a demanda por seus servipor seus servipor seus servipor seus serviççççosososos “Os projetos de desenvolvimento de software normalmente são efetuados apenas com um vago indício das exigências do cliente” � Qualidade do Qualidade do Qualidade do Qualidade do ““““processoprocessoprocessoprocesso”””” de software de software de software de software éééé menos menos menos menos que adequadaque adequadaque adequadaque adequada Só recentemente começaram a surgir conceitos quantitativos sólidos de garantia de qualidade. � O software existente O software existente O software existente O software existente éééé muito difmuito difmuito difmuito difíííícil de mantercil de mantercil de mantercil de manter ◦ A tarefa de manutenção devora o orçamento destinado ao software ◦ A facilidade de manutenção não foi enfatizada como um critério importante ◦ O tão chamado “Elefante Branco” � O Software, ao contrO Software, ao contrO Software, ao contrO Software, ao contráááário do hardware, rio do hardware, rio do hardware, rio do hardware, éééé essencialmente lessencialmente lessencialmente lessencialmente lóóóógicogicogicogico ◦ Software é desenvolvido ou projetado por engenharia e não fabricado no sentido clássico (Industrial) � sucesso é medido pela qualidade e não quantidade ◦ não se “desgasta”, mas se deteriora devido as mudanças. � Gerentes se encontram sob pressão ◦ manter orçamentos ◦ evitar que os prazos seja ultrapassados ◦ melhor a qualidade � Gerente quando está se afogando agarra à crença de um MITOMITOMITOMITO � JJJJáááá temos um manual repleto de padrões e temos um manual repleto de padrões e temos um manual repleto de padrões e temos um manual repleto de padrões e procedimentos para a construprocedimentos para a construprocedimentos para a construprocedimentos para a construçççção de ão de ão de ão de software. Isso oferecersoftware. Isso oferecersoftware. Isso oferecersoftware. Isso ofereceráááá ao meu pessoal ao meu pessoal ao meu pessoal ao meu pessoal tudo o que eles precisam saber.tudo o que eles precisam saber.tudo o que eles precisam saber.tudo o que eles precisam saber. � Realidade:Realidade:Realidade:Realidade: • Será que o manual é usado? • Os profissionais sabem que ele existe? • Ele reflete a prática moderna de ◦ desenvolvimento de software? • Ele é completo? � Meu pessoal tem ferramentas de Meu pessoal tem ferramentas de Meu pessoal tem ferramentas de Meu pessoal tem ferramentas de desenvolvimento de software de desenvolvimento de software de desenvolvimento de software de desenvolvimento de software de úúúúltima ltima ltima ltima gerageragerageraçççção; afinal, compramos para eles os ão; afinal, compramos para eles os ão; afinal, compramos para eles os ão; afinal, compramos para eles os mais novos computadores.mais novos computadores.mais novos computadores.mais novos computadores.� Realidade:Realidade:Realidade:Realidade: • É preciso muito mais do que os mais recentes computadores para se fazer um desenvolvimento de software de alta qualidade. • Ferramentas CASE são mais importantes do que o hardware. � Se nSe nSe nSe nóóóós estamos atrasados nos prazos, s estamos atrasados nos prazos, s estamos atrasados nos prazos, s estamos atrasados nos prazos, podemos adicionar mais programadores e podemos adicionar mais programadores e podemos adicionar mais programadores e podemos adicionar mais programadores e tirar o atrasotirar o atrasotirar o atrasotirar o atraso � Realidade:Realidade:Realidade:Realidade: • O desenvolvimento de software não é um processo mecânico igual a manufatura. • Acrescentar pessoas em um projeto torna-o ainda mais atrasado (na maioria das vezes). Pessoas podem ser acrescentadas, mas somente de uma forma planejada e bem coordenada. � Uma declaraUma declaraUma declaraUma declaraçççção geral dos objetivos ão geral dos objetivos ão geral dos objetivos ão geral dos objetivos éééé suficiente suficiente suficiente suficiente para se comepara se comepara se comepara se começçççar a escrever programas ar a escrever programas ar a escrever programas ar a escrever programas ---- podemos preencher os detalhes mais tarde.podemos preencher os detalhes mais tarde.podemos preencher os detalhes mais tarde.podemos preencher os detalhes mais tarde. � Realidade:Realidade:Realidade:Realidade: • Uma definição inicial ruim é a principal causa de fracassos dos esforços de desenvolvimento de software. • É fundamental uma descrição formal e detalhada do domínio da informação, função, desempenho, interfaces, restrições de projeto e critérios de validação. • Software é desenvolvido com PAPEL DE PÃO? � Os requisitos de projeto modificamOs requisitos de projeto modificamOs requisitos de projeto modificamOs requisitos de projeto modificam----se se se se continuamente, mas as mudancontinuamente, mas as mudancontinuamente, mas as mudancontinuamente, mas as mudançççças podem ser as podem ser as podem ser as podem ser facilmente acomodadas, porque o software facilmente acomodadas, porque o software facilmente acomodadas, porque o software facilmente acomodadas, porque o software éééé flexflexflexflexíííível.vel.vel.vel. � Realidade:Realidade:Realidade:Realidade: • Requisitos podem ser mudados, mas o impacto varia de acordo com o tempo que é introduzido (projeto e custo) • Um mudança, quando solicitada tardiamente num projeto, pode ser mais do que a ordem de magnitude mais dispendiosa da mesma mudança solicitada nas fases iniciais (escopo) � Assim que escrevermos o programa e o Assim que escrevermos o programa e o Assim que escrevermos o programa e o Assim que escrevermos o programa e o colocarmos em funcionamento nosso colocarmos em funcionamento nosso colocarmos em funcionamento nosso colocarmos em funcionamento nosso trabalho estartrabalho estartrabalho estartrabalho estaráááá completo.completo.completo.completo. � Realidade:Realidade:Realidade:Realidade: • Os dados da indústria indicam que entre 50 e 70% de todo esforço gasto num programa serão despendidos depois que ele for entregue pela primeira vez ao cliente � Enquanto não tiver o programa Enquanto não tiver o programa Enquanto não tiver o programa Enquanto não tiver o programa "funcionando", eu não terei realmente "funcionando", eu não terei realmente "funcionando", eu não terei realmente "funcionando", eu não terei realmente nenhuma maneira de avaliar sua qualidade.nenhuma maneira de avaliar sua qualidade.nenhuma maneira de avaliar sua qualidade.nenhuma maneira de avaliar sua qualidade. � Realidade:Realidade:Realidade:Realidade: • Mecanismo de garantia de qualidade de processo de software é aplicado desde o começo do projeto. • Revisões de software são um “filtro de qualidade” – descobre erros/defeitos. � A A A A úúúúnica coisa a ser entregue em um projeto nica coisa a ser entregue em um projeto nica coisa a ser entregue em um projeto nica coisa a ser entregue em um projeto bembembembem----sucedido sucedido sucedido sucedido éééé o programa funcionando.o programa funcionando.o programa funcionando.o programa funcionando. � RealidadeRealidadeRealidadeRealidade:::: • Um programa funcionando é somente uma parte de uma Configuração de Software que inclui todos os itens de informação produzidos durante a construção e manutenção do software. Ex.: Documentação.
Compartilhar