Engenharia de Software

Slides:



Advertisements
Apresentações semelhantes
Manutenção em software Conceitos básicos
Advertisements

Engenharia de Software
Engenharia de Software
ISO Processos do Ciclo de Vida do Software
Gerência de Projetos Wesley Peron Seno Introdução
Débora da Silva Orientadora: Maria Inés Castiñeira
Engenharia de Software
Prof.ª Adriana dos Santos Caparróz Carvalho
Engenharia de Software
Modelos de Processos de desenvolvimento de Software
Engenharia de Software Engenharia de Software Prof. Inês Ap. Gasparotto Boaventura 1. Semestre/2001.
INTRODUÇÃO A INFORMÁTICA
FACULDADE DOS GUARARAPES
Mitos e Problemas Relacionados ao Software
Computer Aided Software Engineering
CK 119: Engenharia de Software DC/CC/UFC © Rossana Andrade, Setembro CK119: Engenharia de Software Rossana Andrade Ph.D, SITE, University of Ottawa,
Adélia Barros Introdução à Engenharia de Software Modelos de Processo Adélia Barros
Processos de Desenvolvimento de Software
Processo Desenvolvimento de Software Tradicional
Engenharia de Software
Como Desenvolver Sistemas de Informação
Gerencia de Projeto OO Aspectos Avançados em Engenharia de Software Aula 5 Fernanda Campos DCC/UFJF.
Modelos de Processos de Software
Engenharia de Software
Processos de Software II
MANUTENÇÃO DE SOFTWARE
Desafios do desenvolvimento de software
Prof.Alfredo Parteli Gomes
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
Fundamentos de Engenharia de Software
Engenharia de Software
Software e Engenharia de Software ENGENHARIA DE SOFTWARE - PRESSMAN
Desenvolvimento Rápido de Aplicação (RAD)
Modelos de Processo de Software
Engenharia de Software
Técnicas e Projeto de Sistemas
PSBD II Projeto de Sistemas de Banco de Dados II
Software – Técnicas e Aplicações
Introdução à Engenharia de Software
Engenharia de Software
Engenharia de Software
Engenharia de Software
Engenharia de Software
METODOLOGIA, MÉTODOS E FERRAMENTAS
Processos de Software.
Processos de Software.
Técnicas e Projeto de Sistemas
Gestão de projetos de Software GTI-16
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
Engenharia de Software
Gerenciamento de Requisitos e Modelagem de sistemas
Engenharia de Software
Erton W. Vieira Metodologias Ágeis, Qualidade de Software e Design Centrado no usuário: Pontos de Interação Erton W. Vieira.
Aula 02 de Eng. de Requisitos
Professora: Kelly de Paula Cunha
APSI II Análise e Projeto de Sistemas de Banco de Dados II.
Engenharia de Software
Apresentação Leonardo Brussolo de Paula
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.
Engenharia de Software Conceitos e elementos 1. Engenharia   Resolução de problemas através de soluções economicamente viáveis  Motivacão: Limitação.
Transcrição da apresentação:

Engenharia de Software Slide 05 – Modelos de Processos Juliano Amorim de Oliveira juliano.oliveira@gmail.com Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas

Retomando a aula passada… Características do software Evolução do sofware Crise do software Mitos do software

Por que surgiu a Engenharia de Software?

Resposta à Crise de Software Engenharia de Software A aplicação de uma abordagem sistemática, disciplinada e possível de ser medida para o desenvolvimento, operação e manutenção do software (IEEE)

Engenharia de Software Outra definição: É a criação e a utilização de sólidos princípios de engenharia a fim de obter softwares econômicos que sejam confiáveis e que trabalhem eficientemente em máquinas reais Importante: Disciplina Adaptabilidade Agilidade

Engenharia de Software Uma Tecnologia em Camadas ferramentas métodos processo foco na qualidade

Engenharia de Software Uma Tecnologia em Camadas ferramentas métodos processo foco na qualidade É o “solo” A Engenharia de Software deve se apoiar num compromisso organizacional com a qualidade.

Engenharia de Software Uma Tecnologia em Camadas ferramentas métodos processo foco na qualidade É o “alicerce” É a cola que gruda as camadas de tecnologias e permite um desenvolvimento de software racional e em tempo;

Engenharia de Software Uma Tecnologia em Camadas ferramentas métodos processo foco na qualidade É o “como fazer” Englobam um conjunto de tarefas que inclui análise de requisitos, projeto, construção de programas, teste e manutenção

Engenharia de Software Uma Tecnologia em Camadas ferramentas métodos processo foco na qualidade É o “instrumento apropriado” Dão suporte automatizado ou semi-automatizado ao processo e aos métodos; quando as ferramenta se integram tem-se um sistema denominado CASE (Computer Aided Software Engineering)

Vamos falar um pouco dos processos de software! (ou modelos de processo de software)

Fases Genéricas dos Modelos de Processo de Software DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO

Fases Genéricas dos Modelos de Processo de Software “o que” informações a serem processadas funções e desempenho desejados interfaces que devem ser estabelecidas restrições do projeto critérios de validação requeridos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO

Fases Genéricas dos Modelos de Processo de Software Análise de Sistema Planejamento do Projeto Análise de Requisitos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO

