Está en la página 1de 23

1 Se conoce como software1 al soporte lógico de

un sistema informático, que comprende el


conjunto de los componentes lógicos necesarios
que hacen posible la realización de tareas
específicas. En contraposición a los
componentes físicos que son llamados hardware.
La interacción entre el software y el hardware
hace operativo un ordenador (u otro dispositivo),
es decir, el Software envía instrucciones que el
Hardware ejecuta, haciendo posible su
funcionamiento.
2 Una aproximación lógica a la adquisición, el
suministro, el desarrollo, la explotación y el
mantenimiento del software. IEEE 1074. Ciclo
de vida del software. Es el proceso que se
sigue para construir, entregar y hacer evolucionar
el software, desde la concepción de una idea
hasta la entrega y retiro del sistema

2.1 Desarrollo de software. Desarrollar


un software significa construirlo simplemente
mediante su descripción. Esta es una muy buena
razón para considerar la actividad de desarrollo
de software como una ingeniería. En un nivel
más general, la relación existente entre un
software y su entorno es clara ya que el software
es introducido en el mundo de modo de provocar
ciertos efectos en el mismo.
3 En informática, el software de sistema,
denominado también software de base, es el
conjunto de instrucciones que permiten el manejo
de la computadora. Una computadora sin
software de sistema se hace inmanejable.
Consiste en un software que sirve de soporte o
base para controlar e interactuar con
el hardware y otros programas; en contraposición
del llamado software de aplicación. Como
ejemplos tenemos los sistemas operativos,
los controladores como también las bibliotecas,
como por ejemplo OpenGL, para la aceleración
gráfica; PNG, para el sistema gráfico;
o daemon que controla la temperatura, la
velocidad del disco duro, como hdparm, o la
frecuencia del procesador como cpudyn.
4 Un sistema operativo (SO o,
frecuentemente, OS —del
inglés operating system—) es
el software principal o conjunto de programas de
un sistema informático que gestiona los recursos
de hardware y provee servicios a los programas
de aplicación de software .ejecutándose en modo
privilegiado respecto de los restantes (aunque
puede que parte de él se ejecute en espacio de
usuario).2
5 Características del Software. Software es
todo el conjunto de programas, procedimientos y
rutinas asociadas con el funcionamiento de un
sistema informático, incluyendo el sistema
operativo.
6 El software es un   equipamiento lógico o
soporte lógico de un sistema informático,
comprende el conjunto de los
componentes lógicos necesarios que hacen
posible la realización de tareas específicas, en
contraposición a los componentes físicos, que
son llamados harineare. 
Los componentes lógicos incluyen, entre muchos
otros, las aplicaciones informáticas; tales como
el procesador de texto, que permite al usuario
realizar todas las tareas concernientes a la
edición de textos; el software de sistema, tal
como el sistema operativo, que, básicamente,
permite al resto de los programas funcionar
adecuadamente, facilitando también la
interacción entre los componentes físicos y el
resto de las aplicaciones, y proporcionando
una interfaz con el usuario.
El anglicismo "software" es el más amplia
mente difundido, especialmente en la jerga
técnica, el término sinónimo "logia", derivado del
término francés "logiciel", es utilizado en países y
zonas de habla francesa.

Si bien esta distinción es, en cierto modo,


arbitraria, y a veces confusa, a los fines prácticos
se puede clasificar al software en tres grandes
tipos:
 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
 Controladores de dispositivos
 Herramientas de diagnóstico
 Herramientas de Corrección y
Optimización
 Servidores
 Utilidades
 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
 Compiladores
 Intérpretes
 Enlazadores
 Depuradores
 Entornos de Desarrollo
Integrados (IDEA): Agrupan las anteriores
herramientas, usualmente en un entorno
visual, de forma tal que el programador no
necesite introducir múltiples comandos para
compilar, interpretar, depurar, etc.
Habitualmente cuentan con una
avanzada interfaz gráfica de usuario (GUI).
 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
 Aplicaciones ofimáticas
 Software educativo
 Software empresarial
 Bases de datos
 Telecomunicaciones (por ejemplo
Internet y toda su estructura lógica)
 Videojuegos
 Software médico
 Software de cálculo Numérico y
simbólico.
 Software de diseño asistido (CAD)
 Software de control numérico (CAN)

En tanto que en los de mediano porte, pequeños


