| (4 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
| Linha 1: | Linha 1: | ||
= Importância do Software = | = Importância do Software = | ||
| Linha 6: | Linha 7: | ||
** Desenvolver equipamentos de baixo custo e alto desempenho. | ** Desenvolver equipamentos de baixo custo e alto desempenho. | ||
<br> | <br> | ||
* Compõem o cenário atual: | * Compõem o cenário atual: | ||
| Linha 13: | Linha 15: | ||
** Hardware com grandes e rápidas modificações | ** Hardware com grandes e rápidas modificações | ||
<br> | <br> | ||
| Linha 22: | Linha 25: | ||
** Reduzir os custos das soluções baseadas em software. | ** Reduzir os custos das soluções baseadas em software. | ||
<br> | <br> | ||
Para se fazer isso, exige-se: | Para se fazer isso, exige-se: | ||
| Linha 32: | Linha 36: | ||
* Metodologias | * Metodologias | ||
<br> | <br> | ||
| Linha 42: | Linha 44: | ||
* A necessidade de aplicar novas técnicas e métodos são necessárias. | * A necessidade de aplicar novas técnicas e métodos são necessárias. | ||
<br> | <br> | ||
* Surgiram novos desafios em função de novas tecnologias: | * Surgiram novos desafios em função de novas tecnologias: | ||
| Linha 50: | Linha 53: | ||
= Eras do Software = | = Eras do Software = | ||
== 1a. era == | == 1a. era == | ||
| Linha 63: | Linha 66: | ||
** Tinham metros e metros de fios | ** Tinham metros e metros de fios | ||
** Eram equipadas com válvulas eletrônicas e gastavam muita energia | ** Eram equipadas com válvulas eletrônicas e gastavam muita energia | ||
** Sua operação era muito cara e esquentavam muito => causa de | ** Sua operação era muito cara e esquentavam muito => causa de mal funcionamento | ||
** Velocidade de processamento | ** Velocidade de processamento: ordem de milissegundos | ||
** Capacidade de memória: 2 a 4 kbytes | |||
* Software: | * Software: | ||
** Usavam linguagem de máquina para executar operações e resolviam um problema de cada vez | ** Usavam linguagem de máquina para executar operações e resolviam um problema de cada vez | ||
** Entrada de dados | ** Entrada de dados: Cartões ou fita de papel perfurados | ||
** Saída de dados | ** Saída de dados: Impressoras ou Terminais monocromáticos | ||
** | ** Sistema operacional: Inexistentes na fase inicial. Os programadores eram operadores e controlavam o computador por meio de chaves, fios e luzes de aviso | ||
* As aplicações eram | * As aplicações eram pensadas após o hardware .., funcionar | ||
* | * Desenvolvimento destas aplicações: sem gerenciamento | ||
* Orientação | * Orientação: Batch (em lote) (uma tarefa após a outra) | ||
<br><br> | <br><br> | ||
== 2a. era == | == 2a. era == | ||
* 1960 a 1975 | * 1960 a 1975 | ||
| Linha 88: | Linha 90: | ||
** Substituição das válvulas/fios por transistores/circuitos impressos | ** Substituição das válvulas/fios por transistores/circuitos impressos | ||
** Tornou os computadores mais rápidos, menores e com custos mais baixos | ** Tornou os computadores mais rápidos, menores e com custos mais baixos | ||
** Velocidade de processamento | ** Velocidade de processamento: Ordem de centenas de milissegundos | ||
** Memória: Dezenas de MBytes | |||
** Surgiram os primeiros armazenadores externos de informações: fitas magnéticas e discos | ** Surgiram os primeiros armazenadores externos de informações: fitas magnéticas e discos | ||
** Ainda esquentavam muito. | ** Ainda esquentavam e vibravam muito. | ||
* Software: | * Software: | ||
** Mudança | ** Linguagem: Mudança de máquina binária para simbólica: Assembler, FORTRAN e COBOL | ||
** Programadores | ** Programadores: Passaram a escrever as instruções por meio de palavras | ||
** Entrada de dados | ** Entrada de dados: Cartões ou fita de papel perfurado | ||
** Saída de dados | ** Saída de dados: Impressoras | ||
** Programa | ** Programa: escrito em cartão/fita e carregados por um operador, juntamente com seu compilador | ||
** O operador em geral utilizava uma linguagem de controle chamada JCL (Job Control Language) | ** O operador em geral utilizava uma linguagem de controle chamada JCL (Job Control Language) | ||
** Multi (programação/usuário) | ** Multi (programação/usuário) | ||
** | ** Início das Software-Houses | ||
** Sistemas em tempo real | ** Sistemas processando em tempo real | ||
** Primeira geração de | ** Primeira geração de Bando de Dados: System R, SQL/DS, DB2, ... | ||
** Software voltado a ampla distribuição | ** Software voltado a ampla distribuição no mundo | ||
** Manutenção dispendiosa e cara. | ** Manutenção dispendiosa e cara. | ||
<br><br> | <br> | ||
* Tecnologia marcante: [[Mainframe]] | |||
<br> | |||
== 3a. era == | == 3a. era == | ||
| Linha 117: | Linha 121: | ||
* Hardware: | * Hardware: | ||
** Computadores passaram a ter circuitos integrados e transistores miniaturizados | ** Computadores passaram a ter circuitos integrados e transistores miniaturizados | ||
** Aumentaram | ** Aumentaram em velocidade e eficiência reduzindo os custos | ||
** Teclados e monitores substituíram os cartões e papel perfurados | ** Teclados e monitores: substituíram os cartões e papel perfurados | ||
** Velocidade de processamento | ** Velocidade de processamento: Ordem de microssegundos | ||
** Capacidade de memória: Mbytes | |||
** Redes locais e globais | ** Redes locais e globais | ||
** Poderosas estações de trabalho | ** Poderosas estações de trabalho | ||
** PCs | ** PCs: Proliferação pelo mundo inteiro | ||
* Software: | * Software: | ||
** Sistemas distribuídos: maior complexidade e equiptos diversificados | ** Sistemas distribuídos: maior complexidade e equiptos diversificados | ||
** Demanda | ** Demanda: Acesso instantâneo e global | ||
** Tornaram-se acessíveis para um grande número de pessoas | ** Tornaram-se acessíveis para um grande número de pessoas | ||
** | ** Novas aplicações: Desenvolvidos no mundo inteiro | ||
** Linguagens | ** Linguagens: C, Pascal, Basic, ... | ||
<br><br> | <br> | ||
* Tecnologia marcante: [[Integração em larga escala]] | |||
<br> | |||
== 4a. era == | == 4a. era == | ||
* 1986 a 1999 | * 1986 a 1999 | ||
| Linha 141: | Linha 147: | ||
** Microprocessador com milhões de CIs em um único "chip" de silicone | ** Microprocessador com milhões de CIs em um único "chip" de silicone | ||
** Maior grau de miniaturização, confiabilidade e velocidade | ** Maior grau de miniaturização, confiabilidade e velocidade | ||
** Velocidade de processamento | ** Velocidade de processamento: Centenas de nanossegundos | ||
** Capacidades: Gbytes | |||
** Computação paralela | ** Computação paralela | ||
* Software: | * Software: | ||
** | ** Início da era Internet | ||
** | ** Interfaces gráficas: Evolução rápida => GUI (Graphical User Interface) | ||
** Baseada em símbolos visuais, como ícones, menus e janelas com maior interação com o usuário | ** Baseada em símbolos visuais, como ícones, menus e janelas com maior interação com o usuário | ||
** Linguagens | ** Linguagens: Delphi, Clipper, Java | ||
** Orientação a objetos | ** Modelagem de sistemas: Orientação a objetos | ||
** Sistemas especialistas e IA | ** Sistemas especialistas e IA | ||
** Redes neurais | ** Redes neurais | ||
** Linguagens de programação abertas | ** Linguagens de programação abertas | ||
** Sistemas para internet | ** Sistemas para internet | ||
** Usuário | ** Usuário Final: Podia desenvolver suas próprias aplicações | ||
<br><br> | <br> | ||
* Tecnologia marcante: [[Interfaces]] | |||
<br> | |||
== 5a. era == | == 5a. era == | ||
* 2000 até ... | * 2000 até ... | ||
* Hardware: | * Hardware: | ||
** Altíssima velocidade de processamento | ** Altíssima velocidade de processamento | ||
** Grande capacidade de armazenamento de dados dos discos rígidos (TBytes, Peta, Exa, Zetta, YottaBytes) | |||
** Grande capacidade de armazenamento de dados dos discos rígidos (TBytes) | ** Alto grau de interatividade: Reconhecimento de voz | ||
** Alto grau de interatividade | |||
** Processamento baseado em supercondutores | ** Processamento baseado em supercondutores | ||
** Cloud Computing | ** Cloud Computing | ||
** Computação Quântica | ** Computação Quântica | ||
** Computação Holográfica | ** Computação Holográfica | ||
* Software: | * Software: | ||
** Inteligência artificial | ** Inteligência artificial | ||
** Realidade Virtual e Realidade Aumentada | ** Realidade Virtual e Realidade Aumentada | ||
** Linguagens: C++, JavaScript, Phyton, PERL | |||
** Linguagens | |||
** Desenvolvimento Ágil | ** Desenvolvimento Ágil | ||
** Novos SOs: Android, Ginga | ** Novos SOs: Android, Ginga | ||
** Internet do Futuro | ** Internet do Futuro | ||
** Virtualização | ** Virtualização | ||
** ... | |||
** | * Tecnologias marcantes: | ||
** [[Cloud Computing]] | |||
** [[Virtualização]] | |||
** [[Computação Holográfica]] | |||
Edição atual tal como às 12h04min de 26 de junho de 2020
Importância do Software
- As 3 primeiras décadas da era do computador:
- Principal desafio: Hardware
- Desenvolver equipamentos de baixo custo e alto desempenho.
- Compõem o cenário atual:
- Cinco décadas de evolução dos computadores
- Hardware de grande desempenho
- Hardware de menor custo
- Hardware com grandes e rápidas modificações
Últimas décadas
- Desafio:
- Melhorar a qualidade
- Reduzir os custos das soluções baseadas em software.
Para se fazer isso, exige-se:
- Técnicas
- Teorias
- Estudos
- Metodologias
Panorama Atual
- A necessidade de aplicar novas técnicas e métodos são necessárias.
- Surgiram novos desafios em função de novas tecnologias:
- Convergência de computadores
- Sistemas de comunicação
- Complexas interfaces com o usuário
Eras do Software
1a. era
- 1940 a 1959
- O profissional de TI era considerado um Deus
- Hardware:
- Os computadores eram lentos, enormes, ocupavam salas inteiras
- Tinham metros e metros de fios
- Eram equipadas com válvulas eletrônicas e gastavam muita energia
- Sua operação era muito cara e esquentavam muito => causa de mal funcionamento
- Velocidade de processamento: ordem de milissegundos
- Capacidade de memória: 2 a 4 kbytes
- Software:
- Usavam linguagem de máquina para executar operações e resolviam um problema de cada vez
- Entrada de dados: Cartões ou fita de papel perfurados
- Saída de dados: Impressoras ou Terminais monocromáticos
- Sistema operacional: Inexistentes na fase inicial. Os programadores eram operadores e controlavam o computador por meio de chaves, fios e luzes de aviso
- As aplicações eram pensadas após o hardware .., funcionar
- Desenvolvimento destas aplicações: sem gerenciamento
- Orientação: Batch (em lote) (uma tarefa após a outra)
2a. era
- 1960 a 1975
- Hardware:
- Substituição das válvulas/fios por transistores/circuitos impressos
- Tornou os computadores mais rápidos, menores e com custos mais baixos
- Velocidade de processamento: Ordem de centenas de milissegundos
- Memória: Dezenas de MBytes
- Surgiram os primeiros armazenadores externos de informações: fitas magnéticas e discos
- Ainda esquentavam e vibravam muito.
- Software:
- Linguagem: Mudança de máquina binária para simbólica: Assembler, FORTRAN e COBOL
- Programadores: Passaram a escrever as instruções por meio de palavras
- Entrada de dados: Cartões ou fita de papel perfurado
- Saída de dados: Impressoras
- Programa: escrito em cartão/fita e carregados por um operador, juntamente com seu compilador
- O operador em geral utilizava uma linguagem de controle chamada JCL (Job Control Language)
- Multi (programação/usuário)
- Início das Software-Houses
- Sistemas processando em tempo real
- Primeira geração de Bando de Dados: System R, SQL/DS, DB2, ...
- Software voltado a ampla distribuição no mundo
- Manutenção dispendiosa e cara.
- Tecnologia marcante: Mainframe
3a. era
- 1976 a 1985
- Hardware:
- Computadores passaram a ter circuitos integrados e transistores miniaturizados
- Aumentaram em velocidade e eficiência reduzindo os custos
- Teclados e monitores: substituíram os cartões e papel perfurados
- Velocidade de processamento: Ordem de microssegundos
- Capacidade de memória: Mbytes
- Redes locais e globais
- Poderosas estações de trabalho
- PCs: Proliferação pelo mundo inteiro
- Software:
- Sistemas distribuídos: maior complexidade e equiptos diversificados
- Demanda: Acesso instantâneo e global
- Tornaram-se acessíveis para um grande número de pessoas
- Novas aplicações: Desenvolvidos no mundo inteiro
- Linguagens: C, Pascal, Basic, ...
- Tecnologia marcante: Integração em larga escala
4a. era
- 1986 a 1999
- Hardware:
- Microprocessador com milhões de CIs em um único "chip" de silicone
- Maior grau de miniaturização, confiabilidade e velocidade
- Velocidade de processamento: Centenas de nanossegundos
- Capacidades: Gbytes
- Computação paralela
- Software:
- Início da era Internet
- Interfaces gráficas: Evolução rápida => GUI (Graphical User Interface)
- Baseada em símbolos visuais, como ícones, menus e janelas com maior interação com o usuário
- Linguagens: Delphi, Clipper, Java
- Modelagem de sistemas: Orientação a objetos
- Sistemas especialistas e IA
- Redes neurais
- Linguagens de programação abertas
- Sistemas para internet
- Usuário Final: Podia desenvolver suas próprias aplicações
- Tecnologia marcante: Interfaces
5a. era
- 2000 até ...
- Hardware:
- Altíssima velocidade de processamento
- Grande capacidade de armazenamento de dados dos discos rígidos (TBytes, Peta, Exa, Zetta, YottaBytes)
- Alto grau de interatividade: Reconhecimento de voz
- Processamento baseado em supercondutores
- Cloud Computing
- Computação Quântica
- Computação Holográfica
- Software:
- Inteligência artificial
- Realidade Virtual e Realidade Aumentada
- Linguagens: C++, JavaScript, Phyton, PERL
- Desenvolvimento Ágil
- Novos SOs: Android, Ginga
- Internet do Futuro
- Virtualização
- ...
- Tecnologias marcantes: