-
Period: to
Primera Era
-El software estaba en su infancia
-El software era un añadido
-Existían pocos métodos para la programación
-No se tenia una planificación para el desarrollo del software
-Los programadores trataban de hacer las cosas bien
-El software se diseñaba a medida
-El software era desarrollado y utilizado por la misma persona u organización (entorno perzonalizado)
-El diseño de software era realizado en la mente de alguien y no existía documentación -
Period: to
Segunda Era
-Multiprogramación y sistemas multiusuarios introducen nuevos conceptos de interacción hombre-máquina
-Sistemas de tiempo real que podían recoger, analizar y transformar datos de múltiples fuentes
-Avances en los dispositivos de almacenamiento en línea condujeron a la primera generación de sistemas de gestión de Base de Datos
-Software como producto y la llegada de las "casas de software" produciéndose así una amplia distribución en el mercado
-El software se desarrollaba para ser comercializado -
Period: to
Tercera Era
-Procesamiento Distribuido. Múltiple computadoras, cada una ejecutando funciones concurrentes y comunicándose con alguna otra
-Redes de área local y de área global. Comunicaciones digitales de alto ancho de banda y la creciente demanda de acceso instantáneo a los datos
-Amplio uso de microprocesadores y computadoras personales (hardware de bajo costo). Incorporación de "inteligencia" (autos, hornos de microondas, robots industriales y equipos de diagnóstico de suero sanguíneo). -
Period: to
Cuarta Era
-Tecnología orientada a objetos
-Los sistemas expertos y la inteligencia artificial se han trasladado del laboratorio a las aplicaciones prácticas.
-Software para redes neuronales artificiales (simulación de procesamiento de información al estilo de como lo hacen los humanos).
Impacto colectivo del software
-Sistemas operativos operativos sofisticados , en redes globales y locales -
Period: to 2021 BCE
Quinta Era
-Utiliza algunos requisitos de las eras anteriores solo que aumenta la omnipresencia de la Web, la reutilizacion de información y componentes de software.