Académique Documents
Professionnel Documents
Culture Documents
com
papiro empleados por griegos y egipcios, que pueden considerarse como uno de los primeros
archivos centrales de un estado.
En el 868 ya se impriman libros en China, existiendo como prueba de tal aseveracin el Sutra del
Diamante, versin china de un texto budista snscrito.
Los diseadores de sistemas informativos en cada poca histrica se vieron favorecidos por la alta
estima y consideracin de los gobernantes que valoraban significativamente sus servicios.
As, el diseador de sistemas utiliz para almacenar informacin piedras (India y Tibet),
monumentos (Egipto, Mesoamrica), cuerdas (Europa, Tibet, Imperio Inca), madera (Europa) e
incluso el cuerpo humano mediante tatuajes (Benin), utilizando siempre en su trabajo la tcnica
disponible en su tiempo, reflejando el desarrollo de la ciencia en la poca que les toc vivir.
Del baco a la primera calculadora mecnica pasaron varios siglos, atribuyndose este hecho al fsico
y matemtico Blaise Pascal (1623-62) quien dijo al respecto: "Ofrezco al pblico una pequea
mquina de mi iniciativa, con la cual, usted slo, podr realizar todas las operaciones aritmticas sin
esfuerzo y se sentir aliviado del trabajo que con harta frecuencia ha fatigado su espritu cuando
trabajaba con el baco y la pluma".
El siguiente paso lo dio el matemtico alemn Liebnitz (1646-1716), quien introdujo a la mquina de
Pascal la multiplicacin de forma directa con la rueda dentada escalonada y no mediante sumas
reiteradas como su predecesora.
Un nuevo avance se logr con los trabajos de Charles Babbage (1792-1817) quien estableci los
conceptos bsicos de las estructuras de las computadoras digitales y en 1812 propuso la idea de una
mquina para tabular funciones matemticas tales como logaritmos, etc., mediante aproximaciones de
polinomios. En 1822 termin un modelo que poda calcular diferencias con seis dgitos de precisin y
posteriormente propuso construir una que utilizaba diferencias de 6to orden con 20 dgitos de precisin,
pero perdi el inters en sta cuando concibi su mquina analtica, conceptualmente ms avanzada,
pero recibida con escepticismo por sus contemporneos y que a su muerte pas al olvido.
La continuacin de los trabajos de Babbage lo realiz su colaboradora Augusta Ada (1815-52)
-condesa de Lovelace e hija de Lord Byron- la cual desarroll varios programas para resolver
problemas matemticos avanzados, lo que la convierte en la primera programadora en la Historia de la
Computacin. Igualmente contribuy a exponer, incluso con ms claridad, las ideas de Babbage entre
las que pueden sealarse las siguientes:
La Mquina Analtica no pretende, en absoluto, crear nada. Puede realizar lo que nosotros le
mandamos.
En relacin con el empleo de ciclos repetitivos y las instrucciones de salto expres: "La mquina es
capaz de hacer un examen, en ciertas circunstancias, para averiguar si se ha producido una
contingencia posible, dos o ms, y seguir despus el rumbo que convenga.
En 1888 tiene lugar otro avance significativo, cuando el estadstico norteamericano Herman Hollerith
invent una mquina que contaba automticamente los huecos perforados en una tarjeta de papel, lo
que permiti utilizar este soporte para introducir informacin a los sistemas, que estuvo vigente hasta
la dcada de los 70-80 del siglo XX.
A partir del desarrollo de la electricidad a mediados del siglo XIX y los avances en la electrnica en el
siglo XX, la Mecnica comienza a ceder terreno en este tipo de aplicaciones y surgen computadoras
que emplean dispositivos electrnicos (diodos de vaco constituidos por dos electrodos encapsulados
en una ampolla de vidrio al vaco entre los cuales circula una corriente y las ms evolucionadas
vlvulas de vaco que disponen de rejillas colocadas entre los electrodos para regular la magnitud de
la corriente), las cuales aventajan en velocidad, tamao y fiabilidad a las mecnicas.
Posteriormente, el ingls George Boole desarroll un sistema algebraico para la representacin de
operaciones lgicas, que constituy el germen para el diseo de los circuitos lgicos y de clculo
en las computadoras, y la base matemtica en que se apoyan algunos mtodos actuales de diseo
de sistemas informticos y de bases de datos.
En la dcada del 40, von Newman culmina la configuracin de la arquitectura bsica de las
computadoras, al combinar los conceptos de programa almacenado y ruptura de la secuencia del
programa mediante la toma de decisiones, en tanto en los 50 los trabajos empleando
semiconductores condujeron al descubrimiento del transistor, base del desarrollo de los circuitos
integrados, lo que permiti el trnsito de las computadoras de vlvulas a las basadas en
microprocesadores, cuyo surgimiento en los 70 origin una profunda transformacin, tanto desde el
punto de vista de la arquitectura de los sistemas de cmputo como de las tcnicas de cmputo y la
informtica en su conjunto.
A partir de los finales de la tercera dcada del siglo XX comienza el desarrollo de la primera
generacin, diferentes colectivos de cientficos trabajaban fuertemente en el desarrollo de
dispositivos de clculo automtico. Los ms significativos fueron Howard Haiken y Grace Hopper
en Harvards, con los Mark I, II, III y IV; J.P. Eckert y J.W. Mauchly en Pennylvania con el ENAC (y
posteriormente con la UNIVAC I, primera computadora electrnica comercializada en el mundo que
poda almacenar programas y datos); John von Newman en Pennsylvania y Cambridge con los
EDVAC y EDSAC respectivamente, computadoras que tenan programas almacenados (conjuntos
de instrucciones codificados y precableados) que se ejecutaban secuencialmente.
Los primeros equipos computacionales estaban orientados al llamado clculo cientfico y los
lenguajes se vinculaban directamente a la mquina en cuestin, asociados fundamentalmente al
cdigo que sta empleaba. Fue la etapa heroica, donde paralelamente al empleo de los medios de
cmputo, a la elaboracin de los programas, surga toda una teora sobre la programacin.
En estos primeros mtodos se insista mucho en la organizacin del flujo informativo entre los
elementos del sistema, diseo ptimo de la informacin de entrada a la computadora, la cual, en su
gran mayora, se soportaba sobre tarjetas perforadas; el diseo de las tablas de salidas.
En este momento, Herbert Simn desarrolla en 1956 los primeros programas heursticos, con lo
que comenzaba a tomar cuerpo una disciplina que ya cuenta con gran difusin en el mundo: la
inteligencia artificial y se desarrollan y difunden superlenguajes o lenguajes de alto nivel para su
utilizacin en clculo cientfico: el FORTRAN y el ALGOL.
Con el surgimiento del transistor, al final de la dcada de los cincuenta, surge la segunda
generacin de computadoras, en la que los tubos al vaco son sustituidos por transistores, se
dispone de sistemas magnticos de memoria central, de memoria virtual, dispositivos de micro y
multiprogramacin.
Quizs el logro ms importante de la segunda generacin de mtodos de diseo fue la concepcin
sistemtica de las aplicaciones con la introduccin del SOP (Study Organization Plan), que parta
de concebir a la entidad como un sistema y divida el trabajo de confeccin de un sistema en tres
etapas y seis fases.
Dos aspectos interesantes y novedosos del SOP lo fueron:
La utilizacin de documentos diseados ergonmicamente para la concepcin de diagramas,
ficheros, programas y tablas de salida.
El clculo de la eficiencia econmica del nuevo sistema, como elemento a valorar para
determinar la prioridad de desarrollo de las tareas a automatizar.
La tercera generacin, denominada empirismo desarrollado, se caracteriza por la introduccin de
los mtodos estructurados, el formalismo y la automatizacin del diseo, que tienen como punto de
partida, los hechos siguientes:
1961: se comercializa el primer circuito integrado que sale al mercado.
1964: con mquinas caracterizadas por la integracin en gran escala de circuitos hbridos y
monolticos, la capacidad de manejar multiprocesadores, la multiprogramacin de tareas, el
aumento de la velocidad de procesamiento y de la capacidad de memoria, el procesamiento en
tiempo compartido y el almacenamiento de volmenes significativos de informacin en
dispositivos de acceso directo a un costo razonable.
Otro logro muy significativo de la tercera generacin de computadoras fue el desarrollo del
software, tanto bsico (sistemas operativos, compiladores, etc), como utilitario (generadores de
programas, programas parametrizados de amplia utilizacin, etc), surgiendo la industria del
software, elaboradora de productos de amplia difusin, convirtindose la informtica en una de las
ramas de punta del desarrollo.
En el campo metodolgico se produce una proliferacin de enfoques en los mtodos empleados
cuya utilizacin conduce a la elaboracin de sistemas metodolgicos, llamados genricamente
mtodos estructurados de anlisis y diseo de sistemas informticos, entre los que se encuentran:
Jackson: Abarca el anlisis y la programacin, orientado tanto al anlisis por lotes como en
tiempo real. No se apoya en ningn lenguaje en particular, aunque tiene una aplicacin casi
directa en PL/1.
Constantine. Diseado especialmente para el trabajo en tiempo real.
Bertini: Prcticamente resulta una estructuracin del lenguaje COBOL.
Warnier: Abarca el anlisis y la programacin (Leyes de Construccin de Sistemas y Programas),
que orienta su trabajo fundamentalmente a los datos y a las relaciones entre ellos
principalmente a las aplicaciones aisladas. Estas relaciones se apoyan en los principios de la
Lgica Matemtica y la Teora de Conjuntos.
En general, los mtodos estructurados tuvieron mucha efectividad en la programacin, al aumentar
de manera significativa la productividad de los programadores y reducir la complejidad y el diseo
incorrecto de los programas.
No puede decirse lo mismo de la concepcin del sistema, de su diseo. La mayora de estos
mtodos reduce el proceso de proyeccin a un conjunto de pasos y de decisiones simples, los
cuales, si bien son apropiados para especialistas de poca experiencia, con frecuencia entorpecen
el trabajo de especialistas de mayor destreza.
Otro enfoque fue el de los sistemas metodolgicos basados en documentacin normalizada. Uno
de los sistemas ms conocidos es el de NCC-Systems Documentation Standards. El mismo abarca
todas las etapas de elaboracin del sistema, y su rasgo distintivo es la formalizacin del sistema
mediante documentos, que deben ser cumplimentados en determinado orden por los especialistas.
El principal inconveniente de estos sistemas metodolgicos fue la tendencia (inconsciente e
involuntaria, pero real) a documentar el sistema y no a elaborarlo realmente: una tendencia
burocrtica que ha lastrado la eficiencia de muchos buenos especialistas.
Dentro de la lnea de la formalizacin, deben mencionarse los intentos por representar
algebraicamente los procesos informativos.
Paralelamente, el desarrollo electrnico no se detiene. Aumenta la densidad de los circuitos
integrados. En 1970, se produce el primer RAM de 1024 bytes. Ello prepara la escena para la
aparicin, en 1971, del primer microprocesador comercial, el INTEL 4004, y la primera
microcomputadora .
Los pequeos cambios cuantitativos se suceden uno tras otro hasta que su acumulacin genera el
cambio cualitativo revolucionario: Steve, Wozniak y Jobs, disean la Apple II y el mundo de la
informtica se conmociona, surgiendo la cuarta generacin. El impacto del Apple II fue
considerable. Por primera vez, la informtica sala de los centros de clculo (tcnicos altamente
especializados, cristales, jerga incomprensible, etc.) para invadir las oficinas, los talleres, el aula y
el hogar.
Comenzaba, segn muchos, la primera gran revolucin informativa desde Gutenberg. La potencia
de clculo, la capacidad de memorizacin, pero sobre todo la sencillez de manejo, el bajo consumo
energtico, las posibilidades de trabajo en condiciones ambientales normales y el bajo precio;
pusieron la computacin al alcance de grandes masas no especializadas en esas tcnicas.
En este momento la electrnica ejecuta el segundo paso, esta vez sobre seguro, pero a su vez de
muchas mayores dimensiones: IBM entra en el negocio de las microcomputadoras con su serie
IBM PC (en sus versiones PC, XT, AT y posteriormente con el PS/2, ste ltimo un fracaso
comercial). El mrito principal de esta serie ha sido su capacidad de estandarizar la actividad del
software: el sistema operativo MS-DOS se convierte en norma internacional por la fuerza de la
transnacional gigante, lo cual crea el entorno de trabajo necesario para el desarrollo de software
utilitario a una escala inmensa.
Esta enorme difusin ha propiciado varias tendencias:
Grandes firmas de software concentran los mejores especialistas y elaboran programas de alta
complejidad (utilitarios de diversos tipos, generadores de programas, etc.) pero altamente
amistosos, para propiciar su utilizacin por personal no informtico.
Lo anterior hace que cada vez se difundan y resulte ms fcil la difusin de las tcnicas
informticas a personal no especializado.
El empleo de estas tcnicas por este tipo de personas, ha motivado una alta utilizacin de las
computadoras en todas las esferas de la vida, as como el diseo de sistemas caracterizados por:
Espontaneidad e ineficiencia.
Resultados rpidos pero incompletos.
Participacin mayoritaria de especialistas en aplicaciones concretas y minoritaria de
especialistas en informtica.
En este sentido, se estn difundiendo algunos sistemas que combinan las caractersticas y
enfoques de los mtodos estructurados con las ventajas indudables de la automatizacin.
Uno de los sistemas ms conocidos es el EXCELERATOR, paquete basado en las tcnicas y
smbolos que han propuesto Gane y Sarson en su mtodo estructurado, el cual permite
automatizar un volumen considerable de tareas en el proceso de creacin de un sistema
automatizado.
Este acelerado desarrollo tcnico permiti el acceso masivo al empleo de las tcnicas digitales,
quedando a los especialistas el desarrollo de nuevos programas y sistemas que faciliten y amplen
su utilizacin por el creciente nmero de usuarios.
II. Computadoras analgicas y digitales
El bosquejo histrico realizado evidencia que el punto de partida de los sistemas de cmputo ha
estado asociado al procesamiento de nmeros (sin importar su procedencia), de ah la importancia
de una adecuada seleccin de la notacin (representacin de los nmeros mediante conjuntos de
smbolos, entre las que pueden sealarse la romana que utiliza smbolos alfabticos
(I,V,X,L,C,D,M); la decimal que utiliza para la representacin caracteres numricos
(0,1,2,3,4,5,6,7,8,9) y la binaria que caracteriza sus resultados por dos estados (verdadero y falso).
Por otra parte es necesario sealar que los nmeros reflejan el comportamiento del mundo fsico, en
el cual los fenmenos se manifiestan de dos formas: continua (la transicin de un estado a otro del
sistema se realiza de forma progresiva) y discreta (la transicin se realiza a saltos), lo que motiva a
pensar en dos tipos de sistemas computacionales diferentes, cuya forma de trabajo se encuentre lo
ms cercana posible a la realidad que refleja: analgico para procesos continuos y digital para
discretos, que brevemente se describen a continuacin.
La utilizacin progresiva de los tubos de vaco en conjuncin con otros dispositivos permiti obtener
circuitos que representan con buena aproximacin de forma continua la derivada o la integral de una
funcin representada por las variaciones de voltaje a la entrada del circuito. Este procedimiento
permiti la solucin de ecuaciones diferenciales, dando lugar a las computadoras analgicas, en las
cuales modificando adecuadamente determinadas conexiones electrnicas o valores de componentes
discretos (resistencias y condensadores) es posible evaluar la influencia de una o varias magnitudes
en el sistema fsico caracterizado por la ecuacin diferencial simulada.
La otra vertiente de los sistemas de cmputo, las computadoras digitales, utilizan la notacin en base
binaria, atendiendo a que cada dgito (denominado bit y que se utiliza como unidad de informacin
binaria), dispone de dos estados (verdadero y falso) lo que facilita el tratamiento de la informacin a
travs de elementos electrnicos, pues cada estado puede asociarse con la presencia o no de
voltaje en un determinado dispositivo.
La Matemtica Binaria opera de la misma forma que la decimal, excepto que el valor de cada
trmino (bit) slo puede ser slo 0 1. En la tabla 1 se muestra la correspondencia entre los
valores decimales y binario.
Tabla 1. Ejemplo de empleo de la notacin binaria
decimal
binario
decimal
binario
decimal
binario
100
1000
101
1001
10
110
10
1010
11
111
11
1011
octal
hexadecimal
decimal
octal
hexadecimal
10
12
11
13
10
15
17
11
16
20
10
del 128 ejecutan tareas especiales como acentos para ciertos lenguajes. En el Anexo B de este
trabajo se muestran los 127 cdigos ASCII estndar y los del ASCII, extendido.
Cuando se habla de muchos bytes, se utilizan prefijos tales como kilo, mega y giga, (kilobyte,
megabyte y gigabyte tambin abreviados a k, m y g o KB, MB y GB). La siguiente tabla recoge la
forma de clculo de las cantidades de bits y el prefijo correspondiente.
Tabla 3. Unidades binarias
cantidad de bits
prefijo
abreviatura
forma de clculo
cantidad exacta
Kilo
210
1,024
Mega
2 20
1,048,576
Giga
230
1,073,741,824
Tera
240
1,099,511,627,776
Peta
250
1,125,899,906,842,624
Estos sistemas se desarrollaron de forma acelerada hasta las actuales microcomputadoras, a partir de
las posibilidades de la microelectrnica, que a finales de los 70 permiti la fabricacin de circuitos
complejos capaces de agrupar en un mismo dado semiconductor (circuitos integrados) diversas
estructuras requeridas por los sistemas de cmputo, lo que redund en un incremento de la fiabilidad
y reduccin de las dimensiones, al mismo tiempo que posibilit la creacin de una unidad central de
control estndar, lo que reporta beneficios en trminos de programacin y una reduccin en los costos
que facilita el acceso masivo a esta tcnica.
Como consecuencia de este desarrollo, tuvo lugar una evolucin y significativos avances en las
tcnicas digitales (en la actualidad se emplean a gran escala en todas las actividades de la ciencia y la
tcnica como las comunicaciones, control de proceso industriales, etc.) las cuales han permitido la
asimilacin progresiva de los problemas solubles mediante las computadoras analgicas reduciendo
drsticamente la presencia de stas hasta su casi total desaparicin.
III. Microelectrnica y sistemas de cmputo
Considerando el impacto de la microelectrnica en el rpido y sostenido desarrollo de las tcnicas
digitales y lo frecuente del empleo de trminos como capacidad de memoria, microprocesador, etc. es
conveniente establecer el alcance real de stos y su vinculacin con los dispositivos que componen el
sistema de cmputo.
En primer lugar es necesario diferenciar los trminos de microcomputadora de microprocesador.
El microprocesador es un circuito integrado que agrupa todos o casi todos los elementos que
constituyen la Unidad Central del Proceso (UCP), y es capaz de interpretar y ejecutar una serie de
Sin embargo, su complejidad hace necesario recurrir a las analogas existentes entre stos y otros
sistemas ms conocidos los cuales facilitan la comprensin del funcionamiento de las
microcomputadoras.
Para este propsito se seleccion el ser humano, atendiendo a que ha sido utilizado exitosamente con
fines similares en otros casos, entre los que puede sealarse los vehculos automotores, donde
incluso condujo a la popularizacin de cambios en la denominacin de rganos como el de corazn
por bomba en franca alusin al dispositivo de este tipo que existe en los automviles y tiene
semejante funcin a la del corazn.
Por tanto, el primer paso para alcanzar este objetivo es la divisin funcional del sistema analizado, el
cual consta de dos bloques fundamentales: equipos perifricos que permiten el intercambio de
informacin hombre / mquina y la Unidad Central de Procesamiento (UCP) que se encarga del
control, administracin de los recursos internos y ejecucin de las acciones solicitadas por el usuario.
Los equipos perifricos pueden asociarse con los sentidos humanos, ya que conforman un sistema de
recoleccin de informacin (datos, solicitud de ejecucin de acciones, etc.) como se ilustra a
continuacin: un sistema de multimedia (con micrfono incluido) emula la recepcin de informacin a
travs del sentido de la audicin y la comunicacin oral a partir de la emisin de sonidos a travs de
las bocinas; las cmaras digitales de video y el escner pueden considerarse como los ojos de la
mquina pues permiten introducir informacin grfica o de texto directamente al sistema; una
impresora es equivalente al acto de escribir, en tanto el teclado y el mouse pueden asociarse con el
sentido del tacto pues reciben informacin a partir del contacto fsico con el medio.
En la prctica, existe un elemento intermedio llamado BUS a travs del cual se intercambia
informacin entre la UCP y los dispositivos de control interno y los administradores de los sistemas
perifricos, que son conjuntos de seales elctricas (datos y comandos) que en cada caso particular
tienen una o varias funciones especficas. En la analoga con el cuerpo humano, los buses (existen
gran cantidad de ellos) que permiten la transferencia de informacin y energa dentro del sistema de
cmputo pueden homologarse con las vas linftica y circulatoria, por donde circulan dos fluidos
corporales imprescindibles para la vida (linfa y sangre) pero que no se mezclan, y cuando sucede es
debido a una enfermedad que en la mquina se traduce en una falla, en tanto los buses que manejan
los protocolos para el manejo e intercambio de informacin y comandos con los perifricos tienen su
similar humano en los nervios y msculos del cuerpo humano.
En cuanto a la informacin, una vez que llega a la UCP se desencadenan diversos procesos, cuya
complejidad hace conveniente una nueva separacin de actividades atendiendo a sus dos funciones
fundamentales: administracin y control de los recursos internos y ejecucin de las acciones
requeridas o solicitadas a travs de la interaccin hombre / mquina.
La administracin de los recursos internos se realiza por el microprocesador a partir de la estrategia
establecida en un programa llamado BIOS, que se encuentra almacenado en la memoria
semiconductora permanente de la mquina y cuya finalidad es resolver los conflictos (cuando la
mquina se vuelve inoperante es debido a la ocurrencia de un conflicto no resuelto) sin participacin
del usuario.
Por tanto, estas acciones resultan transparentes al usuario, que percibe su existencia a travs de las
demoras en la ejecucin de acciones solicitadas, de manera anloga al sistema parasimptico de
nuestro cuerpo que se encarga de las funciones vegetativas (digestin, respiracin, circulacin etc.) y
del cual tenemos conciencia cuando alguna de estas funciones se afecta a causa de una enfermedad.
En cuanto a la funcin de intercambio de informacin con el exterior y la ejecucin de acciones
solicitadas, se realiza de la forma siguiente:
S copia en la memoria RAM el programa que contiene las acciones solicitadas, para incrementar
la velocidad de ejecucin.
Ejecucin por parte del microprocesador de la secuencia de acciones previstas en el programa
cargado. Durante este proceso se solicita la informacin requerida si procede y se emiten los
reportes previstos al alcanzar determinados objetivos.
En cuanto a la ejecucin de los programas es conveniente sealar que en la actualidad se utiliza un
recurso electrnico con manejo estadstico: la memoria cach. Esta memoria se manipula de forma
diferenciada por el microprocesador y en ella se encuentran almacenadas las acciones que
estadsticamente tienen mayor probabilidad de volver a ejecutarse, lo que contribuye a disminuir el
tiempo de acceso a la informacin por parte del procesador. Continuando con la analoga de la
computadora con el ser humano, la memoria cache es un enfoque semejante a la preparacin de
argumentos para defender una tesis previa a una discusin de la misma. En este caso cuando surgen
imprevistos, entonces es necesario cargar otros argumentos para enfrentarlos (nuevas acciones
en el caso de la mquina) lo que provoca en ambos casos una demora mayor en la respuesta.
Como se ha visto, las computadoras digitales basan su trabajo en seales elctricas que transitan
entre dos niveles de voltaje, a los cuales se les asocian dos estados lgicos (0: ausencia de voltaje; 1:
presencia de un determinado nivel de voltaje).
Sin embargo, este procedimiento para desarrollar aplicaciones tiene varias desventajas:
La programacin de sistemas voluminosos es engorrosa y dificulta la puesta a punto y deteccin de
errores.
Resulta difcil de analizar, incluso por quienes los elaboran cuando ha pasado un cierto perodo,
cuando es necesario realizar alguna modificacin para incorporar una nueva facilidad o corregir un
error no detectado durante su prueba.
Adicionalmente, es necesario una interfaz que administre los recursos de la mquina y armonice las
peticiones del usuario al sistema, por lo cual en los sistemas de cmputo existe una plataforma para
este propsito: el Sistema Operativo, el cual fundamenta su trabajo en el manejo y utilizacin de
archivos (ficheros) y la ejecucin de comandos.
En la actualidad se ha desarrollado para las microcomputadoras un medio ambiente, WINDOWS, que
pone a disposicin del usuario los recursos de una manera nemotcnica sencilla: iconos (rectngulos
que emulan teclas), que al ser seleccionados desencadenan la operacin o comando asociado al
mismo.
En cuanto al otro elemento fundamental, los ficheros, stos pueden clasificarse en dos grandes
grupos:
Ficheros ejecutables. Estn constituidos por conjuntos ordenados de bits que contienen secuencias
de operaciones que pueden ser interpretados directamente por el Sistema Operativo (cdigo de
mquina) y que el usuario NO puede modificar. Su funcin es permitir al usuario establecer y
modificar los datos necesarios, as como seleccionar entre los procedimientos alternativos para
resolver un problema o realizar directamente una funcin especfica para la cual fue desarrollado.
En esta categora se incluyen los lenguajes de computacin (FORTRAN, PASCAL, BASIC, C),
procesadores de texto (Word Perfect, WORD), hojas de clculo (LOTUS, EXCEL), sistemas para
el manejo de bases de datos (DBASE, FOXPRO, ACCESS), archivos que conforman el Sistema
Operativo, etc.
Ficheros de datos. Son aquellos ficheros que contienen la informacin requerida por un programa
para realizar determinadas operaciones o brindar un resultado. Estos archivos son creados por el
usuario para almacenar informacin mediante programas de propsito general (bases de datos,
hojas de clculo, documentos de texto) o especficos (programas de aplicaciones) que slo
pueden ser modificados con el programa que los cre.
Por su importancia merecen un tratamiento particular los archivos ejecutables correspondientes a los
lenguajes de programacin, los cuales permiten al usuario establecer una estrategia para la ejecucin
de operaciones y procesamiento de datos (un plan de trabajo para la mquina) a partir de la
combinacin de operaciones lgicas, aritmticas y ruptura de secuencias condicionalmente y cuyo
resultado es un archivo ejecutable (NO MODIFICABLE) que con iguales condiciones de entrada
conduce siempre al mismo resultado y que puede repetirse tantas veces como se quiera. Para
alcanzar este objetivo, cada lenguaje establece un conjunto de reglas particulares para utilizar letras,
nmeros y smbolos en la programacin.
En cuanto al desarrollo de programas, es necesario significar que al comienzo de la vida de una
entidad se desarrollan programas que parecen ser definitivos e inalterables, pero poco a poco la
realidad se hace sentir en forma de modificaciones y reformas que van socavando su estructura inicial.
Esto conduce a que un programa incapaz o difcil de ser modificado, hace que caiga en desuso y se
abandona al cabo de algn tiempo.
Bajo este punto de vista comenz poco a poco un marcado nfasis en las tareas de mantenimiento de
programas, es decir, su adaptacin a los cambios tales como: aumento de volumen en los datos y
Errores que interrumpen la ejecucin del programa, como son las divisiones por cero, el clculo
de logaritmos de nmeros negativos, races cuadradas de nmeros negativos, etc. Este tipo de
error puede ser detectado, brindando opciones de recuperacin al usuario.
Los que conducen a resultados errneos, que son los que se cometen por falta de atencin o
insuficiente conocimiento de los datos requeridos por el programa. El blindaje a estos errores
est casi exclusivamente en el sentido comn del usuario al evaluar los resultados y en la
revisin de los datos de partida que nunca est de ms.
Complejidad que reviste el blindaje. Una deteccin de errores puede hacerse tan compleja como
se desee, pero no debe convertirse en el centro del programa. Cuando un programa requiere de
muchas protecciones generalmente es que la interaccin con el usuario no es la ms
conveniente. En este caso debe evaluarse otro mtodo.
Errores que conllevan a la prdida de informacin, que tienen que ser implementados siempre.
Entonces, para qu sirve la microcomputadora?. Para responder a esto es necesario aclarar que
Resolver un problema con una computadora es un proceso mucho ms complejo que el trabajo que
ejecuta la mquina y que en lneas generales requiere de los pasos siguientes:
Primer paso: Identificacin del problema y definicin de objetivos. Consiste en seleccionar un
mtodo general para la solucin, decidir qu combinaciones de objetivos cumplir y especificar las
condiciones que debe satisfacer. Igualmente es imprescindible definir concretamente cul
resultado se considera solucin del problema. En este paso se requiere de un conocimiento
completo del problema y puede resultar de poca ayuda la computadora.
Segundo paso: Modelacin del problema. Generalmente existen varias maneras de modelar un
problema entre las cuales debe escogerse una o desarrollar una nueva cuando ninguna de las
existentes satisface los objetivos planteados.
Tercer paso: Anlisis numrico. La formulacin matemtica del problema no es directamente
traducible a la computadora, ya que sta slo puede ejecutar operaciones aritmticas y ejecutar
decisiones simples. Esto implica que las integrales, ecuaciones de todo tipo deben ser expresadas
en forma de operaciones simples y es necesario evaluar los errores inherentes a los datos y los
introducidos por la mquina con vistas a evitar que sean intiles los resultados.
Cuarto paso: Programacin de la computadora. Los procedimientos numricos deben
establecerse como una serie de operaciones bien definidas, que generalmente se realizan en dos
pasos: concepcin del programa en un diagrama de bloques funcionales, es decir, se establece la
estrategia de solucin que permite expresar de forma ms clara lo que se quiere hacer, pero que
no puede ser entendido por la computadora. Una vez concluido este trabajo, se traduce a un
lenguaje de computacin que si puede ser entendido por la mquina que se conoce como
programa en el cual se define la secuencia de operaciones y las decisiones condicionadas por el
valor que tengan en ese momento determinadas magnitudes del problema objeto de solucin.
Quinto paso: Verificacin del programa.
Despus de traducir el problema a un programa
debe verificarse con datos cuyos resultados sean conocidos o permitan fcilmente determinar su
veracidad y de esta forma evaluar si el programa satisface los objetivos y exigencias previstas.
Sexto paso: Utilizacin del programa. La utilizacin del programa es el momento donde se
realizan combinaciones de datos coherentes para obtener resultados que permitan tomar
decisiones certeras al enfrentar el problema que resuelve el programa.
Como se aprecia, las computadoras digitales estn restringidas en sus operaciones a aquello que el
hombre es capaz de decirle, por lo cual su principal ventaja radica en la realizacin de estas
operaciones a muy alta velocidad y a procesar grandes volmenes de informacin sin sufrir
cansancio ni cometer errores.
V.2 Soluciones numricas a problemas
Las respuestas numricas a problemas es una de las aplicaciones de gran difusin e importancia por
la cual merecen un tratamiento independiente.
En estas aplicaciones el aspecto de mayor importancia radica en que los datos generalmente
contienen errores y que se originan en las cuatro reas fundamentales siguientes y que deben ser
considerados al interpretar los resultados obtenidos:
Errores por parte del operador durante el proceso de incorporacin de los datos al sistema. Este tipo
de error no puede ser ignorado. Si existen errores en los datos, las soluciones o resultados que
proporciona el sistema sern intiles en su totalidad o de manera parcial, en dependencia de la
magnitud del error. Esta posibilidad hace que los resultados obtenidos deben ser analizados
crticamente y no confiar ciegamente en los mismos. La revisin de los datos utilizados es una
forma de minimizar la presencia de este tipo de error.
Inherentes a la formulacin del problema. El procedimiento para reducir este tipo de error es mejorar
el modelo utilizado en la formulacin del problema hasta que el error a que conduce permita
trabajar con los datos de que se dispone y obtener resultados vlidos. Generalmente la precisin
del modelo est estrechamente relacionada con el conocimiento existente del problema cuya
solucin se acomete. Es importante sealar que este tipo de error condiciona la validez de los
resultados sin importar cuan exactos sean los clculos numricos realizados por la mquina.
Las relacionadas con la incertidumbre en la determinacin de los datos. Este problema es causado
por el error en los instrumentos de medicin utilizados, y su reduccin se logra empleando
instrumentos de una calidad que est en correspondencia con la precisin deseada.
Aquellas en que se incurre durante la determinacin numrica de la solucin y que se encuentran
asociados a la representacin necesariamente aproximada en la computadora mediante un
nmero finito de dgitos de los nmeros reales tales como el resultado de la divisin de 2 entre 3,
los nmeros e y , etc. y pueden ser de dos tipos:
Errores por truncamiento. Son los errores que provienen del clculo numrico de una expresin
cuando se desprecian a partir de un trmino los restantes dgitos.
Errores por redondeo. Es el conocido por el hecho de que los clculos aritmticos casi nunca
pueden llevarse a cabo con una completa exactitud, ya que muchos nmeros que tienen una
representacin decimal infinita deben ser expresados de forma finita.
Desde el punto de vista computacional, para reducir estos errores, se emplean entre otras las
siguientes recomendaciones:
Cuando se van a sumar o restar nmeros, trabajar siempre con los nmeros ms pequeos
PRIMERO siempre que sea posible, evitando la sustraccin de dos nmeros aproximadamente
iguales.
Una expresin a(b-c) puede escribirse como ab-ac y (a-b)/c como a/c-b/c. Si hay nmeros muy
cercanos entre parntesis ejecutar la resta antes de la multiplicacin y la divisin.
Utilizar nmeros de doble precisin (utilizan mayor cantidad de bytes para representar los nmeros
reales). Tiene el inconveniente de que requiere de ms capacidad de memoria RAM en el sistema.
Para evaluar el impacto en los resultados del acarreo de errores en una expresin o clculos
sucesivos, se emplea el procedimiento de la propagacin de errores:
Error absoluto. Es la diferencia existente entre el valor "verdadero" de una magnitud y el obtenido
de la prctica, que matemticamente se representa mediante la expresin.
xr x x
donde:
x : valor medido.
xr : valor verdadero.
x : error absoluto.
Error relativo. Es el cociente obtenido de la divisin del error absoluto y el valor verdadero, dado
mediante la expresin
e
x
Xr
A partir de la definicin puede calcularse la propagacin del error en las operaciones aritmticas que
se muestran en la tabla 5.
Tabla 5. Propagacin del error en las operaciones fundamentales
Operacin:
Magnitudes:
Error:
x
(x
+ y)
suma / resta
yx + xy1
multiplicacin
xy
x y
(
)
divisin
x/y
x
y
V.3 Elementos de programacin secuencial
V.3.1 Recursos generales disponibles
El desarrollo de cualquier lenguaje de programacin consta de varias etapas que abarcan desde la
definicin de las caractersticas del lenguaje hasta la implementacin de una interfase que genera el
cdigo de mquina a partir del programa elaborado por el programador.
1
Existen tres tipos diferentes de interfaces destinadas a este fin que son:
Ensambladores, que permiten programar directamente en lenguaje de mquina y generan un
programa en cdigo de mquina.
Intrpretes, que permiten desarrollar un programa, creando un cdigo intermedio. La ventaja de estas
interfaces es que hacen al intrprete independiente de la mquina, pero no generan directamente
un cdigo ejecutable, sino que debe ser pasado por un traductor para su ejecucin.
Compiladores, generan directamente un programa en cdigo de mquina a partir de las instrucciones
programadas.
No obstante estas diferencias, en todos los casos para la elaboracin de programas existen el
conjunto de regularidades siguientes:
Disponen de un conjunto de caracteres y smbolos que en cada caso tienen una interpretacin
diferente, algunos de los ms comunes se muestran en la tabla 6.
Tabla 6. Smbolos permitidos
Smbolo
Representacin
letras
A..Z, a..z
dgitos
0..9
Smbolo
Representacin
agrupacin
()[]
Otro aspecto de importancia para la programacin empleando cualquiera de las interfaces antes
descritos, es el significado especial de algunas palabras (palabras reservadas), las cuales NO
PUEDEN SER UTILIZADAS PARA OTROS FINES QUE LOS ASIGNADOS POR EL FABRICANTE
y que suelen denominarse palabras reservadas del lenguaje, un ejemplo de las cuales se relacionan
en la tabla 7.
Tabla 7. Ejemplos de palabras reservadas y su significado.
Palabra reservada:
Significado:
and
Expresa la operacin lgica Y
div
Indica la divisin entera de dos nmeros
goto
Establece un salto en la secuencia de ejecucin del programa
V.3.2 Estructuras para la evaluacin de alternativas
V.3.2.1 IF ... THEN ... ELSE
Esta estructura est concebida para permitir seleccionar entre dos conjuntos de instrucciones cul de
ellas ejecutar en dependencia de una condicin lgica preestablecida, como se muestra en los
siguientes ejemplos:
IF * profesor escribe THEN ** los alumnos toman notas
ELSE ** los alumnos atienden
IF * pizarra llena THEN ** borrar parcialmente
ELSE ** continuar escribiendo.
IF * termin la clase THEN ** borrar la pizarra.
* : condicin
** : secuencia de instrucciones.
Grficamente, esta estructura puede ser representada como se ilustra en la figura 1:
V.3.3.2 WHILE...DO.
Esta sentencia es otra forma de repetir la ejecucin de un conjunto de instrucciones un nmero de
veces, pero que a diferencia del FOR...TO(DOWNTO)...DO se ejecuta mientras se cumpla una
condicin preestablecida la cual tiene que cumplirse en alguna ocasin, ya que en caso contrario el
programa cae en un lazo infinito. La modificacin de la condicin se realiza como parte de los
resultados obtenidos en el conjunto de instrucciones que se ejecutan repetitivamente, como en los
ejemplos que se muestran a continuacin.
WHILE *no sea hora de receso DO ** desarrollo de la clase
WHILE * receso DO **conversar con los compaeros
* condicin
** conjunto de instrucciones
Desde el punto de vista grfico esta estructura puede representarse mediante la figura 4.
V.3.4 Operadores
Los lenguajes de programacin disponen de operadores, ya que durante la programacin en cualquier
tipo de lenguaje es necesario realizar operaciones de tipo aritmticas y lgicas y en dependencia del
lenguaje la representacin de estos operadores vara. De forma general puede decirse que existen los
tres tipos de operadores siguientes.
V.3.4.1 Aritmticos
Una de las principales aplicaciones de los lenguajes de programacin es la solucin de problemas
numricos, los cuales llevan implcitamente la realizacin de operaciones aritmticas las cuales
requieren de la definicin de operadores de este tipo, tal es el caso de los mostrados en la tabla 8.
Tabla 8. Operadores aritmticos
Operador
Funcin
Ejemplo
suma
a+b
resta
a-b
multiplicacin
a*b
divisin real
a/b
div
a div b
mod
a mod b
V.3.4.2 De relacin
Otro tipo de operador de amplia utilizacin durante la elaboracin de un programa son los operadores
de relacin, que nos permiten comparar dos o ms magnitudes, una variante de los cuales se
muestran en la tabla 9.
Tabla 9. Operadores de relacin
Operador
Funcin
Ejemplo
igualdad
a=b
<
menor que
a<b
>
mayor que
a>b
<=
a <= b
>=
a >= b
<>
desigual
a <> b
:=
asignacin
a := b
V.4.3.3 Lgicos
Son los que permiten durante la programacin escoger la realizacin de diversos conjuntos de
sentencias o instrucciones en dependencia del resultado de determinadas proposiciones lgicas, que
se basan en la Lgica Preposicional, la cual se hace corresponder a cada tomo un elemento del
conjunto {V (verdadero),F (falso)}de acuerdo a las siguientes funciones lgicas, que se recogen en la
Tabla 10.
Tabla 10. Operadores lgicos fundamentales.
Magnitudes lgicas
Operaciones lgicas
Negacin *
O **
Y ***
A
B
A
B
A OR B
A AND B
F
F
V
V
F
F
F
V
V
F
V
F
V
F
F
V
V
F
V
V
F
F
V
V
OR EXCLUSIVO ****
AB
F
V
V
F
* niega el resultado que existe al ser aplicado el operador: si el valor es falso devuelve, verdadero y
viceversa.
** devuelve verdadero cuando alguna magnitud lgica es verdadera.
*** devuelve verdadero cuando todas las magnitudes lgicas involucradas en la operacin son
verdaderas.
**** devuelve verdadero cuando una cualquiera de las magnitudes lgicas difiere del valor de las
restantes operaciones y falso en alguna otra condicin.
En la tabla 11 se muestran ejemplos de operadores lgicos
Tabla 11. Operadores lgicos
Operador
Funcin
Ejemplo
NO
negacin lgica
NO A
"O" lgico
AO B
"Y" lgico
AYB
definirse que: la magnitud color, a la que pueda exhibir los valores, rojo, verde, azul, magenta y
cian; la magnitud animal puede adoptar los valores gato, len, pantera, etc.
Variables. Constituyen las magnitudes dinmicas de un programa y son las que reciben valores
durante la ejecucin de ste, en dependencia de los cuales se toman decisiones o se realizan
nuevas operaciones. Por ejemplo, puede definirse suma para almacenar la suma de diversos
nmeros.
Funciones. Es una facilidad para unificar un conjunto de instrucciones que se ejecuta en diferentes
partes del programa las cuales a partir de un grupo de datos realiza un conjunto de operaciones
cuyo fin es obtener un resultado que debe ser asignado a UNA VARIABLE para su posterior uso
en el programa.
V.3.6 Lenguajes de programacin de alto nivel
Con el desarrollo de la computacin han surgido diversos lenguajes de programacin los cuales
responden en algunos casos a necesidades especficas de determinadas aplicaciones en tanto otros
se corresponden con nuevas tcnicas de programacin. Veamos algunos ejemplos:
Desarrollo de un nuevo concepto o una nueva rea de aplicacin que demande su propio
lenguaje: clculo numrico, FORTRAN y aplicaciones aeroespaciales, FORTH.
A partir de las experiencias con un lenguaje y el conocimiento de sus deficiencias como el COBOL
a partir del FLOWMATIC.
Es ms fcil introducir nuevas capacidades y cambiar de estilo con un nuevo lenguaje que
extender o modificar uno existente.
Definicin de lenguaje de programacin. Se acostumbra denominar lenguajes de programacin o
lenguajes de alto nivel independiente de la mquina, a los lenguajes que disponen de un conjunto de
caracteres (finito) y reglas para combinar a stos cuyas caractersticas fundamentales son:
Se pueden escribir programas en l, lo que lleva implcito que potencialmente se pueda instrumentar
un programa (compilador, traductor, intrprete) que haga factible la ejecucin de estos programas
en una computadora.
No es necesario el conocimiento del cdigo de mquina para programar en este lenguaje.
Existe facilidad para pasar de un programa escrito en un lenguaje a otro lenguaje.
Existe una explosin de instrucciones, es decir, a una instruccin en el lenguaje le corresponden en
general varias instrucciones de mquina.
Su notacin es ms cercana al problema original en que se quiere aplicar, en relacin con el cdigo
de mquina o ensamblador.
Se incorporan facilidades de diferentes lenguajes combinados en uno ms simple.
Es ms fcil introducir nuevas capacidades y cambiar el estilo con un nuevo lenguaje que extender o
modificar uno existente.
Hay preferencias personales y prejuicios con los lenguajes que existen en cuanto a que puedan servir
para el propsito, por lo cual se disea una nuevo.
En la prctica se han desarrollado diversos lenguaje de alto nivel como son los siguientes:
FORTRAN (FORmula TRANslator). Diseado para el clculo numrico cientfico, es el primer
lenguaje de alto nivel, que abre las puertas de la computacin a muchos cientficos e
ingenieros debido a:
Es el primer lenguaje de programacin que aprende mucha gente y eso crea hbitos.
Cualquier configuracin de cmputo tiene un compilador de FORTRAN.
Permite obtener un cdigo de mquina muy eficiente.
La existencia de una versin estndar ha permitido un amplio uso de las bibliotecas.
COBOL (COmmon Business Oriented Languaje). Est destinado al procesamiento de datos,
fundamentalmente econmicos y es ampliamente utilizado. Existe tambin una versin estndar y
presenta la posibilidad de segmentacin de programas.
ALGOL (ALGOrithmic Languaje). Se desarrollaron dos versiones ALGOL-60 y ALGOL-68 y constituye
uno de los primeros intentos de disponer de un lenguaje de propsito universal.
LISP (LISt Processing). Desarrollado por John Mac Carthy y el grupo de Inteligencia Artificial del MIT a
finales de los aos 50 y principios de los 60, que ha sido mal llamado lenguaje para el
procesamiento de lista, ya que su objetivo no es el de procesar listas sino que la forma de
Para el mantenimiento de un programa resulta esencial que ste se pueda leer y comprender con
facilidad, con el fin de que sea fcil introducir cambios, sin tener que comenzar nuevamente una
puesta a punto de igual o mayor importancia que la realizada al programa original.
Con el inicio de la dcada del 70 el campo de la programacin ha sido objeto de constantes estudios
para mejorar los resultados de la programacin modular que condujeron a la Programacin
Estructurada cuyo iniciador fu el profesor Edeser W. Dijkstra de la Universidad de Eindhoven.
De la Programacin Estructurada es difcil dar una definicin exacta, ya que no existe una
universalmente aceptada, no obstante lo cual si hay acuerdo en que la programacin estructurada es
todo diseo de programa que cumpla con los aspectos siguientes:
Estructuras bsicas:
Repetitivas. Conjunto ordenado de instrucciones que se repiten mientras o hasta que se cumpla
determinada condicin.
Recursos abstractos. Es la descomposicin en niveles de un problema ajeno a la computadora y sus
instrucciones. Esta descomposicin en niveles debe hacerse conforme a esquemas
suficientemente simples y bien comprendida.
Razonamiento deductivo de arriba hacia abajo. Es una marcha analtica reflejada en niveles o pasos
consecutivos que poseen sus propios recursos abstractos y que permiten resolver el problema por
completo.
En la prctica son de utilidad las siguientes recomendaciones: utilizar nombre con significado claro,
estndar; emplear parntesis para evitar ambigedades; evitar los trucos con el lenguaje; buscar
la eficiencia donde sea necesaria; en los sistemas complejos los algoritmos ms simples son los
mejores; comentar para responder a las preguntas de los lectores, y si es necesario el significado
de TODAS LAS VARIABLES; no utilizar una variable para ms de un propsito; el empleo del salto
incondicional no est prohibido, lo que no debe utilizarse para sustituir el empleo de las estructuras
del lenguaje; los ficheros lgicos se disean siguiendo una organizacin jerrquica que permite ir
del conjunto al elemento, de lo general a lo particular.
El PASCAL surge como una herramienta para la enseanza de prcticas de "buena programacin", es
un lenguaje de propsito general, estructurado de forma clara y sencilla. La primera versin del
PASCAL aparece en 1968 desarrollada por Niklaus Wirth, profesor del Instituto Tecnolgico de Zurich,
Suiza. Sus objetivos eran obtener una herramienta que mantuviera un pequeo nmero de conceptos
fundamentales de la programacin tiles para ensear la programacin como una disciplina lgica y
eficiente.
Es realmente numerosa la cantidad de implementaciones del PASCAL que se reportan, por lo cual
mencionaremos slo algunas:
PASCAL/Z, creado por la Ithaca Intersystem.
PASCAL/M, creado por la sorcim.
PASCAL 6000, implementado para utilizarse en el sistema operativo CDC 6000.
PASCAL 80, para el sistema TRS-80 modelos del I al III.
MP/PASCAL de la "Data General" para su Sistema MICRONOVA.
NBS PASCAL, para la mini computadoras PDP-11.
ATARI PASCAL. para ATARI 800.
RSI y Mototrola PASCAL, para procesadores 68000.
Cllor PASCAL de la "Dinisot".
UCSD PASCAL. Este sistema en sus inicios fu diseado para correr en mini micromputadoras,
suministrado por la Softech Microsystem Inc. y comprende un sistema Operativo completo que
puede correr sobre una variedad de procesadores e incluye un manipulador de ficheros, un editor
orientado a caracteres, un compilador de una pasada que genera cdigo P, un macro
ensamblador condicional, un enlazador y una biblioteca de utilitarios.
PASCAL MT+. Este sistema fu desarrollado por la Digital Research, diseado tanto para las
aplicaciones de procesamiento de datos como para control en tiempo real. Este sistema incluye un
compilador, un enlazador, un macro ensamblador, un monitor de puesta apunto y una biblioteca.
TURBO PASCAL, desarrollada por la Borland International.
Borland Delphy, es la versin de programacin en Pascal en Objeto.
V.3.8 Elementos de programacin orientada a objetos
Es una forma de programacin, en la cual el desarrollo del programa se realiza a partir del trabajo de
estructuras llamadas objetos, las cuales estn disponibles en el lenguaje de programacin.
Esta forma de trabajo se fundamenta en las ventajas de que una vez creado el objeto, este puede ser
utilizado en reiteradas ocasiones con lo cual se gana tiempo y estandarizacin en los programas, lo
cual se traduce en incremento en la productividad..
VI. El ambiente WINDOWS
La historia del ambiente WINDOWS se remonta al 10 de Noviembre de 1983, cuando Microsoft
anunci un sistema operativo de prxima generacin, con interfaz grfica y un entorno multitarea
para computadoras IBM, el cual apareci en el mercado bajo el nombre comercial de Windows 1.0
el 20 de Noviembre de 1985, que no fue bien recibido por los usuarios, al considerarlo lleno de
errores, feo y lento.
Esta versin se mantuvo en el mercado hasta Enero de 1987 y en Diciembre de 1987 se introduce
en el mercado WINDOWS 2.0, que dispona de iconos para la representacin de programas y
archivos, as como un soporte para el manejo de la expansin de memoria y ventanas, las que
podan superponerse las unas a las otras.
Siguiendo esta lnea, el 22 de Mayo de 1990 fue lanzado Windows 3.0, cuyas ventajas respecto a
su antecesor eran que: permita guardar en memoria ms de 640K as como mejoras en la gestin
de programas y el sistema de iconos y soporte para 16 colores.
En la continuacin del desarrollo del ambiente WINDOWS, surge el primer producto destinado a
redes, Windows for WorkGroups 3.1, lanzado en Octubre de 1992, que permita el intercambio de
ficheros uno-a-uno y tambin capacidad para compartir labores de impresin integradas dentro de
un entorno Windows.
El siguiente desarrollo vio la luz en Agosto de 1995, cuando sali al mercado la revolucin en los
sistemas operativos, Windows 95, una verdadera revolucin multimedia pues proporciona la unidad
para la reproduccin y administracin de imgenes (video, 2D y 3D) y audio, as como incorpora el
estndar Plug&Play que permite de forma automtica y rpida la incorporacin de perifricos.
La carrera continua con el Windows CE, que es un sistema operativo modular, de 32 bits, a tiempo
real para dispositivos mviles y en junio de 1998 se lanza al mercado la siguiente versin de su
sistema operativo para uso en el hogar, Windows 98, la ltima versin de Windows basada en el
kernel de MS-DOS cuyo aspecto ms notorio lo es la total integracin de la navegacin por
Internet.
Le siguen a ste las versiones de Windows 2000 lanzado por Microsoft como solucin a las
dificultades de la versin NT 4.0 y tambin como un paso hacia la generalizacin en la utilizacin
del kernel de NT, en su edicin para Workstations; Windows Millennium Edition, o Windows Me y la
ms reciente Windows XP: conocido como la segunda revolucin... de la eXPeriencia.
VII. Inteligencia Artificial
VII.1 Aspectos generales
Al hablar de Inteligencia Artificial (IA) siempre surge la pregunta de qu cosa es, lo que constituye un
primer motivo de conflicto ya que no existe una definicin universalmente aceptada. Esto se debe, en
parte, a que esta denominacin es susceptible de ser utilizada con matices sensacionalistas al igual
que un gran nmero de trabajos relacionados con esta tcnica (sobre todo en los primeros aos de su
aparicin) que crearon un ambiente de desconfianza y redujeron su credibilidad en los inicios.
Es por ello que la principal dificultad para el desarrollo de la IA est en el hecho de que an no se
dispone de una definicin de Inteligencia Natural universalmente aceptada, aunque en la prctica se
ha comprobado que existen diversas formas de inteligencias: aritmtica, verbal, filosfica, etc.
De igual forma existe consenso en resaltar la importancia que tiene la IA en los sistemas de cmputo,
lo que se debe al desarrollo de una nueva disciplina conocida como ingeniera de conocimiento cuyo
propsito es establecer las bases tericas para la modelacin y tratamiento automatizado del
conocimiento humano, por lo cual se han realizado diversos intentos para identificar los tipos de
conocimientos que se pueden incorporar en un sistema de IA como son:
Objetos: En ocasiones el conocimiento est relacionado con hechos relativos a objetos del entorno
humano, y por tanto, hay que clasificar y describir los objetos.
Acontecimientos: Acciones y acontecimientos son componentes claves del conocimiento, por lo
cual han de ser clasificados y en algunos casos correlacionados en funcin del tiempo o
establecer relaciones causa-efecto.
Prestaciones: En algunos casos el conocimiento exige habilidades, todo comportamiento
cognoscitivo exige actitudes especiales.
Metaconocimientos: Conciencia acerca del nivel de conocimiento alcanzado, es decir, saber cul
es la magnitud de la sapiencia y limitaciones propias.
En primer trmino antes de ofrecer una definicin de IA es imprescindible definir que la inteligencia es
la capacidad de un sujeto de seleccionar entre un conjunto de alternativas no necesariamente
excluyentes la ms conveniente, la capacidad de autonoma y lo adecuado de su reaccin frente a
situaciones anmalas o imprevistas y cuyo desempeo mejora al evaluar varias veces la misma
situacin.
Una vez establecido que se entiende por Inteligencia, es posible pasar a definir el concepto de IA:
La Inteligencia Artificial es aquella parte de las ciencias de la computacin relacionada con el diseo
de sistemas de computacin inteligentes, esto es, sistemas que poseen las caractersticas
normalmente asociadas con la inteligencia en el contexto del comportamiento humano:
comprensin del lenguaje, aprendizaje, razonamiento, solucin de problemas, etc.
La IA es la rama de la computacin que se ocupa de que la mquina realice actividades tpicas de la
inteligencia del hombre.
La IA se ocupa de las tcnicas para llevar a la mquina casos que el hombre an hace mejor.
Rama de la informtica que emula el comportamiento humano racional en la gestin del
conocimiento.
Como puede apreciarse en estas definiciones existen aspectos que no son precisos y por tanto a los
efectos de este trabajo utilizaremos como definicin de IA sus campos de aplicacin: juegos,
demostrador de teoremas, resolucin de problemas generales o especficos, percepcin: visin o
lenguaje hablado, comprensin del lenguaje natural y robtica, deducciones lgicas y teora de juegos.
Por otra parte, independientemente de la definicin de IA que se acepte, queda claro que su objetivo
fundamental es, en ltima instancia, tratar de modelar el pensamiento del hombre, lo cual como es
conocido es un problema muy complejo, y por tanto al acometer trabajos en esta rama no debe
olvidarse que estn presentes las siguientes caractersticas inherentes al conocimiento en s mismo:
voluminoso, poco preciso y cambiante, lo cual determina que para obtener resultados prcticos
empleando esta tcnica es imprescindible definir que se considera como solucin del problema, es
decir, qu problema se desea resolver y hasta dnde.
En trminos matemticos, esta situacin implica que para la solucin de un problema es
imprescindible conocer:
Estados iniciales (de dnde se parte).
Espacio de estados (estados intermedios factibles durante la bsqueda de una solucin)
Reglas para pasar de un estado a otro (operadores).
Resultados finales (a dnde se desea llegar).
Por tanto, se puede aceptar como definicin de Inteligencia Artificial la siguiente parte de las
Ciencias de la Computacin relacionada con el diseo de sistemas que posean las caractersticas
normalmente asociadas con la inteligencia en el contexto del comportamiento humano: comprensin
del lenguaje, aprendizaje, razonamiento, solucin de problemas, etc.
Llegado a este punto, es necesario aclarar que existe una diferencia de principio entre la percepcin
humana y la funcin reconocimiento de la mquina, que radica en que en el caso del hombre el
resultado es una imagen subjetiva del objeto y en la mquina un cdigo de distintos rasgos del objeto
que resultan necesarios para que sta pueda resolver ciertos problemas de acuerdo a determinadas
reglas sin penetrar en la esencia del mismo. Adems, la informacin acumulada por el hombre no es
un almacenamiento mecnico sino un proceso orientado a un fin concreto, consciente.
Igualmente las caractersticas del planteamiento de los problemas relacionados con la modelacin del
conocimiento antes mencionadas no permiten el empleo de la programacin algortmica, lo cual ha
conllevado al desarrollo de nuevos mtodos de programacin cuyos principios tericos se relacionan
brevemente a continuacin.
Otro aspecto que motiv discrepancias fu el ambiente de programacin asociado a las tcnicas de
IA, los cuales se asociaron en sus inicios a los lenguajes con posibilidades de programacin simblica
como el LISP y ms recientemente el PROLOG, cuyas ventajas respecto a los restantes lenguajes
existentes fueron ampliamente resaltadas.
VII.2 Formas de Representacin del conocimiento
Las formas de representacin del conocimiento se encuentran asociadas a las caractersticas de la
solucin de problemas, las cuales pueden resumirse de la forma siguiente.
Se pueden descomponer o no en otras ms simples.
Seleccin del camino adecuado y el comportamiento ante los errores: estrategias irreversibles,
recuperables e irrecuperables.
Previsin de cmo va a evolucionar el estado del universo de soluciones.
Cunto conocimiento se requiere.
Chequeo de las condiciones (reglas) que se cumplen, lo que consume tiempo.
VII.2.1 Representacin del conocimiento por vas tradicionales
VII.2.1.1Redes de programas
En esta representacin del conocimiento los programas se encadenan en una red donde hay que
entrar por al menos un punto y salir por otro, como se ilustra en el esquema de la figura 6. Ntese que
esta representacin no permite entrar por cualquier punto.
VII.2.1.2 Diagramas
Conceptualmente, los diagramas tienen como objetivo fundamental garantizar la modelacin, tanto
lgica (representacin del sistema basado en la funcin que realiza, en lo que hace), como fsica
(representacin del sistema en una forma real: departamentos, soportes, etc.) del objeto de estudio
y de acuerdo a sus caractersticas pueden clasificarse en: rboles de decisin, organigramas,
diagramas de flujo y otros.
De manera resumida, los rboles de decisin consisten en una herramienta grfica donde se
recogen las condiciones y las acciones relacionadas con el desarrollo de una actividad; en tanto los
diagramas de flujo constituyen la representacin de un sistema, que lo define en trminos de sus
componentes y de las relaciones entre stos.
A continuacin se ilustra el empleo de los dos tipos de diagramas antes mencionados, en el caso
del Comercio Minorista, a partir de la caracterizacin del flujo de insumo-producto y documentos,
as como del rbol de decisin de las operaciones asociadas a la operacin de las cajas de lnea,
cuyo anlisis se realiza de forma independiente a continuacin.
Como se ha visto, en la prctica, los problemas pueden clasificarse en tres grupos: donde intervienen
nmeros; donde se procesan datos (bases de datos) y donde se procesan conocimientos. En este
ltimo caso los clculos son razonamientos y su solucin requiere de estrategias diferentes.
En el caso de la I.A. que se encarga del procesamiento de conocimientos, la solucin del problema
abarca dos aspectos: la representacin, que puede realizarse mediante lgica, redes semnticas,
reglas de produccin, etc. y el procesamiento del conocimiento, que es el razonamiento.
Por otra parte todo sistema formal axiomtico que se utilice para representar y resolver un problema
mediante lgica consta de:
Lenguaje que a su vez se compone de: sintaxis, que es el formato de presentacin de la estructura
lgica; semntica, que es la encargada de asociar significado a las estructuras lgicas y
pragmtica que dice la relacin con el contexto.
Axiomas
Reglas de inferencia.
A continuacin se discuten las principales caractersticas de los dos sistemas formales de la lgica
clsica (preposicional y de predicado) y sus posibilidades de aplicacin en la solucin de problemas
prcticos.
La Lgica Preposicional se basa en el procesamiento lgico de proposiciones que constituyen
oraciones afirmativas, indivisibles y su sintaxis consta de:
- Elementos terminales:
. tomos: {P,Q,...}
. operadores: {(not),(or)}
. asociativos: {[,]}
- Elementos no terminales : frmulas bien formadas.
- Reglas de produccin.
En este tipo de lgica pueden definirse las tres operaciones siguientes a partir de los operadores
bsicos: (not); (or):
P Q [P Q] (y)
P Q P Q (implica)
P Q [P Q] [Q P] [P Q] [Q P]
(equivalencia)
PQ
PQ
PQ
PQ
La lgica de predicado brinda la posibilidad de resolver los problemas donde estn presentes los
cuantificadores universales y existenciales que no pueden ser resueltos mediante la Lgica
Preposicional.
Desde el punto de vista computacional el PROLOG, que es un lenguaje de computacin con fines de
programacin simblica, trabaja con la lgica de predicado de primer orden (las variables son
indivisibles) y el tipo de clusula que utiliza es la de Horn, que a lo sumo tiene un literal no negado.
Estas restricciones establecen las limitaciones del PROLOG como implementacin computacional
para obtener un sistema formal cerrado y completo, que permita obtener resultados por va sintctica
que sean transferibles a la semntica.
Es importante sealar que existen otros tipos de lgicas que permiten abordar estos problemas pero
que no sern tratadas en este trabajo.
En la prctica, existen diversas vertientes de la IA entre ellos los Sistemas Expertos y las Redes
Neurales cuyos principios fundamentales se describen a continuacin.
VII.4.3 Sistemas Expertos
VII.4.3.1 Definicin
Los Sistemas Expertos (SE) aparecieron en la primera mitad de la dcada del 70 y su xito se
debi fundamentalmente a que modelaban una situacin particular, a partir del conocimiento de los
expertos. Estos programas emiten juicios y diagnsticos, saben hacer deducciones, preguntas,
inducciones para brindar solucin a problemas que pueden igualar el desempeo de un ser
humano experto en algn aspecto especializado.
Los sistemas expertos se basan en dos aspectos esenciales: la utilizacin de smbolos para
representar el conocimiento y la realizacin de tareas aplicando diferentes estrategias de bsquedas
de solucin.
Para comprender la verdadera dimensin de los Sistemas Expertos antes de dar diversas definiciones
es necesario introducir el concepto de experto que no es ms que una persona con profundos
conocimientos en una rama del saber y que tiene experiencia en resolver con ellos problemas tiles.
Igualmente puede dar explicacin sobre cmo ha llegado a una conclusin y por qu ha realizado
determinada pregunta o qu se propone averiguar. Entonces, qu es un SE?. Veamos varias
definiciones:
Un SE es un sistema computacional que contiene de forma explcita y modificable el conocimiento
exacto o impreciso que posee un grupo de personas y que utiliza ese conocimiento para producir
soluciones semejantes a las que producen las personas que produjeron ese conocimiento. Las
soluciones se obtienen mediante un proceso de razonamiento generalmente independiente del
tema.
Los Sistemas Expertos son programas de computadoras para la solucin de problemas que pueden
igual el desempeo de un ser humano experto en algn aspecto especializado. Proporciona
formatos o lenguajes para presentar conocimientos sobre procedimientos y declarativas,
estructuras de control para manejar el conocimiento e interactuar con el usuario.
Un Sistema Experto es un programa que sabe hacer deducciones, preguntas e inducciones que
conjuntamente con la base de conocimientos que se le proporciona una sola vez al esqueleto,
para convertirlo en experto y la base de datos que el experto necesita para resolver el problema
particular.
Un Sistema Experto es aquel paquete de programas que emite juicios y diagnsticos sobre una rea
del conocimiento humano con el mismo grado de pericia que el de un ser humano. Para poder
emitir los juicios el sistema debe contar con un cmulo de datos almacenados y un conjunto de
reglas de contingencia que permitan al sistema generar los diagnsticos adecuados.
Un Sistema Experto reproduce la gestin de un experto humano frente a problemas de su
competencia y basa su razonamiento en la inferencia a partir de un gran nmero de
conocimientos proporcionados por especialistas dentro de un campo limitado.
Los Sistemas Expertos son programas que imitan el modo de actuar de un experto de carne y
hueso; exhiben comportamiento, conocimiento y experiencias considerables en un rea angosta
del conocimiento; son tiles porque resuelven problemas y ofrecen soluciones, haciendo uso de
Por ltimo es necesario tener en consideracin en todos los casos que la creacin de un SE agrede al
propio experto, ya que ste puede sentirse desplazado por la mquina. En este sentido nunca resulta
ocioso destacar que el SE sustituye fundamentalmente al experto en el trabajo tedioso y poco creativo,
ya que en los problemas ms complejos el experto siempre ser ms eficiente y seguro.
Por todas estas razones el proceso de adquisicin del conocimiento se considera como la parte ms
difcil del proceso de la ingeniera del conocimiento y un cuello de botella.
VII.3.4 Clasificacin de los Sistemas Expertos
VII.3.4.1 Para interpretacin
Son sistemas cuyo objetivo es analizar datos para explicar su significado. Es importante en estos
sistemas poder seguir la cadena de razonamientos que lleven a este resultado (tiene que brindar
respuesta a las preguntas del usuario sobre la conclusin que muestra).
VII.3.4.2 Para el diagnstico
Son los encargados de determinar los problemas en un sistema dado. Deben contener un minucioso
conocimiento del sistema que analizan. Esto es importante ya que:
Algunas fallas del sistema pueden estar enmascaradas por otras fallas.
Los fallos pueden ser intermitentes.
Los equipos y los medios de prueba pueden fallar.
La obtencin de algunos datos puede ser difcil.
La organizacin general del objeto puede no conocerse de forma integral y el diagnstico debe
hacerse sobre modelo parcial.
VII.3.4.3 Sistemas de monitoreo
Significa seguir determinado conjunto de seales y dar alarma cuando sea requerido. Es una especie
de diagnstico en tiempo real. Pueden depender del tiempo y el contexto y deben ser capaces de auto
adaptarse.
VII.3.4.4 Prediccin
Son los sistemas que se utilizan para predecir el comportamiento futuro de un sistema partiendo de
sus caractersticas presentes, para lo cual requiere integrar informaciones incompletas y debe
reaccionar a los cambios en los datos y eventos imprevisibles.
VII.3.4.5 Planificacin
En este caso permiten proponer un programa de accin para alcanzar determinados objetivos, tales
como:
Los problemas del plan pueden ser muy largos y complejos y debe disponerse de evaluacin de
resultados.
Un problema donde pueden no estar todas las cosas definidas.
La planificacin puede realizarse por diferentes expertos, lo que requiere de funciones de
coordinacin.
VII.3.4.6 Diseo
Se dedican a realizar las especificaciones para la realizacin de distintos objetivos:
Debe poderse evaluar las alternativas de diseo.
Es posible que no est formalizada la teora para el diseo.
El diseo puede dividirse en subproblemas que interactan entre s.
Cuando el diseo es largo es necesario guardar las justificaciones de determinadas decisiones para
no olvidarlas.
Debe disponer de la capacidad de rediseo.
Algunos problemas de diseo requieren de tener en cuenta problemas especiales
Un obstculo a resolver al evaluar un Sistema Experto es eliminar la polarizacin de los evaluadores
que califican al sistema de manera benvola o muy estricta, lo que puede lograrse si se toman en
cuenta los aspectos siguientes:
Cmo son las decisiones que adopta?.
Son correctos sus razonamientos?.
La forma en que se comunica con el usuario: Emplea y construye frases?; Brinda explicaciones de
los resultados?; Proporciona ayuda?; Se puede ensear al usuario en el campo de aplicacin a
que va dirigido?; Cmo utilizar el hardware?.
A diferencia del SE que almacena conocimiento en una base, en las redes neuronales, ste se
encuentra distribuido en toda la red en forma de nmeros denominados pesos, que se obtienen
durante el proceso de aprendizaje, en el cual a la red se le presentan casos reales en forma de
conjunto de nmeros de entrada (situacin inicial) y salida (resultados que se derivan).
Esta forma de trabajo permite el empleo de la Redes Neuronales en sistemas de control y prediccin
atendiendo a su rapidez en proporcionar respuesta una vez entrenadas, pero no permite la
justificacin de su proceder al no disponer del conocimiento en forma compacta sino distribuida. Por
otra parte, debe sealarse que la seleccin de los casos utilizados en el entrenamiento de la red juega
un papel decisivo en la validez prctica de la respuesta que sta brinda, por lo cual stos deben ser
representativos del sistema modelado: contener casos particulares, extremos y de comportamiento
tpico.
VIII. Redes de computadoras
VIII.1 Aspectos generales
El desarrollo de las tecnologas digitales y su aplicacin en las comunicaciones ha permitido la
acelerada generalizacin en la prctica de las redes de computadoras, que no es otra cosa que la
combinacin de equipos (hardware: sistemas de cmputo, equipos perifricos, etc.) y aplicaciones
informticas (software) encargados de la administracin de los recursos disponibles y de su
seguridad, las cuales atendiendo a su alcance pueden agruparse en dos grandes categoras: las
que tienen gran extensin y las mquinas pueden encontrarse a grandes distancias unas de otras
(Wide rea Network, WAN) y las redes donde las mquinas conectadas estn relativamente cerca
o redes locales (Network Local rea, LAN).
Desde el punto de vista electrnico, los cuatro componentes bsicos de una red son:
La Server: mquina encargada de manipular el sistema de ficheros en la red, las comunicaciones
y otras funciones. Una server puede ser dedicada, cuando se pone completamente al servicio
de la red o puede ser no dedicada y en este caso debe compartir sus funciones como server,
con las funciones que tiene una estacin ms.
Las estaciones de trabajo: generalmente, microcomputadoras conectadas a la server y donde
los usuarios realizan su trabajo.
Tarjetas interfaces de la red (Network Interface Cards, NIC): son las encargadas de controlar el
flujo de informacin a travs de los protocolos de comunicacin utilizados. Otra forma de
realizar la comunicacin es a travs de MODEM, palabra derivada de la contraccin de las
palabras modulator-demodulator, y que es utilizado tpicamente para enviar datos digitales a
travs de lnea telefnica.
Los cables (incluyendo los conectores y otros componentes especiales): que sirven de canal
por donde fluye la informacin en forma de pulsos de voltaje.
VIII.2 Razones para utilizar una red local
Aunque el origen de las redes se encuentra en la posibilidad de compartir recursos caros tales
como impresoras y graficadores (plotters), etc., est prioridad ha ido perdiendo relevancia frente a
otras muchas ventajas a causa de la disminucin en el costo de este tipo de equipamiento. Entre
estas ventajas pueden sealarse las siguientes:
Posibilidad de Trabajo en Grupo: que facilita compartir informacin comn a varios usuarios.
Facilita y agiliza la actualizacin de aplicaciones informticas: cuando un paquete se
almacena centralmente, no requiere de la actualizacin estacin por estacin de trabajo.
Sistematiza la Salva de los Datos: lo cual incrementa la seguridad en la integridad fsica de los
datos.
Proporciona Beneficios a la Organizacin: ya que las facilidades en la manipulacin de los
datos pueden contribuir a eliminar las barreras arquitectnicas y espaciales (los miembros de
un grupo no tienen necesariamente que sentarse cerca unos de otros) y permite el trabajo a
distancia.
Factibilidad de Correo Electrnico y Difusin de Mensajes: que permite a los usuarios una
comunicacin ms fcil entre ellos.
Incremento en la Seguridad: a travs el bloqueo fsico de equipos y el bloqueo de aplicaciones
informticas.
VIII.3 Topologa de la red
Se entiende por topologa de la red, a la forma en que se interconectan entre s la server y el resto
de las estaciones de trabajo, entre las que pueden sealarse las mostradas en la tabla 13.
Tabla 13. Topologas de red
Estrella: la server est colocada como centro
y de ella parte un cable distinto para cada
estacin.
VIII.4 Internet
VIII.4.1 Generalidades
La Intranet es una red privada corporativa que emplea para su configuracin y funcionamiento los
protocolos de la tecnologa Internet (IP), ubicado en un Servidor Dedicado al que tiene acceso
nicamente los Recursos Humanos autorizados.
Su funcin bsica consiste en centralizar y organizar el intercambio automtico de informacin
crtica entre los diferentes niveles de la empresa para dar cumplimiento a las polticas establecidas
mediante la gestin y seguimiento de proyectos, toma de decisiones, control de trabajos o
realizacin de tareas de primera lnea., con el fin de obtener resultados efectivos en la concrecin
de metas y procesos.
Para mantener el orden a todos los sistemas que acceden a Internet, a cada uno de stos se les
asigna una direccin nica llamada direccin IP, la cual consta de Nmeros de 32-bits expresados
en cuatro octetos en un nmero decimal con puntos. (220.3.215.10). Esa direccin IP es nica para
su sesin pero podra ser diferente para la prxima vez que se conecte.
VIII.4.2 El correo electrnico
El correo electrnico (eMail) se ha convertido en una herramienta fundamental para el trabajo a todos
los niveles. Pero como todo instrumento debemos conocer las ventajas, reglas, sugerencias y
limitaciones establecidas para su mejor uso.
En trminos de ventajas, el correo electrnico exhibe las siguientes:
Evita el uso innecesario de papel, disminuyendo significativamente los requerimientos de
impresin.
Permite realizar citaciones a reuniones de forma gil, recibiendo acuse de recibo o propuestas de
cambio de fechas y hora.
Permite viabilizar el intercambio de opiniones y criterios.
Facilita una va eficaz para dar orientaciones a los subordinados y para informar a los jefes.
Permite intercambiar opiniones y dar respuestas en horarios ilimitados.
Permite tener copia de los mensajes, citas y documentos intercambiados, lo cual facilita hacer
referencia a los mismos o reenviarlos en el momento que se requiera.
Para aprovechar al mximo las ventajas antes sealadas deben seguirse las siguientes reglas:
Cuando usted enva un mensaje no est hablando con una mquina, piense que del otro lado hay
una persona que al igual que en una conversacin usted no debe agredir. Nunca escriba en un
mensaje lo que no dira en una conversacin.
La persona que leer su mensaje deber interpretar lo que usted escribe, por lo cual su mensaje
deber ser claro y preciso, evitando siempre las interpretaciones errneas. Si tiene duda de
lograr esto, use el telfono.
Respeto de las jerarquas, pues la institucin tiene una estructura de Direccin que debe respetar.
No abuse de las copias, slo enve copias a aquellos que realmente les interese la informacin,
as se evitar usted perdidas de tiempo y se las evitar al resto del colectivo.
Evite imprimir los correos, limtelo slo en casos imprescindibles.
Archive los correos que le interesa conservar.
Defina las reglas dentro de su entidad: Cundo enviar copias al jefe de los mensajes que se
intercambian; quin puede enviar mensajes a los niveles superiores, a quines incluir en las
copias.
Escribir en letras maysculas en correo electrnico puede ser considerado como que usted est
gritando. Si le preocupa el tamao de la letra use un tamao mayor.
IX. Seguridad Informtica
Los aspectos que definen la Seguridad Informtica, y en general cualquier sistema, pueden resumirse
en las siguientes interrogantes: Qu voy a proteger?; Qu necesito proteger?; Cunto tiempo,
esfuerzo y recursos financieros se requiere para obtener el nivel adecuado?, las cuales requieren
como primer paso la caracterizacin de la entidad: Objeto Social y datos generales; Sistemas
Informticos; Programas Utilizados; clasificacin de la informacin; diagrama de flujos de la
informacin (ubicacin de las reas) y anlisis de riesgos.
En la prctica, son diversas las tcnicas de proteccin utilizadas: escanear las huellas digitales, el iris
de los ojos o la forma de la cara, que puede parecer exagerado o de Ciencia Ficcin, pero los
sistemas de identificacin biomtricos se estn difundiendo rpidamente, atendiendo a una sencilla
razn: son sistemas ms baratos de mantener, en comparacin con un departamento de seguridad
con vigilantes, tarjetas magnticas que deben ser comprobadas, modificacin permanente de las
contraseas y cdigos de acceso a instalaciones, comprobaciones y listados, avisos a los
empleados para que guarden separadamente las contraseas, servicio de atencin como
recordatorios cuando se pierden las claves, etc.
Sin embargo, estas tecnologas tienen como inconveniente el peligro de que la base de datos,
donde se valida la informacin escaneada, caiga en manos de intrusos o delincuentes que hagan
un uso mal intencionado de la misma.
Otro elemento que forma parte de la Seguridad, es la Gestin de contraseas, la cual abarca, entre
otros los aspectos siguientes:
Sustituir las contraseas que vienen por defecto con el sistema.
Proporcionar datos al usuario de la ltima conexin.
Impedir contraseas compartidas.
Anular a los empleados que causen baja.
Garantizar los cambios peridicos y cada vez que se detecte una operacin o acceso ilegal.
En correspondencia con lo anterior los requisitos que deben cumplir de las contraseas son:
Su longitud debe ser al menos de ocho caracteres.
Debe incluir letras maysculas y minsculas as como nmeros y signos.
Ser fciles de recordar y difciles de adivinar.
Debe poder ser tecleada rpidamente.
No deben contener caracteres repetidos.
Kavuri, S.N.:"On the Classification Characteristcs of Networks with Ellipsoidal Activation Function. A
comparative Study", Proceeding of International Federation of Automatic Control, pp:156-161, abr/92,
USA.
Mesa, G; Arritola, J.M.:"Diseo de interface de entrada analgica para computadoras IBM compatibles,
II Seminario Internacional sobre Azcar y Derivados de la Caa, mayo/90, Cuba.
Mesa, G.; Mesa, J.: Procesamiento automatizado de datos. Aplicaciones, Alcohol & Azcar, #84,
pp:24-31, abr-jun-96.
Mesa, G; Zayas, S; Flores, J.:"Interfaz de 40 entradas analgicas", III Seminario Internacional sobre
Azcar y Derivados de la Caa, mayo 93, Cuba.
Mesa, J.: Sistemas de cmputo. Aspectos generales, Revista CIC, vol 24, #46, pp:35-64, 1989.
Mesa, J.; de Armas, C.: Simulacin de la recompresin de vapor en evaporadores, Revista
Azcar&Alcohol, #77, pp:20-26, dic-ene/95.
Mesa, J.; Bermello, A.; Cabrera, M.: Programa para el desdoblaje de bandas en Qumica Analtica,
Revista ICIDCA, vol XXVIII, # 1-3, pp: 116-130, 1994.
Mesa, J.; Carreras, J.; Zequeira, M.; Albo, J.M.: Probador funcional de memorias CID 601, Revista
CID, Electrnica y Proceso de Datos en Cuba, ao 4/5, #4/1, pp:11-16, 1987.
Mesa, J et al.:"Sistema para el monitores de procesos en destileras de alcohol", III Seminario
Internacional sobre Azcar y Derivados de la Caa, mayo 93, Cuba.
Mesa, J.; Mesa, G.; Pavn, J.A.; Ramrez, L.A.: Sistema automatizado para el monitoreo del proceso
de destilacin de alcohol, Revista Azcar&Alcohol, #74, pp:30-33, jun-jul/94.
Mesa, J.; Quintero, J.: Programador de memorias PROM, Revista Ing. Electrnica, Automtica y
Comunicaciones, vol VIII, #1, pp: 33-8, ene/87.
Mesa, J.; Quintero, J.: Programadores de memorias. Diseo elctrico, Revista CIC, vol 26, #50,
pp:3-22, 1991.
Mesa, J.; Quintero, J.: Programadores de memorias. Programa de control, Revista CIC, vol 26, #51,
pp:58-65, 1992.
Mesa, J.; Quintero, J.; Sierra, G.: Diseo de un probador autnomo de circuitos integrados digitales.
Parte II. Programa de control, Revista Ing. Electrnica, Automtica y Comunicaciones, vol VII, #4, pp:
347-53, dic/86.
Mesa, J.; Rivas, C.:Diagramas de Flujo, http://elprisma.com, mar/2004.
Mesa, J.; Sierra, G.; Quintero, J.: Diseo de un probador autnomo de circuitos integrados digitales.
Parte I. Diseo elctrico, Revista Ing. Electrnica, Automtica y Comunicaciones, vol VII, #3, pp:2428, sep/86.
Mesa, J.; Stable, C.: Automatizacin de los procesos fermentativos. Clculo del coeficiente
transferencia de oxgeno (kla) , Revista ICIDCA, vol XXX, # 2, pp: 39-46, 1996.
Miller, P.L.:The Evaluation of Artificial Intelligence Systems in Medicine, Computers Methods and
Programs in Biomedicine, vol 22, pp:5-11, 1986.
Motoda, H.:"The Current Status of Expert Systems. Development and Related Technologies in Japan",
International Special Report, pp:3-11, ago/90.
Nieto, F et al.:"Documentacin de programas en lenguaje C para interfases con el usuario de los
sistemas de deteccin de fallas en la industria", Informe ICIDCA, I3-004-3419-90, nov/90, Cuba.
Normadin, A.; Grandjean, B.P.A., Thibault, J.:Put Data Analysis Using Neural Network Models, I&EC
Reserarch, vol 32, pp:970-75, 1993.
Nguyen, T.T.:Neural Network Architecture for Solving Non-Linear Equations Systems, tesis de
Doctorado, Cap 2, neural Network, 1994.
Olmeda, I; Barba-Romero, S.:Redes neuronales artificiales, Universidad de Alcal, espaa, 1993.
Pavn, J.A; Flores, J.:"Estimacin de los parmetros del modelo de nivel para la caldera cubana
RETO CV-45-18, II Seminario Internacional sobre Azcar y Derivados de la Caa, mayo 90, Cuba.
Pavn, J.A.; Mesa, J.: Adquisicin y procesamiento de datos automatizados en las
investigaciones, Revista ICIDCA, vol XXVIII, # 1-3, pp: 65-71, 1994.
Porter, W.A.; Zheng, X.:A nonbinary Neural Network Design, IEEE Transactions on Computers, vol
42, 9, pp: 1132-35, sep/93.
Looney, C.G.:Neural Network as Expert Systems, Expert Systems With Application, #6, pp_126-36,
1993.
Quintero, J.; Mesa, J.: Programador de Arreglos Lgicos Programables, Revista Ing. Electrnica,
Automtica y Comunicaciones, vol VII, #3, pp: 258-62, sep/86.
Rojas-Guzman,C; Kramer, M.A.:"Belief Networks for Knowledge Integration and Abductive Inference in
Fault Diagnosis of ChemicalProcess", Proceeding of International Federation of Automatic Control,
pp:14-19, abr/92, USA.
Roque, P.; Mesa, J.: Diseo con microprocesadores. Aspectos generales, Revista CIC, vol 23, #44,
pp:47-73, 1988.
de la Rosa, G.; Mesa, J.: Fuentes de alimentacin con reguladores hbridos para sistemas digitales,
Revista CIC, vol 22, # 40, pp:17-23, 1987.
de la Rosa, G.; Mesa, J.: Fuentes conmutadas, Revista CIC, vol 22, #41, pp:47-61, 1987.
Rumelhart, D.E.; Hintin, G.E.; Williams, R.J.:Learning representations by back-propagating errors,
Nature, vol 323, 9, pp: 533-36, oct/86.
Snchez, A.; Vzquez, M.E.; Quiroz, G.:Sistema experto agricultor, Compu Mundo, vol # 1, # 6,
pp:27-9, sep/84.
Santos, C.; Lambertt, A.; Mesa, J.; Quintero, J.: Sistemas de computacin para el procesamiento de
bioseales: elementos bsicos, Acta Mdica Hospital Hnos Ameijeiras, vol 3, #2, pp:251-7, juldic/1989.
Santos, C.; Lambertt, A.; Mesa, J.; Quintero, J.: Aplicaciones de la Computacin en electromiografa
clnica: el sistema NEUROCID-M, Acta Mdica Hospital Hnos Ameijeiras, vol 3, #2, pp:267-76, juldic/1989.
Santos, J.:"Manual de Usuario del Sistema Experto de Inteligencia Artificial", U.H., 1989, Cuba.
Shortliffe, E.H.:"MYCIN: Computer-Based Medical Consultation", American Elsevier, N. York, 1976,
USA.
Steels, L.:"Components of Expertise", VUB AI Laboratorie, Bruselas, Blgica, 1989.
Terpstra, V.J. et al.:"A Real Time, Fuzzy, Deep-Knowledge Based Fault-Diagnosis for a CSTR",
Proceeding of International Federation of Automatic Control, pp:26-31, abr/92, USA.
Titus, J.:10 Questions you Must Ask Before Buying Data-analysis software, Test & Measurement
World, pp:30-38, nov/99.
Thibault, J., Grandjean, B.P.A.,:A Neural Network Methodology for Heat Transfer Data Analysis, vol
34, ~8, pp:2063-70, 1991.
de Weijer, A.P.:Using Genetic Algorithms for an Artificial Neural Network Model Inversion,
Chemometrics and Intelligence Laboratory systems, vol 20, pp: 45-55, 1993.
Zequeira, M.; Mesa, J.; Carreras, J.; Albo, J.M.: Programador-copiador de memorias CID 602,
Revista CID, Electrnica y Proceso de Datos en Cuba, ao 4/5, #4/1, pp:17-21, 1987.
Anexos
Anexo A. Trminos y definiciones.
Aprendizaje. Un programa aprende si su desempeo mejora al atender varias veces la misma
entrada, ya sea, a travs de una modificacin durante cada ejecucin del programa, de su base de
conocimiento o de sus parmetros.
Bsqueda heurstica. Estrategia que se sigue para obtener una solucin, pero sacrificando la
garanta de lograr un ptimo.
Conflicto de opiniones. En muchas reas hay conflictos en las opiniones de los expertos y en el
modelo del enfoque de un experto. Todo sistema experto tiene fronteras de conocimiento.
Comportamiento inteligente de un programa. Se define como aquel que exhibira una persona
inteligente o lista al encontrarse en una situacin o problema similar.
Experto. Es una persona que tiene conocimientos profundos de un cierto tema y tiene experiencia en
resolver con ellos problemas tiles. El experto puede dar explicaciones de la forma en que ha
llegado a una conclusin, puede dar razones de porque ha realizado determinada pregunta o que est
tratando de averiguar en ese momento
Inteligencia. Es la capacidad de un sujeto o sistema para seleccionar de un nmero dado de
alternativas, aquella que ms conviene frente a la situacin que se presenta, la capacidad de
autonoma y lo adecuado de su reaccin frente a situaciones anmalas o imprevistas.
Modelo. Es una imagen o abstraccin de un sistema u objeto que se emplea para obtener una
concepcin experimental. Un modelo muestra slo aquellos aspectos del objeto modelado que
requieran estudiarse. Un modelo adquiere validez frente a la realidad, verificando su comportamiento
(simulado) con el observado en la realidad. Muchos sistemas de IA, especialmente los que aprenden
utilizan un modelo interno del problema a resolver, que posteriormente refinan, ajustan y validan.
Motor de inferencia. Es el programa que construye los razonamientos a partir de los conocimientos,
frente a una determinada situacin detecta los conocimientos de inters, los utiliza, los encadena y
construye un plan de solucin.
Multiplexor: Multiplexor en un conjunto de puertas y software que permite multiplexar y
desmultiplexar el trfico de unas puertas a otras.
Generalmente no trabajan a nivel de protocolo.
Puente: Conjunto de puertas y aplicaciones informticas que permiten que los paquetes alcancen
su destino, a partir de
tablas de direcciones de hardware conocidas.
Representacin del conocimiento. Se refiere al estudio de formalismos y de estructuras de datos
para la representacin de conocimientos para usuarios en la comprensin del lenguaje natural en los
Sistemas Expertos. La representacin de conocimientos generalmente se logra a travs de:
Redes basadas en grficos dirigidos.
Sintaxis estndar de la lgica simblica.
Procedimientos escritos en un lenguaje de alto nivel
Robtica. Consiste en el diseo de mquinas que interactan con el medio ambiente en tanto se
desplazan en l y/o lo manipulan y lo hacen en forma que pudiera considerarse inteligente.
Router: Conjunto de puertas y aplicaciones informticas que permiten que los paquetes tcp/ip
alcancen el destino, permitiendo reglas de cola y filtraje a nivel de protocolo (direccin y servicio)
Rutas. Es el camino que toma un paquete tcp/ip para alcanzar el destino. Las rutas pueden ser
estticas o dinmicas (calculadas).
Simulacin. Es el proceso de poner al modelo en una computadora y usarlo para el objetivo previsto.
Visin. Este trmino agrupa los aspectos siguientes.
Reconocimiento de patrones: anlisis, descripcin, identificacin, clasificacin y extraccin de
patrones a partir de datos.
Visin: diseo de programas que procesen, categoricen, y entiendan informacin visual.
hex
80
81
82
83
84
85
86
87
88
89
8A
8B
8C
car
dec
160
161
162
163
164
165
166
167
168
169
170
171
172
hex
20
21
22
23
24
25
26
27
28
29
2A
2B
2C
2D
2E
2F
30
31
32
33
34
35
36
37
38
39
3A
3B
3C
3D
3E
3F
car
!
#
$
%
&
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
dec
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
hex
40
41
42
43
44
45
46
47
48
49
4
4B
4C
4D
4E
4F
50
51
52
53
54
55
56
57
58
59
5A
5B
5C
5D
5E
5F
car
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
dec
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
hex
60
61
62
63
64
65
66
67
68
69
6A
6B
6C
6D
6E
6F
70
71
72
73
74
75
76
77
78
79
7A
7B
7C
7D
7E
7F
car
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
DEL
hex
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
AA
AB
AC
car
dec
192
193
194
195
196
197
198
199
200
201
202
203
204
hex
CO
C1
C2
C3
C4
C5
C6
C7
C8
C9
CA
CB
CC
car
dec
224
225
226
227
228
229
230
231
232
233
234
235
236
hex
E0
E1
E2
E3
E4
E5
E6
E7
E8
E9
EA
EB
EC
car
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
8D
8E
8F
90
91
92
93
94
95
96
97
98
99
9
9B
9C
9D
9E
9F
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
AD
AE
AF
B0
B1
B2
B3
B4
B5
B6
B7
B8
B9
BA
BB
BC
BD
BE
BF
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
CD
CE
CF
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
DA
DB
DC
DD
DE
DF
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
ED
EE
EF
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
FA
FB
FC
FD
FE
FF