Escolar Documentos
Profissional Documentos
Cultura Documentos
Introduo
Apresentaes Objetivos Critrio de Aprovao Estudo de Caso - Realizados em grupo e debatidos na sala de aula Parte I - 20% Parte II - 50% Parte III - 30% Estar aprovado o aluno que obtiver nota superior a 5,0.
Agenda
Qualidade Definio, Histrico, Conceitos e Benefcios Qualidade no Contexto de TI SWEBOK Metodologias de Desenvolvimento de Software (Reviso)
10
12
13
15
16
17
Necessidade
Usurio / Pblico
Atendimento satisfatrio
Atendentes
Atendimento de Satisfao do Usurio qualidade Ambiente Instalaes Fsicas adequado (Ergonomia) Atendimento ao maior Produtividade nmero possvel de chamadas
18
Necessidade Lucratividade
Traduo Melhora da relao receita x custo Maior possibilidade de lucro Reputao / Referncia Confiana
Diretores
19
20
21
Atendentes
Atendimento ao maior Maximizar utilizao dos Nmero de atendimentos por unidade 1/5 minutos nmero possvel de recursos (atendentes) de tempo chamadas HW, SW, URA, Roteamento de Chamadas funcionando adequadamente No haver rupturas ou problemas de indisponibilidade tcnica para operao
Taxa de operao
95%
22
Parte Interessada
Necessidade
Traduo
Objetivo
23
Qualidade no Contexto da TI Algumas questes bsicas: Por que o desenvolvimento de software to complicado?
Quais as causas mais comuns de fracassos de projetos de software? Como enfrentar o problema?
24
SWEBOK
25
SWEBOK
26
SWEBOK
SWEBOK Captulo 5
Terminologia Questes Chaves Teste e Outras Atividades Teste Unitrio Teste Integrado Teste de Regresso Teste de Sistemas Teste de Aceitao Teste de Instalao Entre outros...
27
SWEBOK
SWEBOK Captulo 5
Terminologia Questes Chaves Teste e Outras Atividades Teste Unitrio Teste Integrado Teste de Regresso Teste de Sistemas Teste de Aceitao Teste de Instalao Entre outros...
Experincia Baseado em Esp. Baseado no Cdigo Entre outros... De acordo com a(s) Tcnicas Utilizadas Avaliao dos testes Executados
28
SWEBOK
SWEBOK Captulo 5
Terminologia Questes Chaves Teste e Outras Atividades Teste Unitrio Teste Integrado Teste de Regresso Teste de Sistemas Teste de Aceitao Teste de Instalao Entre outros...
Experincia Baseado em Esp. Baseado no Cdigo Entre outros... De acordo com a(s) Tcnicas Utilizadas Avaliao dos testes Executados
29
SWEBOK
SWEBOK Captulo 11
30
SWEBOK
SWEBOK Captulo 11
1. Fundamentos de Qualidade de Software 1.1 tica e Cultura da Engenharia de Software 1.2 Valor e Custo de Qualidade 1.3 Modelos e Caractersticas de Qualidade 1.4 Melhoria de Qualidade
31
SWEBOK
SWEBOK Captulo 11
1.1 tica e Cultura da.Engenharia de Software
Atitude Disciplina Comprometimento Profissionalismo Suporte Gerencial Responsabilidades Treinamento
32
SWEBOK
SWEBOK Captulo 11
1.2 Valor e Custo de Qualidade Consideraes importantes:
Custo de preveno Custo de avaliao Custo das falhas
-Internas -Externas
Extenso de implementao (trade-offs) Papel do cliente
33
SWEBOK
SWEBOK Captulo 11
1.3 Modelos e Caractersticas de Qualidade Modelos e Normas:
ISO IEC CMMI MPS.BR ITIL COBIT eSCM
34
SWEBOK
SWEBOK Captulo 11
1.4 Melhoria de Qualidade Fatores associados:
Processos do ciclo de vida (metodologia); Processos de deteco, remoo e preveno de erros; Processo melhoria de qualidade.
35
SWEBOK
SWEBOK Captulo 11
2. Processos de Gerenciamento de Qualidade de Software 2.1 Garantia de Qualidade de Software 2.2 Verificao e Validao 2.3 Revises e Auditorias
36
SWEBOK
SWEBOK Captulo 11
2.1 Garantia de Qualidade de Software
Planos Processos & Padres Ferramentas Recursos
Ferramentas Processos & Padres
Garantia de Qualidade
Recursos
37
SWEBOK
SWEBOK Captulo 11
2.2 Verificao e Validao
Verificao
38
SWEBOK
SWEBOK Captulo 11
2.3 Revises e Auditorias
Revises
39
SWEBOK
SWEBOK Captulo 11
3. Consideraes Prticas 3.1 Requerimentos de Qualidade das Aplicaes 3.2 Caracterizao de Defeitos 3.3 Tcnicas de Gerenciamento de Qualidade de Software 3.4 Medies de Qualidade de Software
40
SWEBOK
SWEBOK Captulo 11
3.1 Requerimentos de Qualidade das Aplicaes
Fatores de Influncia
- Criticidade
- Padres especficos de engenhara de software aplicveis - Mtodos e ferramentas - Oramento, pessoal, planos e cronograma de todos os processos - Uso pretendido e usurios - Grau de dependncia e confiabilidade
41
SWEBOK
SWEBOK Captulo 11
3.2 Caracterizao de Defeitos
Erros
Diferena entre o resultado computado e o resultado correto
Falta
Uma incorreo de um passo/processo/algortmo ou definio de dados em um programa de computador
Falhas
O resultado de uma falta
42
SWEBOK
SWEBOK Captulo 11
3.3 Tcnicas de Gerenciamento de Qualidade de Software
Estticas
Envolvem exame de documentao, do software e outras informaes, sem qualquer execuo
Dinmicas
Envolvem demosntraes e simulaes
Teste
Envolvem ferramentas autmatizadas de testes, testes executados por terceiros, etc.
43
SWEBOK
SWEBOK Captulo 11
3.4 Medies de Qualidade de Software
Mtricas baseadas em estatsticas
44
SWEBOK
HISTOGRAMA
O histograma um grfico de barras que mostra a distribuio de variveis. Cada coluna representa uma distribuio de freqncia. As freqncias so agrupadas estatisticamente na forma de classes onde se observa a tendncia central do valores e sua variabilidade. Esta ferramenta ajuda a identificar a causa de problemas em um processo pela forma e amplitude da distribuio. Exemplos de possveis aplicaes: Picos de atendimentos em um Call Center Perfil scio-economico da populao tendimento mdico (hospital) por periodo
45
SWEBOK
DIAGRAMA DE PARETO
O diagrama de Pareto um tipo de histograma ordenado por freqncia de ocorrncia. Ele mostra quantos defeitos foram gerados por categoria de causa identificada. Esta ferramenta est fundamentada no conceito conhecido como princpio 80/20, onde 80% dos problemas se devem a 20% das causas. Exemplos de possveis aplicaes: Razes pelas quais projetos fracassam Causas de insatisfaes de um produto Elementos de custo mais significativos de uma organizao 46
SWEBOK
GRFICO DE PARTIDA (RUN CHART)
O grfico de partida um grfico de linha que mostra as ocorrncias em ordem cronolgica. Ele mostra tendncias e variaes em um processo ao longo do tempo. A anlise de tendncia pode ser realizada atravs deste grfico. Grficos de partida so geralmente usados para monitorar: performance tcnica performance de custo e cronograma Exemplos de possveis aplicaes: Grficos de tendncias eleitorais Performance de processos Produtividade de uma empresa Eltrocardiograma
47
SWEBOK
GRFICO DE DISPERSO
O diagrama de disperso mostra o padro de relao entre duas variveis. Ele permite visualizar a alterao sofrida por uma varivel quando a outra se modifica, mas no garante uma relao de causa e efeito. Quanto mais prximos os pontos estiverem da linha diagonal, mais forte poder ser a relao entre as variveis estudadas. A correlao pode ser positiva ou negativa. Exemplos de possveis aplicaes: Volume de vendas por poca do ano Nmero de projetos com sucesso e experincia de seu gerente Nmero de defeitos e tempo de treinamento
48
Direcionamento Estratgico Objetivos de Negcios Cultura Corporativa Caractersticas do trabalho realizado Viabilidade econmica
49
Metodologias de Desenvolvimento
Definio
A metodologia de desenvolvimento de software ou metodologia de desenvolvimento de sistemas em engenharia de software um conjunto de prticas utilizada para estruturar, planejar e controlar o processo de desenvolvimento de um sistema de informao.
Modelos Existentes
(alguns)
RAD
50
Metodologias de Desenvolvimento
Waterfall
O mtodo Waterfall composto por uma srie de fases bem definidas e destinadas a serem executadas seqencialmente. Em teoria, cada uma delas s pode ser iniciada, quando a anterior tiver sido concluda. Essencialmente, comea com uma pesada fase de anlise e definio dos requisitos do sistema, seguida pelas fases de desenho, codificao, testes, validao e implantao. Uma outra caracterstica marcante deste mtodo o de que ele deva ser executado uma nica vez, desde seu incio at seu fim. Tipicamente, suas fases so: Anlise Desenho Construo Testes Implantao
51
Metodologias de Desenvolvimento
Prototype
Prototipagem de software, refere-se atividade de criao de prottipos de aplicaes de software, ou seja, verses incompletas do programa de software a ser desenvolvido. uma atividade que ocorre durante o ciclo de desenvolvimento e comparvel aos prottipos conhecidos como de outras reas, como engenharia mecnica ou de produo, arquitetura, etc. Um prottipo na rea de TI, simula normalmente apenas alguns aspectos das caractersticas do produto final e pode ser relativamente diferente da produto acabado. O objetivo convencional de um prottipo o de permitir que os usurios do software possam, mais objetivamente, avaliar as propostas dos desenvolvedores para o produto final, ao invs de ter que interpretar e avaliar o projeto com base em descries.
52
Metodologias de Desenvolvimento
Incremental
O desenvolvimento incremental fatia as funcionalidades do sistema em incrementos (pores). Em cada incremento, uma fatia de funcionalidade desenvolvida atravs de um trabalho multidisciplinar, a partir dos requisitos at a implantao. Este processo agrupa incrementos /iteraes nas seguintes fases: Iniciao identifica o escopo do projeto, os riscos e os requisitos (funcionais e no funcionais) a um nvel elevado, mas em detalhe suficiente para que o trabalho pode ser estimada. Elaborao desenvolve a arquitetura do sistema de forma a satisfazer seus requisitos, necessidades e restries. Construo, incrementalmente , desenvolve (codificao e teste) os objetos definidos e desenhados na elaborao das especificaes funcionais e tcnicas do sistema. Transio entrega/implementa o sistema no ambiente produo.
53
Metodologias de Desenvolvimento
Spiral
O modelo Espiral, tambm conhecido como o modelo de ciclo de vida em espiral, um modelo de desenvolvimento de software que combina caractersticas do modelo waterfall com o de prototipagem e mais aplicvel/indicado em projetos de grande porte e complexos. Basicamente, a idia o desenvolvimento evolutivo, utilizando o modelo em waterfall para cada etapa. No objetivo deste modelo definir inicialmente todos os requisitos e funcionalidades do sistema. Os desenvolvedores devem, em seu ciclo inicial se restringir aos requisitos e funcionalidades principais/prioritrias e obter feedback dos usurios/clientes para o prottipo desenvolvido. Com o conhecimento obtido, eles devem ento voltar para a definio e re-iniciar um novo cilco de desenvolvimento que ir adicionar mais funcionalidade ao produto criado no ciclo anterior. No existe um nmero pr-determinado de iteraes e isso definido, caso a caso ou projeto a projeto, dependendo de suas caractersticas.
54
Metodologias de Desenvolvimento
Spiral
55
Metodologias de Desenvolvimento
Rapid Application Development (RAD)
Rapid Application Development (RAD) se refere a um tipo de metodologia de desenvolvimento de software que utiliza um mnimo de planejamento em favor de prototipagem rpida. O "planejamento" do software desenvolvido atravs deste mtodo intercalado com o desenvolvimento do prprio software. Por conta disso, o desenvolvimento do software se torna considelvelmente mais rpido e seus requisitos mais fceis de serem alterados. No mtodo RAD, todo o ciclo comprimido, sendo que a participao extensiva do cliente/usurio da aplicao essencial para que se possa ter sucesso com este mtodo. O grau de formalismo mantido em um nvel mnimo e suficiente para suportar seu desenvolvimento.
56
Metodologias de Desenvolvimento
Rapid Application Development (RAD)
Exemplo de mtodos rpidos (RAD): Agile Modeling Agile Unified Process (AUP) Dynamic Systems Development Method (DSDM) Essential Unified Process (EUP) Extreme Programming (XP) Feature Driven Development (FDD) Open Unified Process (OpenUP) Scrum
(continuao)
57
Metodologias de Desenvolvimento
Fases do Ciclo de Desenvolvimento:
Embora exista uma srie de variaes, tanto em termos de fases como de nomenclatura, selecionamos as seguintes:
Anlise Desenho Construo Testes Implantao
58
Metodologias de Desenvolvimento
Fases do Ciclo de Desenvolvimento - Anlise
59
Metodologias de Desenvolvimento
Fases do Ciclo de Desenvolvimento - Desenho
60
Metodologias de Desenvolvimento
Fases do Ciclo de Desenvolvimento - Construo
61
Metodologias de Desenvolvimento
Fases do Ciclo de Desenvolvimento - Testes
62
Metodologias de Desenvolvimento
Fases do Ciclo de Desenvolvimento - Implantao
63
Definio Iniciao
Anlise Planejamento
Desenho
Construo
64