Sie sind auf Seite 1von 18

TEMA 4: FUNDAMENTOS DE SOFTWARE.

1. INTRODUCCION

Es sabido por todos hoy en da que la informtica ha sufrido grandes


cambios a lo largo de su historia de vida y quin sabe los cambios que estn
por venir. Lo cierto es que uno de sus grandes avances se ha producido
precisamente entorno al software, al que precisamente dedicaremos este
captulo. En l, veremos, de manera sencilla, qu es el software y sus
distintos tipos, as como su evolucin histrica. El inters de este captulo
reside en dar a nuestros lectores una idea del software que actualmente
existe en el mercado (tipos y caractersticas bsicas) para que de ese modo
pueda comprender lo importante que es para una empresa y sus recursos
humanos la utilizacin del adecuado software segn las necesidades.

2. CONCEPTOS DE SOFTWARE Y EVOLUCION

Para llegar a comprender qu es el software, debemos empezar la


exposicin por describir los elementos que componen un ordenador.
Podramos hacer una gran lista de elementos, pero en definitiva, el
ordenador se compone de dos partes: hardware y software.

El hardware, como ya se expuso en el captulo anterior, es la parte fsica o


material de todo ordenador y el software es la parte inmaterial, intangible
del mismo. Metafricamente seran el cuerpo (hardware) y el alma
(software) del sistema informtico.
Pues bien, una vez que nos hacemos una idea, a grosso modo, podemos
exponer una definicin de software.
El software de un ordenador es un conjunto de programas (un programa es
una secuencia de instrucciones que son interpretadas por un ordenador,
dando como fruto un resultado pretendido y determinado) cuya funcin
principal es hacer que el ordenador funcione, haciendo que las actuaciones y
tareas a realizar por ste sigan un esquema lgico y predeterminado de
funcionamiento.
Un ordenador, por s mismo, no es capaz de hacer algo, necesita de alguien
que lo dirija y le de una serie de instrucciones. Ese alguien es el usuario y
las instrucciones vienen dadas en los programas. Finalmente es el usuario
quien, en definitiva, le dice al ordenador qu tiene que hacer y cundo, pues
el cmo viene especificado en los programas, es decir, en el software.
Desde otra ptica, podemos decir que el software es aquel elemento que
hace de unin entre el hombre y la mquina (el hardware).
Como un ordenador no puede comunicarse con el hombre por s solo y el
hombre tampoco puede hacerlo con el ordenador, ya que ambos utilizan
lenguajes diferentes, el software es el que se encargara de disminuir o
eliminar esa barrera de incomprensin actuando de intermediario y
estableciendo procedimientos de comunicacin entre ambos.

La evolucin que han tenido los sistemas operativos se ha producido de


manera paralela al desarrollo del hardware. Para exponer su proceso
histrico vamos a servirnos de la clasificacin por etapas temporales o
generaciones; de este modo, se puede observar que se ha producido hasta
cuatro generaciones de sistemas operativos y que son las que ahora vamos a
desarrollar.

1 generacin (1945 1955)


En este perodo de tiempo es cuando surgen las primeras computadoras en
donde los programadores programaban directamente el hardware de la
misma. En realidad no podemos decir que existiera un sistema operativo,
pero s que se empez a vislumbrar su futuro nacimiento. Era una poca en
la que las computadoras no eran ms que mquinas de clculo constituidas
mediante bulbos. Ocupaban una habitacin completa debido a sus grandes
dimensiones y trabajaban muy lentamente.
Su programacin se realizaba con lenguaje mquina, necesitndose el
empleo de conexiones para controlar las funciones bsicas de la mquina.
Para conseguir una visin simple, se trataba de computadoras o mquinas
enchufadas a tableros.
Principalmente las operaciones realizadas por estas mquinas eran de
clculo matemtico.
No es hasta comienzos de los aos 50 cuando se incorporaron las tarjetas
perforadas en las que se escriban los programas para su posterior lectura
con lo que se mejor la rutina de los procesos.

Entre las personas que fueron capaces de crear mquinas como stas
estaban JhonVonNewman, HowardAiken, J. Prespe R. Eckert y
WilliamsMauchley.

2 generacin (1955 1965)


