1 - processo e ciclo de vida
DESCRIPTION
Prof RonaldoTRANSCRIPT
-
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