El software es una
palabra que proviene del idioma inglés, pero que gracias a la masificación de
uso, ha sido aceptada por la Real Academia Española, ya que en español no
posee una traducción adecuada al contexto. El término software fue usado por
primera vez en este sentido por John W. Tukey en 1957.
El software es el
conjunto de programas, documentos, datos, procedimientos y rutinas que
permiten realizar las tareas asignadas al computador. Un programa es un
conjunto de instrucciones dadas a la computadora para que ésta las ejecute de
manera secuencial, es decir una detrás de la otra. El software se compone de
secuencias de órdenes que indican al hardware que debe realizar.
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.
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.
Clasificación del software
El software se clasifica en tres grandes tipos:
Clasificación del software
El software se clasifica en tres grandes tipos:
Software de sistema: Se
encarga de controlar, integrar y administrar los componentes de hardware de un
sistema informático, proporcionando un entorno amigable para que los usuarios
puedan ejecutar otras aplicaciones de software. Su objetivo es desvincular
adecuadamente al usuario y al programador de los detalles del sistema
informático. El software de sistema incluye: Sistemas operativos, controladores
de dispositivos, herramientas de diagnóstico, herramientas de corrección y
optimización, servidores y utilidades.
Software de
programación: Es el conjunto de herramientas que permiten al programador escribir
programas informáticos, usando diferentes alternativas y lenguajes de
programación, de una manera práctica. El software de programación es una
subcategoría del software de sistema, pero por su demanda cada vez mayor se
trata como una categoría separada, al nivel del software de aplicación y el
software sistema. El software de programación
incluye: Editores de texto, compiladores, intérpretes, enlazadores, depuradores
y entornos de desarrollo integrados (IDE).
Software de aplicación:
Utiliza las capacidades del computador para realizar una tarea específica. El
software de aplicación es capaz de manipular texto, números, gráficos y
archivos de audio y video. El software de aplicación se utiliza muchas veces
para fines comerciales, encontrados en el campo educativo, de negocios y
médico. El software de aplicación incluye: Aplicaciones para control de
sistemas y automatización industrial, aplicaciones ofimáticas, software educativo,
software empresarial, bases de datos, telecomunicaciones, videojuegos, software médico,
software de cálculo numérico y simbólico, software de diseño
asistido (CAD), software de control numérico (CAM).
Proceso de desarrollo de software
El proceso de desarrollo puede involucrar numerosas y variadas tareas, desde lo administrativo, pasando por lo técnico y hasta la gestión y el gerenciamiento. Pero, casi rigurosamente, siempre se cumplen ciertas etapas mínimas, que generalmente son las siguientes: captura, elicitación, especificación y análisis de requisitos (ERS), diseño, codificación, pruebas (unitarias y de integración), instalación y paso a producción, mantenimiento.
Modelos de proceso o ciclo de vida
Para cada una de las fases o etapas del ciclo de vida, existen sub-etapas. El modelo de proceso o modelo de ciclo de vida utilizado para el desarrollo, define el orden de las tareas o actividades involucradas. Entre los más conocidos se puede mencionar: modelo en cascada o secuencial, modelo espiral, modelo iterativo incremental.
Evolución del software
El software evoluciona, en general, generando versiones cada vez más completas, complejas, mejoradas, optimizadas en algún aspecto, adecuadas a nuevas plataformas (sean de hardware o sistemas operativos), etc.
Proceso de desarrollo de software
El proceso de desarrollo puede involucrar numerosas y variadas tareas, desde lo administrativo, pasando por lo técnico y hasta la gestión y el gerenciamiento. Pero, casi rigurosamente, siempre se cumplen ciertas etapas mínimas, que generalmente son las siguientes: captura, elicitación, especificación y análisis de requisitos (ERS), diseño, codificación, pruebas (unitarias y de integración), instalación y paso a producción, mantenimiento.
Modelos de proceso o ciclo de vida
Para cada una de las fases o etapas del ciclo de vida, existen sub-etapas. El modelo de proceso o modelo de ciclo de vida utilizado para el desarrollo, define el orden de las tareas o actividades involucradas. Entre los más conocidos se puede mencionar: modelo en cascada o secuencial, modelo espiral, modelo iterativo incremental.
Evolución del software
El software evoluciona, en general, generando versiones cada vez más completas, complejas, mejoradas, optimizadas en algún aspecto, adecuadas a nuevas plataformas (sean de hardware o sistemas operativos), etc.
Cuando un sistema deja
de evolucionar, eventualmente cumplirá con su ciclo de vida, entrará en
obsolescencia e inevitablemente, tarde o temprano, será reemplazado por un
producto nuevo.
El software evoluciona
sencillamente porque se debe adaptar a los cambios del entorno, sean
funcionales (exigencias de usuarios), operativos, de plataforma o
arquitectura hardware.
Conclusión
El mundo del desarrollo del software está irreconocible si lo comparamos con lo que era hace 20 años, y en 10 años el futuro del desarrollo del software será también totalmente distinto. Pronto todas las nuevas incorporaciones a las empresas sabrán programar algo.
Conclusión
El mundo del desarrollo del software está irreconocible si lo comparamos con lo que era hace 20 años, y en 10 años el futuro del desarrollo del software será también totalmente distinto. Pronto todas las nuevas incorporaciones a las empresas sabrán programar algo.