SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
Disciplina:
Engenharia e Qualidade de Software
Aula 02
Processo de Software
Professor:
Danilo Pereira
● A produção de um carro em uma fábrica segue um processo bem
definido. O software também é produzido com um processo.
Importância de Processos
“Um processo de desenvolvimento de software define um conjunto de
passos, tarefas, eventos e práticas que devem ser seguidos por
desenvolvedores de software, na produção de um sistema.”
● Na prática, os sistemas são desenvolvidos por equipes, que precisam
de um ordenamento.
● Os processos são importantes não apenas para empresas, mas
também para os desenvolvedores.
Processo de Software
Processo de Software (etapas)
● Não existe um processo ideal.
● Existem atividades comuns aos processos de software, são elas:
Especificação de software: Definição das funcionalidades e das
restrições sobre suas operações.
● Projeto e implementação de software: produção do software que
atenda às especificações solicitadas.
● Validação de software: O software deve ser validado para garantir
que ele faça o que o cliente deseja.
● Evolução de software: o software deve evoluir para atender às
necessidades mutáveis do cliente.
Processo de Software (etapas)
● É uma representação abstrata de um processo de software.
● Representa um processo sob uma determinada perspectiva.
● Os principais modelos de processos são:
○ Modelo cascata
○ Modelo Incremental
○ Engenharia de software baseada em componentes
Processo de Software (etapas)
● Por que utilizar um modelo de processo de software??
○ Padroniza o desenvolvimento de software.
○ Padronização dos artefatos de software.
○ Melhora a comunicação da equipe.
● Consequentemente, agrega qualidade ao software.
Modelo Cascata
● Foi o primeiro modelo de processo de software proposto.
● É um modelo sequencial.
● Devido ao encadeamento de suas fases, o modelo ficou
conhecido como modelo cascata.
● Uma nova fase só pode ser iniciada com a finalização da
anterior.
● Possui 5 fases definidas:
○ Requisitos, projeto, implementação, integração e
manutenção.
Modelo Cascata
Sommerville (2011)
Modelo Cascata
Vantagens
● O modelo apresenta uma grande vantagem quando o escopo do
trabalho é claramente definido. Se as especificações estiverem corretas
(o que é muito difícil em projetos de médio e grande porte), um software
pode ser desenvolvido de forma muito rápida.
Desvantagens:
● O modelo não possui flexibilidade;
● O cliente deve ter muita paciência;
● A equipe de desenvolvimento está sempre “quase acabando”.
Modelo Incremental
● O Modelo Incremental surge como uma melhoria do Modelo em Cascata.
● Cada pedaço (incremento) é desenvolvido de forma linear, como no Modelo
em Cascata, e em seguida exposto aos comentários dos clientes
(SOMMERVILLE, 2011)
Sommerville (2011)
Modelo Incremental
Modelo Incremental
Vantagens
● O cliente não precisa receber todo o sistema para poder usá-lo;
● É mais fácil obter feedback dos clientes sobre o desenvolvimento que foi
feito;
● “O custo de acomodar as mudanças nos requisitos do cliente é reduzido”.
(SOMMERVILLE, 2011).
Desvantagens:
● Sistemas de grande porte necessitam de um framework ou arquitetura estável;
● Segundo SOMMERVILLE (2011), essa parte deve ser planejada com antecedência, e
não pode ser desenvolvida de forma incremental.
Engenharia de software baseada em
componentes
Sommerville (2011)
A abordagem orientada ao reuso depende de uma grande base de componentes
de softwares reusáveis e algum framework de integração desses componentes.
Engenharia de software baseada em
componentes
Vantagens
● Reduz a quantidade de software a ser desenvolvido
● Espera-se reduzir os custos e os riscos
● Espera-se uma entrega do produto mais rápida ao cliente
Desvantagens:
● Pode-se desenvolver um produto que não atenda aos requisitos do cliente
● Pode ser mais difícil evoluir os sistemas
Aula 02 - Processo de Software I.pdf

Mais conteúdo relacionado

Semelhante a Aula 02 - Processo de Software I.pdf

T1 g13.modelo cascata
T1 g13.modelo cascataT1 g13.modelo cascata
T1 g13.modelo cascata
wilsonguns
 
