O documento descreve a história e características da produção de software, desde os primórdios até os dias atuais. Aborda os principais marcos históricos do desenvolvimento de software, as definições de software, sistema de software e produto de software. Também apresenta as principais categorias e tipos de software, além de questões importantes da engenharia de software moderna e as características da indústria de software.
4. HISTÓRICO
• 1965 – 1975
• Multiprogramação
• Multiusuário
• Tempo real
• Banco de dados
• Manutenção de
software
• Biblioteca de
softwares
• Produto de software
• Distribuição mais
ampla
• Software para
mainframes e
minicomputadores
5. HISTÓRICO
• 1975 – 1985
• Sistemas distribuídos
• Inteligência embutida
• Hardware de baixo
custo
• Impacto de consumo
• Internet
• Microprocessadores
• Computadores
pessoais
8. HISTÓRICO
• 2005 – 2017
• Internet das coisas
• Nuvem
• Computação de
altíssimo desempenho
• Web Semântica
• Web 2.0
• Ontologias
• Hardware à frente do
software
• Mercado saturado?
• Muitas linguagens de
programação
• Interação Humano
Computador
• Taxonomias
• Colaborativismo
13. SISTEMA DE SOFTWARE
• Um sistema de software é um conjunto de
softwares que se interagem para atingir um
objetivo em comum.
• É uma solução abrangente que envolve várias
partes interligadas, oferecendo um composto de
funcionalidades para atender as necessidades do
usuário.
14. PRODUTO DE
SOFTWARE
• O software é um produto
construído por profissionais
de software como os
Engenheiros de Software e
os Analistas de Sistemas
17. Fabricação de Software X Fabricação de
Hardware
• Bom projeto
• Dependem de
pessoas
• Construção de um
produto final
• Custos diferentes
• Software é elaborado
e não manufaturado
MANUFATURA: trabalho ou atividade
que se realiza em máquina caseira ou
manualmente.
18. Desgaste de
Software X Desgaste
de Hardware
• Software não se desgasta,
hardware sim
• Software não sofre com as
mudanças do “meio ambiente”,
hardware sim
• Software sofre com falhas e erros
a partir das modificações
solicitadas pelos clientes, hardware
não
19. Componentes de
Software X
Componentes de
Hardware
• Componentes de hardware podem
ser usados para construir desde um
sistema simples até um complexo, há
muito tempo
• Componentes de software são mais
recentes: bibliotecas de componentes
reutilizáveis (GUIs e frameworks, por
exemplo)
20. CARACTERÍSTICAS
• Software determinado
• Se a ordem e a ocasião das entradas,
processamento e saídas é previsível
• Software indeterminado
• Se a ordem e a ocasião das entradas,
processamento e saídas não puderem ser
previstas antecipadamente
23. SOFTWARE DE APLICAÇÃO
• Programas isolados
que resolvem uma
necessidade
específica do negócio
• Operações de gestão
• Tomada de decisões
• Controle de funções
do negócio
• Etc.
30. SOFTWARE ABERTO
• Software aberto
• Desenvolvimento de
Código auto-descritível
• Desenvolvimento de
técnicas e ferramentas
de controle de
modificações do código
31. SOFTWARE LEGADO
• São softwares desenvolvidos há muitos anos
• São modificados até hoje para se adequar às novas
tecnologias e plataformas computacionais
• Não deixam de “existir” ou de serem substituídos por novos
• São dispendiosos e arriscados de evoluir
• São indispensáveis por executar funções importantes
• Se o software funciona e não necessárias modificações,
então ele permanece, mas em geral isso não ocorre
33. QUESTÕES IMPORTANTES
• Tempo longo para construção de software
• Alto custo de desenvolvimento
• Erros antes, durante e depois da construção
• Manter programas existentes vale a pena?
Não seria melhor começar outro do zero?
34. OBJETIVO DA ENGENHARIA DE SOFTWARE
MODERNA
• Conceber metodologias que sejam
fundamentadas na noção de evolução
• Sistemas de software modificam-se
continuamente, novos sistemas de software são
construídos as partir dos antigos e todos precisam
interoperar e cooperar uns com os outros
36. INDÚSTRIA
•Muitas empresas pequenas e médias
em todo o mundo
•As grandes são minoria
•Evolução da tecnologia impacta no
software já distribuído e implantado
•Muitos segmentos