equipos de trabajo (incluso un avezado analista-
programador solitario) pueden realizar la tarea.
7 Software como un Servicio, abreviado ScuS
(del inglés: Software as a Service, SaaS), es un
modelo de distribución de software donde el
soporte lógico y los datos que maneja se alojan
en servidores de una compañía de tecnologías
de información y comunicación (TIC), a los que
se accede vía Internet desde un cliente.
8 El Software de Aplicación son los
programas diseñados para o por los
usuarios para facilitar la realización de
tareas específicas en la computadora, como
pueden ser las aplicaciones ofimáticas
(procesador de texto, hoja de cálculo,
programa de presentación, sistema de
gestión de base de datos...), u otros tipos
de software especializados como software
médico, software educativo, editores de
música, programas de contabilidad, etc.
 
 
Software de aplicación
Las funciones de una aplicación dependen
de su propósito, según el cual pueden
clasificarse en dos categorías:

Programas básicos (o utilitarios)

Son aplicaciones cuyo propósito es


mejorar, en alguna forma, el desempeño
del ordenador.
 
Programas de productividad
 
Son aplicaciones cuyo propósito es facilitar,
agilizar y mejorar para el usuario, la
ejecución de ciertas tareas.
 
Algunos programas de productividad

Procesadores de texto: Aplicaciones
diseñadas para editar y/o procesar de
texto, logrando documentos de alta
calidad.

Hojas de cálculo: Aplicaciones
especialmente diseñadas para introducir,
calcular, manipular y analizar conjuntos de
números.

Presentaciones
automatizadas: Aplicaciones que
permiten al usuario crear y editar
presentaciones atractivas, incluyendo
imágenes y sonidos.

Navegadores de Internet: Aplicaciones
diseñadas para proveer acceso a Internet,
sus servicios y sus recursos.

Administradores de bases de
datos: Aplicaciones diseñadas para
acceder, almacenar y procesar grandes
colecciones de datos, en una forma
eficiente.

Desarrolladores de sitios
web: Aplicaciones que brindan al usuario
las herramientas necesarias para diseñar,
crear, editar y publicar páginas y sitios
Web.
9 Clasificación del Software. El Software es el
soporte lógico e inmaterial que permite que la
computadora pueda desempeñar tareas
inteligentes, dirigiendo a los componentes físicos
o hardware con instrucciones y datos a través de
diferentes tipos de programas. ... Software de
Sistema. Software de Aplicación.
10 El software del sistema es el conjunto
de programas indispensables para que la
máquina funcione; se denominan
también programas del sistema.
...
El software (Los programas)
 Sistema operativo : DOS y WINDOWS.
 Editores de texto: EDIT , PADWORD.
 Compiladores / interpretes (lenguajes de
programación) y.
 Programas de utilitarios.

11 Un programa informático o programa de
computadora es una secuencia de
instrucciones, escritas para realizar una tarea
específica en una computadora.1 Este dispositivo
requiere programas para funcionar, por lo
general, ejecutando las instrucciones del
programa en un procesador central.2 El programa
tiene un formato ejecutable que la computadora
puede utilizar directamente para ejecutar las
instrucciones. El mismo programa en su formato
de código fuente legible para humanos, del cual
se derivan los programas ejecutables (por
ejemplo, compilados), le permite a un
programador estudiar y desarrollar
sus algoritmos. Una colección de programas de
computadora y datos relacionados se conoce
como software.
12 Estructura general de un programa. Un
programa puede considerarse como una
secuencia de acciones (instrucciones) que
manipulan un conjunto de objetos (datos).
 
Bloques de un programa
 Bloque de declaraciones: en él se
especifican todos los objetos que utiliza el
programa (constantes, variables, tablas,
registros, archivos, etc.).
 Bloque de instrucciones: constituido por el
conjunto de operaciones que se han de realizar
para la obtención de los resultados deseados.
Partes principales de un programa
Dentro del bloque de instrucciones de un
programa se pueden diferenciar tres partes
fundamentales. En algunos casos, estas tres
partes están perfectamente delimitadas, pero en
la mayoría sus instrucciones quedan
entremezcladas a lo largo del programa, si bien
mantienen una cierta localización geométrica
impuesta por la propia naturaleza de las mismas.
 Entrada de datos: la constituyen todas
aquellas instrucciones que toman datos de un
dispositivo externo, almacenándolos en la
memoria central para que puedan ser
procesados.
 Proceso o algoritmo: está formado por las
instrucciones que modifican los objetos a partir
de su estado inicial hasta el estado final,
dejando éstos disponibles en la memoria
central.
 Salida de resultados: conjunto de
instrucciones que toman los datos finales de la
memoria central y los envían a los dispositivos
externos.
Clasificación de las Instrucciones.

Una instrucción se caracteriza por un estado


inicial y final del entorno. El estado final de una
instrucción coincide con el inicial de la siguiente.
No siempre una instrucción modifica el entorno,
pues su cometido puede limitarse a una mera
observación del mismo o a un cambio en el orden
de ejecución de otras. Las instrucciones pueden
ser:
 Instrucciones de declaración: Se utilizan
