introdução à engenharia de software - deinf/ufmamaria/arqan/2013-2/cap1-introd.pdf · 9.5...
TRANSCRIPT
![Page 1: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/1.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
1
Introdução à
Engenharia de Software
![Page 2: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/2.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Conceitos de Engenharia de Software.
Produto e processo de desenvolvimento
de software. Extração, análise e especificação
de requisitos. Métodos de desenvolvimento de
software. Verificação, validação e manutenção
de especificações de software. Planejamento
e gestão de projetos. Estimativas: métricas e
modelos de custo, estudo de viabilidade
Engenharia de Software
Ementa
2
![Page 3: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/3.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Engenharia de Software
Programa
1. INTRODUÇÃO
1.1 Definições e Objetivos 1.2 Conceitos Básicos 1.3 Características do Software 1.4 Componentes e Aplicações do Software
3
![Page 4: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/4.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Engenharia de Software
Programa
2. PROCESSO DE SOFTWARE 2.1 Modelo de Processo 2.2 Ciclo de Vida Clássico/Modelo Cascata 2.3 Modelo Evolucionário 2.4 Modelo Espiral 2.5 Técnicas de Quarta Geração 2.6 Desenvolvimento Rápido de Software 2.7 Combinando Paradigmas
4
![Page 5: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/5.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
3. REQUISITOS DE SOFTWARE 3.1 Classificação de requisitos 3.2 Técnicas de extração de requisitos 3.3 Documento de requisitos de software 3.4 Processos de Engenharia de Requisitos
Engenharia de Software
Programa
5
![Page 6: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/6.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
4. GERENCIAMENTO DE CUSTO 4.1 Planejamento 4.2 Estudo de Viabilidade 4.3 Estimativa 4.4 Métricas de Software 4.5 Gerenciamento de Pessoal 4.6 Gerenciamento de Grupos
Engenharia de Software
Programa
6
![Page 7: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/7.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
5. MODELOS DE SISTEMA
5.1 Modelos de Contexto 5.2 Modelos de Comportamento 5.3 Métodos Estruturados 5.4 Métodos Orientado a Objeto
– Casos de Uso
Engenharia de Software
Programa
7
![Page 8: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/8.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
6. MODELO PARA PROJETO 6.1 Hierarquia de módulos e objetos 6.2 Estratégias para derivar o projeto 6.3 Qualidade do projeto: coesão, acoplamento
Engenharia de Software
Programa
8
![Page 9: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/9.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
7. MODELO DE DADOS
7.1 Diagrama de Entidade e Relacionamento 7.2 Tipos de Entidades 7.3 Tipos de Relacionamento 7.4 Normalização
Engenharia de Software
Programa
9
![Page 10: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/10.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
8. VERIFICAÇÃO, VALIDAÇÃO E TESTE
8.1 Planejamento de verificação e validação 8.2 Inspeções de Software 8.3 Teste de Software
Engenharia de Software
Programa
10
![Page 11: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/11.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
9. EVOLUÇÃO DE SOFTWARE
9.1 Manutenção de Software 9.2 Tipos de Manutenção 9.3 Previsão de mudanças 9.4 Processo de Evolução 9.5 Evolução de Sistemas Legados
Engenharia de Software
Programa
11
![Page 12: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/12.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
10. GERENCIAMENTO DE QUALIDADE 10.1 Qualidade de Processo e de Produto 10.2 Padrões de Qualidade 10.3 Controle de Qualidade
Engenharia de Software
Programa
12
![Page 13: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/13.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Engenharia de Software
Bibliografia Básica ― Sommerville, Ian, Engenharia de Software.
Ed. Addison Wesley, 8º Edição ― PRESSMAN, ROGER, Engenharia de Software.
Ed. Mc-Graw Hill, 6º Edição, 2006. ― POMPILHO, S. Análise Essencial – Guia Prático
de Análise de Sistemas. Ed. Infobook, 1995.
13
![Page 14: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/14.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Engenharia de Software
Bibliografia de Apoio ― http://wps.prenhall.com/br_pfleeger_engsoftware_2 ― www.aw.com/sommerville_br ― http://www.computer.org/portal/web/swebok/html/copyright
14
![Page 15: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/15.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Engenharia de Software
15
Data Assunto
10 Avaliação 18/12/2012 Trabalho 1 – projeto parte1
Prova 1 cap1 – cap2 – cap3 – cap4
20 Avaliação 29/01/2013 Trabalho 2 – projeto parte2
Prova 2 cap5 – cap6 – cap7
30 Avaliação 26/02 a 05/03
07/03/2013 Trabalho 3 – seminário
Prova 3 cap8 – cap9 – cap10
– assunto do seminário
Reposição 12/03/2012
Prova Final 14/03/2012
![Page 16: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/16.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Objetivos
• Compreender o que é Engenharia de Software e por que ela é importante.
• Mostrar as distinções e relacionamentos entre sistema e software.
• Mostrar as principais questões sobre engenharia software.
• Compreender questões profissionais e éticas relevantes para os engenheiros de software.
16
![Page 17: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/17.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Por que?
• Por que tanta demora para entregar o sistema?
• Por que os prazos se atrasam?
• Por que os custos são altos?
• Por que não achar todos os erros antes de entregar?
• Por que é difícil medir o progresso do desenvolvimento de um software?
17
![Page 18: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/18.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
No mercado atual, não há dúvida de que os profissionais de TI envolvidos com projetos de
desenvolvimento de software e soluções corporativas têm um
claro desafio:
18
Desafio
![Page 19: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/19.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
19
PRODUZIR soluções mais rápidas, melhores e mais baratas
que antes (melhor ainda ser mais rápidas, melhores e mais baratas
que a concorrência)
Desafio
![Page 20: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/20.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Desenvolver software é um problema de métodos e técnica, em suma, de atividade humana.
• Gerenciar projetos de TI é gerenciar riscos assumidos e vencidos por seres humanos inteligentes.
20
Desafio
![Page 21: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/21.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Evolução do Software
Período Evolução
1950-1960 Orientação a batch
Software totalmente customizado
Distribuição limitada
1960-1970 Multiusuários
Tempo Real
Banco de Dados
21
![Page 22: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/22.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Desafio
Período Evolução
1980-1990 Sistemas distribuídos
Inteligência Embutida
Hardware de baixo custo
1990-2000 Sistemas de desktop poderosos
Tecnologia orientada a objeto
Sistemas Especialistas....
22
![Page 23: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/23.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Desafio
Período Evolução
2000 - atual As tecnologias orientadas a
objetos
Uso das técnicas de "quarta
geração" para o
desenvolvimento de software
Os sistemas especialistas e o
software de inteligência
artificial.
23
![Page 24: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/24.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Aplicação do Software
Básico Coleção de programas escritos para
apoio a outros programas.
Tempo Real Software que monitora / analisa /
controla eventos do mundo real.
Comercial Processa informações comerciais,
reestruturação de dados para tomada
de decisões.
Científico
e de
engenharia
Algoritmos de processamento de
números(astronomia,vulcanologia).
24
![Page 25: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/25.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Aplicação do Software
Embutido
usado para controlar produtos e
sistemas para os mercados
industriais e de consumo.
Computador
Pessoal
Processamento de textos, planilhas,
computação gráfica.
Inteligência
Artificial
faz uso de algoritmos não numéricos
para resolver problemas que não
sejam favoráveis à computação ou à
análise direta.
25
![Page 26: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/26.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
O que é Sistema?
é um conjunto de elementos inter-
dependentes que realizam
operações visando atingir metas
especificadas.
26
![Page 27: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/27.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Sistema de Computação
é aquele destinado ao suporte ou
automação de tarefas através de
processamento de informações.
27
![Page 28: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/28.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Componentes de Sistemas de Computação
Hardware Computadores,periféricos e
redes.
Software
Os programas e arquivos
de dados.
Usuários
Usuários e operadores que
realizam as tarefas e
procedimentos.
28
![Page 29: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/29.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Componentes de Sistemas de Computação (cont.)
Procedimentos
Atividades realizadas
pelos usuários e
operadores, bem como
pelos programas.
Documentação
Manuais e formulários que
descrevem as operações
do sistema.
29
![Page 30: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/30.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Exemplos de Sistemas Computacionais
• Automação Bancária
• Frequência e Folha de Pagamento
• Controle de Tráfego Urbano
• Controle Acadêmico
• Editoração de Jornais e Revistas
• Controle de Elevadores
• Automação de Biblioteca
30
![Page 31: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/31.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
O que é Software?
• Programas de computadores associados a documentação.
• É um conjunto de soluções algorítmicas, codificadas numa linguagem de programação, executado numa máquina real.
31
![Page 32: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/32.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Tipos de produtos de software
• Genéricos (COTS – Commercial Off-The Shelf) - tipo stand-alone, pacotes de software, como por exemplo, processadores de texto, ferramentas de gerenciamento.
• Sob encomenda ( personalizado) –
desenvolvido para um cliente em particular.
32
![Page 33: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/33.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Componentes do Software
Plano Especificação
de Requisitos
Projeto Listagem
Plano de
Testes
Estruturas
de Dados
Programa
Funcionando
33
![Page 34: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/34.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Características do Software
• Complexidade
• Conformidade
• Mutabilidade
34
![Page 35: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/35.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Características do Software
• Complexidade
– Software é mais complexo do que qualquer outro produto construídos por seres humanos.
35
![Page 36: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/36.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Características do Software • Conformidade
– O software deve ser desenvolvido conforme o ambiente. Não é o ambiente que deve se adaptar ao software.
–Desenvolvido ou projetado por engenharia, não manufaturado no sentido clássico (industrial).
–Sucesso é medido pela qualidade e não quantidade.
36
![Page 37: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/37.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Características do Software
• Mutabilidade – Existe sempre uma pressão para se
fazer mudanças em um software. –Não se “desgasta”, mas se deteriora
devido as mudanças. –A maioria é feita sob medida em vez de
ser montada a partir de catálogos de componentes existentes (reusabilidade de software).
37
![Page 38: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/38.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Falhas do Hardware
tempo
“desgaste” “mortalidade infantil”
índice
de
falhas
Defeitos de projeto e manufatura
Problemas
Ambientais
(poeira, vibração,
abuso, temperaturas, ...)
38
![Page 39: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/39.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Falhas do Software
mudanças
índice de
falhas
curva real
curva idealizada
tempo
39
![Page 40: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/40.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Falhas do Hardware/Software • Quando um componente de hardware se
desgasta é substituído por uma “peça de reposição”
• Não existe “peça de reposição” para software
– Toda falha indica um erro no projeto ou no processo de tradução para o código executável
–Manutenção do software é mais complexa do que a do hardware
40
![Page 41: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/41.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Formas do Software
41
![Page 42: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/42.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Crise do Software
• Refere-se a um conjunto de problemas encontrados no desenvolvimento de software.
• Problemas não se limitam a softwares que não funcionam
adequadamente.
42
![Page 43: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/43.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Crise do Software
• Prazos ultrapassados
• Custos acima do previsto
• Não atendimento dos requisitos do usuário
43
![Page 44: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/44.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Elevado custo de manutenção
–1/3 dos projetos são cancelados
–2/3 dos projetos extrapolam o orçamento
• Custo hardware x software
– 1970 = 8:2
– 1991 = 2:8
– Hoje = 1:9 44
Crise do Software
![Page 45: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/45.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• As estimativas de prazo e de custo são imprecisas: – Não dedicamos tempo para coletar dados sobre o processo de desenvolvimento de software – Estimativas são feitas a olho, com resultados ruins –Os prazos arrastam-se por meses
45
Crise do Software
![Page 46: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/46.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• As estimativas de prazo e de custo são imprecisas (cont.) – Causa insatisfação para o cliente e falta de confiança. – Sem nenhuma indicação sólida de produtividade, não podemos avaliar com precisão a eficácia de novas ferramentas, métodos ou padrões.
46
Crise do Software
![Page 47: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/47.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Crise do Sofware
• A produtividade das pessoas da área
de software não tem acompanhado a
demanda por seus serviços
– Os projetos de desenvolvimento de software normalmente são efetuados apenas com um vago indício das exigências do cliente
47
![Page 48: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/48.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Crise do Sofware
• O software existente é muito difícil de manter:
– A tarefa de manutenção devora o orçamento destinado ao software
– A facilidade de manutenção não foi
enfatizada como um critério
importante.
48
![Page 49: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/49.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Crise do Sofware
Solução para a Crise do Sofware
Engenharia de Software aliada a:
TÉCNICAS E FERRAMENTAS
49
![Page 50: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/50.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Causas dos problemas associados à crise de software
• Filosofia do Software.
• Falhas das Pessoas Responsáveis pelo Desenvolvimento de Software.
• Mitos do Software.
50
![Page 51: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/51.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Filosofia do Software
O software é um elemento de sistema
lógico e não físico. Consequentemente, o sucesso é medido
pela qualidade de uma única entidade e
não pela qualidade de muitas entidades manufaturadas.
51
![Page 52: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/52.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Falhas das Pessoas Responsáveis pelo Desenvolvimento de Software
– Gerentes sem nenhum background em software.
– Os profissionais da área de software
têm recebido pouco treinamento
formal em novas técnicas para o
desenvolvimento de software.
– Resistência a mudanças.
52
![Page 53: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/53.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos do Software
Mitos do Administrativos, do Cliente e do Profissional
53
![Page 54: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/54.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Problemas Administrativos
• Gerentes se encontram sob pressão
– manter orçamentos – evitar que os prazos sejam ultrapassados – melhorar a qualidade
54
![Page 55: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/55.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos Administrativos
• Mito: Já temos um manual repleto de padrões e procedimentos para a construção de software.
55
![Page 56: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/56.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos Administrativos
• Realidade: – Será que o manual é usado? – Os profissionais sabem que ele
existe?
– Ele reflete a prática moderna de desenvolvimento de software?
–Ele é completo?
56
![Page 57: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/57.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos Administrativos
• Mito: Meu pessoal tem ferramentas de desenvolvimento de software de última geração; afinal compramos para eles os mais novos computadores.
57
![Page 58: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/58.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos Administrativos
• Realidade: —É preciso muito mais do que os mais
recentes computadores para se fazer um desenvolvimento de software de alta qualidade.
—Ferramentas de Engenharia de Software Auxiliada por Computador - CASE (Computer-Aided Software Engineering) são mais importantes do que o hardware.
58
![Page 59: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/59.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos Administrativos
• Mito:
Se nós estamos atrasados nos
prazos, podemos adicionar mais
programadores e tirar o atraso.
59
![Page 60: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/60.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos Administrativos
• Realidade:
– O desenvolvimento de software não é um processo mecânico igual à manufatura.
– Acrescentar pessoas em um projeto torna-o ainda mais atrasado. Pessoas podem ser acrescentadas.
60
![Page 61: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/61.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos dos Clientes
• Mito: Uma declaração geral dos objetivos é suficiente para se começar a escrever programas - podemos preencher os detalhes mais tarde.
61
![Page 62: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/62.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Realidade:
–Uma definição inicial ruim é a principal causa de fracassos dos esforços de desenvolvimento de software.
–É fundamental uma descrição formal e detalhada do domínio da informação, função, desempenho, interfaces, restrições de projeto e critérios de validação.
62
Mitos dos Clientes
![Page 63: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/63.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos dos Clientes
• Mito: Os requisitos de projeto modificam-se continuamente, mas as mudanças podem ser facilmente acomodadas, porque o software é flexível.
63
![Page 64: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/64.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Realidade: – Requisitos podem ser mudados, mas o
impacto varia de acordo com o tempo que é introduzido (projeto e custo).
– Uma mudança, quando solicitada tardiamente num projeto, é mais dispendiosa do que a mesma mudança solicitada nas fases iniciais.
64
Mitos dos Clientes
![Page 65: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/65.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos do Profissional
• Mito: Assim que escrevermos o programa e o colocarmos em funcionamento nosso trabalho estará completo.
65
![Page 66: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/66.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos do Profissional
• Realidade:
– Os dados da indústria indicam que entre 50 e 70% de todo esforço gasto num programa serão despendidos depois que ele for entregue pela primeira vez ao cliente
66
![Page 67: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/67.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos do Profissional
• Mito: Enquanto não tiver o programa "funcionando", eu não terei realmente nenhuma maneira de avaliar sua qualidade.
67
![Page 68: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/68.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos do Profissional
• Realidade:
– Mecanismo (Revisão Técnica Formal) de garantia de qualidade de software é aplicado desde o começo do projeto.
–Revisões de software são um “filtro de qualidade” - descobre erros/defeitos.
68
![Page 69: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/69.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos do Profissional
• Mito: A única coisa a ser entregue em um projeto bem sucedido é o programa funcionando.
69
![Page 70: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/70.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Mitos do Profissional
• Realidade:
–Um programa funcionando é somente uma parte de uma Configuração de Software que inclui todos os itens de informação produzidos durante a construção e manutenção do software.
A DOCUMENTAÇÃO é o alicerce
70
![Page 71: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/71.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Categorias de Tamanho de Softwares
Categoria Tamanho da
Equipe
Duração Tamanho do
Fonte
(linhas de
código)
Trivial 1 1-4 semanas 500
Pequeno 1 1-6 meses 1000 a 2000
Médio 2-5 1-2 anos 5 mil a 50 mil
Grande 5-20 2-3 anos 50 mil a 100 mil
Muito grande 100-200 4-5 anos 1 milhão
Extremamente
grande
2000-5000 5-10 anos 1 a 10 milhões
ex: O Win 95: teve 11 milhões de linhas e 200 programadores / O Nestscape teve 3 milhões de linhas e 120 programadores
71
![Page 72: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/72.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Solução • Reconhecer os problemas e suas causas e
desmascarar os mitos do software são os primeiros passos
• Métodos e Técnicas para disciplinar o processo de desenvolvimento do software.
.
72
![Page 73: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/73.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
SOLUÇÃO • Reconhecer os problemas e suas causas e
desmascarar os mitos do software são os primeiros passos
• Métodos e Técnicas para disciplinar o processo de desenvolvimento do software.
.
73
![Page 74: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/74.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Aspectos históricos da Engenharia de Software
• 1968 Conferência da OTAN
• Objetivo: resolver a “Crise do Software”
• Software é entregue
– Atrasado
– Com orçamento estourado
– Com falhas residuais
74
![Page 75: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/75.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Eles não encontraram uma solução, mas definiram uma meta: Engenharia de Software.
• Custo do hardware decrescente e custo do software em ascensão.
75
Aspectos históricos da Engenharia de Software
![Page 76: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/76.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
O que é Engenharia de Software?
• Fritz Bauer – 1969 ( primeira definição)
“O estabelecimento e uso de sólidos princípios de engenharia para que se
possa obter economicamente um software que seja confiável e que
funcione eficientemente em máquinas reais”
76
![Page 77: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/77.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• IEEE, 1993
“A aplicação de uma abordagem sistemática, disciplinada e quantificável
para o desenvolvimento, operação e manutenção do software. O estudo de abordagens e princípios a fim de obter
economicamente softwares confiáveis e que executem de forma eficiente nas
máquinas reais”
77
O que é Engenharia de Software?
![Page 78: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/78.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Programador
(técnicas)
Engenheiro (técnicas)
1. Paradigma de
tentativa e erro
1. Paradigma adaptado
ao escopo do sistema
2. Estrutura de Dados 2. Análise e Projeto
3. Linguagens de
Programação
3. Ferramentas CASE
e SGBD´s
78
O que é Engenharia de Software?
![Page 79: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/79.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• É uma disciplina que integra métodos, ferramentas e procedimentos para o desenvolvimento de software de computador.
• Possibilitar ao gerente o controle do processo de desenvolvimento.
• Oferecer ao profissional uma base para a construção de software de alta qualidade.
79
O que é Engenharia de Software?
![Page 80: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/80.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Engenharia de Software - Método
• Proporcionam os detalhes de “como fazer” para construir o software.
• Envolvem um amplo conjunto de tarefas.
• Um método de ES é uma aproximação estruturada para o desenvolvimento de software.
80
![Page 81: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/81.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Todos os métodos pretendem
–Criar modelos do sistema que possam ser representados graficamente;
–Usar estes métodos como especificação.
81
Engenharia de Software - Método
![Page 82: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/82.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Década de 70 (DeMarco e Jackson): –Orientado à função.
• 80s-90s (Booch e Rumbaugh): –Métodos orientados a objeto.
• Atualmente os diferentes métodos estão integrados numa aproximação unificada baseada em Unified Modeling Language (UML).
82
Engenharia de Software - Método
![Page 83: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/83.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
83
Engenharia de Software - Método
![Page 84: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/84.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Métodos devem incluir os seguintes componentes:
–Descrição gráficas
–Regras
–Recomendações
–Diretrizes de processo
84
Engenharia de Software - Método
![Page 85: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/85.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Descrição gráficas.
Descrições dos modelos do sistema que deverão ser desenvolvidos e da notação usada para os definir.
Ex. Modelos de objetos, fluxos de dados etc.
85
Engenharia de Software - Método
![Page 86: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/86.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Regras
Restrições que se aplicam a modelos de
sistema. Ex.Cada entidade deve ter um único nome.
• Recomendações
Conselho em prática de projeto. Ex.Nenhum objeto deve ter mais que sete
subobjetos.
86
Engenharia de Software - Método
![Page 87: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/87.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Diretrizes de processo – Descrição das atividades que podem ser seguidas.
–
–Atributos de objetos devem ser documentados.
87
Engenharia de Software - Método
![Page 88: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/88.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Fornecem suporte automatizado ou semi- automatizado aos métodos.
• Existem atualmente ferramentas para sustentar cada um dos métodos.
• Quando as ferramentas são integradas é estabelecido um sistema de suporte ao desenvolvimento de software chamado CASE.
Engenharia de Software - Ferramentas
88
![Page 89: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/89.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
O que é CASE (Computer-Aided Software Engineering)
• Upper-CASE - Ferramenta para dar apoio às fases iniciais do processo de software.
• Lower-CASE - Ferramenta para dar apoio à implementação a aos testes.
–Ex.(Poseidon para UML , ArgoUML ..)
89
![Page 90: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/90.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
– Constituem o elo de ligação que mantém juntos os métodos e as ferramentas para desenvolvimento do software.
– Sequência em que os métodos serão aplicados.
– Controles que ajudam assegurar a qualidade e coordenar as alterações.
– Marcos de referência que possibilitam administrar o progresso do software.
90
Engenharia de Software - Procedimentos
![Page 91: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/91.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Procedimentos
Engenharia de Software - Procedimentos
Métodos
Ferramentas
Resultados
91
![Page 92: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/92.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Princípios da Engenharia de Software • Todo engenheiro de software deve
desenvolver com: – Rigor e Formalidade – Separação de interesses – Modularidade – Abstração – Antecipação de mudanças – Generalidade – Possibilidades de evolução
92
![Page 93: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/93.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Rigor e Formalidade
O rigor é a abordagem que produz produtos mais confiáveis pelo controle das variáveis envolvidas. Formalidade é o requisito de que o processo seja dirigido e avaliado por leis matemáticas.
93
Princípios da Engenharia de Software
![Page 94: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/94.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Separação de interesses Separar conceitos permite-nos
trabalhar com aspectos individuais e diferentes de um mesmo problema. Esta separação facilita o entendimento, focando a atenção em certas características mais significativas.
94
Princípios da Engenharia de Software
![Page 95: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/95.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Modularidade Consiste na divisão de sistemas
complexos em partes menores e mais simples (módulos) com características desejáveis (coesão e acoplamento).
95
Princípios da Engenharia de Software
![Page 96: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/96.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Modularidade (cont.) – Decomposição é o ato de dividir um
problema original em subproblemas recursivamente.
– Composição é o ato de juntar os elementos componentes de um problema até chegar ao sistema completo. Ajuda na manutenção do sistema.
96
Princípios da Engenharia de Software
![Page 97: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/97.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Antecipação de mudanças Sistemas de softwares são desenvolvidos
enquanto seus requisitos ainda não estão totalmente claros. Quando o sistema é finalmente liberado, novos requisitos podem ser descobertos e velhos requisitos atualizados através do “feedback” do usuário.
97
Princípios da Engenharia de Software
![Page 98: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/98.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Generalidade / Especialidade Soluções genéricas tendem a ser mais
caras em termos de recursos e em tempo de desenvolvimento, ao contrário das soluções específicas. No processo de produção de software estas questões devem ser cuidadosamente analisadas.
98
Princípios da Engenharia de Software
![Page 99: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/99.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Incrementabilidade
Caracteriza o processo em modo passo a passo, incrementalmente. O objetivo desejado é atingido por aproximações sucessivas. Útil quando os requisitos iniciais não foram todos obtidos antes do início do desenvolvimento da aplicação.
99
Princípios da Engenharia de Software
![Page 100: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/100.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Quais os custos da Engenharia de Software?
• A distribuição dos custos através do processo de software depende do processo usado e do tipo de software a desenvolver.
• Custos de desenvolvimento de um software complexo quando se conseguem definir custos separadamente para especificação, desenho, implementação, integração e testes.
100
![Page 101: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/101.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
101
Quais os custos da Engenharia de Software?
![Page 102: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/102.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
0 25 50 75 100
Especificação Desenho Desenvolvimento Integração e Teste
Custos segundo aproximação evolutiva
0 25 50 75 100
Especificação Desenvolvimento Evolutivo Testes do Sistema
102
Quais os custos da Engenharia de Software?
![Page 103: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/103.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Custos de desenvolvimento de produtos de software genéricos:
0 25 50 75 100
Especificação Desenvolvimento Teste
103
Quais os custos da Engenharia de Software?
Custos relativos entre desenvolvimento e manutenção do software 0 25 50 75 100
Desenvolvimento Manutenção
![Page 104: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/104.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Custo em relação a falhas
104
![Page 105: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/105.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Impacto dos custo de manutenção
• Manutenção corretiva [aproximadamente 20%]
– 60 a 70% das necessidades de correção são falhas de especificação ou design.
• Manutenção evolutiva (melhoria) – Aperfeiçoamento [aproximadamente 60%]
– Adaptação [aproximadamente 20%]
105
![Page 106: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/106.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Principais desafios enfrentados pela Engenharia de Software
• Sistemas de legado - Devem ser mantidos e devem ser atualizado.
• Heterogeneidade - Operar com sistemas distribuídos e incluem uma mistura de hardware e software.
• Fornecimento - Entrega mais rápida de software.
106
![Page 107: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/107.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Responsabilidade profissional e ética
• Confiabilidade – respeitar a confiabilidade de seus empregadores ou clientes.
• Competência – os engenheiros não devem aceitar serviços que estejam for a do seu limite de competência.
107
![Page 108: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/108.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• Direito de propriedade intelectual –
os engenheiros devem estar cientes das leis locais que regulam o uso da propriedade intelectual, como patentes e direitos autorais.
108
Responsabilidade profissional e ética
![Page 109: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/109.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Resumindo Engenharia de Software
• Aplicação de teoria, modelos, formalismos, técnicas e ferramentas da ciência da computação e áreas afins para o desenvolvimento sistemático de software.
• Produção da documentação formal destinada a comunicação entre os membros da equipe de desenvolvimento bem como aos usuários.
109
![Page 110: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/110.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Resumindo Engenharia de Software
• Encontrar caminhos para se "construir" softwares de qualidade.
• Fatores externos, perceptíveis aos usuários e clientes, devem ser distinguidos dos fatores internos, perceptíveis aos projetistas e implementadores.
110
![Page 111: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/111.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
• A manutenção de software, que consome grande parte dos custos do software, é penalizada pela dificuldade em se implementar mudanças no software produto, e pela excessiva dependência dos programas da estrutura física dos dados que eles manipulam.
111
Resumindo Engenharia de Software
![Page 112: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/112.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Pesquisa
• Visualizando a informática em uma empresa, cite exemplos de:
–Mitos utilizados pelo analista ou pelo administrador de uma empresa específica.
–Falhas que ocasionaram grandes custos.
–Falhas que ocasionaram mudanças de projetos.
112
![Page 113: Introdução à Engenharia de Software - DEINF/UFMAmaria/arqan/2013-2/cap1-introd.pdf · 9.5 Evolução de Sistemas Legados Engenharia de Software Programa 11 . Profa. Maria Auxiliadora](https://reader031.vdocuments.net/reader031/viewer/2022022702/5bc21d0a09d3f27d2f8c6597/html5/thumbnails/113.jpg)
Profa. Maria Auxiliadora
Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição
SOMMERVILLE - Engenharia de Software - 8° / 9° Edição
Pesquisa
• Quais são os quatro atributos que todo software profissional deve possuir? Sugira outros atributos que podem ser significantes.
• Debater com os seus colegas o código de ética na Engenharia de Software.
113