Modelo cascata apresentação
Modelo cascata apresentaçãoModelo cascata apresentação
Modelo cascata apresentação
erysonsi
 
Modelo cascata apresentação
Modelo cascata apresentaçãoModelo cascata apresentação
Modelo cascata apresentação
erysonsi
 

Semelhante a Aula 02 - Processo de Software I.pdf (20)

Capitulo 02 sommerville
Capitulo 02 sommervilleCapitulo 02 sommerville
Capitulo 02 sommerville
 
Modelo incremental
Modelo incrementalModelo incremental
Modelo incremental
 
Aula 3 - Processos de Software.pdf
Aula 3 - Processos de Software.pdfAula 3 - Processos de Software.pdf
Aula 3 - Processos de Software.pdf
 
Modelos de Processo e Desenvolvimento de Software 1 - Prof.ª Cristiane Fidelix
Modelos de Processo e Desenvolvimento de Software 1 - Prof.ª Cristiane FidelixModelos de Processo e Desenvolvimento de Software 1 - Prof.ª Cristiane Fidelix
Modelos de Processo e Desenvolvimento de Software 1 - Prof.ª Cristiane Fidelix
 
Aula 7 - Modelos de Ciclo de Vida.pptx
Aula 7 - Modelos de Ciclo de Vida.pptxAula 7 - Modelos de Ciclo de Vida.pptx
Aula 7 - Modelos de Ciclo de Vida.pptx
 
FES_SENAIPR_Processos.pdf
FES_SENAIPR_Processos.pdfFES_SENAIPR_Processos.pdf
FES_SENAIPR_Processos.pdf
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De Software
 
T1 g13.modelo cascata
T1 g13.modelo cascataT1 g13.modelo cascata
T1 g13.modelo cascata
 
Aula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdfAula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdf
 
Aula 3 - Engenharia de Software
Aula 3 - Engenharia de SoftwareAula 3 - Engenharia de Software
Aula 3 - Engenharia de Software
 
Modelo V
Modelo VModelo V
Modelo V
 
Modelos de Processo de Software - INCREMENTAL
Modelos de Processo de Software - INCREMENTALModelos de Processo de Software - INCREMENTAL
Modelos de Processo de Software - INCREMENTAL
 
Métricas de software: modelos de contratação e planejamento de projetos
Métricas de software: modelos de contratação e planejamento de projetosMétricas de software: modelos de contratação e planejamento de projetos
Métricas de software: modelos de contratação e planejamento de projetos
 
ES4.ppt
ES4.pptES4.ppt
ES4.ppt
 
UnP Eng. Software - Aula 25
UnP Eng. Software - Aula 25UnP Eng. Software - Aula 25
UnP Eng. Software - Aula 25
 
Aula 3
Aula 3Aula 3
Aula 3
 
Ciclo de vida de software
Ciclo de vida de softwareCiclo de vida de software
Ciclo de vida de software
 
Apresentação RUP
Apresentação RUPApresentação RUP
Apresentação RUP
 
Modelo cascata apresentação
Modelo cascata apresentaçãoModelo cascata apresentação
Modelo cascata apresentação
 
Modelo cascata apresentação
Modelo cascata apresentaçãoModelo cascata apresentação
Modelo cascata apresentação
 

Mais de DaniloPereira341965 (7)

03 - Placa-Mãe.pdf
03 - Placa-Mãe.pdf03 - Placa-Mãe.pdf
03 - Placa-Mãe.pdf
 
Aula 03 - Metodologias Ágeis.pdf
Aula 03 - Metodologias Ágeis.pdfAula 03 - Metodologias Ágeis.pdf
Aula 03 - Metodologias Ágeis.pdf
 
M_III_Livro_2_Gestao_EaD_FINAL.pdf
M_III_Livro_2_Gestao_EaD_FINAL.pdfM_III_Livro_2_Gestao_EaD_FINAL.pdf
M_III_Livro_2_Gestao_EaD_FINAL.pdf
 
03 - Conceitos de Software.pdf
03 - Conceitos de Software.pdf03 - Conceitos de Software.pdf
03 - Conceitos de Software.pdf
 
04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf
 
