Sem resumo de edição
Linha 1: Linha 1:
= Importância do Software =
= Importância do Software =




* As 3 primeiras décadas da era do computador:
* As 3 primeiras décadas da era do computador:
** Principal desafio: Hardware
** Principal desafio: Hardware
** 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:
** Cinco décadas de evolução dos computadores
** Cinco décadas de evolução dos computadores
** Hardware de grande desempenho
** Hardware de grande desempenho
** Hardware de menor custo
** Hardware de menor custo
** Hardware com grandes e rápidas modificações
** Hardware com grandes e rápidas modificações
<br>
<br>




== Últimas décadas ==
== Últimas décadas ==




* Desafio:
* Desafio:
** Melhorar a qualidade
** Melhorar a qualidade
** 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:


* Técnicas
* Técnicas


* Teorias
* Teorias


* Estudos
* Estudos


* Metodologias
* Metodologias




<br>
<br>




== Panorama Atual ==
== Panorama Atual ==




* 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:
** Convergência de computadores
** Convergência de computadores
** Sistemas de comunicação
** Sistemas de comunicação
** Complexas interfaces com o usuário
** Complexas interfaces com o usuário
(1)
<br>
<br>


= Eras do Software =
= Eras do Software =


== 1a. era ==
== 1a. era ==






* 1940 a 1959
* 1940 a 1959


* O profissional de TI era considerado um Deus
* O profissional de TI era considerado um Deus


* Hardware:
* Hardware:
** Os computadores eram lentos, enormes, ocupavam salas inteiras
** Os computadores eram lentos, enormes, ocupavam salas inteiras
** 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 mau funcionamento
 
** Velocidade de processamento na ordem de milissegundos e capacidade de memória de 2 a 4 kbytes
** 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:
* 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 era feita por meio de cartões ou fita de papel perfurados
** Saída de dados era feita por impressoras
** Não existia sistema operacional. Os programadores eram operadores e controlavam o computador por meio de chaves, fios e luzes de aviso


* As aplicações eram uma reflexão pós hardware
** 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


* O desenvolvimento era feito sem gerenciamento


* Orientação batch (em lote).
* 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)
 
<br><br>
<br><br>


== 2a. era ==
== 2a. era ==




* 1960 a 1975


* 1960 a 1975


* Hardware:
* Hardware:
** 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 na ordem de centenas de milissegundos e a memória em dezenas de MBytes
 
** 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 da linguagem de máquina binária para linguagens simbólica: Assembler, FORTRAN e COBOL
 
** Programadores especificavam instruções em palavras
** Linguagem: Mudança de máquina binária para simbólica: Assembler, FORTRAN e COBOL
** Entrada de dados era feita por cartões ou fita de papel perfurado
 
** Saída de dados era feita por impressoras
** Programadores: Passaram a escrever as instruções por meio de palavras
** Programa monitor usado para "enfileirar" as tarefas
 
** Cada programa era escrito em cartão/fita e carregados por um operador, juntamente com seu compilador
** 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)
** O operador em geral utilizava uma linguagem de controle chamada JCL (Job Control Language)
** Multi (programação/usuário)
** Multi (programação/usuário)
** Advento das Software-Houses
 
** Sistemas em tempo real
** Início das Software-Houses
** Primeira geração de BD: System R, SQL/DS, DB2, ...
 
** Software voltado a ampla distribuição
** 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.
** Manutenção dispendiosa e cara.
<br><br>
 
<br>
 
(2)
 
* Tecnologia marcante: [[Mainframe]]
 
<br>
 


== 3a. era ==
== 3a. era ==






* 1976 a 1985
* 1976 a 1985


* Hardware:
* Hardware:
** Computadores passaram a ter circuitos integrados e transistores miniaturizados
** Computadores passaram a ter circuitos integrados e transistores miniaturizados
** Aumentaram a velocidade e a eficiência das máquinas com redução dos custos
 
** Teclados e monitores substituíram os cartões e papel perfurados
** Aumentaram em velocidade e eficiência reduzindo os custos
** Velocidade de processamento na ordem de microssegundos
 
** 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
** Redes locais e globais
** Poderosas estações de trabalho
** Poderosas estações de trabalho
** PCs proliferando pelo mundo inteiro
 
** PCs: Proliferação pelo mundo inteiro
 
(3)




* Software:
* Software:
** Sistemas distribuídos: maior complexidade e equiptos diversificados
** Sistemas distribuídos: maior complexidade e equiptos diversificados
** Demanda por acesso instantâneo
 
** 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
** Programas aplicativos desenvolvidos no mundo inteiro
 
** Linguagens como C, Pascal e Basic
** Novas aplicações: Desenvolvidos no mundo inteiro
<br><br>
 
** Linguagens: C, Pascal, Basic, ...
 
<br>
 
(4)
 
* Tecnologia marcante: [[Integração em larga escala]]
 
<br>
 


== 4a. era ==
== 4a. era ==




* 1986 a 1999
* 1986 a 1999


* Hardware:
* Hardware:
** 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 de centenas de nanossegundos
 
** Velocidade de processamento: Centenas de nanossegundos
 
** Capacidades: Gbytes
 
** Computação paralela
** Computação paralela




* Software:
* Software:
** Advento da Internet
 
** Desenvolvimento de interfaces gráficas evoluídas - GUI (Graphical User Interface)
** 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 como Delphi, Clipper, Java
 
** Orientação a objetos
** Linguagens: Delphi, Clipper, Java
 
** 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
 
** Usuário desenvolvedor.
** Sistemas para intenet
<br><br>
 
** Usuário Final: Podia desenvolver suas próprias aplicações
 
<br>
 
(5)
 
* 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)
 
** Alto grau de interatividade (Reconhecimento de voz)
** 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
** 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 como C++, JavaScript, Phyton, PERL
 
** Linguagens: C++, JavaScript, Phyton, PERL
 
** Desenvolvimento Ágil
** Desenvolvimento Ágil
** Novos SOs: Android, Ginga
** Novos SOs: Android, Ginga
** Internet do Futuro
** Internet do Futuro
** Virtualização
** Virtualização
** ...
** ...
(6)
* Tecnologias marcantes:
** [[Cloud Computing]]
** [[Virtualização]]
** [[Computação Holográfica]]

Edição das 16h23min de 21 de agosto de 2011

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

(1)



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.


(2)



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

(3)


  • 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, ...


(4)



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 intenet
    • Usuário Final: Podia desenvolver suas próprias aplicações


(5)



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
    • ...

(6)

  • Tecnologias marcantes: