processos de software

Download Processos de software

If you can't read please download the document

Upload: yasuo

Post on 07-Jan-2016

22 views

Category:

Documents


0 download

DESCRIPTION

Processos de software. Atividades para especificar, projetar, implementar e testar sistemas de software. Processos de software. Uma Visão Genérica : 3 Fases Definição - “o que ” Engenharia do Sistema Planejamento do Projeto Análise de Requisitos Desenvolvimento - “ como ” - PowerPoint PPT Presentation

TRANSCRIPT

Slide 1

1Processos de softwareAtividades para especificar, projetar, implementar e testar sistemas de softwareProfa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Uma Viso Genrica: 3 Fases

Definio - o queEngenharia do SistemaPlanejamento do ProjetoAnlise de RequisitosDesenvolvimento - comoProjetoGerao do CdigoTesteManutenoProcessos de software2Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Um processo de software um mtodo para desenvolver ou produzir software.

A pesquisa em processo de software lida com mtodos e tecnologias estimativas, suporte e melhoria das atividades de desenvolvimento de software.

Define quem faz o que, quando e como.Processos de software3Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O processo o instrumento capaz de responder a qualquer momento:

O que feito? Produto Como feito? Passos Por quem feito? Agente O que usa? Insumos O que Produz? ResultadosProcessos de software4Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo de Processo de Softwaredefinio do problemadesenvolvimento tcnicointegrao da soluoestado atualProcesso deve incorporar uma estratgia de desenvolvimento5Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ModelagemModelagem uma tcnica de engenharia aprovada e bem aceita modelos de arquitetura de casas e de grandes prdios modelos matemticos a fim de analisar os efeitos de ventos e tremores de terra --> causas6Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelagem na Engenharia Civil

Modelos7Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O que um MODELO?Um modelo uma simplificao da realidade. Planos de detalhes, podem ser estruturais (organizao do sistema) ou comportamentais (dinmica do sistema)

8Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ModelosModelos so construdos para permitir um melhor entendimento sobre o sistema que est sendo construdo. especificar a estrutura e comportamento guia para construo do sistemadocumentam as decises tomadas9Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Objetivos da ModelagemAuxiliar no processo de produo produtos de alta qualidade, produzidos mais rapidamente e a um custo cada vez menor.

Atributos: abstrao, visibilidade, especificao, construo, confiabilidade, manutenibilidade, segurana, documentao.10Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Abstrao Melhor entendimento e maior compreenso Visualizao Visualizao antecipada antes da implementao Vises complementares do software

Modelos de processo de software11Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Especificao Descrio precisa do que deve ser feito

Construo Gerao automtica com ferramentas baseadas em modelos

Documentao Comunicao entre equipes na diferentes fases do ciclo de vida

Modelos de processo de software12Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Possibilitam: Ao gerente: controlar o processo de desenvolvimento de sistemas de software. Ao desenvolvedor: obter a base para produzir, de maneira eficiente, software que satisfaa os requisitos pr-estabelecidos.Objetivos da Modelagem13Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelos de processo de softwareUm conjunto de atividades fundamentais exigida para desenvolver um sistema de softwareEspecificao. Projeto e implementao.Validao. Evoluo.14Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo X ProcessoUm modelo algo terico, um conjunto de possveis aes.

O processo deve determinar aes prticas a serem realizadas pela equipe como prazos definidos e mtricas para se avaliar como elas esto sendo realizadas15Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo + Planejamento =

Processo

Modelo X Processo16Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Estudo de viabilidadeRelatriode viabilidadeLevantamento e anlise de requisitosEspecificao de requisitosValidao de requisitosModelosde sistemasRequisitos dousurio e do sistema

Documentaode requisitosProcesso de software17Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Processo de Engenharia de Requisitos

Estudo de viabilidadeEconmica relao custo/benefcio;Tcnica tecnologia e capacitao;Jurdica aspectos legais.

Levantamento e anlise de requisitosEntrevista, observao, reunies

