Modelos de Processos de Software

Slides:



Advertisements
Apresentações semelhantes
Engenharia de Software
Advertisements

Engenharia de Software
Engenharia de Software
Gerência de Projetos Wesley Peron Seno Introdução
Engenharia de Software
Participantes do Processo de Desenvolvimento de Software
Engenharia de Software
Prototipação de Software
Engenharia de Software
Prototipação de Software
Rational Unified Process(RUP)
Engenharia de Software
Modelos de Processos de desenvolvimento de Software
Centrado na arquitetura
INTRODUÇÃO A INFORMÁTICA
FACULDADE DOS GUARARAPES
Adélia Barros Introdução à Engenharia de Software Modelos de Processo Adélia Barros
Processos de Desenvolvimento de Software
Processo Desenvolvimento de Software Tradicional
SISTEMA DE INFORMAÇÕES DESENVOLVIMENTO DE SISTEMAS
Análise Estruturada O mais amplamente usado dos métodos de modelagem de requisitos Modelos que retratam fluxo e o conteúdo da informação (dados e controle)
Engenharia de Software
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
Como Desenvolver Sistemas de Informação
Engenharia de Software
Processos de Software II
ANÁLISE DE REQUISITOS DE ENGENHARIA DE SOFTWARE
Adélia Barros Revisão Adélia Barros
Equipe: Renan Ribeiro Thiago Abritta
Desafios do desenvolvimento de software
Fundamentos de Engenharia de SW
Cap 2 – Processo de Software
ENGENHARIA DE SOFTWARE José Manuel de Sacadura Rocha
Processos de Software Profa. Cintia Carvalho Oliveira
Engenharia de Software Professor Mário Dantas
Engenharia de Software
Análise e Projeto de Sistemas
Fundamentos de Engenharia de Software
Engenharia de Software
Modelos de Processo de Software
Técnicas e Projeto de Sistemas
PSBD II Projeto de Sistemas de Banco de Dados II
O Processo de desenvolvimento de software
Introdução à Engenharia de Software
Engenharia de Software
Processo de Desenvolvimento de Software
Engenharia de Software
METODOLOGIA, MÉTODOS E FERRAMENTAS
Processos de Software.
Processos de Software.
Técnicas e Projeto de Sistemas
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE AULA 5
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
Engenharia de Software
Engenharia de Software
Prototipação de Software
Gerenciamento de Requisitos e Modelagem de sistemas
Engenharia de Software
Engenharia de Software Ciclo de Vida do Software: Espiral
Engenharia de Software
Aula 02 de Eng. de Requisitos
Professora: Kelly de Paula Cunha
APSI II Análise e Projeto de Sistemas de Banco de Dados II.
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
Engenharia de Software
Desenvolvimento de Software I
Ciclo de Vida de Sistemas de Informação
Modelos de Processo de Software
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
O Processo Unificado (PU). 2 O que é o Processo Unificado (PU)? É um modelo de processo de software baseado no modelo incremental, visando a construção.
Transcrição da apresentação:

Modelos de Processos de Software Compreender os paradigmas de Software e suas etapas do processo de desenvolvimento de software

Agenda Introdução Modelo Sequencial Linear Modelo de Prototipagem Bibliografia.

Introdução Todo o desenvolvimento do software pode ser caracterizado como um ciclo de solução do problema, no qual são encontrados 4 estágios distintos: Situação atual: A definição do Problema: Desenvolvimento técnico Integração da Solução

Introdução Situação atual: “Representa o estado atual das coisas” A definição do Problema: Identifica o problema específico a ser resolvido; Desenvolvimento técnico: Resolve o problema por intermédio da aplicação de alguma tecnologia Integração da Solução: entrega os resultados, por exemplo: (Documentos, Programas, dados, nova função dos negócios, novo produto)

Modelo Sequencial Linear Também chamado de Modelo Queda D´Agua, Modelo cascata. Fases: Modelagem de Engenharia de Sistemas/Informação Análise de Requisitos de Software Projeto Geração de Código Teste Manutenção

Engenharia de Sistemas Modelo Clássico Cascata: Requer uma abordagem sistemática, sequencial: Engenharia de Sistemas Análise Projeto Codificação Teste Manutenção

Modelo Clássico Características do Modelo. Fornece uma seqüência no qual os métodos de análise, projeto, codificação, teste e manutenção podem ser situados; É um modelo amplamente usado para a Engenharia de Software; É significativamente melhor do que ter um processo aleatório.

Modelo Clássico Problemas: Projetos reais raramente seguem um fluxo sequencial que o modelo propõe. Em geral é dificil para o cliente estabelecer todos os requisitos explicitamente. O modelo sequencial exige isso e tem dificuldade de acomodar a incerteza natural que existe no começo de vários projetos O cliente precisa ter paciência. Uma versão executável do programa não vai ficar disponível até o projeto terminar.

Modelo Clássico 1-Análise e Engenharia de Sistemas: Estabelecimento de requisitos para todos os elementos do sistema; Coleta dos requisitos em nível do sistema, com uma pequena quantidade de projeto e análise de alto nível.

Modelo Clássico 2-Análise de Requisitos de Software: Intensificação da coleta dos requisitos, focando o software; Compreensão do domínio da informação, função, desempenho e interface exigidos; Requisitos são validados com os clientes.