Es la empresa General Motors la que implanta por primera vez un sistema
operativo en su ordenador IBM 170.
En esta generacin surge el sistema de procesamiento por lotes en donde el
trabajo se agrupaba cuando sus secuencias de pasos resultaba repetitiva,
con lo que se ahorraba tiempo en la realizacin de las mismas. Consista en el
procesamiento de trabajos segn el orden de admisin o entrada, de tal
modo que hasta que no finalizara una tarea no se poda comenzar con la
siguiente.

3 generacin (1965 1980)


Surgen los denominados circuitos integrados y la multiprogramacin.
Fue IBM en su lnea 360, quien emple por vez primera un sistema operativo
utilizando circuitos integrados que permitan dar soporte simultneamente a
trabajos por lotes, compartiendo tiempos y procesos. Se trataba de un
sistema operativo enorme y complejo que funcionaba con un gran volumen de
informacin.
Tambin surge el concepto de multiprogramacin. Las computadoras
adquieren la capacidad de leer el contenido de las tarjetas y pasarlo al disco

(en la parte de memoria libre que le quedara), con el objetivo de


incrementar la productividad de la UCP al reducir tiempos muertos.
En esta generacin los ordenadores son de propsito general.

4 generacin (1980 actualidad)


Surgen los sistemas operativos en red y distribuidos a los que
posteriormente nos referiremos en el apartado 2.1.1. de este captulo.
Tambin surgen los ordenadores personales y las estaciones de trabajo y se
produce uno de los grandes avances en los sistemas operativos: las
interfaces amigables que hacen al usuario el trabajo mucho ms fcil. Se
hacen muy populares el MS-DOS, UNIX y Windows, con sus diferentes
versiones.
Se utilizan circuitos integrados VLSI (VeryLargeScaleIntegration) y
aparecen los microprocesadores.
Los grandes adelantos de esta poca son:

El concepto de mquina virtual, que trata de emular a otras mquinas.

El uso de los sistemas de gestin de bases de datos.

La conectividad entre ordenadores brindando la oportunidad del


traspaso de informacin de ordenador a ordenador, donde quiera que
estn situados (vase captulo 8).

3. LASIFICACION DEL SOFTWARE

El software se puede dividir.

3.1 SOFTWARE DE BASE


El software de base o software de sistema, es aquel conjunto de programas
que tienen como misin facilitar el uso del ordenador por parte de los
usuarios y adems comunicarlo con sus perifricos, asignndolos y
administrndolos.

Entre sus funciones se podran citar las siguientes:

Establece una relacin muy bsica entre la mquina y la persona o


usuario, haciendo de intermediario.

Cumple con funciones que para el usuario seran muy engorrosas o muy
difciles de ejecutar.

Hace que el usuario trabaje con su ordenador de manera sencilla y


cmoda.

Controla las operaciones que realiza la mquina.

Este tipo de software se puede dividir en sistema operativo y en programas


de utilidades.

3.3.1 SISTEMAS OPERATIVOS

Entendemos por sistema operativo aquel conjunto de programas orientados


a controlar todos los dispositivos del ordenador, dirigiendo sus operaciones

bsicas. Como resultado de ello facilita y mejora el rendimiento de los


procesos que suceden en el ordenador, como por ejemplo, controlar la
impresora, el monitor, coordinar el solapamiento de varios programas para
que acten conjuntamente, permitir trabajar simultneamente con varios
perifricos diferentes, etc...
En resumen, bsicamente, podemos concluir que el sistema operativo
persigue los objetivos de:

Servir de nexo de unin o interfaz entre el hardware y el usuario, de


manera sencilla y amigable.

Optimizar los recursos del ordenador (software y hardware).

Dentro de los sistemas operativos se puede hacer una clasificacin


atendiendo al servicio que ofrecen, la cual se muestra en la figura 4.3.

Veamos cada uno de ellos ms detenidamente.

Monousuario.
Los sistemas operativos monousuarios son aquellos que dan servicio a un slo
usuario, independientemente del nmero de procesadores que tenga la
computadora o el nmero de tareas que el mismo usuario pueda ejecutar al
mismo tiempo.

Normalmente, los tpicos PC (ordenadores personales), se han incluido en


esta clasificacin.

