Actualizado el 05/07/2023
Un software es un programa lógico del ordenador que funciona de manera virtual siguiendo una serie de instrucciones de diferentes lenguajes de programación para lograr un objetivo, cuenta con una interfaz para hacer más fácil su ejecución por parte del usuario.
Este tipo de soporte lógico hace que las personas puedan relacionarse con las computadoras del modo que el usuario le manda una tarea y las maquinas las ejecutan mediante algún software, ya que si este tipo de maquinas como otras de otro ámbito extra-informático, no poseen algún algoritmo que pueda guiarlos, serían como unas cajas vacías.
El software tiene varias aplicaciones en el mundo informático, como editores de texto (Microsoft Word, Notepad, Wordpad), reproductores de música y video (Wmplayer, Winamp, PowerDVD), P2P (Ares, Emule, LimeWire), videojuegos, clientes de mensajería (Yahoo, MSN), base de datos (MySQL, Oracle), educación, calculo (Derive, Excel), empresarial (Minitab, Spss), diseño gráfico (PhotoShop, 3dStudio), diseño web, compresores (WinRar, WinZip), sistemas operativos (Windows XP, Linux), etc.
El software para el desarrollo de programas mediante el uso de lenguajes (Java, C++, VBasic) cuenta con pequeños programas, como depuradores, compiladores, enlazadores, editores de texto, intérpretes y entre otros más que incluyan algunos códigos para seguir programando.
Según la definición de la palabra “Software”. por los estándares IEEE, un software es aquel sistema que está formado por un conjunto de pequeños programas y algoritmos compuestos por procedimientos, reglas, documentación y algunos datos que se necesitan para operar un sistema.
Esta definición trata de decir que el software es un medio abstracto y como tal, aborda objetos intangibles compuestos en códigos, como: binario, ejecutable o fuente. Esta definición la hiso un estadístico y bachiller en ciencias llamado John W. Tukey en 1957.
Debido a la diversidad de programas existentes, la dificultad de su creación esta en un rango muy amplio, ya que la creación de un sistema operativo abarca muchas ramas, muchos encargados, su interfaz no debe sobrecargar los recursos de cualquier sistema ordinario y que a su vez debe ser compatible con otros programas más. En cambio existen otros programas o aplicaciones que son muy fáciles de programas y que hasta un solo programador se puede encargar.
Para aproximar el nivel de dificultad se realizan varias herramientas aprendidas en la enseñanza pero existe un modelo llamado COCOMO que puede estimar el coste del desarrollo de algún software y ubicarlo en un nivel bajo, intermedio o alto, basándose en algunos parámetros como las líneas de código, cantidad de personas para realizar el proyecto y otras más para continuar el mismo o el tiempo que se invirtió, y que como resultado final sale el valor numérico en horas/hombre y salario/mes.
Para el desarrollo de algún software se necesita alunas reglas para que el programa no caiga ya que menos del 30% de los programas que se van creando llegan a ser exitosos. Es por eso que el proceso de desarrollo implica cumplir ciertas tareas mínimas, como: Captura, Elicitación (recojo de información de la fuente), Especificación y ERS (Análisis de requisitos), Diseño, Codificación y pruebas, Instalación y Producción y por último el mantenimiento. Esta secuencia de pasos es relativa debido a que algunos programas no necesitan tanto seguimiento.
Image: Giovanni Sades / FreeDigitalPhotos.net