Processo de software18Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Especificao de requisitos Documento contendo os requisitos do usurio e do sistema funcionais e no-funcionais

Validao de requisitos Avaliao do documento de requisitos consistncia e integralidade.Processo de software19Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Exemplos de modelos de processo: Workflow - sucesso de atividades Fluxo de Dados - fluxo de informao Papel/ao representa os papis das pessoas e as atividades pelas quais elas so responsveis.Modelos de processo de software20Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Uma estratgia de desenvolvimento que englobe processos, mtodos e ferramentas, e as fases de desenvolvimento...

Modelos de processo de software (paradigmas)21Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo Sequencial Linear (ciclo de vida clssico)Modelos Evolucionrios - Prototipao - Incremental - Espiral - Mtodos geis Modelo de Mtodos FormaisTcnicas de 4a GeraoOrientado a reuso

Modelos de processo de software (paradigmas)22Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo Sequencial Linear (ciclo de vida clssico)Mtodo sistemtico e sequencial

O resultado de uma fase se constitui na entrada da outra.

Cada fase estruturada como um conjunto de atividades que podem ser executadas por pessoas diferentes.

23Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Engenharia de SistemasAnlise / projeto de sistema e de softwareImplementao e testeIntegrao e testeOperao e manutenoModelo Sequencial Linear (ciclo de vida clssico)24Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ENGENHARIA DE SISTEMAS

envolve a coleta de requisitos em nvel do sistema, pequena quantidade de projeto e anlise de alto nvel

definir quais os requisitos do produto de software, sem especificar como esses requisitos sero obtidos.Modelo Sequencial Linear (ciclo de vida clssico)25Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ENGENHARIA DE SISTEMAS deve-se analisar os requisitos, recursos e restries para: apresentar solues; estudar a viabilidade; planejar e gerenciar o desenvolvimento a partir de estimativas e anlise de riscos que se utilizam de mtricas.Modelo Sequencial Linear (ciclo de vida clssico)26Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Estudo de viabilidade

Analisar o problema em nvel globalIdentificar solues alternativas (custos / benefcios)Simulao do futuro processo de desenvolvimento.Modelo Sequencial Linear (ciclo de vida clssico)27Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Estudo de viabilidade (cont)Resultado documentao contendo:Definio do problemaSolues alternativas, com os benefcios esperadosFontes necessrias, custos e datas de entrega para cada soluo proposta. Modelo Sequencial Linear (ciclo de vida clssico)28Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Gerenciamento Definio de polticas:Como produtos ou resultados intermedirios vo ser armazenados acessados e modificados.

Como verses diferentes de sistemas so construdos.

Modelo Sequencial Linear (ciclo de vida clssico)29Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Gerenciamento (cont.)Quais autorizaes so necessrias para acessar os componentes de entrada/sada do banco de dados do sistema.Recursos que afetam o processo de produo, particularmente com os recursos humanos.

Modelo Sequencial Linear (ciclo de vida clssico)30Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ANLISE DE REQUISITOS DE SOFTWARE

processo de coleta dos requisitos intensificado e concentrado especificamente no software. deve-se compreender o domnio da informao, a funo, desempenho e interfaces exigidos.Modelo Sequencial Linear (ciclo de vida clssico)31Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ANLISE DE REQUISITOS DE SOFTWARE

os requisitos (para o sistema e para o software) so documentados e revistos com o cliente.

Resultado o contrato de desenvolvimentoModelo Sequencial Linear (ciclo de vida clssico)32Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

PROJETO definida a soluo do problema: Decomposio do produto (subsistema, componentes etc). Representao das funes do sistema em uma forma que possa ser transformada em um ou mais programas executveis.

Modelo Sequencial Linear (ciclo de vida clssico)33Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

PROJETO Definio de como o produto deve ser implementado. Dividido em: Projeto de alto nvel decomposio lgica Projeto detalhado decomposio fsica. Modelo Sequencial Linear (ciclo de vida clssico)34Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

PROJETO Concentra-se em: Estrutura de Dados; Arquitetura de Software; Detalhes Procedimentais e Caracterizao de Interfaces.