en aquellos lenguajes de programación que no
tienen declaración explícita de los objetos. Su
misión consiste en indicar al procesador que
reserve espacio en la memoria para un objeto
del programa, indicando asimismo su nombre,
tipo y características.
 Instrucciones primitivas: Son aquellas que
ejecuta el procesador de modo inmediato. Las
principales son asignación, entrada y salida.
 Instrucción de asignación: Consiste en
calcular el valor de una expresión y
almacenarlo en una variable. En algún lenguaje
es preciso calcular previamente el resultado de
la expresión, pues la instrucción de asignación
sólo permite el movimiento de un valor simple.
 Instrucción de entrada: Toma un dato de un
dispositivo de entrada y lo almacena en un
objeto. En algún lenguaje, los datos de entrada
no provienen de un dispositivo externo, sino
que han sido colocados previamente en el
mismo programa.
 Instrucción de salida: Toma el valor de una
expresión u objeto y lo lleva a un dispositivo
externo.
 Instrucciones compuestas: Son aquellas
que el procesador no puede ejecutar
directamente, sino que realiza una llamada a
un subprograma, subrutina o párrafo.
 Instrucciones de control: Son aquellas de
controlar la ejecución de otras instrucciones.
 Instrucción alternativa: Controla la
ejecución de unas u otras instrucciones según
una condición. Puede ser simple o doble (SI y
SINO).
 Instrucción de salto incondicional: Altera
la secuencia normal de ejecución de un
programa, continuando la misma en la línea
indicada en la propia instrucción (IR A).
 Instrucción de salto condicional: Altera la
secuencia normal de ejecución de un programa
únicamente en el caso de cumplimiento de una
condición asociada a la propia instrucción
(SI ... IR A).
 Instrucción repetitiva: Hace que se repitan
una o varias instrucciones un número
determinado o indeterminado de veces (PARA,
MIENTRAS, HASTA e ITERAR).
Elementos auxiliares de un programa
Son variables que realizan funciones específicas
dentro de un programa, y por su gran utilidad,
frecuencia de uso y peculiaridades, conviene
hacer un estudio separado de las mismas. Las
más importantes son:
 Contadores: Un contador es un campo de
memoria cuyo valor se incrementa en una
cantidad fija, positiva o negativa, generalmente
asociado a un bucle. Toma un valor inicial
antes de comenzar su función, y cada vez que
se realiza el suceso, incrementa su valor. Se
utiliza en los siguientes casos:
o Para contabilizar el número de veces que
es necesario repetir una acción (variable de
control de un bucle).
o Para contar un suceso particular
solicitado por el enunciado del problema
(asociado a un bucle o independientemente).
 Acumuladores: Un acumulador es un
campo de memoria cuyo valor se incrementa
sucesivas veces en cantidades variables. Se
utiliza en aquellos casos en que se desea
obtener el total acumulado de un conjunto de
cantidades, siendo preciso inicializarlo con el
valor 0. También en las situaciones en que hay
que obtener un total como producto de distintas
cantidades se utiliza un acumulador,
debiéndose inicializar con el valor 1.
 Interruptores (switches): Un interruptor es
un campo de memoria que puede tomar dos
valores exclusivos (0 y 1, -1 y 1, FALSO y
CIERTO, etc.). Se utiliza para:
o Recordar en un determinado punto de un
programa la ocurrencia o no de un suceso
anterior, para salir de un bucle o para decidir
en una instrucción alternativa qué acción
realizar.
o Para hacer que dos acciones diferentes
se ejecuten alternativamente dentro de un
bucle.
Tipos de programas
Un programa, por lo general, estará compuesto
por una secuencia de acciones, algunas de las
cuales serán alternativas o repetitivas. En
determinados programas sencillos, no se da esta
mezcla de acciones, en cuyo caso se pueden
clasificar como sigue:
 Programas lineales: consisten en una
secuencia de acciones primitivas (su ejecución
es lineal en el orden en que han sido escritas).
 Programas alternativos: consisten en el
anidamiento de acciones alternativas (las
tablas de decisión se realizan mediante
programas alternativos).
 Programas cíclicos: son aquellos en los que
un conjunto de acciones se repiten un número
determinado o indeterminado de veces (un
programa de este tipo se denomina bucle).
Otra clasificación relativa a la aplicación
desarrollada por el programa es:
 Programas de gestión: se caracterizan por
el manejo de gran cantidad de datos con pocos
cálculos (resuelven problemas de gestión).
 Programas técnicos-científicos: al
contrario que los anteriores, realizan gran
cantidad de cálculos con pocos datos
(revuelven problemas matemáticos, físicos,
etc.).
 Programas de diseño (CAD): se
caracterizan por la utilización de técnicas
gráficas para resolver problemas de diseño.
 Programas de simulación: intentan reflejar
