Processos de desenvolvimento de software parte 2
This presentation is the property of its rightful owner.
Sponsored Links
1 / 24

Processos de Desenvolvimento de Software – Parte 2 PowerPoint PPT Presentation


  • 45 Views
  • Uploaded on
  • Presentation posted in: General

Processos de Desenvolvimento de Software – Parte 2. Análise de Sistemas de Software Prof. Rodrigo Ribeiro. Atividades de um Processo. Na aula passada... Diferentes modelos de processos de software Atividades Especificação Projeto e Implementação Validação Evolução

Download Presentation

Processos de Desenvolvimento de Software – Parte 2

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Processos de desenvolvimento de software parte 2

Processos de Desenvolvimento de Software – Parte 2

Análise de Sistemas de Software

Prof. Rodrigo Ribeiro


Atividades de um processo

Atividades de um Processo

  • Na aula passada...

    • Diferentes modelos de processos de software

  • Atividades

    • Especificação

    • Projeto e Implementação

    • Validação

    • Evolução

  • Variam na forma em que são executadas

    • Dependem do modelo de processo...


Especifica o de software

Especificação de Software

  • Fases

    • Estudo de viabilidade

      • É possível fazer o que o usuário deseja?

      • Considera prazos e custos

    • Elicitação e análise de requisitos

    • Especificação de requisitos

      • Separar requisitos em:

        • Requisitos de usuário

        • Requisitos de sistema

    • Validação de requisitos

      • Está tudo ok e é possível fazer?


Especifica o de software1

Especificação de Software

Estudo de

viabilidade

Elicitação e

análise

Especificação

Validação

Relatório de

viabilidade

Modelos de

Sistema

Req. Usuário

e de sistema

Documento

Requisitos


Projeto e implementa o

Projeto e Implementação

  • Fases

    • Projeto de Arquitetura

      • Relacionamentos entre subsistemas

    • Especificação Abstrata

      • Quais serviços devem ser oferecidos por um subsistema?

    • Projeto de interface

      • Projeto de interface entre subsistemas.

        • Especificação formal

    • Projeto de componente

      • Quais serviços serão oferecidos

    • Projeto de estrutura de dados

    • Projeto de algoritmos


Projeto e implementa o1

Projeto e Implementação

Especificação

de requisitos

Projeto de

interface

Projeto de

Arquitetura

Especificação

abstrata

Projeto de

componente

Arquitetura de

sistema

Especificação

de software

Especificação

de interface

Especificação

de componente

Projeto de

algoritmo

Projeto de

Estr. de dados

Especificação

de algoritmo

Especificação

de Estr. Dados


Valida o

Validação

  • Objetivo

    • Código está de acordo com requisitos?

  • Ferramentas

    • Inspeções

    • Revisões

    • Testes

  • Fases

    • Teste de unidade

    • Teste de sistema

    • Teste de aceitação

      • Diferença entre teste alfa e beta


Valida o1

Validação

Especificação

de requisitos

Especificação

de sistema

Projeto

de sistema

Projeto

detalhado

Teste de

aceitação

Teste de

sistema

Teste de

subsistema

Código e

Teste unit.

Projeto de

Teste subsist.

Operação

Projeto de

Teste aceit.

Projeto de

Teste sist.


Evolu o

Evolução

  • Evolução (manutenção)

    • Incorporar novas características

    • Integração

    • Migração

  • Evolução é muito mais cara que desenvolver

    • Porquê?

    • Evolução envolve:

      • Possível compreensão do código existente

      • Re-projeto de código existente para acomodar mudanças


Evolu o1

Evolução

Definir

requisitos

Avaliar

Sistemas exist.

Propor

mudanças

Modificar

sistemas

Sistemas

novos

Sistemas

existentes


Exemplos de processos

Exemplos de Processos

  • Vimos até agora...

    • Diversos modelos de processos

    • Etapas comuns a diversos modelos

  • Exemplos

    • Personal software process – PSP

    • Team software process – TSP

    • Unified Process

      • Rational Unified Process – RUP

      • PRocesso para Aplicativos eXtensíveis e InterativoS - PRAXIS


Personal software process