Resultado documentao de especificao de projetoModelo Sequencial Linear (ciclo de vida clssico)35Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

IMPLEMENTAO

Traduo das representaes do projeto para uma linguagem artificial resultando em instrues executveis pelo computador.

Resultado coleo de programas implementados e testados. Modelo Sequencial Linear (ciclo de vida clssico)36Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

INTEGRAO

Programas ou unidades de programas so integrados e testados como sistema. Programas ou unidades so integradas medida em que forem sendo desenvolvidos.

Resultado produto pronto para ser entregue ao cliente.Modelo Sequencial Linear (ciclo de vida clssico)37Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

OPERAO

Instalao e configurao

Utilizao inicialmente operado por um grupo de usurioModelo Sequencial Linear (ciclo de vida clssico)38Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

MANUTENO Corretiva: correo de erros remanescentes Adaptativa: adaptao dos produtos s mudanas novas verses e novas situaes de operao hardware, sistemas operacionais. Evolutiva: alterao dos requisitos e manuteno da qualidade.Resultado produto em funcionamento.Modelo Sequencial Linear (ciclo de vida clssico)39Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ETAPAPERGUNTAS-CHAVESCRITRIOS DE SADADefinio doproblemaQual o problemaEstudo deviabilidadeH uma soluo vivelAnliseO que ter de ser feito para resolver o problema?Declarao da delimitao e objetivos.Anlise geral de custo/benefcioAlcance e objetivos do sistema.Modelo lgico do sistema:Diagrama de Fluxo de Dados;Diagrama de Entidade e Relacionamento Diagrama de Transio de Estado; Dicionrio de Dados; Especificao de Processos. UML.Modelo Sequencial Linear (ciclo de vida clssico)40Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ETAPAPERGUNTAS-CHAVESCRITRIOS DE SADAProjetoComo o problema deve serresolvido?Como o sistema deve serimplementado?Solues AlternativasEspecificao de hard/soft;Plano de implementao;Plano de teste preliminares;Procedimento de segurana;Procedimento de auditoria.ImplementaoFaaProgramas;Plano de testes;Procedimento de segurana;Procedimento de auditoria.TesteVerificar o sistemaTestes do geral do sistema.ManutenoModificar o sistema conformenecessidade.Apoio continuado.Modelo Sequencial Linear (ciclo de vida clssico)41Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Contribuies e problemas do ciclo de vida clssicoContribuiesProcesso de desenvolvimento de software deve ser sujeito disciplina, planejamento e gerenciamento.A implementao do produto deve ser postergada at que os objetivos tenham sido completamente entendidos.Deve ser utilizado quando os requisitos esto bem claros no inicio do desenvolvimento.

42Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problema

RigidezQualquer desvio desencorajadoTodo o planejamento orientado para a entrega do produto de software em uma data nica.

Contribuies e problemas do ciclo de vida clssico43Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problema (cont.)Processo de desenvolvimento pode ser longo e a aplicao pode ser entregue quando as necessidades do usurio j tiverem sido alteradas.

Projetos reais raramente seguem o fluxo sequencial que o modelo prope.

Contribuies e problemas do ciclo de vida clssico44Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problema (cont.)Logo no incio difcil estabelecer explicitamente todos os requisitos. No comeo dos projetos sempre existe uma incerteza natural.

O cliente deve ter pacincia. Uma verso executvel do software s fica disponvel numa etapa avanada do desenvolvimento

Contribuies e problemas do ciclo de vida clssico45Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Abordagem baseada na idia de desenvolver uma implementao inicial, expor o resultado ao comentrio do usurio e fazer seu aprimoramento por meio de muitas verses.

Especificao e desenvolvimento so intercalados Modelo Evolucionrio46Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Tipos:

Desenvolvimento exploratrioProttipo descartvelModelo Evolucionrio47Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Atividades concorrentesValidaoDesenvolvimentoEspecificaoVerso inicialDescrio do esbooVerso intermediriasVerso finalModelo evolucionrio (Desenvolvimento exploratrio )48Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Trabalhar junto com o cliente, a fim de explorar seus requisitos e entregar um sistema final.