Multiusuario.
En este caso, los sistemas operativos dan servicio a varios usuarios a la vez,
bien sea empleando varios terminales conectados a la computadora u
ordenador central, o bien a travs de sesiones remotas dentro de una red
de comunicaciones.

Monotarea.
Se trata de sistemas operativos que tan slo permiten que el usuario realice
una tarea y que para la ejecucin de otra debe terminar la anterior, es
decir, no se pueden llevar a cabo varias tareas a la vez.

Multitarea.
El sistema operativo multitarea es aquel permite que el usuario realice
varias tareas de manera simultnea.

Uniproceso.

Si el sistema operativo es uniproceso slo es capaz de utilizar un slo


procesador del sistema. Un ejemplo de este tipo de sistemas operativo sera
el MS-DOS.

Multiproceso.
En este caso el sistema operativo es capaz de usar varios procesadores del
sistema, de tal manera que podra distinguiendo su trabajo entre ellos.
Estos sistemas operativos pueden trabajar de dos formas bien distintas, de
manera simtrica o de manera asimtrica.
Cuando trabaja de manera simtrica, los procesos que se ejecutan sern
enviados de manera indistinta a cualquier procesador en funcin de su
disponibilidad, siendo tal vez sta la manera ms equilibrada de trabajar. En
cambio, cuando opera de forma asimtrica, es el propio sistema operativo el
que determina el procesador principal que posteriormente distribuir la
carga a los dems como si de un jefe se tratara.

Existe otra forma de clasificacin de los sistemas operativos, atendiendo a


la manera de ofrecer sus servicios. As, existiran dos tipos de sistemas
operativos:

Sistemas operativos en red.


Son aquellos que gozan de la capacidad de interactuar con otros sistemas
operativos ubicados en otras computadoras mediante una red de
transmisin. Esta interconexin permitira el intercambio de informacin

entre distintos ordenadores tales como archivos de datos, imgenes o


sonidos; as como la ejecucin de comandos remotos y cualquier posibilidad
de trabajo que permita dicha red (ver epgrafe 3.3 del captulo 8).

Sistemas operativos distribuidos.


Este tipo de sistema operativo engloba los servicios del tipo anterior y
adems integra otros recursos como impresoras, unidades centrales de
procesos, memoria, etc., en una sola mquina, de este modo, el usuario podr
emplear el recurso que necesite con independencia de su ubicacin,
compartiendo con otros usuarios dispositivos y datos.

3.1.2 PROGRAMAS DE UTILIDADES

Son aquellos programas cuya funcin es facilitar la comunicacin con el


usuario, proporcionando un entorno de trabajo adecuado para la ejecucin
de aplicaciones u otros programas.

3.2 SOFTWARE DE APLICACION

Podramos definir el software de aplicacin como un conjunto de programas


que ayudan a resolver las necesidades de los usuarios.
La diferencia que existe entre un programa de aplicacin y un programa de
utilidad estriba en que stos ltimos sirven para que el usuario se relacione
con el ordenador, facilitando su uso, mientras que los de aplicacin ayudan al

usuario en la realizacin de tareas que anteriormente se realizaban


manualmente.
Gracias al software de aplicacin, el hombre utiliza el ordenador para que su
trabajo se convierta en algo ms liviano y le ayude en gran medida en todas
aquellas actividades de carcter repetitivo. Como ejemplos de estas
aplicaciones tenemos:

Procesadores de texto.

Editores.

Hojas de clculo.

Sistemas de gestin de bases de datos.

Programas de comunicaciones.

Paquetes integrados.

Etc.

Resulta muy til diferenciar, dentro del software de aplicacin, entre


aplicaciones verticales y horizontales.

3.2.1 SOFTWARE VERTICAL Y HORIZONTAL

El software vertical es un conjunto de programas de aplicacin que estn


orientados a un tipo concreto de usuarios (mdicos, ingenieros,
economistas,...) o a un tipo determinado de negocio (farmacias, notaras,
video clubs, etc) y tratan de resolver todas sus necesidades.

Tradicionalmente, en las empresas existan muchas aplicaciones verticales,