Modelo Clássico 3-Projeto: Concentra quatro atributos: Estrutura de dados; Arquitetura de Software; Detalhes procedimentais; Caracterização de interface; Representação do software que pode ser avaliada quanto à qualidade antes da codificação.

Modelo Clássico 4-Codificação: 5-Testes: 6- Manutenção: Tradução do projeto numa forma entendível por máquina. 5-Testes: Concentram-se nos aspectos lógicos internos do software e nos aspectos funcionais externos para descobrir erros e garantir que a entrada definida produza resultados esperados. 6- Manutenção: Reaplica cada uma das etapas precedentes do ciclo de vida de a um programa existente.

Modelo de Prototipagem Utilizado quando o cliente não definiu detalhadamente os requisitos de entrada, processamento e saída; Capacita o desenvolvedor criar um modelo do software que será implementado: 1. um protótipo em papel ou um modelo baseado em PC que retrata a interação homem-máquina; 2. um protótipo de trabalho que implementa algum subconjunto da função exigida do software desejado; 3. um programa existente que executa parte ou toda a função desejada, mas tem características que serão melhoradas;

Modelo de Prototipagem Início Coleta e refinamento dos requisitos Orientação: jogar o protótipo fora. Fim Engenharia do produto Projeto rápido Construção do protótipo Refinamento do protótipo Avaliação do protótipo pelo cliente

Modelo de Prototipagem O paradigma de software começa com a definição de requisitos. O desenvolvedor e o cliente encontram-se e definem os objetivos gerais do software, identificam necessidades conhecidas e delineiam áreas que necessitam de mais definições. Um projeto rápido é desenvolvido O protótipo é avaliado pelo cliente/usuário e usado para refinar os requisitos do software que será desenvolvido. Interações ocorrem a medida que o prototipo é ajustado para satisfazer as necessidades do cliente, enquanto que ao mesmo tempo, permitem ao desenvolvedor entender melhor o que precisa ser feito.

Modelo de Prototipagem Protótipo pode servir como “o primeiro sistema”. É usado quando: O cliente, define um conjunto de objetivos gerais para o software e não identifica detalhadamente requisitos de entrada, processamento ou saida; O desenvolvedor pode estar inseguro da eficiencia de um algoritmo, da adptabilidade de um sistema operacional ou da forma de interação HomemXMáquina deve assumir.

Modelo de Prototipagem Problemas: O Cliente vê o que parece ser uma versão executável do software, ignorando que o protótipo apenas consegue funcionar precariamente, sem saber de que na pressa de fazê-lo rodar ninguém considerou a qualidade global ou manutenabilidade a longo prazo.

Modelo de Prototipagem Problemas: O desenvolvedor frequentemente faz concessões na implementação a fim de conseguir rapidamente um protótipo executável. Um sistema operacional ou uma linguagem de programação inapropriada pode ser usado simplesmente por estar disponível e ser conhecidos; Um algoritmo ineficiente pode ser implementado simplesmente para demonstrar uma possibilidade.

Modelo Espiral Desenvolvido para abranger as melhores características tanto do ciclo de vida Clássico como da Prototipação; Abordagem evolutiva/evolucionária; Define 4 importantes atividades: Planejamento: determinação dos objetivos, alternativas e restrições; Análise dos Riscos: análise de alternativas e identificação/resolução de riscos; Engenharia: desenvolvimento do produto no “nível seguinte” Avaliação do Cliente: avaliação dos resultados da engenharia.

Modelo Espiral Planejamento Análise dos Riscos Avaliação do Cliente Baseada nos Requisitos iniciais Coleta inicial dos requisitos e planejamento do projeto Baseada na reação dos clientes Planejamento Baseado nos comentários do cliente Protótipo de Software inicial Sistema Construído Avaliação do Cliente Engenharia

Modelo Espiral Considerado o mais realista para o desenvolvimento de sistemas e de softwares em grande escala;

Questões 1. Indique a alternativa que retrata melhor os possíveis modelos de Ciclo de Vida: a) Pirâmide ou Triangular, Maquete e Circular. b) Clássico ou Cascata, Prototipação e Espiral. c) Estrela, Maquete e Espiral. d) Circular, Prototipação e Estrela. 2. O modelo de processo de software caracterizado por intercalar as atividades de especificação, desenvolvimento e validação, denomina-se: a) Modelo de workflow. b) Modelo de fluxo de dados c) Desenvolvimento evolucionário d) Transformação formal e) Modelo em cascata X X

3. Que modelo do ciclo de vida do paradigma da Engenharia de Software é caracterizado por ser uma abordagem que envolve a produção de versões iniciais de um sistema futuro com o qual se pode realizar verificações e experimentações para se avaliar algumas de suas qualidades antes que o sistema venha realmente a ser construído. (Copel,2009) a) Espiral b) Clássico c) Prototipação d) Circular e) Cascata 4. A respeito da Engenharia de Software: (ANTAQ, 2009) O modelo em espiral, que descreve o processo de desenvolvimento de um software, apresenta uma espiral em que cada loop representa uma fase distinta desse processo. A ausência de risco neste modelo o diferencia dos demais modelos de software. X F

5. A prototipação se constitui em uma abordagem comumente usada para elicitação e validação de requisitos. (SERPRO, 2005) V

Referências PRESSMAN, Roger S. Engenharia de Software. Editora Makron Books, 1995.