O desenvolvimento se inicia com as partes do sistema que so mais bem compreendidas.Modelo evolucionrio (Desenvolvimento exploratrio )49Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O sistema evolui com o acrscimo de novas caractersticas medida que elas so propostas pelo cliente.

Importante quando difcil, ou mesmo impossvel, estabelecer uma especificao detalhada dos requisitos do sistema a priori.

Modelo evolucionrio (Desenvolvimento exploratrio )50Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Conversar com o ClienteConstruir/RevisarprottipoReviso e Testepelo ClienteModelo evolucionrio (Prottipo descartvel)51Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Obter os requisitos do cliente e, a partir disso, desenvolver uma melhor definio de requisitos para o sistema.

Concentra em fazer experimentos com partes dos requisitos que estejam mal entendidos.

Modelo evolucionrio (Prottipo descartvel)52Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Usurio define uma srie de objetos para o produto de software, mas no consegue identificar detalhes de entrada, processamento ou requisitos de sada.

O desenvolvedor est incerto sobre a eficincia de um algoritmo, a adaptao de um sistema operacional ou ainda sobre a forma da interao homem-mquina.

Modelo evolucionrio (Prottipo descartvel)53Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

PROTOTIPAOColeta e refinamento dos requisitosRefinamento do prottipoEngenharia do produtoProjeto rpidoConstruo do prottipoAvaliao do prottipo pelo clienteFim Incio 54Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Coleta e refinamento dos requisitosRefinamento do prottipoEngenharia do produtoProjeto rpidoConstruo do prottipoAvaliao do prottipo pelo clienteFim Incio COLETA DOS REQUISITOS:

desenvolvedor e cliente definem os objetivos gerais do software, identificam quais requisitos so conhecidos e as reas que necessitam de definies adicionaisPROTOTIPAO55Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Coleta e refinamento dos requisitosRefinamento do prottipoEngenharia do produtoProjeto rpidoConstruo do prottipoAvaliao do prottipo pelo clienteFim Incio PROJETO RPIDO:representao dos aspectos do software que so visveis ao usurio (abordagens de entrada e formatos de sada)PROTOTIPAO56Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Coleta e refinamento dos requisitosRefinamento do prottipoEngenharia do produtoProjeto rpidoConstruo do prottipoAvaliao do prottipo pelo clienteFim Incio CONSTRUO PROTTIPO:Implementao do projeto rpido serve como o primeiro sistema - recomendado que se jogue fora futuramentePROTOTIPAO57Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Coleta e refinamento dos requisitosRefinamento do prottipoEngenharia do produtoProjeto rpidoConstruo do prottipoAvaliao do prottipo pelo clienteFim Incio AVALIAO DO PROTTIPO:Cliente e desenvolvedor avaliam o prottipo

PROTOTIPAO58Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Coleta e refinamento dos requisitosRefinamento do prottipoEngenharia do produtoProjeto rpidoConstruo do prottipoAvaliao do prottipo pelo clienteFim Incio REFINAMENTO DOS REQUISITOS:Cliente e desenvolvedor refinam os requisitos do software a ser desenvolvido.PROTOTIPAO59Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Coleta e refinamento dos requisitosRefinamento do prottipoEngenharia do produtoProjeto rpidoConstruo do prottipoAvaliao do prottipo pelo clienteFim Incio CONSTRUO PRODUTO:identificados os requisitos, o prottipo deve ser descartado e a verso de produo deve ser construda considerando os critrios de qualidade.PROTOTIPAO60Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Contribuies e problemas do modelo evolutivoContribuies:Sistemas pequenos til quando os requisitos esto obscurosEspecificao construda gradativamentePossibilitam um rpido desenvolvimento da aplicaoTestes podem ser mais efetivos.

61Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problemas:O processo no visvel

Os sistemas so frequentemente mal-estruturados e mal-documentados