Aulas_SQL.pdf
Aulas_SQL.pdfAulas_SQL.pdf
Aulas_SQL.pdf
 
Managing Develop of Large Systems
Managing Develop of Large SystemsManaging Develop of Large Systems
Managing Develop of Large Systems
 

Aula 02 - Processo de Software I.pdf

  • 1. Disciplina: Engenharia e Qualidade de Software Aula 02 Processo de Software Professor: Danilo Pereira
  • 2. ● A produção de um carro em uma fábrica segue um processo bem definido. O software também é produzido com um processo. Importância de Processos “Um processo de desenvolvimento de software define um conjunto de passos, tarefas, eventos e práticas que devem ser seguidos por desenvolvedores de software, na produção de um sistema.”
  • 3. ● Na prática, os sistemas são desenvolvidos por equipes, que precisam de um ordenamento. ● Os processos são importantes não apenas para empresas, mas também para os desenvolvedores. Processo de Software
  • 4. Processo de Software (etapas) ● Não existe um processo ideal. ● Existem atividades comuns aos processos de software, são elas: Especificação de software: Definição das funcionalidades e das restrições sobre suas operações. ● Projeto e implementação de software: produção do software que atenda às especificações solicitadas. ● Validação de software: O software deve ser validado para garantir que ele faça o que o cliente deseja. ● Evolução de software: o software deve evoluir para atender às necessidades mutáveis do cliente.
  • 5. Processo de Software (etapas) ● É uma representação abstrata de um processo de software. ● Representa um processo sob uma determinada perspectiva. ● Os principais modelos de processos são: ○ Modelo cascata ○ Modelo Incremental ○ Engenharia de software baseada em componentes
  • 6. Processo de Software (etapas) ● Por que utilizar um modelo de processo de software?? ○ Padroniza o desenvolvimento de software. ○ Padronização dos artefatos de software. ○ Melhora a comunicação da equipe. ● Consequentemente, agrega qualidade ao software.
  • 7. Modelo Cascata ● Foi o primeiro modelo de processo de software proposto. ● É um modelo sequencial. ● Devido ao encadeamento de suas fases, o modelo ficou conhecido como modelo cascata. ● Uma nova fase só pode ser iniciada com a finalização da anterior. ● Possui 5 fases definidas: ○ Requisitos, projeto, implementação, integração e manutenção.
  • 9. Modelo Cascata Vantagens ● O modelo apresenta uma grande vantagem quando o escopo do trabalho é claramente definido. Se as especificações estiverem corretas (o que é muito difícil em projetos de médio e grande porte), um software pode ser desenvolvido de forma muito rápida. Desvantagens: ● O modelo não possui flexibilidade; ● O cliente deve ter muita paciência; ● A equipe de desenvolvimento está sempre “quase acabando”.
  • 10. Modelo Incremental ● O Modelo Incremental surge como uma melhoria do Modelo em Cascata. ● Cada pedaço (incremento) é desenvolvido de forma linear, como no Modelo em Cascata, e em seguida exposto aos comentários dos clientes (SOMMERVILLE, 2011) Sommerville (2011)
  • 12. Modelo Incremental Vantagens ● O cliente não precisa receber todo o sistema para poder usá-lo; ● É mais fácil obter feedback dos clientes sobre o desenvolvimento que foi feito; ● “O custo de acomodar as mudanças nos requisitos do cliente é reduzido”. (SOMMERVILLE, 2011). Desvantagens: ● Sistemas de grande porte necessitam de um framework ou arquitetura estável; ● Segundo SOMMERVILLE (2011), essa parte deve ser planejada com antecedência, e não pode ser desenvolvida de forma incremental.
  • 13. Engenharia de software baseada em componentes Sommerville (2011) A abordagem orientada ao reuso depende de uma grande base de componentes de softwares reusáveis e algum framework de integração desses componentes.
  • 14. Engenharia de software baseada em componentes Vantagens ● Reduz a quantidade de software a ser desenvolvido ● Espera-se reduzir os custos e os riscos ● Espera-se uma entrega do produto mais rápida ao cliente Desvantagens: ● Pode-se desenvolver um produto que não atenda aos requisitos do cliente ● Pode ser mais difícil evoluir os sistemas