Prof. Ismar FrangoAula #14
Fundamentos de Sistemas de Informação
Nas aulas anteriores:Trabalhamos a unidade conceitual II, a respeito
dos tipos de SI
Na aula de hoje:Iniciaremos a unidade
conceitual III: quais são as técnicas e métodos para
criar SIs?
O que é Engenharia de Software?
Fonte: Dicionário Houaiss
EngenhariaDatação1789 cf. MS1
Acepções■ substantivo feminino 1 aplicação de métodos científicos ou empíricos à utilização dos recursos da natureza em benefício do ser humano
e. de sistemas gerenciamento da inter-relação complexa dos vários elementos de um sistema, respeitadas as características de cada um, visando atingir o máximo de eficácia
Etimologialat. ingenìum,ìi 'qualidade inata ou natural, natureza, temperamento, caráter, inclinação, faculdade de saber, engenho, criatividade', p.ext. 'produto material da capacidade de criar';
Baseado em Material doProf. Edison A. M. Morais
Pergunta?
• É realmente necessário tratar o desenvolvimento de software como uma atividade de engenharia?
[ ] SIM[ ] NÃO
Vamos pensar….
A crise do Software
• Porque tanto tempo é gasto na construção de software?
• Porque os custos são tão altos?
• Porque não podemos achar todos os erros antes de entregar o software aos clientes?
• Porque existe tanta dificuldade em medir o progresso no desenvolvimento de software?
Resp.: Porque suas características são diferentes….
Características de Software
• É um sistema lógico (não físico).
Sistemas
Físicos em Geral
Logo
Não tem forma, gosto, cheiro, etc...
Entrentanto:
Também é criado por pessoas;
Também deve sofrer engenharia;
Também deve ser projetado;
Mas não é manufaturado (em seu
sentido clássico);
Seus maiores custos estão concentrados na engenharia.
Características de Software
• O software não se desgasta.Logo:
O software pode se tornar desatualizado;
As “peças de reposição” do software são mais difíceis de serem implantadas;
As falhas dos softwares normalmente indicam erros de projeto.
Produtos Físicos em Geral:
- Tempo;- Maltrato;- Uso indevido;
- Temperatura;
...
Características de Software
• A maioria dos softwares ainda é feita sob encomenda.
Software:
Não existe a idéia da linha de produção;
Alguns softwares podem ser criados utilizando-se componentes prontos;
Componentes de software deveriam ser reutilizados.
Produtos Físicos em Geral:
- Linha de Produção: uma vez projetado, todos os outros são iguais.
Além destas características ainda existem outros problemas (MITOS)….
Baseado em material do Prof. Edison A. M. Morais
Mitos da Área de Software
• Mitos da Gerência– Já temos “tudo” o que precisamos para
desenvolver o software.– Meu pessoal tem ferramentas de última geração.
Isso garante a qualidade do meu produto.– Atrasos no planejamento podem se corrigidos
adicionando mais programadores.– Basta terceirizar que meus problemas estarão
resolvidos.
Mitos da Área de Software
• Mitos dos Programadores– Quando escrevemos um programa e o fazemos
funcionar, nosso trabalho está completo.– Até que eu esteja com um programa rodando
não tem como avaliar sua qualidade.– Eu preciso entregar, como produto final,
somente o executável.
11
Mitos da Área de Software
• Mitos dos Clientes– Basta uma pequena visão do meu problema para que
comecem a desenvolver o software.– Os requisitos do software mudam continuamente, mas as
mudanças podem ser facilmente implementadas.
Baseado em material do Prof. Edison A. M. MoraisDefinition Development After release
1x
1.5-6x
60-100xA realidade...
idealized curve
change
actual curve
Failurerate
Time
increased failurerate due to side effects
Custo de mudanças
Fonte: Pressman
Baseado em material do Prof. Edison A. M. Morais
13
Voltamos à Pergunta?
• É realmente necessário tratar o desenvolvimento de software como uma atividade de engenharia?
[ ] SIM[ ] NÃO
O que é o processo de Engenharia de Software?
Software Engineering
a “quality” focusa “quality” focus
process modelprocess model
methodsmethods
toolstools
Quem participa do processo?
Fonte: Pfleeger, Engenharia de Software