Processo no claro, dificuldade de planejamento e gerenciamentoContribuies e problemas do modelo evolutivo62Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problema (cont):

Cliente no sabe que o software que ele v, no considerou, durante o desenvolvimento, a qualidade global e a manutenibilidade a longo prazo.

No aceita bem a idia que a verso final do software vai ser construda e fora a utilizao do prottipo como produto final.

Contribuies e problemas do modelo evolutivo63Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problema (cont)

Desenvolvedor frequentemente faz uma implementao comprometida (utilizando o que est disponvel) com o objetivo de produzir rapidamente um prottipo.

Contribuies e problemas do modelo evolutivo64Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

incremento 2Engenharia de Sistemas / InformaoAnliseProjeto Codificao Testes AnliseProjeto Codificao Testes AnliseProjeto Codificao Testes AnliseProjeto Codificao Testes incremento 1incremento 3incremento 4produto liberadodo incremento 1produto liberadodo incremento 2produto liberadodo incremento 3produto liberadodo incremento 4Modelo Incremental65Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo IncrementalCombina elementos do Modelo Linear com a filosofia da Prototipao.Aplica sequncias lineares numa abordagem de saltos medida que o tempo progride.Cada sequncia linear produz um incremento do software (proc. de texto)66Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O processo se repete at que um produto completo seja produzido.

Difere da Prototipao, pois a cada incremento produz uma verso operacional do software.Modelo Incremental67Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Vantagens do desenvolvimentoincremental Entrega acelerada dos servios de cliente.Cada incremento fornece a funcionalidade de mais alta prioridade para o cliente.

Engajamento do usurio com o sistema. Os usurios tm de estar envolvidos no processo de desenvolvimento, o que significa que o sistema muito provavelmente atender aos seus requisitos, e que os usurios estaro mais comprometidos com ele.68Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problemas com desenvolvimentoincremental Problemas de gerenciamentoO progresso pode ser difcil de julgar e os problemas, difceis de serem encontrados, porque no h documentao que mostre o que foi feito.

Problemas contratuaisO contrato normal pode incluir uma especificao; sem uma especificao, formulrios diferentes de contrato tm de ser usados.69Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problemas de validaoSem uma especificao, contra o que o sistema est sendo testado. Problemas de manutenoMudanas contnuas tendem a corromper a estrutura do software, o que torna mais dispendioso mudar e evoluir para atender aos novos requisitos.Problemas com desenvolvimentoincremental70Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Planejamento Engenharia Anlise de RiscoAvaliao do cliente 1243Modelo espiral(Boehm)71Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo espiral(Boehm)Desenvolvido para englobar as melhores caractersticas do ciclo de vida clssico e do paradigma evolutivo.

So avaliados riscos explicitamente e so solucionados ao longo do processo.

Processo representado como uma espiral em lugar de ser representado como uma sequncia de atividades

72Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Cada loop na espiral representa uma fase do processo de software. No existem fases fixas.

Engloba as melhores caractersticas do ciclo de vida Clssico como o da Prototipao, adicionando um novo elemento: a ANLISE DOS RISCOS Modelo espiral(Boehm)73Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo espirais (Funcionamento) medida que a volta na espiral acontece, verses mais completas do software vo sendo progressivamente construda.

Durante a primeira volta, so definidos objetivos, alternativas e restries.

Se a anlise de risco indicar que h incerteza nos requisitos, a prototipao pode ser usada para auxiliar o desenvolvedor e o usurio.

O usurio avalia o produto e faz sugestes de modificaes.

74Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Planejamento Engenharia Anlise de riscoAvaliao do cliente Coleta inicial dos requisitos e planejamento do projetoPlanejamento baseado nos comentrios do clienteModelo Espiral75Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

So identificados objetivos especficos, tais como desempenho e funcionalidade.

So determinadas alternativas para atingir estes objetivos.

