Engenharia de Software Unidade II – Processos de Software [Parte I] Objetivo : Apresentar os principais paradigmas e modelos de processos de software, demonstrando o ciclo de vida do desenvolvimento de software e enfatizando os processos de especificação de requisitos, projeto, implementação, testes e mudanças   Prof. Nécio de Lima Veras
Processos de Desenvolvimento de Software Vimos anteriormente que os processos d efinem uma estrutura, que consiste em  áreas  de processos chave.
Percebemos também que Sommerville subdivide em quatro atividades básicas: Especificação;
Desenvolvimento;
Validação; e
Evolução. Partindo disso, muitos modelos já foram propostos...
Roteiro... Então para esta aula, veremos: Definições  de  processos e modelos de processos de software;
Alguns modelos existentes: Cascata;
Evolucionário;
Desenvolvimento incremental;
Espiral; e
Prototipação.
Definições Processo de software: “ É uma seqüência coerente de práticas que objetiva o desenvolvimento ou evolução de sistemas de software. Estas práticas englobam as atividades de especificação, projeto, implementação, testes e caracterizam-se pela interação de ferramentas, pessoas e métodos”. Modelo de processo de software: “ Um modelo de processo de software é uma representação abstrata de um processo. Ele apresenta uma descrição de um processo a partir de uma perspectiva específica”.
O Modelo em  Cascata Primeiro modelo publicado do processo de desenvolvimento de software;
Originou-se de outros processos de engenharia;
Retrata um desenvolvimento gradual e possui seqüência de passos em ordem que devem ser seguidos.
O Modelo em  Cascata :  Principais Estágios Análise e Definição de Requisitos: as funções, as restrições e os objetivos do sistema são estabelecidos por meio de consulta aos usuários do sistema. Em seguida, são definidos em detalhes e servem como uma especificação do sistema.
O Modelo em  Cascata :  Principais Estágios Projeto de Sistemas e Software: o processo de projeto de sistemas agrupa os requisitos em sistemas de hardware e software. Envolve a identificação e a descrição das abstrações fundamentais do sistema de software e suas relações.
O Modelo em  Cascata :  Principais Estágios Implementação e Testes de Unidade: Durante este estágio, o projeto do software é compreendido como um conjunto de programas ou unidades de programa. O teste de unidade envolve verificar se cada uma das unidades atendem à sua especificação.
O Modelo em  Cascata :  Principais Estágios Integração e Teste de sistemas:  as unidades de programa ou programas individuais  são integrados e testados como um sistema completo a fim de garantir que os requisitos de software foram atendidos. Depois do teste, o software é entregue ao cliente.
O Modelo em  Cascata :  Principais Estágios Operação e manutenção: O sistema é instalado e colocado em operação. Envolve corrigir erros que não foram descobertos em estágios anteriores, melhorando a implemen-tação e descobrindo novos requisitos
O Modelo em  Cascata : Problemas Particionamento inflexível do projeto em fases distintas;
Isso torna difícil responder a requisitos do usuário que mudam;
Portanto, esse modelo é apropriado somente quando os requisitos são bem compreendidos;
O modelo  Evolucionário Tem com base a ideia de desenvolver uma implementação inicial, expor o resultado ao comentário do usuário e fazer seu aprimoramento por meio de muitas versões, até que tenha sido desenvolvido;
A especificação, desenvolvimento e validação são executados concorrentemente para gerar um retorno rápido;

Modelos de processos de software

  • 1.
    Engenharia de SoftwareUnidade II – Processos de Software [Parte I] Objetivo : Apresentar os principais paradigmas e modelos de processos de software, demonstrando o ciclo de vida do desenvolvimento de software e enfatizando os processos de especificação de requisitos, projeto, implementação, testes e mudanças Prof. Nécio de Lima Veras
  • 2.
    Processos de Desenvolvimentode Software Vimos anteriormente que os processos d efinem uma estrutura, que consiste em áreas de processos chave.
  • 3.
    Percebemos também queSommerville subdivide em quatro atividades básicas: Especificação;
  • 4.
  • 5.
  • 6.
    Evolução. Partindo disso,muitos modelos já foram propostos...
  • 7.
    Roteiro... Então paraesta aula, veremos: Definições de processos e modelos de processos de software;
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
    Definições Processo desoftware: “ É uma seqüência coerente de práticas que objetiva o desenvolvimento ou evolução de sistemas de software. Estas práticas englobam as atividades de especificação, projeto, implementação, testes e caracterizam-se pela interação de ferramentas, pessoas e métodos”. Modelo de processo de software: “ Um modelo de processo de software é uma representação abstrata de um processo. Ele apresenta uma descrição de um processo a partir de uma perspectiva específica”.
  • 14.
    O Modelo em Cascata Primeiro modelo publicado do processo de desenvolvimento de software;
  • 15.
    Originou-se de outrosprocessos de engenharia;
  • 16.
    Retrata um desenvolvimentogradual e possui seqüência de passos em ordem que devem ser seguidos.
  • 17.
    O Modelo em Cascata : Principais Estágios Análise e Definição de Requisitos: as funções, as restrições e os objetivos do sistema são estabelecidos por meio de consulta aos usuários do sistema. Em seguida, são definidos em detalhes e servem como uma especificação do sistema.
  • 18.
    O Modelo em Cascata : Principais Estágios Projeto de Sistemas e Software: o processo de projeto de sistemas agrupa os requisitos em sistemas de hardware e software. Envolve a identificação e a descrição das abstrações fundamentais do sistema de software e suas relações.
  • 19.
    O Modelo em Cascata : Principais Estágios Implementação e Testes de Unidade: Durante este estágio, o projeto do software é compreendido como um conjunto de programas ou unidades de programa. O teste de unidade envolve verificar se cada uma das unidades atendem à sua especificação.
  • 20.
    O Modelo em Cascata : Principais Estágios Integração e Teste de sistemas: as unidades de programa ou programas individuais são integrados e testados como um sistema completo a fim de garantir que os requisitos de software foram atendidos. Depois do teste, o software é entregue ao cliente.
  • 21.
    O Modelo em Cascata : Principais Estágios Operação e manutenção: O sistema é instalado e colocado em operação. Envolve corrigir erros que não foram descobertos em estágios anteriores, melhorando a implemen-tação e descobrindo novos requisitos
  • 22.
    O Modelo em Cascata : Problemas Particionamento inflexível do projeto em fases distintas;
  • 23.
    Isso torna difícilresponder a requisitos do usuário que mudam;
  • 24.
    Portanto, esse modeloé apropriado somente quando os requisitos são bem compreendidos;
  • 25.
    O modelo Evolucionário Tem com base a ideia de desenvolver uma implementação inicial, expor o resultado ao comentário do usuário e fazer seu aprimoramento por meio de muitas versões, até que tenha sido desenvolvido;
  • 26.
    A especificação, desenvolvimentoe validação são executados concorrentemente para gerar um retorno rápido;