1 - processo e ciclo de vida

25
Processo e Ciclo de Vida de Software

Upload: gislainy-crisostomo

Post on 05-Sep-2015

4 views

Category:

Documents


1 download

DESCRIPTION

Prof Ronaldo

TRANSCRIPT

  • Processo e Ciclo de Vida de Software

  • Software

    Como Construir?Programas

    +

    Documentao

    +

    Dados

    SimplesmenteFAZER OU

    ENGENHARIA DE SOFTWAREwww.sei.cmu.edu/www.rspa.com/spi/www.swebok.org

  • Sistemas de Informao

    Conjunto de componentes estruturados (pessoas, processos, mtodos, tcnicas, repositrios de dados, equipamentos, planejamento, organizao, direo e controle) necessrios obteno , tratamento, armazenamento, recuperao e disseminao de informaes a respeito dos recursos utilizados pela empresa/instituio desde o seu ingresso at o seu desligamento, quando so colocados de volta no ambiente externo, sob a forma de processos/servios/conhecimento

  • Engenharia de Software Aplicao prtica de conceitos de cincia da

    computao e outras disciplinas em todas as atividades tcnicas e gerenciais que compem o desenvolvimento de sistemas de software com o objetivo de garantir a qualidade dos processos e dos produtos obtidos.

    Tambm pode ser definida como a aplicao sistemtica de mtodos, ferramentas e tcnicaspara atender os requisitos e alcanar os objetivos de um sistema de software.

  • Engenharia de Software

    Camadas

    Foco na Qualidade

    Processos

    Mtodos

    Tcnicas e Ferramentas

  • 6Processo de Sofware

    Engenharia de SoftwareProcesso de Desenvolvimento de Software

    Anlise de Requisitos Projeto

    Implemen-tao Teste

    Implan-tao

    Atividades - Garantia de qualidade;- Gerncia de Configurao;- Gerncia de Riscos;- Mtricas;

    - Estimativas;- Revises Tcnicas Formais.

    Outros Processos

    Contidos no Processo Principal

  • 7Processo de Software uma srie de passos (um ROTEIRO).

    Para criar EM TEMPO um SOFTWARE de ALTA QUALIDADE, sem estourar o ORAMENTO.

    Motivao

  • Processo de Software Como escolher um processo?

    As CARACTERSTICAS DA APLICAO (domnio do problema, tamanho, complexidade etc);

    A TECNOLOGIA a ser adotada na sua construo (paradigma de desenvolvimento, linguagem de programao, mecanismo de persistncia etc), a organizao;

    ONDE o produto ser desenvolvido; O PERFIL DA EQUIPE de desenvolvimento.

  • Ciclo de Vida Quando se escolhe um processo define-se um

    Modelo de Ciclo de Vida (ou modelo de processo). uma representao abstrata da estrutura

    (esqueleto) de processo. Inclui algumas atividades principais que podem ser

    decompostas em sub-atividades e tarefas. A ordem de precedncia entre elas. Opcionalmente, artefatos requeridos e produzidos.

  • Ciclo de Vida

    Independente do modelo de ciclo de vida escolhido algumas atividades sempre devem aparecer: atividades de definio do problema (o qu); de construo de uma soluo (como); de manuteno do sistema depois da sua entrega

    ao cliente.

  • Ciclo de Vida

    Atividades de definio do problema incluem planejamento do projeto, estudo de viabilidade, levantamento, anlise e especificao de requisitos.

    Atividades de construo incluem desenho da soluo computacional (projeto), codificao, Testes.

  • Ciclo de Vida

    Em geral, os ciclos de vida envolvem as seguintes fases: Planejamento Anlise e Especificao de Requisitos Projeto Implementao Testes Entrega e Implantao Operao Manuteno

  • Planejamento Fornece uma estrutura que possibilita ao gerente fazer

    estimativas iniciais de recursos, custos e prazos; O escopo do software estabelecido; Um plano de projeto deve ser elaborado

    configurando o processo a ser utilizado; Esta atividade faz parte da gerncia de projeto.

    Ciclo de Vida

  • Anlise e Especificao de Requisitos O escopo do software refinado; Descreve o que o software deve fazer; Devem ser analisados o domnio do problema e o

    domnio da soluo. Projeto

    Utiliza a fase anterior como insumo; Envolve duas grandes etapas: projeto da arquitetura

    do software e projeto detalhado.

    Ciclo de Vida

  • 15

    Implementao O projeto traduzido para uma para uma forma

    passvel de execuo pela mquina. Testes

    Testes de unidade e documentao dos resultados; Integrao dos componentes e teste do software

    como um todo; Alguns modelos de processo prevem a realizao

    de testes j nas primeiras etapas.

    Ciclo de Vida

  • Entrega e Implantao O software deve ser instalado em ambiente

    produo. Envolve

    Treinamento de usurios; Configurao do ambiente de produo; Converso bases de dados (se necessrio).

    Principal propsito desta fase: Realiza-se os Testes de Aceitao (estabelecer que o

    software satisfaz os requisitos dos usurios).

    Ciclo de Vida

  • 17

    Operao Aps o teste de aceitao, o software passa a ser

    utilizado de fato em ambiente de produo. Manuteno

    Adaptativas Corretivas Evolutivas

    Ciclo de Vida

  • 18

    Modelos de Ciclos de Vida

    3 abordagens principais

    Ciclo de Vida

  • Organizam o processo em uma sequncialinear de fases. Exemplo

    Waterfall (Cascata)

    Modelos sequenciais

  • Modelos Sequenciais

    Modelo CascataPlanejamento

    Anlise

    Projeto

    Implementao

    Teste

    Implantao

    Manuteno

  • Modelos Sequenciais

    Vantagens: Fornece um padro no qual os mtodos para anlise,

    projeto, codificao, testes e manuteno podem ser colocados

    Etapas do ciclo de vida clssica so bastante genricas e podem ser aplicadas em outros paradigmas

    o ciclo mais conhecido e utilizado Problemas com a estratgia sequencial:

    Projetos reais raramente seguem o fluxo seqencial proposto

    Freqentemente difcil para o cliente estabelecer todos os requisitos explicitamente e antecipadamente

    O cliente deve ter pacincia para ver o produto

  • Software produzido por incrementos (mdulos); Incrementos

    Seu desenvolvimento segue o modelo sequencial; Exigem reviso do cliente;

    Modelos Incrementais

    Vantagens Problemas- Menor custo e tempo para entrega da 1 verso;- Menor risco e n de mudanas nos req. (pelo fatodos inc. serem menores que o sw todo).

    - Requisitos instveis ou incompletos geram muitas mudanas nos incrementos;- Gerncia do projeto maiscomplexa.

  • Exemplo RAD (Rapid Application Development) Prima por um ciclo de desenvolvimento curto.

    Modelos Incrementais

  • No se preocupa em entregar de verses operacionais desde o primeiro ciclo; Geralmente produzem prottipos ou modelos.

    Verses operacionais so produzidas medida em que os requisitos vo ficando mais claros e estveis;

    Quando empregar Problemas muito complexos Requisitos so muito volteis ou que no podem ser

    totalmente especificados no incio do desenvolvimento.

    Modelos Iterativos

  • Exemplo: Modelo Espiral, RUP

    Modelos Iterativos