Fases Genéricas dos Modelos de Processo de Software “como” como devem ser projetadas a estrutura de dados e a arquitetura do software como os procedimentos devem ser implementados como o projeto deve ser traduzido para uma linguagem de programação como o teste deve ser executado. DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO

Fases Genéricas dos Modelos de Processo de Software Análise de Sistema Planejamento do Projeto Análise de Requisitos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Projeto Codificação Teste

Fases Genéricas dos Modelos de Processo de Software “mudanças” correções decorrentes de erros – manutenção corretiva adaptações requeridas decorrentes de alterações no meio ambiente – manutenção adaptativa melhoramentos relacionados a novas funções desejadas pelo usuário – manutenção perfectiva. DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO

Fases Genéricas dos Modelos de Processo de Software Análise de Sistema Planejamento do Projeto Análise de Requisitos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Projeto Codificação Teste Entendimento Modificação Revalidação

Fases Genéricas dos Modelos de Processo de Software DESENVOLVIMENTO Análise de Sistema Planejamento do Projeto Análise de Requisitos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Projeto Codificação Teste Entendimento Modificação Revalidação

Fases Genéricas dos Modelos de Processo de Software Análise de Sistema Planejamento do Projeto Análise de Requisitos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Projeto Codificação Teste OPERAÇÃO Entendimento Modificação Revalidação

Fases Genéricas dos Modelos de Processo de Software Análise de Sistema Planejamento do Projeto Análise de Requisitos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Projeto Codificação Teste Entendimento Modificação Revalidação MANUTENÇÃO

Na Prática Espera-se que… controlado eficiente medido PROCESSO DE SOFTWARE gerenciado definido

Modelos de Processo de Software Existem vários modelos de processo de software Cada um representa uma tentativa de colocar ordem em um conjunto de atividades complexas Pode-se citar os seguintes modelos de processo de software

Modelos de Processo de Software Modelo Seqüencial Linear (Modelo Cascata) Paradigma de Prototipação Modelo RAD (Rapid Application Development) Modelos Evolutivos de Processo de Software Modelo Incremental Modelo Espiral Modelo de Montagem de Componentes Modelo de Desenvolvimento Concorrente Modelos de Métodos Formais Técnicas de Quarta Geração

Modelo Cascata Engenharia de Sistemas Análise de Requisitos Projeto Codificação Testes Manutenção

O Modelo Cascata modelo mais antigo requer uma abordagem sistemática, seqüencial ao desenvolvimento de software o resultado de uma fase se constitui na entrada da outra

Modelo Cascata Engenharia de Sistemas Engenharia de Sistemas envolve a coleta de requisitos em nível do sistema, com análise de alto nível Análise de Requisitos Projeto Codificação Testes Manutenção

Análise de Requisitos de Software Modelo Cascata Análise de Requisitos Análise de Requisitos de Software o processo de coleta dos requisitos é intensificado e concentrado especificamente no software deve-se compreender o domínio da informação, a função, desempenho e interfaces exigidos os requisitos (para o sistema e para o software) são documentados e revistos com o cliente Engenharia de Sistemas Análise de Requisitos Projeto Codificação Testes Manutenção

Modelo Cascata Projeto tradução dos requisitos do software para um conjunto de representações que podem ser avaliadas quanto à qualidade, antes que a codificação se inicie Estrutura de Dados Arquitetura de Software Detalhes Procedimentais e Caracterização de Interfaces Engenharia de Sistemas Análise de Requisitos Projeto Codificação Testes Manutenção

Modelo Cascata Engenharia de Sistemas Codificação tradução das representações do projeto para uma linguagem “artificial” resultando em instruções executáveis pelo computador Análise de Requisitos Projeto Codificação Testes Manutenção

Modelo Cascata Concentra-se: Testes Concentra-se: nos aspectos lógicos internos do software  garantia que todas as instruções tenham sido testadas nos aspectos funcionais externos, para descobrir erros e garantir que a entrada definida produza resultados que concordem com os esperados Engenharia de Sistemas Análise de Requisitos Projeto Codificação Testes Manutenção

Modelo Cascata Manutenção provavelmente o software deverá sofrer mudanças depois que for entregue ao cliente causas das mudanças: erros, adaptação do software para acomodar mudanças em seu ambiente externo e exigência do cliente para acréscimos funcionais e de desempenho Engenharia de Sistemas Análise de Requisitos Projeto Codificação Testes Manutenção

Problemas com o Modelo Cascata Projetos reais raramente seguem o fluxo seqüencial que o modelo propõe Logo no início é difícil estabelecer explicitamente todos os requisitos  no começo dos projetos sempre existe uma incerteza natural O cliente deve ter paciência  uma versão executável do software só fica disponível numa etapa avançada do desenvolvimento

Modelo Cascata Embora o Modelo Cascata tenha fragilidades, ele é significativamente melhor do que uma abordagem casual ao desenvolvimento de software.

Bibliografia PRESSMAN, ROGER S. Engenharia de Software. 5ª edição. Rio de Janeiro: McGraw-Hill, 2002. SOMERVILLE, IAN. Engenharia de Software. 6ª edição. São Paulo: Addison Wesley, 2003.