Personal Software Process

  • Processo para desenvolvimento “solo”

    • Educacional

  • Define vários níveis

    • Processos pessoais básicos

      • Registro de tempo, defeitos

    • Processos pessoais com planejamento

      • Estimativas de tamanho, relatórios de testes

      • Cronogramas

    • Processos pessoais com gestão de qualidade

      • Modelo de desenho e revisões


Team software process

Team Software Process

  • Evolução natural do PSP

    • Possui fins educacionais

  • Baseado no modelo espiral

  • Times pequenos de desenvolvedores

    • Duração média de 15 semanas (3 ciclos)

    • Desenvolvedores fazem mais de um papel

      • Qualidade, testes, gerência de projeto...

    • Assim como o PSP

      • Controle de tamanho, esforço, prazos, etc...


Team software process1

Team Software Process

  • Fases

    • Lançamento

      • Ativação do projeto.

    • Estratégia

      • Seleção da estratégia de desenvolvimento

      • Estimativa de tamanho

    • Planejamento

      • Produção de planos de tarefas

      • Produção de planos de qualidade


Team software process2

Team Software Process

  • Fases

    • Requisitos

      • Produção de documento de requisitos

      • Revisão de requisitos por usuários

    • Desenho

      • Desenho de alto nível

      • Documentação do desenho

    • Implementação

      • Desenho detalhado

      • Inspeção do desenho

      • Codificação e testes de unidade


Team software process3

Team Software Process

  • Fases

    • Testes

      • Planejamento de testes

        • Integração

        • Sistemas

      • Realização de testes

      • Documentação de testes

    • Post-mortem

      • Avaliação do processo

      • Documentação dos resultados


Unified process

Unified Process

  • História da UML e U.P.

    • Jackobson, Booch, Rumbaugh

  • Características

    • Dirigido por casos de usos

    • Centrado na arquitetura

    • Iterativo e incremental

  • Baseado no modelo espiral

    • Produto: resultado final da espiral

    • Projeto: um ciclo na espiral

    • Não trata do que acontece nos ciclos.


Unified process1

Unified Process

  • Arcabouço para diversos processos

    • RUP e Praxis

  • Muito abstrato para ser utilizado...

    • Deve ser “instanciado” para utilização

  • Dividido em

    • Fases (phases): foco gerencial

    • Fluxos (disciplines): foco técnico


Unified process2

Unified Process

  • Fases

    • Concepção

      • Porquê desenvolver isso?

    • Elaboração

      • Planejamento da construção

    • Construção

      • Produção de um produto operacional

    • Transição

      • Produto colocado à disposição de usuários.


Unified process3

Unified Process

  • Fluxos

    • Requisitos

      • Obter um conjunto de requisitos com o cliente

    • Análise

      • Validar, detalhar e estruturar requisitos

    • Desenho

      • Elaboração de um modelo estrutural

    • Implementação

      • Codificação

    • Testes


Unified process4

Unified Process


Rational unified process

Rational Unified Process

  • Outros modelos de processo...

    • Apresentam visão única

  • R.U.P. pode ser visto de 3 perspectivas

    • Perspectiva dinâmica

      • Fases do modelo ao longo do tempo

    • Perspectiva estática

      • Atividades realizadas ao longo do processo

    • Perspectiva prática

      • Boas práticas a serem adotadas durante o processo


Rational unified process1

Rational Unified Process

  • Perspectiva dinâmica

    • Corresponde a fases do U.P.

  • Perspectiva estática

    • Corresponde a fluxos do U.P.

    • Acrescidos de fluxos

      • Modelagem de negócios

      • Gestão de configurações

      • Implantação(Deployment)

      • Infra-estrutura (environment)

  • Perspectiva prática

    • Desenvolvimento iterativo

    • Gerenciar requisitos

    • Usar arquiteturas baseadas em componentes

    • Modelar software visualmente: UML

    • Verificar qualidade

    • Controlar mudanças


Rational unified process2

Rational Unified Process

  • Processo completo e extensível

    • Às vezes, completo demais...

    • Número de artefatos produzido elevado

    • RUP

      • Produto comercializado pela Rational

        • Consultoria em processos

        • Ferramentas

          • Rational Rose

          • Rational Enterprise Architect

  • Utilizaremos o Praxis

    • Próxima aula...


  • Login