Beruflich Dokumente
Kultur Dokumente
Software es una palabra proveniente del inglés, que en español no posee una traducción
adecuada al contexto, por lo cual se la utiliza asiduamente sin traducir y así fue admitida
por la Real Academia Española (RAE). Aunque puede no ser estrictamente lo mismo,
suele sustituirse por expresiones tales como programas (informáticos) o aplicaciones
(informáticas) o soportes lógicos.
Software es lo que se denomina producto en ingeniería de software.
Definición de software
Existen varias definiciones similares aceptadas para software, pero probablemente la más
formal sea la siguiente:
Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y
datos asociados, que forman parte de las operaciones de un sistema de computación.
Extraído del estándar 729 del IEEE7
Considerando esta definición, el concepto de software va más allá de los programas de
computación en sus distintos estados: código fuente, binario o ejecutable; también su
documentación, los datos a procesar e incluso la información de usuario forman parte del
software: es decir, abarca todo lo intangible, todo lo «no físico» relacionado.
El término software fue usado por primera vez en este sentido por John W. Tukey en
1957. En la ingeniería de software y las ciencias de la computación, el software es toda la
información procesada por los sistemas informáticos: programas y datos.
El concepto de leer diferentes secuencias de instrucciones (programa) desde la memoria
de un dispositivo para controlar los cálculos fue introducido por Charles Babbage como
parte de su máquina diferencial. La teoría que forma la base de la mayor parte del
software moderno fue propuesta por Alan Turing en su ensayo de 1936, «Los números
computables», con una aplicación al problema de decisión.
Clasificación del software
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 tipos:
La creación del ciclo de vida del software se origina como respuesta al alto costo que
conlleva la rectificación de errores que han sido tardíamente detectados en la fase de
implementación. El ciclo de vida del software permite que los errores se detecten lo
antes posible, permitiendo a los desarrolladores trabajar de una forma más eficiente,
asegurando mayor calidad, en plazos de tiempo más reducidos.
Entre los procesos que se ven implicados en el ciclo vida del software, encontramos:
Definición de objetivos
Precisa la finalidad del proyecto.
Diseño general
Revisa los requisitos generales para la arquitectura de la aplicación.
Diseño en detalle
Define cada subconjunto de la aplicación.
Programación
Es la implementación de un lenguaje de programación para crear las funciones
establecidas en la etapa de diseño.
Integración
Revisa que los distintos módulos se incorporen a la aplicación.
Prueba beta
Garantiza que el software cumple con las especificaciones iniciales.
Documentación
Sirve para recopilar la información necesaria para los usuarios de la aplicación y
desarrollos futuros.
Implementación
Es la fase final, donde el software es utilizado para los ambientes que fue diseñado.
Modelo cascada
Modelo V
La diferencia entre estos dos modelos radica en la relación de cada proceso con el
siguiente. Mientras que en el modelo cascada un proceso puede condicionar el proceso
anterior, generando modificaciones. El modelo V verifica y prueba cada proceso, cerrando
cada fase antes de pasar a la siguiente.
Cada modelo implica ventajas distintas, entre ellas podemos mencionar que el modelo
cascada, al ser lineal, es más sencillo de implementar y requiere menos recursos para cada
etapa. Mientras que el modelo V, hace más cómoda la repetición de las actividades del
proceso, y las pruebas en cada fase ayudan a corregir errores sin tener que llegar a la fase
final para ser notificados de ellos.