pero hoy en da han perdido importancia. La mayora se realizaban mediante
el sistema llave en mano, que resolvan todas las necesidades de la
empresa. En la actualidad se emplean ms las aplicaciones horizontales.
Por su parte, el software horizontal, tiene como objetivo resolver
problemas o necesidades concretas, cuya utilidad puede ir dirigida a una
amplia variedad de usuarios. Por ejemplo, podramos citar como aplicaciones
horizontales un procesador de texto, una hoja de clculo, un sistema de
gestin de bases de datos, etc.
Independientemente de la anterior clasificacin, no podamos concluir este
apartado sin citar otra clasificacin del software de aplicacin, a saber,
estndar o a medida.

3.2.2 SOFTWARE ESTANDAR Y A MEDIDA

El software estndar ha sido realizado de forma genrica para un conjunto


indeterminado de usuarios, de tal manera que una vez terminado, puede ser
utilizado con una serie de variantes por un gran nmero de ordenadores.
Aunque se realiza de forma genrica, normalmente ofrece la posibilidad de
parametrizacin en el momento de su instalacin, es decir, adaptarlo, en
definitiva, a las circunstancias de uso.
El software a medida es aquel que ha sido diseado por analistas y
programadores para resolver las necesidades concretas de un usuario.

Esta diferenciacin resulta muy importante y a la hora de tener que decidir


acerca de uno u otro, deberamos tener presentes cules son las ventajas
que de ellos se derivan.

Una ventaja de la programacin a medida es que se adapta muy bien a


las necesidades reales. Pero a veces surgen controversias entre las
personas que tienen que trabajar con esos programas y los
informticos.

Una desventaja de la programacin a medida es su elevado coste.


Adquirir un programa estndar es relativamente barato frente a uno
a medida, que requiere de la contratacin de unos programadores, que
a veces se llevan varios aos trabajando en el desarrollo de ese
software. Por ejemplo, un programa de contabilidad puede costar en
el mercado entre 70.000 y 150.000 pesetas, pero realizarlo supondra
un gasto de millones de pesetas.

Otra desventaja de la programacin a medida es el coste de


oportunidad, que es muy elevado, ya que se pierde mucho tiempo en
programar; adems, existe mucha gente formada para la
programacin estndar, pero no para la programacin a medida.

Un nuevo inconveniente de la programacin a medida es el


desconocimiento que se suele tener acerca del funcionamiento real
del programa. Cuando se acaba de hacer el programa es cuando
realmente empiezan los problemas: funcionar bien?, se quedar
bloqueado?, tendr problemas con su codificacin?...Cuando llega ese
momento, el programa hay que probarlo y el usuario normalmente no
tiene tiempo para ello. En definitiva, el programa a medida conlleva un
problema de seguridad en cuanto a su funcionamiento esperado.

Una ventaja de los programas estndar es que suelen pasar unos test
de seguridad y de auditora informtica, lo cual asegura, en principio,
su buen funcionamiento.

Por ltimo, un nuevo inconveniente de la programacin a medida es que


en el sector de la informtica no existe una gran movilidad laboral.
Esto quiere decir que llegado un momento, un programador puede
pedir un aumento de sueldo, por ejemplo, con la amenaza de
marcharse a otra empresa. Esto pone de manifiesto la dependencia a
los programadores y que sin ellos sera muy difcil trabajar con los
programas.

Por todo lo dicho anteriormente parece comprensible que la mayora de las


empresas se decanten por el software estndar.

3.2.3 OTRO TIPO DE SOFTWARE

Finalmente, existe otra clasificacin del software de aplicacin, en funcin


de su forma de adquisicin o explotacin. As, podemos encontrar:

Software de dominio pblico (freeware): se trata de software que


podemos adquirir gratis (Vase epgrafe 3.4.6 del captulo 9).

Shareware: habr que pagar al autor del mismo un precio estipulado


si es que se va a utilizar frecuentemente con fines profesionales
(Vase epgrafe 3.4.6 del captulo 9).

Software comercial: es el software que hay que adquirir previamente


abonando su precio.

Software de alquiler o en rgimen de outsourcing: existe una nueva


posibilidad de utilizacin de software que actualmente est

adquiriendo ms fuerza. Se trata de la utilizacin del software a