So identificadas restries do processo e do produto e elaborado um relatrio de gesto detalhado.Modelo Espiral76Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo EspiralPlanejamento Engenharia Anlise de riscoAvaliao do cliente Deciso de prosseguir/no prosseguirPara cada risco do projeto identificado em planejamento levada a cabo uma anlise detalhada.77Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Planejamento Engenharia Anlise de riscoAvaliao do cliente Na direo de um sistema concludoProttipo de software inicialSistema construdo pela engenhariaModelo Espiral78Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Planejamento Engenharia Anlise de riscoAvaliao do cliente tarefas requeridas para obter um feedback do cliente baseado na avaliao da representao do software criado durante a fase de engenharia e implementado durante a fase de instalaoModelo Espiral79Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O projeto revisado e a prxima fase da espiral planejada.

Toma-se deciso sobre avanar para mais uma volta na espiral.

Se for para avanar so desenhados os planos para a prxima fase do projeto.Modelo Espiral80Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Desenvolvimento Rpido de Software Mtodos geis Extreme programming Desenvolvimento rpido de aplicaes Prototipao de software81Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Devido rpida mudana dos ambientes de negcio, os negcios devem responder s novas oportunidades e competio. Isso requer software e desenvolvimento rpido, e a entrega , frequentemente, o requisito mais crtico para sistemas de software.

Os negcios podem estar dispostos a aceitar um software de baixa qualidade se a entrega rpida e a funcionalidade essencial for possvel.Desenvolvimento Rpido de Software82Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Movimento iniciado por programadores experientes e consultores em desenvolvimento de software.

Objetivo: satisfazer o cliente entregando, rapidamente e com frequncia, sistemas com algum valor.

Os mtodos geis so, provavelmente, os mais adequados para sistemas de negcio de porte pequeno/mdio ou produtos para PC.

Mtodos geis83Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Mtodos geis A insatisfao com os overheads envolvidos nos mtodos de projeto levou criao dos mtodos geis. Esses mtodos: Enfocam o cdigo ao invs do projeto; So baseados na abordagem iterativa para desenvolvimento de software; So destinados a entregar software de trabalho e evolu-lo rapidamente para atender aos requisitos que se alteram. 84Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Princpios dos Mtodos geisEnvolvimento do cliente

Seu papel fornecer e priorizar novos requisitos do sistema e avaliar as iteraes do sistema.Clientes devem ser profundamente envolvidos no processo de desenvolvimento.85Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Entrega incremental

O software desenvolvido em incrementos e o cliente especifica os requisitos a serem includos em cada incremento.Princpios dos Mtodos geis86Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Pessoas, no processo

As habilidades da equipe de desenvolvimento devem ser reconhecidas e exploradas. Os membros da equipe devem desenvolver suas prprias maneiras de trabalhar sem processos prescritivos.Princpios dos Mtodos geis87Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Aceite as mudanas

Projete o sistema para acomodar mudanas.

Mantenha a simplicidade

Elimine a complexidade do sistema.Princpios dos Mtodos geis88Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Problemas com Mtodos geis Difcil manter o interesse dos clientes que esto envolvidos no processo.

Os membros da equipe podem ser inadequados para o intenso envolvimento que caracteriza os mtodos geis.89Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

A priorizao de mudanas pode ser difcil onde existem mltiplos stakeholders.

A manuteno da simplicidade requer trabalho extra.

Problemas nos contratos.Problemas com Mtodos geis90Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Extreme Programming talvez o mais conhecido e mais amplamente usado dos mtodos geis. A extreme programming (XP) leva uma abordagem extrema para desenvolvimento iterativo. 91Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Novas verses podem ser compiladas vrias vezes por dia. Os incrementos so entregues para os clientes a cada 2 semanas. Todos os testes devem ser realizados para cada nova verso.Extreme Programming92Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Os 4 valores de XP

Comunicao

Simplicidade

Retorno (feedback)

Coragem93Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Extreme Programming A quem se destina Grupos de 2 a 10 programadores Projetos de 1 a 36 meses (calendrio) De 1000 a 250 000 linhas de cdigo Papis: Programadores foco central (sem hierarquia) Treinador ou Tcnico (coach) Acompanhador (tracker) Cliente94Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Extreme Programming Treinador ou Tcnico (coach) Em geral, o mais experiente do grupo. Identifica quem bom no que. Comunica-se com outros gerentes e diretoria.