una situación real, para facilitar su estudio.
 Programas educativos (EAO): utilizan las
ventajas del ordenador para la docencia.
 Programas de inteligencia artificial: se
utilizan para simular el razonamiento humano.
Lenguajes de programación.
Un lenguaje de programación es una notación
para escribir programas, es decir, para describir
algoritmos dirigidos al computador. Un lenguaje
viene dado por una gramática o conjunto de
reglas que se aplican a un alfabeto. El primer
lenguaje de programación que se utilizó fue el
lenguaje máquina, el único que entiende
directamente el computador, cuyo alfabeto es el
binario, formado por los símbolos 0 y 1. El
lenguaje ensamblador, resultó de la evolución del
lenguaje máquina, al sustituir las cadenas de
símbolos binarios por nemotécnicos.
Posteriormente surgieron los lenguajes de alto
nivel, cuya evolución es:
 1955: FORTRAN.
 1960: LISP, ALGOL, COBOL.
 1965: APL, SNOBOL, PL/1, BASIC.
 1970: PROLOG, ALGOL68, SIMULA67.
 1975: C, PASCAL.
 1980: MODULA-2, LIS, EUCLID.
 1985: ADA.
Los lenguajes de programación pueden
clasificarse de la siguiente manera:
 Según su parecido con el lenguaje natural:
o Bajo nivel: lenguajes máquina y
ensambladores.
o Alto nivel: todos los demás.
 Según la estructura de los programas:
o Convencionales o línea a línea:
ensambladores, FORTRAN, BASIC, COBOL,
etc.
o Estructurados: Algol, PL/I, Pascal, Ada,
COBOL estructurado, etc.
 Según la realización de los programas:
o Funcionales: Lisp, Prolog, APL, etc.
o Imperativos: la mayoría.
 Según el tipo de proceso:
o Interactivos o
conversacionales: BASIC, Pascal, APL, etc.
o Orientados al proceso por lotes (batch):
COBOL, FORTRAN, PL/I, etc. factorial.
13 Los lenguajes informáticos engloban a los
lenguajes de programación y a otros más, como
por ejemplo HTML (lenguaje para el marcado de
páginas web que no es propiamente un lenguaje
de programación, sino un conjunto de
instrucciones que permiten estructurar el
contenido de los documentos)
16 El lenguaje de máquina o
código máquina es el sistema de códigos
directamente interpretable por un circuito micro
programable, como el microprocesador de una
computadora o el micro controlador de un
autómata.
17 Un lenguaje de programación de
características de bajo nivel o de primera
generación, es aquel en el que sus instrucciones
ejercen un control directo sobre el hardware y
están condicionados por la estructura física de
las computadoras que lo soportan.
18 Un lenguaje de programación de alto
nivel se caracteriza por expresar los algoritmos
de una manera adecuada a la capacidad
cognitiva humana, en lugar de la capacidad con
que los ejecutan las máquinas. ... Se clasifican
como lenguajes procedimentales o lenguajes de
bajo nivel.
19 El software de traducción abarca tecnologías
tales como la traducción automática, la
corrección ortográfica, el procesamiento de
textos, la memoria de traducción y la gestión
terminológica. Hoy en día existen varios tipos de
software de traducción disponibles en el
mercado. Las corporaciones y las empresas de
traducción generalmente necesitan que sus
traductores utilicen estas herramientas cuando
trabajan en sus proyectos de localización.
20 Un traductor es un programa que tiene como
entrada un texto escrito en un lenguaje (lenguaje
fuente) y como salida produce un texto escrito en
un lenguaje (lenguaje objeto) que preserva el
significado de origen. Ejemplos
de traductores son los ensambladores y los
compiladores.
21 El lenguaje ensamblador o assembler (en
inglés: assembler language y la
abreviación asm) es un lenguaje de
programación de bajo nivel. Consiste en un
conjunto de mnemónicos que representan
instrucciones básicas para
los computadores, microprocesadores, microcont
roladores y otros circuitos
integrados programables. Implementa una
representación simbólica de los códigos de
máquina binarios y otras constantes necesarias
para programar una arquitectura de procesador y
constituye la representación más directa
del código máquina específico para cada
arquitectura legible por un programador.
24 Un virus o virus informáticon. 1 es
un software que tiene por objetivo de alterar el
funcionamiento normal de cualquier tipo de
dispositivo informático, sin el permiso o el
conocimiento del usuario principalmente para
lograr fines maliciosos sobre el dispositivo. Los
virus, habitualmente, reemplazan archivos
ejecutables por otros infectados con el código de
este. Los virus pueden destruir, de manera
intencionada, los datos almacenados en una
computadora, aunque también existen otros más
inofensivos, que solo producen molestias o
imprevistos.

También podría gustarte