Documentos de Académico
Documentos de Profesional
Documentos de Cultura
conocimiento.
DNI: 28818700E
ISBN: 978-84-615-0504-3
1
Índice
2
9.2. Aplicaciones de la IA. .................................................................................................... 79
9.3. TIPOS DE SISTEMAS EXPERTOS. .......................................................................... 79
9.4. HISTORIA RECIENTE DE LOS SISTEMAS EXPERTOS. ................................... 81
10. REVOLUCIÓN MULTIMEDIA............................................................................................ 84
BIBLIOGRAFÍA............................................................................................................................ 90
3
1. SOCIEDAD DE LA INFORMACIÓN Y LA COMUNICACIÓN
Actualmente la irrupción y desarrollo de las nuevas tecnologías están conformando una serie
de cambios estructurales, a nivel económico, laboral, social, educativo, político, de relaciones. En
definitiva, se está configurando la emergencia de una nueva forma de entender la cultura. En esta
coyuntura, la información aparece como el elemento clave, aglutinador, estructurador... de este
tipo de sociedad.
Hoy día, en la sociedad occidental en la cual estamos inmersos se nos "vende" la información
como un elemento accesible, que se puede poseer, que da poder, que da conocimiento. La
información se ha convertido en un culto, en un mito, algo que otorga autoridad, ventajas,
superioridad, dominio,... Sin embargo, no se considera que la información tenga carácter
informativo, por el simple hecho de ser poseída; o de poder ser asimilada por un sujeto. Se ha
producido un cambio en el concepto de la información.
La información con las nuevas tecnologías, se independiza de los sujetos. Las personas son
despojadas de la posesión, de ser la fuente y manantial de la información. En último término, no es
la información para los sujetos y gracias a ellos, sino que los sujetos son para la información y, al
final, serán los productos de la misma. Es decir,
4
Al mismo tiempo, la información ha pasado a ser un bien de consumo. Pero no sólo este
producto entra dentro de esta categoría sino que los modos de vida de las personas de los países
más desarrollados se han transformado de una manera radical. Asistimos al nacimiento de una
nueva sociedad donde la calidad, la gestión y la velocidad de la información se convierten en
factor clave de la competitividad tanto para el conjunto de los oferentes como para los
demandantes. Las tecnologías de la información y comunicación condicionan la economía en todas
sus etapas. Por todo ello la información, es controlada por las condiciones del mercado. Éstas
determinan por un lado, quienes tienen acceso a ella y por otro, qué o quiénes controlan su
creación y su disposición.
¿Es cierto que tener información sobre determinados temas equivale a poseer conocimiento a
cerca del mismo? Nosotras coincidiendo con múltiples autores, opinamos que no es así. Esta teoría
es un tanto reduccionista, y no tiene en cuenta otras muchas variables que confluyen. Ya que
conocer y pensar no es simplemente almacenar, tratar y comunicar datos. Serán procesos de
generalización de distinto tipo y sus resultados, los que nos determinarán el saber cómo actuar
sobre algo en una situación dada. El desarrollar procesos de pensamiento alternativos, creativos e
idiosincrásicos. La información no es en sí conocimiento. El acceso a ella no garantiza en absoluto
desarrollar procesos originales de pensamiento.
La promesa que, insistentemente se nos hace de acceso global y factible a grandes volúmenes
de información desde las nuevas tecnologías no va a ser garantía de mayor conocimiento, ni de
mayor educación.
5
elementos, deconstruyendo el mensaje, para construirlo desde nuestra propia realidad. Es decir en
el proceso de deconstrucción vamos a desmontar, comprender, entender las variables, partes,
objetivos, elementos, axiomas del mensaje. En el proceso de construcción realizamos el
procedimiento inverso. A partir de variables, axiomas, elementos, etc., volvemos a componer el
mensaje, desde nuestra realidad personal, social, histórica, cultural y vital. Es decir, desde nuestra
perspectiva global del conocimiento y la persona. Sólo y no perdiendo esta perspectiva podemos
afrontar y enfrentarnos a la evolución y el progreso de las nuevas tecnologías de tal forma que nos
lleve en un futuro a crear una sociedad más humana y justa donde lo tecnológico y lo humano se
integren al igual que los distintos puntos de mira de las distintas culturas conformando el crisol de
la realidad en la que estamos sumergidos.
A lo largo de los siguientes apartados veremos una revisión de los principales hitos históricos
que han posibilitado el auge de la sociedad de la información y el conocimiento.
6
2. DESARROLLO DE LOS SISTEMAS INFORMACIÓN
El estudio de las empresas como sistemas de información es muy interesante para poder
tener una visión global de las mismas. Es un primer paso antes de informatizar. La mayoría de las
empresas son parecidas desde el punto de vista de la información que manejan y cómo la procesan.
Ello ha hecho que aparezcan herramientas genéricas adaptables a cualquier empresa, y cuya
popularidad es cada día mayor.
Toda empresa, grande o pequeña, necesita una infraestructura para poder desarrollar sus
actividades. Esta estructura organizativa suele descansar en una red de relaciones que hay que
desarrollar y que, entre otras, incluye a las siguientes:
7
• Controlar y gestionar el empleo de los recursos financieros, del dinero, a través de la
función (o sistema) contable y de gestión económica.
Pero es muy difícil que todas estas funciones y actividades se puedan realizar con eficacia
sin coordinarse entre sí mediante la gestión y la intercomunicación de información de buena
calidad. Por ello, las organizaciones incluyen una infraestructura para coordinar los flujos y los
registros de información necesarios para desarrollar sus actividades de acuerdo a su
planteamiento o estrategia de negocio. El sistema dedicado a este cometido es el que se
denomina sistema de información de la empresa. Este sistema es tan necesario como cualquiera
de los otros nombrados anteriormente (ventas, comercialización, producción, etc.).
Cuando a principios del siglo XIX la Revolución Industrial cambió el concepto existente de
trabajo basado en la artesanía (cada empleado fabricaba un producto desde el principio al final) por
la especialización y la división del trabajo (cada empleado construye la parte del producto en cuyo
desarrollo está especializado), las empresas tuvieron que organizar un sistema para que los
distintos departamentos o especialistas se coordinaran entre sí mediante el intercambio de
información. En esos tiempos la gestión de la información sólo podía apoyarse en herramientas
elementales como el papel, el lápiz y los archivadores.
A principios del siglo XX, el tamaño y la complejidad de las empresas hizo que la gestión
de la información tuviera que apoyarse en sistemas que contaban con una multitud de “oficinistas”
o “administrativos” que manejaban ingentes cantidades de impresos, fichas, correspondencia, etc.
sin mayor ayuda que algunos medios manuales (considerados los más sofisticados de la época:
8
máquinas de escribir, calculadoras mecánicas, perforadoras de papel, etc.) y rígidos
procedimientos que simplificaban el trabajo repetitivo y permitían controlar el flujo y el
almacenamiento de información. Es la típica imagen de los empleados con manguitos realizando
sobre papel multitud de tareas repetitivas de contabilidad o administración. Todos estos elementos
constituían auténticos sistemas de información y formaron la infraestructura administrativa
sobre la que se edificaron muchas de las grandes empresas y organizaciones actuales.
Un conjunto formal de procesos que, operando sobre una colección de datos estructurada
según las necesidades de la empresa, recopilan, elaboran y distribuyen la información (o parte de
ella) necesaria para las operaciones de dicha empresa y para las actividades de dirección y
control correspondientes (decisiones) para desempeñar su actividad de acuerdo a su estrategia de
negocio.
Los sistemas de información pueden ser manuales o automatizados. Hasta ahora hemos
trabajado con la noción de SI independientemente de la tecnología empleada para darle soporte. Ya
sabemos que pueden existir sistemas de soporte puramente manuales, con herramientas
rudimentarias (papel, lápiz, ele.) y empleando personas para realizar todas las actividades de
procesamiento y almacenamiento de información.
Evidentemente, las empresas han ido incorporando nuevas tecnologías a lo largo del siglo
XX para mejorar el rendimiento y la eficacia de los SI. Se comenzó con máquinas de escribir,
calculadoras mecánicas, teléfonos, cintas de papel perforado, etc. y se han llegado ya a utilizar
tecnologías sofisticadas de tratamiento y comunicación de información: fax, informática,
ofimática, etc. a las que se ha denominado genéricamente tecnologías de la información (TI). En
nuestro caso, nos centraremos especialmente en la informática como TI que podemos aplicar a la
automatización de los SI, pero sin olvidar que otras tecnologías pueden complementar su acción.
Debemos recordar que, cuando los directivos de una empresa deciden mejorar el
rendimiento de su SI incorporando medios informáticos, se debe realizar un estudio minucioso de
lo que resulta más eficaz para cada caso. En general, la solución óptima consiste en un SI que
9
cuenta con una mezcla de actividades, con algunas partes o subsistemas automatizados y otras
funciones que se siguen realizando manualmente. Por lo tanto, podemos distinguir entre lo que es
el SI total y lo que es el SIA o Sistema Información Automatizado (véase la figura).
Por otra parte, el SIA deberá contar con un soporte informático para poder funcionar. En
este sentido, la informática constituye sólo una herramienta más o menos sofisticada y completa
para implementar lo que está incluido en el SIA. Por lo tanto, no debe confundirse informática y
SI. Esto implica que los informáticos son simples técnicos que deben aportar soluciones para
proporcionar porte a lo que los directivos de la empresa conciben como estructura óptima de
formación de su empresa. Tampoco debemos confundir el SIA con el simple soporte físico o
sistema informático asociado constituido por el hardware, el software base y las aplicaciones.
10
3. SISTEMAS INFORMÁTICOS
Todo sistema, se puede contemplar desde 2 aspectos: cómo es físicamente, partes que lo
componen, interconexión de las mismas, etc, es decir una descripción física del mismo; por otro
lado se puede contemplar desde el punto de vista del funcionamiento, qué funciones desempeñan
sus constituyentes y cómo afectan dichas funciones al funcionamiento de otros. En un sistema
informático se puede establecer esta división, atendiendo a su estructura física y a la estructura
funcional.
Para facilitar el diseño y análisis de los sistemas informáticos, se describen distintos niveles
conceptuales. La distinción entre niveles más sencilla es la que existe entre software asociado a la
descripción funcional y hardware asociado a la descripción física del sistema. Una distinción
más detallada se muestra a continuación.
11
Figura. Niveles conceptuales de descripción de un computador
A lo largo del apartado veremos principalmente con más detalle las características de:
12
Para llevar a cabo su cometido un ordenador ha de dotarse de una serie de recursos. Estos
recursos pueden variar según el destino que le demos al ordenador. Así, un ordenador que se
destine a un proceso de investigación, tendrá que contar con grandes elementos de cálculo que le
permitan realizar operaciones completas en el mínimo tiempo, mientras que un ordenador
destinado al tratamiento de gran cantidad de datos, dispondrá de una gran memoria en donde
almacenar los datos para su tratamiento.
Sin embargo, estas variaciones en la concepción del ordenador no son más que
modificaciones de tipo cuantitativo pues cualitativamente todos los ordenadores deben disponer de
dos elementos básicos: Un sistema físico y un sistema lógico. A estos dos elementos hay que
añadir un tercero que, sin pertenecer a la estructura física no se puede pensar en un sistema sin él:
los Recursos Humanos.
3.1. Estructura.
Los elementos que componen un sistema informático son:
• Personal, son los operadores o usuarios directos del sistema informático, y los
profesionales que lo diseñan, programan, configuran y mantienen.
13
A continuación describiremos cada uno de los tres principales subsistemas que componen
un sistema informático.
Recordar que la unidad central de proceso, como ya sabemos, está formada por la
unidad de control, por la unidad aritmético-lógica y por la memoria central. En
cuanto a la memoria auxiliar, decir que son los dispositivos que sirven para
almacenar de forma permanente datos y programas. Los periféricos, ya sabemos que
son elementos que comunican al ordenador con el exterior.
• Subsistema lógico. El subsistema físico por sí sólo es inerte, algo pasivo que
necesita elementos que le pongan en marcha. El subsistema lógico es el conjunto de
recursos lógicos necesarios para que el sistema físico se encuentre en condiciones
de realizar todos los trabajos que se le vayan a encomendar. Al subsistema lógico se
le conoce con el nombre de software.
Algunos de los programas del sistema residen en el hardware del ordenador (me-
moria o cableado) y se conocen con el nombre de firmware. Tales programas
suelen grabarse en el momento de la fabricación del propio ordenador. Otros
programas sin embargo residen en memorias externas y son cargados en la memoria
central o principal cuando se pone en marcha el ordenador o cuando se requiera
alguno de sus ellos.
14
• Subsistema de Recursos Humanos. Con la aparición de la informática surge un
nuevo colectivo de profesionales que trata de abarcar todos los conocimientos que
de esta nueva ciencia se derivan.
15
➫ Operador: notifica al ordenador los procesos que debe realizar,
estando a cargo de introducir o retirar los soportes donde se
encuentran los datos y la información.
16
4. ORIGEN Y EVOLUCIÓN DEL HARDWARE
17
como letras y símbolos. Cuando se consideran exclusivamente números se dice que la información
es numérica. Cuando se trata de números y texto se dice que es alfanumérica.
• Comodidad de uso.
Por todo ello hoy en día se ha impuesto el ordenador digital, y por ello el título de este tema
lo menciona explícitamente.
18
El predecesor de las actuales computadoras personales y progenitor de la plataforma IBM
PC compatible, fue lanzado en agosto de 1981. El modelo original fue llamado "IBM 5150". Su
éxito comercial fue tal que el uso de ordenadores para particulares se extendió muy rápidamente
debido a sus bajos precios. El desarrollo exitoso del PC tardó cerca de un año. Para lograrlo,
primero decidieron construir la máquina con partes disponibles en el mercado de una variedad
de distintos fabricantes. Anteriormente IBM había desarrollado sus propios componentes. Luego
diseñaron una arquitectura abierta para que otros fabricantes pudieran producir y vender máquinas
compatibles (las compatibles con IBM PC), así que la especificación de la ROM BIOS fue
publicada. IBM esperaba mantener su posición en el mercado al tener los derechos de licencia de
la BIOS, y manteniéndose delante de la competencia.
Una vez que el IBM PC se convirtió en un éxito comercial, el producto PC dejó de estar
bajo el control de un grupo especial dentro de IBM para pasar a diversificarse el mercado con otros
fabricantes hasta hoy en día en el cual el número de empresas que se dedican a desarrollar
componentes y a ensamblar ordenadores es incontable.
19
Figura. Evolución del mercado de los ordenadores personales a lo largo de los últimos años
• Caja o Torre: También denominada CPU, ya que alberga los componentes internos
del ordenador, CPU: Microprocesador, memoria principal (RAM), placa base o
placa madre (motherboard), donde se interconectan todos los componentes del
ordenador, tanto:
20
• Periféricos externos: Como hemos mencionado el PC actual se compone de los
componentes internos a la torre y de periféricos que permiten la interacción exterior
con el hombre. Estos periféricos son típicamente de:
21
La figura muestra la estructura general de un ordenador tipo Von Neumann. Esta máquina
es capaz de ejecutar una serie de instrucciones u órdenes elementales llamadas instrucciones de
máquina, que deben estar almacenadas en la memoria principal (programa almacenado) para poder
ser leídas y ejecutadas. El poder ejecutar distintos programas hace que el modelo de máquina de
von Neumann sea de propósito general. Puede observarse de la figura que esta máquina está
compuesta por las siguientes unidades:
Registros Periférico
UNIDAD DE ENTRADA/SALIDA
MEMORIA
Periférico
PRINCIPAL
UNIDAD
ARITMÉTICO-
LÓGICA Periférico
• La Memoria Principal está compuesta por un conjunto de celdas idénticas, esto es,
que tienen el mismo tamaño (mismo número de bits). En un instante determinado se
puede seleccionar una de estas celdas, para lo que se emplea una dirección que la
identifica. Sobre la celda seleccionada se puede realizar una operación de lectura,
que permite conocer el valor almacenado previamente en la celda, o de escritura,
que permite almacenar un nuevo valor. Estas celdas se emplean tanto para
almacenar los datos como las instrucciones de máquina.
22
provienen de la memoria principal, y pueden estar almacenados de forma temporal
en algunos registros de la propia unidad aritmética.
Caracterizar las prestaciones de los ordenadores digitales es una tarea muy compleja,
puesto que éstas dependen de muchos factores, entre los que hay que destacar el entorno en el que
se usen, las instrucciones de máquina que tienen, el grado de utilización efectiva que permiten, etc.
23
Sin embargo, se emplean con frecuencia una serie de parámetros para especificar sus
características.
24
5. Ancho de banda. Expresa el caudal de información que es capaz de transmitir un
bus o una unidad de entrada/salida, o el caudal de información que es capaz de tratar
un aunidad. Se suele expresar en Kbits/segundo (Kb/s), Mbits/segundo (Mb/s),
Koctetos/segundo o Kbytes/segundo (KB/s) o Moctetos/segundo o Mbytes/segundo
(MB/s).
9. Tests sintéticos. Dado que las medidas en MIPS o MFLOPS no permiten una
comparación clara entre las máquinas de los distintos fabricantes, cada vez son más
utilizados los tests sintéticos. Estos tests consisten en programas que caracterizan
algunas de las aplicaciones típicas, por lo que la velocidad a la que se ejecutan dan
una medida de la velocidad del ordenador. Dado que suelen estar escritos en
lenguajes de alto nivel, en realidad miden la eficacia del conjunto compilador-CPU.
Entre los más empleados están el Linpack y los SPEC de System Performance
and Evaluation Cooperative. El resultado de estos tests puede expresarse en valor
absoluto como el tiempo que se tarda en ejecutar el test o como el número de veces
que se ejecuta el test en un segundo. También es muy frecuente expresar los
resultados con relación a la velocidad de ejecución en una máquina específica. Así,
los SPECint92 (enteros) y SPECfp92 (punto flotante) estaban referidos al VAX-
11/780 de DEC, mientras que los SPECint95 y SPECfp95 están referidos al
SparcStation 10 de 40 MHz de Sun. Una máquina de 10 SPECint95 es 10 veces más
rápida que la mencionada SparcStation10.
25
Figura. Medida de MIPS y MFLOPS
26
Figura. SPECint95
27
Figura. SPECfp95
28
Las “máquinas de cómputo” no han sido siempre iguales. Las arquitecturas fueron
evolucionando hasta el modelo de Von Neumann, que se ha convertido en el estándar de facto.
Desde un punto de vista esquemático, se puede concluir que la evolución de los ordenadores no ha
sido muy grande en las últimas décadas, al contrario de la opinión generalizada.
Al fin y al cabo, todos cuentan con los mismos bloques constitutivos: CPU, unidades de
E/S, memoria... Lo que sí ha presentado una evolución acelerada son precisamente esos bloques,
que son el objeto de estudio de los temas siguientes.
29
5. ORIGEN Y EVOLUCIÓN DEL SOFTWARE BASE
Los ordenadores por sí solos no pueden realizar ninguna función, necesitan recibir órdenes
que les dirijan y controlen. Estas órdenes o instrucciones son dadas por el programador, y
agrupadas forman los programas o parte lógica de los sistemas informáticos, junto a los datos.
Estos programas que controlan la actuación del ordenador son los que conforman el software de
un sistema informático. El software se puede clasificar en 2 grandes grupos: el software de
sistema y el software de aplicación:
30
➫ Administrador de recursos del sistema.
La estructura funcional más simple es la que conforma un sistema informático aislado que
no se relaciona con otros sistemas, y que es autónomo para realizar un completo funcionamiento
del mismo. Para un sistema asilado su estructura funcional estará compuesta por un sistema
operativo que administre los recuros, y disponga al usuario de un interfaz sencillo para poder
utilizar el hardware, junto con un conjunto de porgramas de aplicación.
31
El sistema operativo es el conjunto de programas del sistema informático que controla los
recursos hardware del ordenador y sirve de base para la ejecución de los programas de aplicación,
actúa por tanto de intermediario entre el hardware y los usuarios del mismo.
Una primera aproximación nos presentaría al sistema operativo como un tipo de software
que controla el funcionamiento del sistema físico (hardware), ocultando sus detalles al usuario,
permitiéndole así trabajar con el ordenador de una forma fácil y segura.
32
• Los dispositivos periféricos: Estas unidades permiten la comunicación de los
programas con el exterior, y debe asegurarse su adecuado direccionamiento y
control.
El sistema operativo también hace que el ordenador se utilice eficientemente. Por ejemplo,
en los sistemas de multiprogramación hace que, cuando un programa esté dedicado a una
operación de entrada o salida, la CPU pase a atender a otro programa.
En el desarrollo de este tema veremos los componentes que lo integran: núcleo, servicios y
el intérprete de mandatos o shell; distinguiremos los sistemas operativos con estructuras
monolíticas de los que son propiamente estructurados; veremos las funciones clásicas del sistema
operativo, se pueden agrupar en las tres siguientes: gestión de los recursos de la computadora,
ejecución de servicios para los programas, ejecución de los mandatos de los usuarios. Por último
haremos una revisión histórica de la evolución de los sitemas operativos, permitiéndonos
clasificarlos adecuadamente.
• Administración de tareas:
• Administración de usuarios:
33
➥ Monousuario: Si sólo permite ejecutar los programas de un usuario al
mismo tiempo.
• Manejo de recursos:
Se pueden encontrar los siguientes tipos de sistemas operativos, durante las cuatro
generaciones de evolución de los sistemas operativos.
34
sumas por segundo, 457 multiplicaciones por segundo y 38 divisiones por segundo. Otra
computadora de esta época fue el EDVAC (Electronic Discrete Variable Automatic Computer).
En esta primera etapa todos los trabajos se realizaban en serie. Se introducía un programa
en la computadora, se ejecutaba y se imprimían los resultados y se repetía este proceso con otros
programas. Otro aspecto importante de esta época es que se requería mucho tiempo para preparar y
ejecutar un programa, ya que el programador debía encargarse de codificar todo el programa e
introducirlo en la computadora de forma manual.
El problema básico que abordaban estos sistemas operativos primitivos era optimizar el
flujo de trabajos, minimizando el tiempo empleado en retirar un trabajo y montar el siguiente.
35
También empezaron a abordar el problema de la E/S, facilitando al usuario paquetes de rutinas de
E/S, para simplificar la programación de estas operaciones, apareciendo así los primeros
manejadores de dispositivos. Se introdujo también el concepto de system file name, que empleaba
un nombre o número simbólico para referirse a los periféricos, haciendo que su manipulación fuera
mucho más flexible que mediante las direcciones físicas.
Para minimizar el tiempo de montaje de los trabajos, éstos se agrupaban en lotes (batch) del
mismo tipo (p. ej.: programas Fortran, programas Cobol, etc.), lo que evitaba tener que montar y
desmontar las cintas de los compiladores y montadores, aumentando el rendimiento.
Los sistemas operativos de las grandes instalaciones tenían las siguientes características:
Como ejemplos de sistemas operativos de esta época se pueden citar el FMS (Fortran
Monitor System) e IBYSS, el sistema operativo de la IBM 7094.
36
base de estos sistemas reside en la gran diferencia que existe entre las velocidades de los
periféricos y de la UCP, por lo que esta última, en las operaciones de E/S, se pasa mucho tiempo
esperando a los periféricos. Una forma de aprovechar ese tiempo consiste en mantener varios
trabajos simultáneamente en memoria principal (técnica llamada de multiprogramación), y
en realizar las operaciones de E/S por acceso directo a memoria. Cuando un trabajo necesita una
operación de E/S la solicita al sistema operativo que se encarga de:
• Pasar a realizar otro trabajo residente en memoria. Estas operaciones las realiza el
sistema operativo multiprogramado de forma transparente al usuario.
Sistemas operativos en tiempo real: los primeros sistemas de tiempo real datan también
de los años sesenta, pertenecientes por tanto a la segunda generación de computadoras. Se trata de
aplicaciones militares, en concreto para detección de ataques aéreos. En este caso, la computadora
está conectada a un sistema externo y debe responder velozmente a las necesidades de ese sistema
externo. En este tipo de sistemas las respuestas deben producirse en períodos de tiempo
previamente especificados, que en la mayoría de los casos son pequeños. Los primeros sistemas de
este tipo se construían en ensamblador y ejecutaban sobre máquina desnuda, lo que hacía de estas
aplicaciones sistemas muy complejos.
37
Sistemas operativos de propósito general o multimodo: La tercera generación (70’s) es
la época de los sistemas de propósito general y se caracteriza por la sistemas operativos
multimodo de operación, esto es, capaces de operar en lotes, en multiprogramación, en tiempo
real, en tiempo compartido y en modo multiprocesador. Estos sistemas operativa fueron
costosísimos de realizar e interpusieron entre el usuario y el hardware una gruesa capa de software,
de forma que éste sólo veía esta capa, sin tenerse que preocupar de los detalles de la circuitería.
Uno de los inconvenientes de estos sistemas operativos era su complejo lenguaje de control
que debían aprenderse los usuarios para preparar sus trabajos, puesto que era necesario especificar
multitud de detalles y opciones. Otro de los inconvenientes era el gran consumo de recursos que
ocasionaban, esto es, los grandes espacios de memoria principal y secundaria ocupados, así como
tiempo de UCP consumido, que en algunos casos superaba el 50 por 100 del tiempo total.
Esta década fue importante por la aparición de dos sistemas que tuvieron una gran difusión
UNIX y MVS de IBM. De especial importancia fue UNIX, desarrollado en los laboratorios Bell
para una PDP-7 en 1970. Pronto se transportó a una PDP-11, para cual se reescribió utilizando el
lenguaje de programación C. Esto fue algo muy importante en historia de los sistemas operativos,
ya que hasta la fecha ninguno se había escrito utilizando lenguaje de alto nivel, recurriendo para
ello a los lenguajes ensambladores propios de cada quitectura. Sólo una pequeña parte de UNIX,
aquella que accedía de forma directa al hardware siguió escribiéndose en ensamblador. La
programación de un sistema operativo utilizando un lenguaje de alto nivel como es C hace que un
sistema operativo sea fácilmente transportable a amplia gama de computadoras. En la actualidad,
prácticamente todos los sistemas operativos escriben en lenguajes de alto nivel, fundamentalmente
en C.
Más tarde, AT&T (propietario de los laboratorios Bell) distribuyó la versión de UNIX
conocida como System V o RVS4. Desde entonces muchos han sido los fabricantes de
38
computadoras has adoptado a UNIX como sistema operativo de sus máquinas. Ejemplos de estas
versiones Solaris de SUN, HP UNIX, IRIX de SGI y AIX de IBM.
Adquiere cada vez más importancia el tema de las redes de computadoras, tanto redes de
largo alcance como locales. En concreto, la disminución del coste del hardware hace que se
difunda el proceso distribuido, en contra de la tendencia centralizadora anterior. El proceso
distribuido consiste en disponer de varias computadoras, cada una situada en el lugar de trabajo de
las personas que la emplean, en lugar de una única central. Estas computadoras suelen estar unidas
mediante una red, de forma que puedan compartir información y periféricos.
Durante esta época, los sistemas de bases de datos sustituyen a los archivos en multitud de
aplicaciones. Estos sistemas se diferencian de un conjunto de archivos en que sus datos están
estructurados de tal forma que permiten acceder a la información de diversas maneras, evitar datos
redundantes y mantener su integridad y coherencia.
39
un gestor de ventanas, lo que permite que el usuario tenga activas, en cada momento, tantas tareas
como desee y que las distribuya a su antojo sobre la superficie del terminal.
Los sistemas operativos que dominaron el campo de las computadoras personales fueron
UNIX, MS-DOS y los sucesores de Microsoft para este sistema: Windows 95/98, Windows NT y
Windows 2000. La primera versión de Windows NT (versión 3.1) apareció en 1993 e incluía la
misma interfaz de usuario que Windows 3.1. En 1996 aparece la versión 4.0, que se caracterizó por
la inclusión dentro del ejecutivo de Windows NT de diversos componentes gráficos que ejecutaban
anteriormente en modo usuario. Durante el año 2000, Microsoft distribuye la versión denominada
Windows 2000. Posteriormente le han sucedido Windows XP y, para servidores, Windows 2003.
40
Sistemas operativos con middleware: los sistemas operativos distribuidos han dejado de
tener importancia y han evolucionado durante la década de los noventa a lo que se conoce como
middleware. Un middleware es una capa de software que se ejecuta sobre un sistema operativo ya
existente y que se encarga de gestionar un sistema distribuido. En este sentido, presenta las mismas
funciones que un sistema operativo distribuido. La diferencia es que ejecuta sobre sistemas
operativos ya existentes que pueden ser además distintos, lo que hace más atractiva su utilización.
Dos de los middleware más importantes de esta década han sido DCE y CORBA. Microsoft
también ofrece su propio middleware conocido como DCOM.
Inicialmente cada fabricante de computadores (IBM, DEC, Data General, Apple, Sperry,
etc.) desarrollaba sus propios sistemas operativos, que incluso, dentro de la misma empresa,
podrían diferir de una serie de computadores a otra. Esto dificultaba considerablemente el trabajo
de los programadores y usuarios, en general, ya que, con gran frecuencia, al cambiar de
computador tenían que aprender un nuevo sistema operativo y realizar las adaptaciones oportunas
de todas las aplicaciones al nuevo equipo. Este panorama ha cambiado en la actualidad debido a
que en el mercado se han impuesto sistemas operativos que no son propietarios de un determinado
fabricante de computadores sino que son realizados por terceras personas o empresas
especializadas en software de forma que pueden ser utilizados en equipos muy diversos. Los más
relevantes son los siguientes:
41
5.2.1. Sistemas operativos de Microsoft.
42
autentificación de usuarios y control de acceso a los recursos compartidos de la red.
Admite estructuras RAID de discos.
43
5.2.2. UNIX y GNU/Linux.
El sistema operativo UNIX inicialmente se desarrolló en los Bell Labs de la AT&T y fue
comercializado en sus inicios por Honeywell y, a los comienzos de la década de los 90, por Novell.
En la siguiente figura 15.9 se incluye un esquema simplificado de la evolución de este sistema
operativo. Una de las versiones más conocidas es la desarrollada en el Campus de Berkeley de la
Universidad de California. Algunas de las principales características del UNIX son las siguientes:
• A priori al poder configurar más parámetros del sistema operativo puede resultar
más difícil de aprender y de usar que los MS-Windows y Mac orientados
claramente a usuarios finales.
44
Figura. Pasos relevantes en la evolución del sistema operativo UNIX.
45
5.2.3. Otros sistemas operativos.
Hay otros muchos sistemas operativos, entre los que se pueden destacar:
• OS/2, desarrollado a partir de 1982 inicialmente de forma conjunta por IBM e Intel,
es un sistema operativo monousuario y multiprogramación ideado para los
microprocesadores Intel. Actualmente sólo es comercializado y mantenido por IBM.
• MVS (Múltiple Virtual Storage), es uno de los sistemas operativos más sofisticados
desarrollado por IBM para grandes computadores, es de tipo multiprogramación,
multiusuario, funcionando tanto de forma interactiva como por lotes, y con memoria
virtual.
Los sistemas operativos son una parte fundamental de los sistemas informáticos, significan
mucho más que simplemente la interfaz de usuario. En el futuro próximo, la evolución de los
sistemas operativos se va a orientar hacia las plataformas distribuidas y la computación móvil.
Gran importancia tendrá la construcción de sistemas operativos y entornos que permitan utilizar
estaciones de trabajo heterogéneas (computadoras de diferentes fabricantes con sistemas
operativos distintos) conectadas por redes de interconexión, como una gran máquina centralizada,
lo que permitirá disponer de una mayor capacidad de cómputo y facilitará el trabajo cooperativo.
46
6. ALGORITMIA, PROGRAMACIÓN Y APLICACIONES
Los primeros algoritmos conocidos están fechados entre los años 3000 y 1500 antes de
Cristo. Fueron encontrados en la zona conocida como Mesopotamia (actualmente Irak) cerca de la
ciudad de Babilonia. Estos algoritmos no tenían ni condicionales, los expresaban escribiendo
diversas veces el algoritmo, extendían el algoritmo con tantos pasos como fuera necesario.
Algoritmo proviene de Mohammed al-KhoWârizmi, matemático persa que vivió durante el siglo
IX y alcanzó gran reputación por el enunciado de las reglas paso a paso para sumar, restar,
multiplicar y dividir números decimales; la traducción al latín del apellido en la palabra algorismus
derivó posteriormente en algoritmo. Euclides, el gran matemático griego (del siglo IV a.C.) que
inventó un método para encontrar el máximo común divisor de dos números, se considera con Al-
Khowârizmi el otro gran padre de la algoritmia (ciencia que trata de los algoritmos).
Más recientes fueron las aportaciones en este campo de Charles Babbage, quien entre los
años 1820 y 1850, diseñó dos máquinas para computar ninguna de las cuales fue terminada. La
más interesante, ya que se parecía a los computadores digitales modernos, fue la máquina
analítica. Los programas para este primer computador estaban escritos, básicamente, en lenguaje
máquina y utilizaban unas ciertas tarjetas de operación y tarjetas de variable (no se tenía la idea de
programas y datos residentes en memoria). Junto a Babbage trabajó Ada Augusta, condesa de
Lovelace, hija del famoso poeta Lord Byron. Recientemente ha sido reconocida como la primera
programadora (en su honor se llamó ADA al último lenguaje desarrollado bajo el auspicio del
Departamento de Defensa de los Estados Unidos).
Durante los años 1930 y 1940 surge un gran número de científicos con ideas sobre
notaciones para la programación. La mayoría eran puramente teóricas, es decir, no pretendían que
fueran usadas en máquinas reales. Algunos ejemplos son la máquma de Turing o el cálculo
lambda.
A principios de los años 1950 se empezaron a construir máquinas con cierta capacidad de
cálculo (aunque muy limitadas y costosas), que trabajaban con lenguajes tipo ensamblador.
Todos estos lenguajes eran muy parecidos y tuvieron un éxito muy limitado. Ejemplos de estos
lenguajes podrían ser AUTOCODER, SPS, BAL o EASYCODER.
47
A mediados de los años 50 comenzaron a aparecer máquinas con más capacidad de
cálculo y memoria, y se creó FORTRAN cuyo principal propósito era conseguir eficiencia. Entre
los anos 57 y 63 aparecen ALGOL (ALGOL6O), COBOL y LISP.
COBOL, en cambio, fue un lenguaje diseñado por un comité bajo el auspicio del
Departamento de Defensa de EEUU para las necesidades, las áreas de problemas y los hábitos de
expresión de los programadores en el procesamiento de datos comerciales y bases de datos. Se
intentó obtener programas más legibles y aumentar la potencia en el tratamiento de ficheros.
LISP fue un lenguaje extraño en su momento, ya que no se parecía a ningún otro lenguaje
anterior. En LISP se pueden tener funciones que se aplican a ciertos datos, de aquí proviene el
nombre de lenguaje funcional con el que se denomina a éste y a otros lenguajes de estas
características. Como tipo de datos tenemos símbolos (tratamiento simbólico) o bien la estructura
de datos lista. Fue un lenguaje difícil de implementar.
Después de estos lenguajes aparecieron otros, todos orientados a resolver algún problema
concreto. Hacia el 1965 aparece BASIC, por motivos didácticos. Estaba orientado a computadores
pequeños. Es un lenguaje con pocas instrucciones y fácil de aprender. Durante la primera editad de
los años 60 se define lenguajes como SNOBOL (para el procesamiento de cadenas de caracteres,
es decir, tratamiento de textos) o APL (para el tratamiento de matrices).
48
En 1967 se crea SIMULA, basado en ALGOL60, con la simulación como campo de
aplicación principal. Una de las características más importantes que se introducen en SIMULA es
el concepto de clase, donde un conjunto de declaraciones y procedimientos están agrupados y
tratados como una unidad. Se pueden generar objetos de una clase, que pueden ser usados fueraa
del bloque donde fueron creados. El concepto de clase es considerado el precusor de la abstracción
de datos.
ALGOL68 (1968) pretendía ser el sucesor de ALGOL60, es decir, una versión más
actualizada. Se intentó llegar a la máxima ortogonolidad (no poner ninguna restricción a los
componentes del lenguaje: instrucciones, estructuras de datos, etc.). Se quería conseguir un
lenguaje simple y ortogonal, y de esta forma, obtener un lenguaje potente y sencillo. El resultado,
en cambio, fue un lenguaje casi inimplementable. Fue el fracaso más grande de la historia de los
lenguajes de programación.
Después de la crisis del software, a principios de los 70, aparece Pascal, notablemente
influido por las nuevas técnicas: verificación de programas, programación estructurada, etc. Sigue
la línea de ALGOL60 con adquisiciones de otros lenguajes: el constructor tupla (COBOL y PL/I),
los tipos de datos, se mejoran los apuntadores (respecto a PL/I), se definen mejor los bloques. Es
un lenguaje bastante bien diseñado.
Tras Pascal (en la década de los 70) aparecen lenguajes de alto nivel diseñados para
programar en un cierto estilo, como CLU, ALPHARD, C, MODULA o EUCLID. Se introduce la
idea de programación paralela. Aparecen los programas concurrentes en nuevas versiones de
MODULA y en Pascal concurrente. En este periodo se crea el primer lenguaje de programación
lógica, PROLOG, cuyo dominio de aplicación se restringía a una parte de la lógica de primer
orden, la lógica clausal. Se basaba en la existencia de una cierta similitud entre teoremas y
programas, y entre demostración y ejecución. Posteriormente fue mejorado y se convirtió en un
lenguaje útil en diversos campos de la programación (principalmente científicos).
El lenguaje C fue inventado en los Laboratorios Bell en 1972 por Dennis Ritchie e
implementado sobre un DEC PDP-11 utilizando el sistema operativo UNIX. La idea de Ritchie era
crear un lenguaje de propósito general (al contrario de los lenguajs de propósito específico, como
es el caso de FORTRAN para el cálculo cinentífico) que facilitara la programación y realización de
muchas de las tareas anteriormente reservadas al lenguaje ensamblador. Inicialmente surgieron
varias versiones de C incompatibles entre sí, hasta que en 1983 ANSI lo estandarizó. Se ha usado
49
para el desarrollo de infinidad de herramientas de trabajo (sistemas operativos, compiladores,
procesadores de texto, sistemas gestores de bases de datos, etc.). La ventaja más destacable es la
transportabilidad o portabilidad, es decir, la posibilidad de utilizarlo en diversos sistemas y
máquinas. El lenguaje C es un lenguaje que por estas carcaterísticas se ha convertido en referencia
a nivel educativo a la hora de iniciarse en la programación, en escuelas técnicas y de formación
profesional, incluso por autodidactas, principalmente por la cantidad de documentación existente.
En la segunda mitad de los años 80 se han diseñado desde nuevos lenguajes funcionales
como Lazy ML (1984), Miranda (1985) o Standard ML (1986), hasta lenguajes que eran mejoras o
ampliaciones de otros ya conocidos, como es el caso de C++ (1986, en el que se incorpora el
concepto de clase) u Oberon (Wirth 1988, como mejora de MODULA).
50
Finalmente, durante los años 90 hasta la actualidad, han ido apareciendo los llamados
lenguajes de cuarta generación, que permiten, por ejemplo, acelerar el proceso de
automatización de las apliaciones mediante los entornos integrados de desarrollo o IDE,
integrated develpment environment, y reducir los costos de mantenimiento o permitir a los
usuarios finales solucionar directamente sus propios problemas. Muchos de estos lenguajes
dependen de bases de datos y diccionarios de datos, su acceso y ejecución es orientado a
entorno web y son multiplataforma, es decir ejecutables en distintos sistemas operativos. Pueden
incluir formatos de pantalla, formatos de informes, estructuras de diálogo, asociaciones entre
muchos datos, pruebas de validación, controles de seguridad, etc.
Una de las decisiones más importantes que se deben tomar al diseñar y construir un sistema
grande de software es la del lenguaje de programación que se va a utilizar en la aplicación del
sistema. Como la mayor parte de los costes de un sistema de software se producen en las fases de
prueba y mantenimiento del ciclo de vida, el empleo de una notación inapropiada para representar
el sistema puede ser la causa de dificultades en las etapas posteriores del ciclo de vida. La elección
de un lenguaje de programación apropiado reduce al mínimo las dificultades de codificar un
diseño, reduce la cantidad de pruebas de programas necesarias y hace al programa más legible y,
por tanto, más fácil de mantener.
51
La crisis del software, término informático acuñado en 1968, en la primera conferencia
organizada por la OTAN sobre desarrollo de software, se refiere a la dificultad en escribir
programas libres de defectos, fácilmente comprensibles, y que sean verificables. Las causas son,
entre otras, la complejidad que supone la tarea de programar, y los cambios a los que se tiene que
ver sometido un programa para ser continuamente adaptado a las necesidades de los usuarios. Esta
conferencia supone un punto de inflexión en el desarrollo de software, ya que formalmente nace la
ingeniería del software.
Como pudiera esperarse, las organizaciones pequeñas de proceso de datos tienden a ser
relativamente informales: los proyectos de desarrollo de sistemas nacen de conversaciones entre el
usuario y el administrador del proyecto (que puede ser a la vez el analista, el programador, y el
operario) y el proyecto procede desde el análisis hasta el diseño e implantación sin mayor alboroto.
Sin embargo, en las organizaciones más grandes, las cosas se llevan a cabo de manera
mucho más formal. La comunicación entre los usuarios, la administración y el equipo del proyecto
suele ser por escrito, y todo mundo entiende que el proyecto pasará por diversas fases antes de
completarse. Aun así, es sorprendente ver la gran diferencia entre las maneras en que dos
directores afrontan sus respectivos proyectos. De hecho, a menudo se deja a discreción del
administrador determinar las fases y actividades de su proyecto, y cómo se llevarán a cabo.
52
Recientemente, sin embargo, ha empezado a cambiar el enfoque que se le da al desarrollo
de sistemas. Cada vez son más las organizaciones grandes y pequeñas que están adoptando un
ciclo de vida uniforme y único para sus proyectos. Esto a veces se conoce como el plan del
proyecto, la metodología del desarrollo del sistema o, simplemente, “la forma en la que hacemos
las cosas aquí”. (El manual del ciclo de vida del proyecto suele ser un libro tan voluminoso como
el compendio de normas, que yace, sobre escritorio de todo analista y programador).
El enfoque a la hora de desarrollar software puede ser casero o, como alternativa, pudiera
ser que la organización para el desarrollo de sistemas decida comprar un paquete de administración
de proyectos y ajustarlo a las necesidades de la compañía. Parece obvio que, aparte de darle
empleo a las personas que crean los manuales de ciclo de vida de los proyectos (y a aquellos que
escriben libros de texto al respecto), es conveniente la metodología del proyecto. ¿De qué sirve
entonces tener un ciclo de vida de un proyecto? Existen tres objetivos principales:
53
Englobó a una serie de sucesos que se venían observando en los proyectos de desarrollo de
software:
54
surge como la necesidad de mecanizar las tareas más repetitivas y costosas del trabajo propio de
una oficina y con este objetivo aparecieron las primeras máquinas de escribir y calculadoras. Con
el avance de la tecnología y durante los años 70 las oficinas se van dotando de máquinas de
tratamiento de textos, dedicadas a secretarias/os principalmente. Este concepto, hoy en día
completamente obsoleto, fue transformándose gracias a la entrada de los ordenadores personales
(PCs) en la oficina.
• Segunda fase (1980 - 1990). Irrumpen los paquetes integrados, como conjunto de
herramientas que daban solución a la mayoría de las funcionalidades normalmente
requeridas. Presentaban el inconveniente de tener que adquirir todo el paquete
aunque se necesitase únicamente una o dos funciones del mismo y sobre todo, la
formación no sólo era imprescindible, sino costosa. La interfaz de usuario seguía
siendo orientada a carácter.
La ofimática en este punto sigue teniendo una importancia de segundo orden frente
a aplicaciones de mayor entidad dentro de la empresa, éstas aplicaciones estaban
centralizadas en un gran ordenador central del que dependían terminales sin
capacidad de proceso.
En los últimos años 80, como consecuencia de la experiencia adquirida por los
fabricantes del sector informático y debido al cambio de estrategia de éstos hacia la
fabricación de productos para ordenadores personales, se abaratan los costes y
aumentan las prestaciones tanto en soporte físico como lógico de forma
espectacular.
55
(OOP). A estos factores hay que añadir el auge experimentado por las diferentes
comunicaciones y a la creciente utilización de redes locales de ordenadores
personales.
La información fluye a través de las redes de área local y es compartida por todos
los miembros de un grupo de trabajo que no tienen que estar necesariamente en un
mismo edificio. Esta capacidad tecnológica de hacer “circular” la información sin la
necesidad de tener un soporte en papel lleva a pensar en el futuro: “la oficina sin
papel”.
En este punto surgen las suites como conjunto de aplicaciones que al ser utilizadas
conjuntamente ofrecen ventajas adicionales en cuanto a integración y facilidad de
uso, y cuyos distintos componentes se encuentran también disponibles en el
mercado como productos independientes. La auténtica ventaja de las suites es la
integración: la capacidad de las aplicaciones para compartir datos e interactuar entre
sí de una manera que sería imposible si funcionasen por separado. Una mayor
integración aumenta la productividad. La suite debe incluir un gestor centralizado
que supervise los programas que la componen, y ofrecer herramientas compartidas
para realizar las operaciones más habituales. Todas las aplicaciones componentes
deben poder intercambiar datos de forma transparente. La suites preponderantes en
el mercado son el paquete Office de Microsoft y OpenOffice de Sun Microsystems,
de licencia libre y multiplataforma.
Entre las principales tendencias actuales de los productos ofimáticos destacan las
siguientes:
56
esta tendencia es ya un hecho en oficinas con un entorno ofimático
avanzado.
57
Hoy en día la industria ofimática se realimenta de las necesidades manifestadas por los
propios usuarios, y se desarrolla en función de las mismas. Dichas necesidades son las que tienen
una importancia más significativa a la hora de adquirir un producto ofimático y que se enumeran a
continuación:
Esta lista, general para todos los productos ofimáticos, podría disgregarse dando lugar a una
lista de características técnico-funcionales específicas que se deberían exigir a los diferentes
productos ofimáticos. Los productos ofimáticos se han acercado mucho unos a otros, debido a la
utilización de un estándar gráfico común y al alto grado de conocimiento de los fabricantes sobre
las necesidades de los usuarios. Esencialmente todos los productos, cada uno en su especialidad,
realizan las mismas funciones básicas.
58
6.2.2. FORMATOS
ODA/ODIF/ODF.
ODA describe cómo debe ser la estructura de un documentos. Esa estructura se divide en
tres partes:
• Estructura lógica, que que consiste en una secuencia en orden lógico de los objetos
que componen el fichero. la estructura lógica permite dividir un documento en
capítulos, secciones, párrafos, notas a pie de página, etc. La estructura es semejante
a HTML.
59
• Contenido: el texto en sí, las figuras vectoriales, y las imágenes.
No todos los ficheros ODA tienen esas 3 partes. De hecho, los ficheros ODA se pueden
clasificar en función de esto:
El formato ODA/ODIF ha caído en el olvido más absoluto durante unos años. La actividad
del Consorcio ODA cesó y el soporte y desarrollo de productos acordes con la norma también se
vieron paralizados. Quizá su complejidad fue una de las causas por las que ODA/ODIF no
consiguió alcanzar un nivel de aceptación suficiente entre los fabricantes de software. También es
verdad que el predominio logrado por Microsoft y sus aplicaciones de sobremesa en los últimos
años fueron los principales enemigos para su éxito.
60
Por otra parte la versión 1.1 de la especificación fue aprobada el 25 de octubre de 2006 por el
comité de estandarización de OASIS.
PDF.
61
documentos es necesario disponer de un. Ésta es una de las características más importantes de los
formatos de réplica.
Las posibilidades de edición disponibles con este tipo de formatos son muy limitadas
(eliminación e inserción de páginas extraídas de otro archivo en el mismo formato, creación de
notas e hiperenlaces, etc.) y no suelen estar disponibles en los lectores de libre distribución.
En 1998 Adobe Acrobat y PDF dejaron de tener competencia: Farallon abandonó la tarea
de desarrollar y comercializar Replica; Hummingbird había hecho pública su decisión de hacer lo
mismo con Common Ground en febrero de ese mismo año y Tumbleweed (encargada de
desarrollar Envoy) orientó su actividad hacia la distribución segura de documentos, recomendando
el uso de PDF, al que definió como estándar de facto en una nota de prensa publicada en octubre
de 1997, todos ellos intentos fallidos de conseguir un formato de documento universal.
Esto no debe interpretarse como una superioridad técnica del formato PDF frente al resto
de sus competidores. Simplemente se trata, nuevamente, de una mayor aceptación debida sobre
todo a la posición de superioridad que Adobe tenía en el mercado, gracias en buena parte a la
importante implantación del estándar de facto PostScript, que había sido lanzado por la compañía
en 1985.
SGML.
SGML (Standard Generalized Markup Language) es una norma ISO (ISO 8879) que data
de 1986 y que se derivó de una anterior (GML de IBM). SGML fue diseñado para permitir el
intercambio de información entre distintas plataformas, soportes físicos, lógicos y diferentes
sistemas de almacenamiento y presentación (bases de datos, edición electrónica, etc.), con
independencia de su grado de complejidad.
62
Un documento SGML se marca con etiquetas de modo que no dice nada respecto a su
representación en la pantalla o en papel. Un programa de presentación debe unir el documento con
la información de estilo a fin de producir una copia impresa en la pantalla o en el papel.
En SGML, las etiquetas se distinguen del resto del texto mediante caracteres de
delimitación. Estos delimitadores permiten que el software reconozca qué caracteres deben ser
leídos en modo de ETIQUETA, y deben por ello traducirse al lenguaje concreto de composición o
tratarse de manera específica, y qué otros caracteres de CONTENIDO deberán ser transferidos
posteriormente a la aplicación para su procesamiento.
La norma ISO 8879 describe un conjunto de caracteres básicos entre los que se incluyen los
signos < y > de apertura y de cierre para destacar las etiquetas de inicio y el signo & seguido por
un nombre, y éste a su vez seguido de un punto y coma para representar entidades tales como
imágenes gráficas o caracteres especiales (por ejemplo, • para un redondelito negro).
Todos los procesadores de texto utilizan algún sistema de codificación interno para marcar
cuestiones como la negrita, la cursiva, el sangrado, el centrado, etc. Pero el problema con estos
códigos es que cada programa usa un sistema propio, sistemas que incluso cambian de una versión
a otra en un mismo programa. Aunque existen programas para convertir, los problemas que esta
disparidad ocasiona son considerables.
En las primeras reuniones del Comité que abordó la creación de SGML, una de las
principales cuestiones que se debatieron fue la codificación genérica, esto es, un sistema de
códigos universal e independiente de la aplicación, por medio del cual, por ejemplo <P>
significara siempre párrafo y <H1> indicara siempre un encabezado de primer nivel. La intención
inicial era lograr especificar un conjunto de etiquetas que fueran válidas para un elevado número
de documentos.
Sin embargo, a pesar de que el principio de la codificación genérica está bien fundado, la
variedad de documentos, así como la diversidad de elementos que contienen, lo hacen
prácticamente inabordable.
La solución que se adoptó es emplear una cabecera (heading) donde se definan las
etiquetas que se van a usar. De esta forma SGML no se quedó como un mero conjunto de códigos
63
normalizados, sino que se convirtió en un lenguaje con el que se podía crear una definición del
tipo de documento (DTD), mediante la que se definen con precisión aquellos elementos que son
necesarios en la elaboración de un documento o un grupo de documentos estructurados de manera
similar. Las definiciones de los elementos -formalmente denominadas declaraciones de
elementos- tienen dos funciones:
• Aportan el nombre “oficial” de las etiquetas (los nombres que aparecerán dentro de
los delimitadores, por ejemplo <chapter>).
XML (eXtensible Markup Language) fue desarrollado por un Grupo de Trabajo XML
(originalmente conocido como “SGML Editorial Review Board”) formado bajo los auspicios del
Consorcio World Wide Web (W3C), en 1996. Fue presidido por Jon Bosak de Sun Microsystems
con la participación activa de un Grupo Especial de Interés en XML (previamente conocido como
Grupo de Trabajo SGML) también organizado en el W3C.
XML es un subconjunto de SGML cuyo objetivo es permitir que SGML sea servido,
recibido y procesado en la web de la misma forma que HTML. Se trata, por tanto, de posibilitar el
intercambio electrónico de datos (EDI), tanto estructurados como no estructurados, mediante la
tecnología web, hasta ahora reservada exclusivamente a los documentos HTML.
XML es un metalenguaje, como SGML. Los documentos XML válidos son, por definición,
documentos SGML válidos, pero los documentos XML tienen restricciones adicionales. Por
ejemplo, XML no admite el conector & de SGML. Por otra parte, la esencia de SGML, que es el
concepto de DTD, continúa estando presente en XML.
64
7. DESARROLLO DEL ALMACENAMIENTO DE LA INFORMACIÓN
Las bases de datos nacen para solucionar los problemas presentados a los programadores a
la hora de diseñar programas eficientes capaces de manipular grandes volúmenes de información.
A lo largo de la historia los sistemas gestores de base de datos han ido evolucionando
ligados a los modelos de datos que pueden implementar, desde los años sesenta con bases de datos
estructurados de forma jerárquica y en red, hasta los actuales que permiten desarrollar aplicaciones
gráficas multiusuario y multiplataforma, en potentes sistemas en red, podemos distinguir una
evolución en la que se distinguen tres etapas o generaciones:
Primera generación de los SGBD: Los sistemas jerárquico y de red constituyen la primera
generación de los SGBD. El modelo jerárquico estructura los datos de manera escalonada,
existiendo una relación del tipo padre-hijo entre sus registros. La representación de la información
es similar a una estructura en árbol. El modelo en red, elimina la restricción del modelo
jerárquico, en el sentido de que un registro puede tener más de un padre, por lo que resulta más
flexible, dando lugar a una estructura de grafo. Pero estos sistemas presentan algunos
inconvenientes:
65
Segunda generación de los SGBD: En 1970 Codd, de los laboratorios de investigación de
IBM, escribió un artículo presentando el modelo relacional. En este artículo, presentaba también
los inconvenientes de los sistemas previos, el jerárquico y el de red. Entonces, se comenzaron a
desarrollar muchos sistemas relacionales, apareciendo los primeros a finales de los setenta y
principios de los ochenta. Esto condujo a dos grandes desarrollos:
• La producción de varios SGBD relacionales durante los años ochenta, como DB2
y SLQ/DS de IBM, y ORACLE de ORACLE Corporation.
Hoy en día, existen cientos de SGBD relacionales, tanto para microordenadores como para
sistemas multiusuario, aunque muchos no son completamente fieles al modelo relacional. Los
SGBD relacionales constituyen la segunda generación de los SGBD.
Las bases de datos son hoy en día el corazón de las empresas. Sin ellas se verían expulsadas
del mercado por la competencia. Todos los ciclos formativos de la familia profesional de
informática contemplan en sus temarios las bases de datos, lo que pone de relieve la gran
importancia de las mismas.
66
• ERP. Un sistema ERP (Enterprise Resource Planning, planificación de recursos
empresariales) consta de un conjunto de programas integrados capaz de gestionar las operaciones
vitales de una empresa global que tenga multitud de sedes. Aunque el alcance de los sistemas ERP
puede variar de empresa a empresa, la mayoría proporcionan software integrado de soporte para
las funciones de finanzas y producción.
Los sistemas ERP típicamente manejan la producción, logística, distribución, inventario, envíos,
facturas y una contabilidad para la compañía de la Planificación de Recursos Empresariales o el
software ERP puede intervenir en el control de muchas actividades de negocios como ventas,
entregas, pagos, producción, administración de inventarios, calidad de administración y la
administración de recursos humanos.
Por ejemplo, los sistemas ERP son capaces de hacer predicciones de demanda, cotejar la
predicción con las existencias de inventario, y determinar las materias primas necesarias para
fabricar los productos que se prevén van a demandarse. La mayoría de los sistemas ERP también
incorporan la capacidad de realizar automáticamente los pedidos de esos materiales.
Además, se soportan e integran otras funciones como las relativas a la gestión de recursos
humanos, ventas y distribución.
➥ mySAP de SAP AG (la versión anterior de este ERP es SAP R/3). Es el líder en ERP.
67
Las bases de datos de marketing tienen como finalidad cargar y almacenar perfiles de los clientes
con datos más subjetivos como, por ejemplo, qué le gusta hacer en su tiempo libre, qué tipo de
comida consume, etc., datos que están enfocados a poder desarrollar un perfil de cliente de modo
que podamos brindarle una oferta que esté realmente hecha para él. Por esto es que las estrategias
de marketing directo basadas en un desarrollo CRM tienen tanto éxito en todo el mundo.
La orientación al cliente es cada vez más importante. El objetivo es ofrecer al cliente aquello que
necesita y en el momento que lo necesita. El software CRM online es, según consultoras y
especialistas, el que en un futuro cercano mejor permitirá conocer al detalle, sus necesidades y
anticiparse a su demanda desde el lugar en que nos encontremos, compartiendo la información.
Uno de los mayores problemas para que las empresas exploten un producto CRM es el alto costo
de estos productos comerciales, licencias adicionales como un sistema operativo y mas aun el alto
costo de la su implantación y puesta en marcha.
Las diversas áreas empresariales (marketing, producción, finanzas, etc.) disponen de MIS dedicados,
que generan informes estándar a partir de los datos proporcionados por los sistemas de procesamiento
de transacciones, no sólo de su área, sino de todas. Para ello, se ha de usar una base de datos común a
todas las áreas.
Los informes que proporcionan los MIS sin fijos, con formatos estándar, si bien se permite a lo
usuarios elaborar informes a medida. Para su confección, los MIS hacen uso de la información
interna a la empresa, que reside en sus bases de datos. Algunos MIS usan fuentes externa de datos
sobre sus competidores, el mercado, etc. Internet se usa con frecuencia como una fuente de datos
externos.
68
• DSS. Un DSS (Decision Support System, sistema de ayuda a la decisión) es una colección
organizada de personas, procedimientos, software, bases de datos y dispositivos usados para servir
de ayuda en la toma de decisiones de problemas específicos. Estos problemas son poco
estructurados, es decir, las relaciones entre los datos no son siempre claras, los datos pueden estar
en una gran variedad de formatos, y pueden ser difíciles de obtener. Mientras que un MIS ayudan a
la empresa a “hacer correctamente las cosas”, un DSS ayuda a un directivo a “hacer la cosa
correcta”.
Los DSS asisten en todos los aspectos que se han de contemplar para adoptar decisiones relativas a
problemas específicos, extendiéndose más allá de lo que lo haría un MIS; los MIS tradicionales no
ayudan a resolver problemas complejos.
Los MIS tradicionales se usan raramente para resolver este tipo de problemas; un DSS puede
ayudar sugiriendo alternativas que faciliten la adopción de la solución final.
Los sistemas de apoyo a la decisión se usan cuando los problemas son complejos y la información
que se necesita para dar la mejor respuesta es difícil de obtener y usar. Entre los elementos
constitutivos de un DSS se encuentran los modelos empleados, y los hechos (datos) con los que se
han de alimentar esos modelos, así como una interfaz de usuario que permita interactuar con el
DSS, planteándole, por ejemplo, situaciones hipotéticas cuyas consecuencias habrán de simular
mediante los modelos. También se les puede proporcionar un objetivo (goal) para el que deben
determinar los datos de entrada que lo lograrían. Los DSS proporcionan maneras flexibles de
presentar la información, tanto gráfica como textualmente, y con distintos niveles de profundidad,
aunque son fáciles de usar y aprender.
Los DSS manejan grandes cantidades de información (almacenes de datos o data warehouses),
procedentes de diversas fuentes.
➥ GDSS: Los sistemas de apoyo a la toma de decisión en grupo (GDSS, Group Decision
Support System), también denominados sistemas de trabajo colaborativo constan de la mayoría de
los elementos de los DSS, además del software necesario para facilitar el trabajo en grupo a
distancia (groupware).
➥ ESS: Los ejecutivos de más alto nivel necesitan un apoyo muy especializado que les ayude
a adoptar decisiones estratégicas. Este apoyo se lo brindan los sistemas de sistemas de apoyo para
69
ejecutivos (ESS, Executive Support System), también llamados sistemas de información para
ejecutivos (EIS, Executive Information System). Los ESS son un caso particular de DSS, aunque
presentan diferencias. Los DSS proporcionan herramientas de modelado y análisis que permiten a
los usuarios profundizar en los problemas a la busca de respuestas. Los ESS presentan información
sobre aspectos de la empresa que los ejecutivos consideran importantes; en otras palabras, les
facilitan la tarea de formular las preguntas oportunas.
70
8. COMUNICACIÓN Y REDES
Los tres últimos siglos han estado dominados, cada uno de ellos, por una tecnología.
El siglo XVIII fue la época de los grandes sistemas mecánicos que acompañaron a la
Revolución Industrial.
71
Los objetivos fundamentales de las redes en general y de la interconexión de ordenadores
en particular son:
En este tema veremos una panorámica global de las redes, así como los principios básicos
de las mismas y los servicios que se soportan y prestan a los usuarios.
Las telecomunicaciones, comienzan en la primera mitad del siglo XIX, en 1844 Samuel
Morse inventó el telégrafo inalámbrico, que permitió el enviar mensajes cuyo contenido eran letras
y números.
Más tarde en 1876 Alexander Bell amplió las posibilidades del telégrafo, desarrollando el
teléfono, con el que fue posible comunicarse utilizando la voz, y posteriormente, la revolución de
la comunicación inalámbrica: las ondas de radio.
A principios del siglo XX aparece el teletipo que, utilizando el código Baudot, permitía
enviar texto en algo parecido a una máquina de escribir y también recibir texto, que era impreso
por tipos movidos por relés.
El término telecomunicación fue definido por primera vez en la reunión conjunta de la XIII
Conferencia de la UTI (Unión Telegráfica Internacional). La definición entonces aprobada del
término fue: "Telecomunicación es toda transmisión, emisión o recepción, de signos, señales,
escritos, imágenes, sonidos o informaciones de cualquier naturaleza por hilo, radioelectricidad,
medios ópticos u otros sistemas electromagnéticos".
72
El siguiente artefacto revolucionario en las telecomunicaciones fue el módem que hizo
posible la transmisión de datos entre computadoras y otros dispositivos. En los años 60's comienza
a ser utilizada la telecomunicación en el campo de la informática con el uso de satélites de
comunicación y las redes de conmutación de paquetes.
En los años 1980, cuando los ordenadores personales se volvieron populares, aparecen las
redes digitales. En la última década del siglo XX aparece Internet, que se expandió enormemente y
a principios del siglo XXI se están viviendo los comienzos de la interconexión total a la que
convergen las telecomunicaciones, a través de todo tipo de dispositivos que son cada vez más
rápidos, más compactos, más poderosos y multifuncionales
Entre 1983 y 1984 surgieron los primeros entornos servidores de ficheros para redes de
área local. Entre las compañías destacadas, cabe citar a Novell Inc., 3Com Corp., AT&T e IBM.
Aunque todas ellas diferían en la gestión e implementación, se trataba de entornos centralizados,
donde un ordenador hacía las veces de servidor (con el sistema operativo de red instalado en él y
los datos compartidos) y el resto de equipos funcionaban con una versión de un sistema operativo
más “ligero”, como MSDOS. Hacia 1990, este tipo de redes locales triunfó en el mundo de la
empresa y la industria de las redes creció a velocidades impresionantes.
Hoy en día, las redes de ordenadores son algo más que un entorno centralizado de gestión
de ficheros. El desarrollo de la tecnología en los medios físicos disponibles (cobre, coaxial, fibra
óptica, transmisores y receptores inalámbricos de alta velocidad) ha posibilitado el incremento en
velocidad de transmisión y fiabilidad, lo que ha supuesto una extensión en sus capacidades. La
principal tiene que ver con las redes de altas prestaciones, donde una aplicación compleja se
ejecuta de forma distribuida en los equipos de la red. La tendencia actual debido a las altas
velocidades, fiabilidad y capacidad de procesamiento en equipos dispuestos en red local, se orienta
73
hoy en día hacia las redes distribuidas (en lugar de centralizadas) donde cada ordenador es
cliente, pero también puede realizar procesamiento de las peticiones de otros clientes, siendo
servidor de datos o dispositivos compartidos.
Hace unos años los sistemas informáticos empresariales eran centralizados. Grandes
mainframes, también denominados hosts, concentraban toda la carga computacional. Se accedía a
ellos desde unos terminales, que eran poco más que un monitor de fósforo verde y un teclado.
Conforme los requisitos de las aplicaciones empresariales fueron aumentando, se fue haciendo
cada vez más patente que los sistemas centralizados no eran adecuados y resultaban caros. Las
empresas dependían de ellos, pero... ¿qué sucedía cuando el host se caía?: se paraba la actividad
empresarial.
El surgimiento de los ordenadores personales (PC), de coste cada vez más asequible,
propició su implantación progresiva en las empresas. Como su capacidad de cómputo crecía
rápidamente, parece lógico que se empezara a delegar parte del trabajo de los hosts en los PC. Del
mismo modo el desarrollo de los lenguajes de alto nivel como Visual Basic y con Oracle Forms
Developer, facilitó el desarrollo de aplicaciones de clientes en PC con acceso a servidores. De esa
forma, surgió la arquitectura de dos capas cliente/servidor. Esta arquitectura no estaba exenta
problemas, pero como habitualmente los sistemas no ocupaban más de una oficina, las ventajas
que aportaba la tecnología cliente/servidor superaban a sus inconvenientes.
74
A mediados de la década de los noventa, a medida que los sistemas empezaban a estar cada
vez más intercomunicados, los problemas se fueron haciendo progresivamente más patentes. Un
inconveniente muy fuerte de la arquitectura de dos capas (aunque no el único) es su administración
cuando la red se extiende más allá de un departamento u oficina. Piénsese en lo que supone migrar
a una nueva versión del cliente: reinstalar en muchísimas máquinas, parando el trabajo de todos los
empleados. Otro inconveniente, vinculado al anterior, es la elevada complejidad que habían
alcanzado los sistemas. Los clientes cada vez eran más “obesos”; debían utilizar más inteligencia.
Lo que antes era un host, ahora, cada vez más, se limitaba a un medio para compartir recursos,
como un sistema de ficheros, una impresora y, con frecuencia, una base de datos. Los problemas
de administración y desarrollo se agigantaban. Había que construir y administrar aplicaciones
diferentes para distintos departamentos.
Se hacía cada vez más necesaria una arquitectura que fuera escalable. Es decir, ampliable.
Surgen así las arquitecturas de tres capas, favorecidas por la explosión de Internet. Aun así los
sistemas centralizados siguen teniendo aplicación hoy en día.
La arquitectura de tres capas aleja la inteligencia del cliente. El cliente ahora es,
típicamente, un navegador web (browser), y sólo sirve como interfaz de usuario. Los datos siguen
residiendo en una base de datos, carente de “inteligencia”. Dicha “inteligencia” reside ahora en
programas que componen una capa intermedia.
El cliente emite su solicitud a los programas intermedios, que pedirán datos al servidor
mediante una consulta, procesándolos una vez obtenidos, y devolverán al cliente el resultado de
dicho proceso.
• Mayor seguridad, derivada del hecho de no permitir a los clientes un acceso directo
a la base de datos.
75
• Elevada disponibilidad, puesto que se puede configurar una capa intermedia con
varias máquinas.
76
9. FUTURO: INTELIGENCIA ARTIFICIAL
Una característica adicional deseable, y a veces fundamental, es que el sistema sea capaz de
justificar su propia línea de razonamiento de forma inteligible por el usuario.
77
esos conocimientos en una forma compatible con un ordenador. Los ordenadores ejecutan una
forma de tratamiento del conocimiento cuando los usuarios lo solicitan.
Inteligencia artificial (IA). Los sistemas expertos son una de las aplicaciones de la
inteligencia artificial. Ahora que ya se sabe qué es y qué hace un sistema experto, es el momento
de volver la vista hacia la inteligencia artificial, el campo del que derivan los sistemas expertos.
Los sistemas expertos y otras formas de inteligencia artificial son paquetes de software que
se pueden hacer funcionar en casi todos los ordenadores.
El enfoque básico para la resolución de problemas en inteligencia artificial son los procesos
de búsqueda y comparación de patrones, los veremos posteriormente.
78
9.2. Aplicaciones de la IA.
79
• Sistemas de predicción. Los sistemas expertos son muy buenos para predecir
resultados futuros. Utilizando los datos de entrada acerca de una situación dada, un
sistema experto de predicción puede deducir consecuencias futuras o resultados a
partir del conocimiento que tiene. Los sistemas de predicción producen resultados
especialmente buenos a la hora de sugerir las consecuencias más probables de unas
determinadas condiciones. La base de conocimientos suelen contener las tendencias
de los datos y la información histórica, así como los patrones cíclicos apropiados.
80
alguna condición deseada. Denominados sistemas de control en bucle cerrado, éstos
permiten automatizar totalmente algunos procesos.
• Sistemas de diseño. Los sistemas CAD basados en sistemas expertos liberan a los
ingenieros o a los diseñadores para dedicarse a tareas más creativas.
81
e incluso meses en resolver manualmente. Macsyma también manipula expresiones
algebraicas complicadas y ayuda a reducirlas a su forma más simple.
Una de las características principales de Mycin es que su base de reglas está radical-
mente separada de su programa de inferencia. Esto permite eliminar completamente
la base de conocimientos, creando Mycin vacíos (llamados Emmycin). Emmycin es
el modelo a partir del cual se crearon los “shell” de los modernos sistemas expertos.
• Xcon. Xcon es un sistema experto diseñado para ayudar a los técnicos de Digital
Equipment Corporation (DEC) a configurar sistemas de miniordenadores. La
popular serie VAX de DEC se encuentra disponible en una amplia gama de modelos
con una gran cantidad de características y opciones que puede seleccionar el cliente.
Dado el gran número de posibles combinaciones, el personal de DEC tenía
problemas para configurar el sistema apropiado en el que todos los componentes
funcionaran en conjunto. Xcon genera automáticamente la configuración deseada a
partir de los requisitos del cliente.
82
Xcon se denominó originalmente R1 y fue desarrollado en la Universidad Carnegie
Mellon a finales de los años setenta, siendo revisado y actualizado en DEC a
principios de los años ochenta.
83
10. REVOLUCIÓN MULTIMEDIA
Multimedia es cualquier combinación de texto, sonido digital, música, imagen estática,
animación y vídeo que se expone por medio de un ordenador personal u otros medios electrónicos.
Multimedia se compone de los siguientes elementos:
• Texto.
• Sonido.
• Imagen.
• Animación.
• Vídeo.
Desde el punto de vista del diseño y construcción de interfaces gráficas de usuario, lo que
aporta Multimedia es una ampliación de las posibilidades existentes para comunicarse con el
usuario de una aplicación. Algunos ejemplos:
• Utilizar síntesis de voz para facilitar el manejo del programa por parte de usuarios
con problemas de visión.
84
software como único soporte controlando toda la aplicación mediante comandos hablados o
dispositivos adicionales mediante simples gestos.
En este tema revisaremos los sistemas multimedia, revisando los elementos más
importantes, la imagen, el sonido y el vídeo, junto al hardware comercial correspondiente.
Hasta entonces, el sector de los sistemas de información habían dominado las modalidades
alfanuméricas. Pero la situación fue cambiando y aparecieron, sobre todo en el mundo
empresarial, planteamientos nuevos en los que se reclamaba ver “información” y no simplemente
“datos”; entendiendo por “información”, las curvas de tendencias o los gráficos de barras.
85
De esta forma se permitía una interacción persona-máquina más <natural>, en la que el
usuario <ve> el proceso que siguen los datos que maneja.
Ahora que las redes de telecomunicaciones son globales, los proveedores de información
y los propietarios de derechos de autor determinan el valor de sus productos y cuánto cobran por
ellos, los elementos de información se integrarán a sus desarrollos en línea como recursos
distribuidos en una autopista de datos, como una autopista de pago, donde se pagará por adquirir y
utilizar la información basada en multimedia.
86
Level 1 Level 2
------------------------------
RAM 2 MB 4 MB
Multisession capable
Por tanto podemos concluir que en los últimos años se está produciendo un auge del
concepto multimedia; este fenómeno está motivado, fundamentalmente, por las causas
siguientes:
87
ordenadores, la capacidad de los discos magnéticos y la aparición de la tecnología
de almacenamiento óptico, que permite el almacenamiento masivo a más bajo coste
que con la tecnología de discos magnéticos.
• La creciente demanda de los usuarios que cada vez solicitan más prestaciones a su
sistema informático como tratamiento de gráficos, imágenes, sonido, movimiento,
etc.
88
• La evolución de las técnicas de compresión.
89
BIBLIOGRAFÍA
90