travs de redes telemticas (especialmente Internet). En este caso
no se adquiere el software, sino que se utiliza de forma remota,
estando los programas y los datos ubicados fsicamente en los
ordenadores de las empresas que prestan este tipo de servicio, las
cuales se denominan Proveedores de Servicios de Aplicacin ( ASP o
Net Sourcing). Este sistema cuanta adems con una serie de ventajas
e inconvenientes, a saber:

En relacin a las ventajas de los Sistemas ASP, caben comentar las


siguientes:

No se necesita instalacin de los programas y de sus constantes


actualizaciones, ya que se ocupa la empresa prestadora del servicio.

Los datos son almacenados y copiados regularmente con copias de


seguridad por parte de la empresa que gestiona esta actividad, con lo
que la empresa usuaria se despreocupa de una de las principales
fuentes de problemas dentro del mundo de la informtica.

Los costes inherentes a este servicio son claramente inferiores a los


de la adquisicin y actualizacin del software.

En relacin a los inconvenientes de los Sistemas ASP, caben comentar los


siguientes:

Dependencia de una red telemtica, con lo que si ocurriera algn


problema con la misma, sera imposible realizar el servicio (cortes de
la red, etc)

Algunas personas son reticentes a estos servicios de carcter


telemtico debido a problemas de seguridad, aunque hoy en da se ha
avanzado tanto en ello, que estos temores van siendo superados.

Dependencia con la empresa prestadora del servicio, ya que si sta no


acta correctamente, el servicio no se producira (huelgas, paros
productivos o de servicios,...)

Hay que decir que en el contrato que se pacte entre empresa usuaria y
prestadora del servicio se pueden incluir clusulas en las que se establezcan
posibles problemas del ejerccio de esta actividad y quin responde ante
estos.

3.2.3 OTRO TIPO DE SOFTWARE

Finalmente, existe otra clasificacin del software de aplicacin, en funcin


de su forma de adquisicin o explotacin. As, podemos encontrar:

Software de dominio pblico (freeware): se trata de software que


podemos adquirir gratis (Vase epgrafe 3.4.6 del captulo 9).

Shareware: habr que pagar al autor del mismo un precio estipulado


si es que se va a utilizar frecuentemente con fines profesionales
(Vase epgrafe 3.4.6 del captulo 9).

Software comercial: es el software que hay que adquirir previamente


abonando su precio.

Software de alquiler o en rgimen de outsourcing: existe una nueva


posibilidad de utilizacin de software que actualmente est

adquiriendo ms fuerza. Se trata de la utilizacin del software a


travs de redes telemticas (especialmente Internet). En este caso
no se adquiere el software, sino que se utiliza de forma remota,
estando los programas y los datos ubicados fsicamente en los
ordenadores de las empresas que prestan este tipo de servicio, las
cuales se denominan Proveedores de Servicios de Aplicacin ( ASP o
Net Sourcing). Este sistema cuanta adems con una serie de ventajas
e inconvenientes, a saber:

En relacin a las ventajas de los Sistemas ASP, caben comentar las


siguientes:

No se necesita instalacin de los programas y de sus constantes


actualizaciones, ya que se ocupa la empresa prestadora del servicio.

Los datos son almacenados y copiados regularmente con copias de


seguridad por parte de la empresa que gestiona esta actividad, con lo
que la empresa usuaria se despreocupa de una de las principales
fuentes de problemas dentro del mundo de la informtica.

Los costes inherentes a este servicio son claramente inferiores a los


de la adquisicin y actualizacin del software.

En relacin a los inconvenientes de los Sistemas ASP, cabe comentar los


siguientes:

Dependencia de una red telemtica, con lo que si ocurriera algn


problema con la misma, sera imposible realizar el servicio (cortes de
la red, etc)

Algunas personas son reticentes a estos servicios de carcter


telemtico debido a problemas de seguridad, aunque hoy en da se ha
avanzado tanto en ello, que estos temores van siendo superados.

Dependencia con la empresa prestadora del servicio, ya que si sta no


acta correctamente, el servicio no se producira (huelgas, paros
productivos o de servicios,...)

Hay que decir que en el contrato que se pacte entre empresa usuaria y
prestadora del servicio se pueden incluir clusulas en las que se establezcan
posibles problemas del ejercicio de esta actividad y quin responde ante
estos.