Click here to load reader

Processos de SW: ciclo de vida, processos, modelos Professor: Rômulo César [email protected] FACULDADE DOS GUARARAPES

  • View
    106

  • Download
    3

Embed Size (px)

Text of Processos de SW: ciclo de vida, processos, modelos Professor: Rômulo César...

  • Slide 1
  • Processos de SW: ciclo de vida, processos, modelos Professor: Rmulo Csar [email protected] www.romulocesar.com.br FACULDADE DOS GUARARAPES
  • Slide 2
  • Processo do Software l Grupo de atividades coerentes para especificao, projeto, implementao e teste de sistemas de software.
  • Slide 3
  • Objetivos l Introduzir os processos de modelagem de software l Descrever alguns modelos de processos e quando eles devem ser usados l Descrever em linhas gerais o processo modelo para os requisitos de engenharia, de desenvolvimento de softare, seu teste e evoluo l Indroduzir a tecnologia CASE para o auxlio dos processos de software
  • Slide 4
  • Tpicos cobertos l Modelos do processo de software l Iterao entre os processos l Especificao de software l Projeto e implementao de software l Validao do software l Evoluo do software l Processos automatizados de desenvolvimento
  • Slide 5
  • O processo do software l Um conjunto estruturado de atividades necessrias para desenvolver um sistema de software Especificao Projeto Validao Evoluo l Um modelo de processo de software uma representao abstrata do processo. Ela apresenta uma descrio do processo de algumas perspectivas particulares
  • Slide 6
  • Modelos genricos de processos de software l O modelo cascata (waterfall) Fases separadas e distintas de especificao e desenvolvimento l Desenvolvimento evolucionrio (ou prototipao) Especificao e desenvolvimento so intercalados l Modelo de sistema formal Um modelo de sistema matemtico formalmente transformado numa implementao l Desenvolvimento baseado em reuso O sistema construdo a partir de componentes existentes
  • Slide 7
  • Modelo Cascata Sistemtico e seqencial
  • Slide 8
  • Cascata- Fases do Modelo l Anlise de requisitos e definies l Projeto do sistema e do software l Implementao e teste de unidades l Integrao e testes do sistema l Manuteno e operao l Uma deficincia do modelo cascata a dificuldade em acomodar mudanas depois que o processo se inicia.
  • Slide 9
  • Anlise e Engenharia de Sistemas l Estabelecer os requisitos bsicos para todos os sistemas que envolvem o software, como hardware, pessoas e bancos de dados. l Envolve a coleta dos requisitos em nvel do sistema, com uma pequena quantidade de projeto e anlise de alto nvel.
  • Slide 10
  • Analise de Requisitos de Sw l Concentra a coleta de requisitos no sw. l Leva compreenso do domnio da informao, a funo, desempenho e interfaces exigidos. l Os requisitos para o sistema e para o sw so documentados e revistos com o cliente.
  • Slide 11
  • Projeto l Estrutura de dados l Arquitetura de sw l Detalhes procedimentais l Caracterizao da interface l avaliado antes de comear a ser implementado l Junto com as etapas anteriores torna-se parte da documentao do sistema
  • Slide 12
  • Codificao l Projeto traduzido para a linguagem do computador. l Se o projeto for executado detalhadamente, a codificao pode ser executada mecanicamente?
  • Slide 13
  • Testes l Concentra-se nos aspectos lgicos internos do sw. l Garante que todas as instrues tenham sido testadas. l A entrada definida produz os resultados exigidos? l Garbage in, garbage out?
  • Slide 14
  • Manuteno l Sw embutido nem sempre tem esta parte. l Erros encontrados. l Mudanas no ambiente externo. l Acrscimos funcionais. l Desempenho
  • Slide 15
  • Problemas com a Cascata l O mais antigo e amplamente usado. l Projetos reais raramente seguem o fluxo seqencial que ele prope. Ocorrem iteraes que trazem problemas na aplicao do paradigma. l difcil para o cliente declarar todas as exigncias explicitamente. difcil acomodar as incertezas naturais que existem no comeo de muitos projetos. l O cliente deve ter pacincia. Uma verso do sw s estar disponvel em um ponto tardio do cronograma. Um erro crasso, pode ser desastroso. l S apropriado quando os requisitos so bem conhecidos.
  • Slide 16
  • Desenvolvimento evolucionrio l Desenvolvimento exploratrio O objetivo trabalhar com o cliente e desenvolver um sistema final a partir das especificaes iniciais. Deve iniciar com requisitos bem compreendidos. l Jogar fora a prototipao O objetivo entender os requisitos do sistema. Deve iniciar com requisitos pouco compreendidos.
  • Slide 17
  • Desenvolvimento evolucionrio
  • Slide 18
  • Prototipao Coleta e refinamento dos requisitos Refinamento do prottipo Engenharia do produto Avaliao do prottipo pelo cliente Construo do prottipo Projeto rpido Fim Incio
  • Slide 19
  • Desenvolvimento evolucionrio l Problemas Falta de visibilidade sobre o processo. Sistema geralmente pouco estruturado. Habilidades especiais (ex. em linguagens para uma rpida prototipao) so requeridas. l Aplicabilidade Para sistemas interativos pequenos ou mdios. Para partes de de grandes sistemas (ex. A interface com o usurio). Para sistemas com pouco tempo de vida.
  • Slide 20
  • Modelo de desenvolvimento formal l Baseado na transformao de uma especificao matemtica atravs de diferentes representaes em um programa executvel. l As transformaes preservam a corretude das especificaes, sendo fcil demonstrar que que o programa segue estas ltimas. l Baseado na abordagem Cleanroom para o desenvolvimento de software.
  • Slide 21
  • Modelo de desenvolvimento formal
  • Slide 22
  • Desenvolvimento formal l Problemas So necessrias habilidades especiais e treinamento para aplicar a tcnica. Dificuldade para formalizar especificamente alguns aspectos do sistema, como a interface com o usurio. l Aplicabilidade Sistemas crticos, especialmente aqueles em que uma verso segura deve ser feita antes do sistema entrar em operao.
  • Slide 23
  • Desenvolvimento orientado a reutilizao l Baseado na sistemtica do reuse, onde os sistemas so integrados a partir de componentes existentes ou sistemas (Software de Pratileiras) l Estgios do processo Anlise dos componentes Modificao dos requisitos Projeto do sistema com reutilizao Desenvolvimento e integrao l Esta abordagem est se tornando mais importante, porm ainda h pouca experincia com ela.
  • Slide 24
  • Reuse-oriented development
  • Slide 25
  • Processo de iterao l Os requisitos do sistema sempre evoluem ao longo do projeto, ento o processo de iterao dos estgios anteriores retrabalhado e vira parte do processo para grandes sistemas. l Iterao pode ser aplicada a qualquer modelo genrico de ciclo de vida. l Duas abordagens semelhantes: Desenvolvimento incremental Desenvolvimento espiral
  • Slide 26
  • Desenvolvimento incremental l Ao invs de entreagar o sistema uma nica vez, o desenvolvimento e a entrega so partidos em incrementos, que fornecem parte das funcionalidades requeridas. l Os requisitos do usurios so dispostos hierarquicamente, e os requisitos de prioridades mais altas so includos nas primeiras entregas. l Quando o desenvolvimento de um incremento iniciado, os requisitos so congelados de forma que os requisitos para incrementos posteriores possam continuar a evoluir.
  • Slide 27
  • Incremental development
  • Slide 28
  • Vantagens do desenvolvimento incremental l Valor ao cliente tende a ser entregue a cada incremento, ento a funcionalidade dos sistema tende a ser avaliada mais cedo. l Os primeiros incrementos funcionam como um prottipo para ajudar a esclarecer os requisitos para os prximos incrementos. l Baixo risco de o projeto falhar completamente. l As tarefas de mais alta prioridade, tendem a receber mais testes.
  • Slide 29
  • Extreme programming (XP) l Nova abordagem de desenvolvimento baseada no desenvolvimento e entrega de pequenos incrementos de funcionalidade. l Funciona com melhorias contnuas no cdigo, envolvimento do usurio no time de desenvolvimento e programao em pares. l Os testes aparecem antes da codificao.
  • Slide 30
  • Desenvolvimento em espiral l O Processo representado como um espiral ao invs de uma sequncia de atividades com voltas para trs. Cada volta no espiral representa uma fase no processo. l No h fases fixas como especificao ou projeto. As voltas no espiral so escolhidas dependendo do que requisitado l Os riscos so explicitamente avaliados e resolvidos durante todo o processo
  • Slide 31
  • Spiral model of the software process
  • Slide 32
  • Setores do modelo espiral l Definio dos objetivos Os objetivos especficos para a fase so identificados. l Avaliao e reduo de riscos Os riscos so avaliados e as atividades organizadas para reduzir os riscos chave. l Desenvolvimento e validao Um modelo de desenvolvimento para o sistema escolhido, que pode ser qualquer um dos modelos genricos. l Planejamento O projeto revisto e a prxima fase da espiral planejada.
  • Slide 33
  • Resumo em Equipe l Processo de Software; l O modelo cascata; - Anlise e Engenharia de Sistemas - Analise de Requisitos de Sw - Projeto -Codificao -Testes - Manuteno l Desenvolvimento evolucionrio; l Desenvolvimento em espiral.

Search related