Buscar

Processos de Desenvolvimento de Software

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE 
AULA 9AULA 9AULA 9
Prof. MARCELO VASQUESProf. MARCELO VASQUESProf. MARCELO VASQUES
mvasqueso@gmail.commvasqueso@gmail.com
1AULA 1 – Prof. MARCELO VASQUES 1
OBJETIVOS DA AULAOBJETIVOS DA AULAOBJETIVOS DA AULA
§ Conhecer os processos de § Conhecer os processos de § Conhecer os processos de 
desenvolvimento:desenvolvimento:desenvolvimento:
§ Iterativo e Incremental§ Iterativo e Incremental§ Iterativo e Incremental
§Prototipação§Prototipação§Prototipação
§Espiral§Espiral§Espiral§Espiral
CONTEXTOCONTEXTOCONTEXTO
nModelo CascatanModelo CascatanModelo Cascata
¨ Os projetos não tem características ¨ Os projetos não tem características ¨ Os projetos não tem características 
sequenciais à várias iteraçõessequenciais à várias iteraçõessequenciais à várias iterações
¨ Desenvolvimento de todo sistema¨ Desenvolvimento de todo sistema¨ Desenvolvimento de todo sistema
nModelo Iterativo-incrementalnModelo Iterativo-incrementalnModelo Iterativo-incremental
Os projetos são desenvolvidos em ¨ Os projetos são desenvolvidos em ¨ Os projetos são desenvolvidos em Os projetos são desenvolvidos em 
porções (incremental), em várias porções (incremental), em várias porções (incremental), em várias 
iterações.iterações.iterações.
¨Ideia de melhoramento ou ¨Ideia de melhoramento ou ¨Ideia de melhoramento ou 
refinamentos sucessivos (aos poucos)refinamentos sucessivos (aos poucos)refinamentos sucessivos (aos poucos)
PROCESSO ITERATIVOPROCESSO ITERATIVOPROCESSO ITERATIVO
• Seleção de uma parte do projeto• Seleção de uma parte do projeto• Seleção de uma parte do projeto
– Identifica, especifica, implementa, – Identifica, especifica, implementa, – Identifica, especifica, implementa, 
testa e implanta a iteraçãotesta e implanta a iteraçãotesta e implanta a iteraçãotesta e implanta a iteração
– Se atender as especificações, – Se atender as especificações, – Se atender as especificações, – Se atender as especificações, 
passa-se a próxima iteração.passa-se a próxima iteração.passa-se a próxima iteração.
PROCESSO ITERATIVOPROCESSO ITERATIVOPROCESSO ITERATIVO
PROCESSO INCREMENTALPROCESSO INCREMENTALPROCESSO INCREMENTAL
• Modelo que se baseia na idéia de• Modelo que se baseia na idéia de• Modelo que se baseia na idéia de
aumento do âmbito do sistema.aumento do âmbito do sistema.aumento do âmbito do sistema.
• Desenvolvimento em partes• Desenvolvimento em partes• Desenvolvimento em partes
–Ou seja, na criação de novas–Ou seja, na criação de novas–Ou seja, na criação de novas
versões para o modelo proposto.versões para o modelo proposto.versões para o modelo proposto.
• As partes podem ser• As partes podem ser• As partes podem ser• As partes podem ser
desenvolvidas em paralelo edesenvolvidas em paralelo edesenvolvidas em paralelo e
integradas quando completas.integradas quando completas.integradas quando completas.
PROCESSO INCREMENTALPROCESSO INCREMENTALPROCESSO INCREMENTALPROCESSO INCREMENTAL
MODELO ITERATIVO E MODELO ITERATIVO E MODELO ITERATIVO E 
INCREMENTALINCREMENTALINCREMENTALINCREMENTAL
• Processo de desenvolvimento de software• Processo de desenvolvimento de software
que define:
• Processo de desenvolvimento de software
que define:que define:
– um subconjunto de requisitos e– um subconjunto de requisitos e– um subconjunto de requisitos e
– utiliza o modelo em cascata para sua– utiliza o modelo em cascata para sua– utiliza o modelo em cascata para sua
realização.realização.realização.
• Cada porção do ciclo segue o projeto de • Cada porção do ciclo segue o projeto de • Cada porção do ciclo segue o projeto de 
arquitetura inicial como guia, mas com uma arquitetura inicial como guia, mas com uma 
abordagem bem menor. abordagem bem menor. abordagem bem menor. 
• Uma vez satisfeitos os requisitos e os • Uma vez satisfeitos os requisitos e os • Uma vez satisfeitos os requisitos e os 
objetivos da iteração forem completos, o objetivos da iteração forem completos, o 
desenvolvimento segue para a próxima 
objetivos da iteração forem completos, o 
desenvolvimento segue para a próxima desenvolvimento segue para a próxima 
iteração.iteração.iteração.
MODELO ITERATIVO E MODELO ITERATIVO E MODELO ITERATIVO E 
INCREMENTALINCREMENTALINCREMENTALINCREMENTAL
MODELO ITERATIVO E MODELO ITERATIVO E MODELO ITERATIVO E 
INCREMENTALINCREMENTALINCREMENTAL
• Os passos fundamentais são:
INCREMENTAL
• Os passos fundamentais são:• Os passos fundamentais são:
– iniciar o desenvolvimento com um – iniciar o desenvolvimento com um – iniciar o desenvolvimento com um 
subconjunto simples de Requisitos de subconjunto simples de Requisitos de subconjunto simples de Requisitos de 
Software e Software e Software e 
– iterativamente alcançar evoluções – iterativamente alcançar evoluções – iterativamente alcançar evoluções 
subseqüentes das versões até o subseqüentes das versões até o 
sistema todo estar implementado. 
subseqüentes das versões até o 
sistema todo estar implementado. sistema todo estar implementado. sistema todo estar implementado. 
–A cada iteração, as modificações de –A cada iteração, as modificações de 
projeto são feitas e novas 
–A cada iteração, as modificações de 
projeto são feitas e novas projeto são feitas e novas 
funcionalidades são adicionadas.
projeto são feitas e novas 
funcionalidades são adicionadas.funcionalidades são adicionadas.
MODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃO
• Criação de um modelo para ser • Criação de um modelo para ser • Criação de um modelo para ser 
analisado e desenvolvido a partir do analisado e desenvolvido a partir do 
protótipo
analisado e desenvolvido a partir do 
protótipoprotótipo
• O Analista coletará informações para • O Analista coletará informações para 
um mini projeto, concentrando-se nas 
• O Analista coletará informações para 
um mini projeto, concentrando-se nas um mini projeto, concentrando-se nas 
entradas e saídas do software.entradas e saídas do software.entradas e saídas do software.
• Após a criação e aceitação do • Após a criação e aceitação do • Após a criação e aceitação do 
protótipo, o produto final será 
• Após a criação e aceitação do 
protótipo, o produto final será protótipo, o produto final será 
desenvolvido.desenvolvido.desenvolvido.
• O protótipo serve como mecanismo • O protótipo serve como mecanismo • O protótipo serve como mecanismo 
para identificar os requisitospara identificar os requisitospara identificar os requisitos
MODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃO
• Tipos de protótipo:• Tipos de protótipo:
– em papel ou sistema: retratam a interface e – em papel ou sistema: retratam a interface e 
interaçãointeração
– em sistema, implementando algumas funções– em sistema, implementando algumas funções
• Quando usar?• Quando usar?
– O cliente definiu um conjunto de objetivos gerais – O cliente definiu um conjunto de objetivos gerais 
para o software, mas não identificou requisitos para o software, mas não identificou requisitos 
de entrada, processamento e saída com de entrada, processamento e saída com de entrada, processamento e saída com 
detalhes detalhes detalhes 
– O desenvolvedor não tem certeza da eficiência – O desenvolvedor não tem certeza da eficiência – O desenvolvedor não tem certeza da eficiência 
de um algoritmo ou forma da interação. de um algoritmo ou forma da interação. 
MODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃO
MODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃO
• 1- OBTENÇÃO DOS REQUISITOS • 1- OBTENÇÃO DOS REQUISITOS • 1- OBTENÇÃO DOS REQUISITOS 
– O desenvolvedor e o cliente definem os – O desenvolvedor e o cliente definem os 
objetivos gerais do software, identificam quais objetivos gerais do software, identificamquais objetivos gerais do software, identificam quais 
requisitos são conhecidos e as áreas que requisitos são conhecidos e as áreas que 
necessitam de definições adicionais. necessitam de definições adicionais. necessitam de definições adicionais. 
• 2- PROJETO RÁPIDO • 2- PROJETO RÁPIDO 
– É a representação dos aspectos do software – É a representação dos aspectos do software – É a representação dos aspectos do software 
que são visíveis ao usuário (entrada e formatos que são visíveis ao usuário (entrada e formatos 
de saída). de saída). de saída). 
• 3- CONSTRUÇÃO PROTÓTIPO • 3- CONSTRUÇÃO PROTÓTIPO • 3- CONSTRUÇÃO PROTÓTIPO 
– É a implementação do projeto rápido. Serve – É a implementação do projeto rápido. Serve 
como o “primeiro sistema” - recomendado que como o “primeiro sistema” - recomendado que como o “primeiro sistema” - recomendado que 
não seja usado como produto final.não seja usado como produto final.
MODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃOMODELO: PROTOTIPAÇÃO
• 4- AVALIAÇÃO DO PROTÓTIPO • 4- AVALIAÇÃO DO PROTÓTIPO 
– Cliente e desenvolvedor avaliam o protótipo. – Cliente e desenvolvedor avaliam o protótipo. – Cliente e desenvolvedor avaliam o protótipo. 
• 5- REFINAMENTO DOS REQUISITOS: • 5- REFINAMENTO DOS REQUISITOS: • 5- REFINAMENTO DOS REQUISITOS: 
– Com base na avaliação, refinam o produto– Com base na avaliação, refinam o produto
– Ocorre neste ponto um processo de iteração – Ocorre neste ponto um processo de iteração 
que pode conduzir à atividade 1 até que as que pode conduzir à atividade 1 até que as 
necessidades do cliente sejam satisfeitas e o 
que pode conduzir à atividade 1 até que as 
necessidades do cliente sejam satisfeitas e o necessidades do cliente sejam satisfeitas e o 
desenvolvedor compreenda o que precisa ser desenvolvedor compreenda o que precisa ser 
feito. feito. feito. 
• 6- CONSTRUÇÃO PRODUTO: • 6- CONSTRUÇÃO PRODUTO: • 6- CONSTRUÇÃO PRODUTO: 
– A versão de produção deve ser construída – A versão de produção deve ser construída 
considerando os critérios de qualidade. considerando os critérios de qualidade. considerando os critérios de qualidade. 
– Protótipo deve ser descartado– Protótipo deve ser descartado
MODELO: ESPIRALMODELO: ESPIRALMODELO: ESPIRALMODELO: ESPIRAL
• O Modelo espiral se assemelha • O Modelo espiral se assemelha • O Modelo espiral se assemelha 
com o propotipação, mas inclui um com o propotipação, mas inclui um com o propotipação, mas inclui um com o propotipação, mas inclui um 
fator: a análise de risco. fator: a análise de risco. fator: a análise de risco. 
• Funciona de forma iterativa, • Funciona de forma iterativa, • Funciona de forma iterativa, 
incremental, mas com uma etapa incremental, mas com uma etapa incremental, mas com uma etapa incremental, mas com uma etapa 
onde pode ser tomada a decisão de onde pode ser tomada a decisão de onde pode ser tomada a decisão de 
se interromper ou não o processo.se interromper ou não o processo.se interromper ou não o processo.se interromper ou não o processo.
MODELO: ESPIRALMODELO: ESPIRALMODELO: ESPIRAL
MODELO: ESPIRALMODELO: ESPIRALMODELO: ESPIRAL
• Cada volta da espiral representa uma • Cada volta da espiral representa uma • Cada volta da espiral representa uma 
fase do processo: fase do processo: fase do processo: 
• Planejamento: Definição os objetivos, • Planejamento: Definição os objetivos, • Planejamento: Definição os objetivos, 
alternativas e restriçõesalternativas e restriçõesalternativas e restrições
• Análise de Riscos: Análise de alternativas e • Análise de Riscos: Análise de alternativas e 
identificação dos riscos sob o ponto de vista identificação dos riscos sob o ponto de vista 
técnico e de gerênciatécnico e de gerência
• Engenharia: Desenvolvimento do produto• Engenharia: Desenvolvimento do produto• Engenharia: Desenvolvimento do produto
• Avaliação do cliente: • Avaliação do cliente: Avaliação dos • Avaliação do cliente: Avaliação dos • Avaliação do cliente: 
resultadosresultadosresultados
MODELO: ESPIRALMODELO: ESPIRALMODELO: ESPIRAL
• Não há fases fixas como especificação e • Não há fases fixas como especificação e 
desenho - as voltas na espiral são 
• Não há fases fixas como especificação e 
desenho - as voltas na espiral são desenho - as voltas na espiral são 
determinadas pelo que é requerido. determinadas pelo que é requerido. determinadas pelo que é requerido. 
• Riscos são explicitamente avaliados e • Riscos são explicitamente avaliados e 
resolvidos no processo 
• Riscos são explicitamente avaliados e 
resolvidos no processo resolvidos no processo 
• Engloba as melhores características do ciclo • Engloba as melhores características do ciclo • Engloba as melhores características do ciclo 
de vida Clássico e da Prototipação, de vida Clássico e da Prototipação, de vida Clássico e da Prototipação, 
adicionando um novo elemento: a ANÁLISE adicionando um novo elemento: a ANÁLISE 
DOS RISCOS. 
adicionando um novo elemento: a ANÁLISE 
DOS RISCOS. DOS RISCOS. 
• Usa a Prototipação, em qualquer etapa da • Usa a Prototipação, em qualquer etapa da • Usa a Prototipação, em qualquer etapa da 
evolução do produto, como mecanismo de evolução do produto, como mecanismo de 
redução de riscos. 
evolução do produto, como mecanismo de 
redução de riscos. redução de riscos. 
MODELO: ESPIRALMODELO: ESPIRALMODELO: ESPIRAL
• Vantagens• Vantagens• Vantagens
– Modelo evolutivo, possibilita uma maior – Modelo evolutivo, possibilita uma maior – Modelo evolutivo, possibilita uma maior 
integração entre as fases e facilita a depuração integração entre as fases e facilita a depuração 
e a manutenção do sistema.e a manutenção do sistema.
– Permite que o projetista e cliente possam – Permite que o projetista e cliente possam 
entender e reagir aos riscos em cada etapa entender e reagir aos riscos em cada etapa entender e reagir aos riscos em cada etapa 
evolutiva.evolutiva.evolutiva.
• Desvantagens• Desvantagens• Desvantagens
– Avaliação dos riscos exige muita experiência.– Avaliação dos riscos exige muita experiência.– Avaliação dos riscos exige muita experiência.
– O modelo é relativamente novo e não tem sido – O modelo é relativamente novo e não tem sido – O modelo é relativamente novo e não tem sido 
amplamente utilizado.amplamente utilizado.amplamente utilizado.
COMPARATIVOCOMPARATIVOCOMPARATIVO
MODELO VANTAGENS DESVANTAGENSMODELO VANTAGENS DESVANTAGENS
CASCATA • MINIMIZA O TEMPO DE • INFLEXÍVELCASCATA • MINIMIZA O TEMPO DE 
PLANEJAMENTO
• INFLEXÍVEL
• DOCUMENTAÇÃO É PLANEJAMENTO
• FUNCIONA COM EQUIPES 
• DOCUMENTAÇÃO É 
FUNDAMENTAL
TECNICAMENTE FRACAS • DIFÍCIL VOLTAR ATRAS PARA 
CORREÇÃO DE ERROSCORREÇÃO DE ERROS
ESPIRAL • AS INTERAÇÕES INICIAS DO 
PROJETO SÃO AS MAIS 
• É COMPLEXO E REQUER 
ATENÇÃO E CONHECIMENTO PROJETO SÃO AS MAIS 
BARATAS, PERMITINDO QUE AS 
ATENÇÃO E CONHECIMENTO 
ESPECIAIS PARA SUABARATAS, PERMITINDO QUE AS 
TAREFAS DE MAIOR RISCO 
ESPECIAIS PARA SUA
IMPLEMENTAÇÃOTAREFAS DE MAIOR RISCO 
TENHAM CUSTO BAIXO.
IMPLEMENTAÇÃO
TENHAM CUSTO BAIXO.
• CADA ITERAÇÃO DA ESPIRAL • CADA ITERAÇÃO DA ESPIRAL 
PODE SER CUSTOMIZADA PARA PODE SER CUSTOMIZADA PARA 
AS NECESSIDADES ESPECÍFICAS AS NECESSIDADES ESPECÍFICAS 
DE CADA PROJECTO.
PROTOTIPAÇÃO • OS CLIENTES CONSEGUEM VER • É IMPOSSÍVEL DETERMINAR PROTOTIPAÇÃO • OS CLIENTES CONSEGUEM VER 
OS PROGRESSOS.
• É IMPOSSÍVEL DETERMINAR 
COM EXATIDÃO O TEMPO QUE OS PROGRESSOS.
• É ÚTIL QUANDO OS REQUISITOS 
COM EXATIDÃO O TEMPO QUE 
O PROJETO VAI DEMORAR.• É ÚTIL QUANDO OS REQUISITOS 
MUDAM RAPIDAMENTE E O 
O PROJETO VAI DEMORAR.
• NÃO HÁ FORMA DE SABER O MUDAM RAPIDAMENTE E O 
CLIENTE ESTÁ RELUTANTE EM 
• NÃO HÁ FORMA DE SABER O 
NÚMERO DE ITERAÇÕES QUE CLIENTE ESTÁ RELUTANTE EM 
ACEITAR UM CONJUNTO DE 
REQUISITOS.
NÚMERO DE ITERAÇÕES QUE 
SERÃO NECESSÁRIAS.
REQUISITOS.

Outros materiais

Perguntas Recentes