Concentra-se na execuo e evoluo tcnica do projeto.95Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Eventualmente faz programao pareada.

No desenha arquitetura, apenas chama a ateno para oportunidades de melhorias.

Seu papel diminui medida em que o time fica mais maduro.Extreme Programming Treinador ou Tcnico (coach) 96Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Extreme Programming Tracker (Acompanhador)Coleta estatsticas sobre o andamento do projeto. Alguns exemplos:Nmero de histrias definidas e implementadas.Nmero de unit tests.Nmero de testes funcionais definidos e funcionando.Nmero de classes, mtodos, linhas de cdigo

Mantm histrico do progresso. Faz estimativas para o futuro.97Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Um Dia na Vida de umProgramador XP Escolhe uma histria do cliente.

Procura um par livre.

Escolhe um computador para programao pareada (pair programming).

Seleciona uma tarefa claramente relacionada a uma caracterstica (feature) desejada pelo cliente.98Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O ciclo de release em XP

99Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Prticas do Extreme ProgrammingPlanejamento Incremental Registrados em cartes de histrias

Pequenos releases Conjunto mnimo til de funcionalidade desenvolvido.100Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Projeto simples Projeto suficiente para atender aos requisitos atuais.

Desenvolvimento test-first Uso um framework automatizado.

Prticas do Extreme Programming101Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Refactoring Espera-se que todos os desenvolvedores recriem o cdigo continuamente.

Programao em pares Os desenvolvedores trabalham em pares.Prticas do Extreme Programming102Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Propriedade coletiva Os pares trabalham em todas as reas do sistema.

Integrao contnua Tarefa concluda automaticamente integrada ao sistema.Prticas do Extreme Programming103Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Ritmo sustentvel No aceitar grande quantidade de horas extras.

Cliente on-site Um usurio do sistema deve estar disponvel em tempo integral..Prticas do Extreme Programming104Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Cenrios de requisitos Em um processo XP, os requisitos de usurios so expressos como cenrios ou histrias de usurios.

Essas histrias so escritas em cartes, e a equipe de desenvolvimento quebra-os em tarefas de implementao. Essas tarefas so as bases das estimativas de cronograma e de custo.

O cliente escolhe as histrias para incluso no prximo release, baseado nas suas prioridades e nas estimativas de cronograma.105Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Carto de estria para baixardocumentos

106Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Programao Pareada Erro de um detectado imediatamente pelo outro (grande economia de tempo). Maior diversidade de idias, tcnicas, algoritmos.Enquanto um escreve, o outro pensa em contra exemplos, problemas de eficincia, etc. (Vergonha de escrever cdigo feio (gambiarras) na frente do seu par).107Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Propriedade Coletiva do Cdigo Padres de estilo adotados pelo grupo inteiro.

O mais claro possvel.

XP no se baseia em documentaes.

Comentrios sempre que necessrios e padronizados.108Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O cdigo do XP pertence a todos.

Todo cdigo integrado e testado depois de algumas horas, um dia no mximo.Propriedade Coletiva do Cdigo109Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

XP e mudanas A sabedoria convencional na engenharia de software projetar para mudana. Vale despender tempo e esforo antecipando mudanas quando isso reduz custos posteriores no ciclo de vida. 110Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O XP, contudo, mantm que isto no vale a pena quando as mudanas no podem ser confiavelmente previstas.

Por outro lado, ele prope melhorias constantes de cdigo (refactoring), para tornar as mudanas mais fceis quando elas tm de ser implementadas.XP e mudanas111Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Quando XP No Deve SerExperimentada? Quando o cliente no aceita as regras do jogo.

Quando o cliente quer uma especificao detalhada do sistema antes de comear.

Quando os programadores no esto dispostos a seguir (todas) as regras.

