2. 1. SOFTWARE DE SISTEMA
Su objetivo es desvincular adecuadamente al usuario y al programador de los
detalles del sistema informático en particular que se use, aislándolo especialmente
del procesamiento referido a las características internas de: memoria, discos,
puertos y dispositivos de comunicaciones, impresoras, pantallas, teclados, etc. El
software de sistema le procura al usuario y programador adecuadas interfaces de
alto nivel, controladores, herramientas y utilidades de apoyo que permiten el
mantenimiento del sistema global. Incluye entre otros:
Sistemas operativos: Un sistema operativo (SO) es un programa o conjunto de
programas que en un sistema informático gestiona los recursos de hardware y provee
servicios a los programas de aplicación, y corre en modo privilegiado respecto de los
restantes
Controladores de dispositivos: Un controlador de dispositivo, llamado
normalmente controlador (en inglés, device driver) es un programa informático que
permite al sistema operativo interactuar con un periférico, haciendo una abstracción
del hardware y proporcionando una interfaz -posiblemente estandarizada- para usarlo.
Se puede esquematizar como un manual de instrucciones que le indica al sistema
operativo, cómo debe controlar y comunicarse con un dispositivo en particular. Por
tanto, es una pieza esencial, sin la cual no se podría usar el hardware.
3. Herramientas de diagnóstico: Una herramienta de diagnóstico es un software que
permite monitorear y en algunos casos controlar la funcionalidad del hardware, como:
computadoras, servidores y periféricos, según el tipo y sus funciones. Estos dispositivos
pueden ser, la memoria RAM, el procesador, los discos duros, ruteadores, tarjetas de red,
entre muchos dispositivos más. El software permite monitorear temperatura, rendimiento,
transferencia de datos, etc.
Servidores: Una aplicación informática o programa que realiza algunas tareas en
beneficio de otras aplicaciones llamadas clientes. Algunos servicios habituales son los
servicios de archivos, que permiten a los usuarios almacenar y acceder a los archivos de una
computadora y los servicios de aplicaciones, que realizan tareas en beneficio directo del
usuario final. Este es el significado original del término. Es posible que un ordenador
cumpla simultáneamente las funciones de cliente y de servidor.
Utilidades: En informática, una utilidad es una herramienta que realiza:
o Tareas de mantenimiento
o Soporte para la construcción y ejecución de programas
o Las tareas en general
En donde se incluyen las bibliotecas de sistema, middleware, herramientas de desarrollo,
etc.
Entre ellas podemos nombrar cifrado y descifrado de archivos, compresión de archivos,
desfragmentadores de disco, editores de texto, respaldo, etc.
4. 2.- SOFTWARE DE PROGRAMACIÓN
Es el conjunto de herramientas que permiten al programador desarrollar programas
informáticos, usando diferentes alternativas y lenguajes de programación, de una manera
práctica. Incluyen básicamente:
Editores de texto: Un editor de texto es un programa que permite crear y modificar
archivos digitales compuestos únicamente por texto sin formato, conocidos comúnmente
como archivos de texto o texto plano. El programa lee el archivo e interpreta los bytes leídos
según el código de caracteres que usa el editor. Hoy en día es comúnmente de 7- ó 8-bits en
ASCII o UTF-8, rara vez EBCDIC.
Por ejemplo, un editor ASCII de 8 bits que lee el número binario (decimal 97 ó hexadecimal
61) en el archivo lo representará en la pantalla por la figura a, que el usuario reconoce como
la letra "a" y ofrecerá al usuario las funciones necesarias para cambiar el número binario en
el archivo.
Compiladores: Un compilador es un programa informático que traduce un programa
escrito en un lenguaje de programación a otro lenguaje de programación, generando un
programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo
lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode),
o simplemente texto. Este proceso de traducción se conoce como compilación.
Un compilador es un programa que permite traducir el código fuente de un programa en
lenguaje de alto nivel, a otro lenguaje de nivel inferior (típicamente lenguaje de máquina).
5. Intérpretes: En ciencias de la computación, intérprete o interpretador es un programa
informático capaz de analizar y ejecutar otros programas, escritos en un lenguaje de alto
nivel. Los intérpretes se diferencian de los compiladores en que mientras estos traducen un
programa desde su descripción en un lenguaje de programación al código de máquina del
sistema, los intérpretes sólo realizan la traducción a medida que sea
necesaria, típicamente, instrucción por instrucción, y normalmente no guardan el
resultado de dicha traducción.
Enlazadores: Un enlazador (en inglés, linker) es un programa que toma los objetos
generados en los primeros pasos del proceso de compilación, la información de todos los
recursos necesarios (biblioteca), quita aquellos recursos que no necesita, y enlaza el código
objeto con su(s) biblioteca(s) con lo que finalmente produce un fichero ejecutable o una
biblioteca. En el caso de los programas enlazados dinámicamente, el enlace entre el
programa ejecutable y las bibliotecas se realiza en tiempo de carga o ejecución del
programa.
Depuradores: Un depurador (en inglés, debugger), es un programa usado para probar y
depurar (eliminar los errores) de otros programas (el programa "objetivo"). El código a ser
examinado puede alternativamente estar corriendo en un simulador de conjunto de
instrucciones (ISS), una técnica que permite gran potencia en su capacidad de detenerse
cuando son encontradas condiciones específicas pero será típicamente algo más lento que
ejecutando el código directamente en el apropiado (o el mismo) procesador. Algunas
depuradores ofrecen dos modos de operación - la simulación parcial o completa, para
limitar este impacto.
6. Entornos de Desarrollo Integrados (IDE): Un IDE es un entorno de programación
que ha sido empaquetado como un programa de aplicación, es decir, consiste en un editor
de código, un compilador, un depurador y un constructor de interfaz gráfica (GUI). Los
IDEs pueden ser aplicaciones por sí solas o pueden ser parte de aplicaciones existentes. El
lenguaje Visual Basic, por ejemplo, puede ser usado dentro de las aplicaciones de Microsoft
Office, lo que hace posible escribir sentencias Visual Basic en forma de macros para
Microsoft Word.
3.- SOFTWARE DE APLICACIÓN
Es aquel que permite a los usuarios llevar a cabo una o varias tareas específicas, en cualquier
campo de actividad susceptible de ser automatizado o asistido, con especial énfasis en los
negocios. Incluye entre muchos otros:
Aplicaciones para Control de sistemas y automatización industrial: Los sistemas
de control según la Teoría Cibernética se aplican en esencia para los organismos vivos, las
máquinas y las organizaciones. Estos sistemas fueron relacionados por primera vez en 1948
por Norbert Wiener en su obra Cibernética y Sociedad con aplicación en la teoría de los
mecanismos de control. Un sistema de control está definido como un conjunto de
componentes que pueden regular su propia conducta o la de otro sistema con el fin de
lograr un funcionamiento predeterminado, de modo que se reduzcan las probabilidades de
fallos y se obtengan los resultados buscados. Hoy en día los procesos de control son
síntomas del proceso industrial que estamos viviendo.
7. Aplicaciones ofimáticas: Una suite ofimática o suite de oficina es una recopilación de
aplicaciones, las cuales son utilizados en oficinas y sirve para diferentes funciones como
crear, modificar, organizar, escanear, imprimir, etc. archivos y documentos. Son
ampliamente usados en varios lugares, ya que al ser eso (una recopilación), hace que sea
asequible adquirir toda la suite, que programa por programa, lo cual es más complejo, al
tener que conseguir programa por programa, y en caso del software pagado, más caro.
Software educativo: Así como existen profundas diferencias entre las filosofías
pedagógicas, así también existe una amplia gama de enfoques para la creación de software
educativo, atendiendo a los diferentes tipos de interacción que debería existir entre los
actores del proceso de enseñanza-aprendizaje: educador, aprendiz, conocimiento,
computadora.
Como software educativo tenemos desde programas orientados al aprendizaje hasta
sistemas operativos completos destinados a la educación, como por ejemplo las
distribuciones GNU/Linux orientadas a la enseñanza.
Software empresarial: Por software empresarial se entiende generalmente cualquier
tipo de software que está orientado a ayudar a una empresa a mejorar su productividad o a
medirla.
El término engloba y que una amplia variedad de aplicaciones informáticas que incluyen
desde programas de contabilidad y de ofimática, hasta sistemas de planificación de recursos
empresariales (ERP), pasando por programas de gestión de clientes (CRM), de recursos
humanos, etc.
8. Bases de datos: Una base de datos o banco de datos (en ocasiones abreviada con la
sigla BD o con la abreviatura b. d.) es un conjunto de datos pertenecientes a un mismo
contexto y almacenados sistemáticamente para su posterior uso. En este sentido, una
biblioteca puede considerarse una base de datos compuesta en su mayoría por
documentos y textos impresos en papel e indexados para su consulta. Actualmente, y
debido al desarrollo tecnológico de campos como la informática y la electrónica, la
mayoría de las bases de datos están en formato digital (electrónico), que ofrece un amplio
rango de soluciones al problema de almacenar datos.
Telecomunicaciones (por ejemplo Internet y toda su estructura lógica): La
telecomunicación («comunicación a distancia»), del prefijo griego tele, "distancia" y del
latín communicare) es una técnica consistente en transmitir un mensaje desde un punto a
otro, normalmente con el atributo típico adicional de ser bidireccional. El término
telecomunicación cubre todas las formas de comunicación a distancia, incluyendo radio,
telegrafía, televisión, telefonía, transmisión de datos e interconexión de computadoras a
nivel de enlace. El Día Mundial de la Telecomunicación se celebra el 17 de mayo
Telecomunicaciones, es toda transmisión, emisión o recepción de signos, señales, datos,
imágenes, voz, sonidos o información de cualquier naturaleza que se efectúa a través de
cables, medios ópticos, físicos u otros sistemas electromagnéticos.
9. Videojuegos: Un videojuego o juego de vídeo es un software creado para el
entretenimiento en general y basado en la interacción entre una o varias personas y un
electrónico que ejecuta dicho videojuego; este dispositivo electrónico puede ser una
computadora, una máquina arcade, una videoconsola, un dispositivo handheld (un
teléfono móvil, por ejemplo) los cuales son conocidos como "plataformas". Aunque,
usualmente el término "video" en la palabra "videojuego" se refiere en sí a un visualizador
de gráficos rasterizados, hoy en día se utiliza para hacer uso de cualquier tipo de
visualizador.
Software médico: Software médico se llama a aquellos programas informáticos que son
utilizados para fines médicos. Se utilizan muchos dispositivos médicos para vigilar o
controlar a los pacientes, en su mayoría controlados por software. Estos programas son
producto sanitario y deben cumplir la normativa de los mismos. Nótese que no todos los
programas que se utilizan en el entorno médico son producto sanitario.
Software de cálculo Numérico y simbólico:El análisis numérico cobra especial
importancia con la llegada de los ordenadores. Los ordenadores son útiles para cálculos
matemáticos extremadamente complejos, pero en última instancia operan con números
binarios y operaciones matemáticas simples.
Desde este punto de vista, el análisis numérico proporcionará todo el andamiaje necesario
para llevar a cabo todos aquellos procedimientos matemáticos susceptibles de expresarse
algorítmicamente, basándose en algoritmos que permitan su simulación o cálculo en
procesos más sencillos empleando números.
10. Software de diseño asistido (CAD): El diseño asistido por computadora, más conocido
por sus siglas inglesas CAD (computer-aided design), es el uso de un amplio rango de
herramientas computacionales que asisten a ingenieros, arquitectos y a otros profesionales
del diseño en sus respectivas actividades. El CAD es también utilizado en el marco de
procesos de administración del ciclo de vida de productos (en inglés product lifecycle
management).
También se puede llegar a encontrar denotado con las siglas CADD (computer-aided design
and drafting), que significan «dibujo y diseño asistido por computadora».
Estas herramientas se pueden dividir básicamente en programas de dibujo en dos
dimensiones (2D) y modeladores en tres dimensiones (3D). Las herramientas de dibujo en
2D se basan en entidades geométricas vectoriales como puntos, líneas, arcos y polígonos,
con las que se puede operar a través de una interfaz gráfica. Los modeladores en 3D añaden
superficies y sólidos.
Software de control numérico (CAM): La fabricación asistida por computadora (en
Hispanoamérica) o fabricación asistida por ordenador (en España), también conocida por
las siglas en inglés CAM (computer-aided manufacturing), implica el uso de computadores
y tecnología de cómputo para ayudar en todas las fases de la manufactura de un producto,
incluyendo la planificación del proceso y la producción, mecanizado, calendarización,
administración y control de calidad, con una intervención del operario mínima.