Se (quase) todos os programadores do time no so experientes.112Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Grupos grandes (>10 programadores).

Quando feedback rpido no possvel:

sistema demora 6h para compilar. testes demoram 12h para rodar. exigncia de certificao que demora meses.

Quando o custo de mudanas essencialmente exponencial.

Quando no possvel realizar testes (muito raro).

Quando XP No Deve SerExperimentada?113Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Modelo de Mtodos Formais

Um modelo de sistema matemtico transformado formalmente em uma implementao114Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Compreende um conjunto de atividades que determinam uma especificao matemtica para o software.

A especificao de requisitos de software redefinida em uma especificao formal detalhada, que expressa em uma notao matemtica.

Modelo de Mtodos Formais115Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Riscos na integrao dos sub-sistemas Modelo Cascata

Riscos significativos na interface com o utilizador Desenvolvimento evolutivo.

Riscos de segurana Desenvolvimento Formal

Escolher um modelo de desenvolvimento para o sistema 116Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Tcnicas de 4a GeraoObteno dos RequisitosEstratgia de Projeto Implementao usando 4GL Testes 117Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Concentra-se na capacidade de se especificar o software a uma mquina em um nvel que esteja prximo linguagem natural.

Engloba um conjunto de ferramentas de software que possibilitam que:

o sistema seja especificado em uma linguagem de alto nvel e o cdigo fonte seja gerado automaticamente a partir dessas especificaes

Tcnicas de 4a Gerao118Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

O ambiente de desenvolvimento inclui as ferramentas:linguagens no procedimentais para consulta de banco de dadosgerao de relatriosmanipulao de dadosinterao e definio de telasgerao de cdigoscapacidade grfica de alto nvelcapacidade de planilhas eletrnicas

Tcnicas de 4a Gerao119Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Atividades das Tcnicas de 4a GeraoObteno dos RequisitosEstratgia de Projeto Implementao usando 4GL Testes 120Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

OBTENO DOS REQUISITOS: o cliente descreve os requisitos os quais so traduzidos para um prottipo operacional

O cliente pode estar inseguro quanto aos requisitosO cliente pode ser incapaz de especificar as informaes de um modo que uma ferramenta 4GL possa consumirAtividades das Tcnicas de 4a Gerao121Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Obteno dos RequisitosEstratgia de Projeto Implementao usando 4GL Testes Atividades das Tcnicas de 4a Gerao122Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

ESTRATGIA DE "PROJETO": para pequenas aplicaes possvel mover-se do passo de Obteno dos Requisitos para o passo de Implementao Para grandes projetos necessrio desenvolver uma estratgia de projeto. De outro modo ocorrero os mesmos problemas encontrados quando se usa abordagem convencional (baixa qualidade, manutenibilidade ruim, m aceitao do cliente) Atividades das Tcnicas de 4a Gerao123Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Obteno dos RequisitosEstratgia de Projeto Implementao usando 4GL Testes Atividades das Tcnicas de 4a Gerao124Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

IMPLEMENTAO USANDO 4GL: os resultados desejados so representados de modo que haja gerao automtica de cdigo. Atividades das Tcnicas de 4a Gerao125Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Obteno dos RequisitosEstratgia de Projeto Implementao usando 4GL Testes Atividades das Tcnicas de 4a Gerao126Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

TESTE: o desenvolvedor deve efetuar testes e desenvolver uma documentao significativa. O software desenvolvido deve ser construdo de maneira que a manuteno possa ser efetuada prontamente.Atividades das Tcnicas de 4a Gerao127Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio

Combinando Paradigmasobteno preliminar dos requisitosmodelo espiral

tcnicas 4G

prototipao

anlise dos requisitos

projeto

codificao

testes

Manuteno

tcnicas 4Gtcnicas 4G

modelo espiral:ensima interao

prototipaoensima interaoSistema Completo128Profa. Maria AuxiliadoraFonte: PRESSMAN, ROGER - Engenharia de Software - 6 EdioSOMMERVILLE - Engenharia de Software - 8 Edio