Fundamentos Esenciales del Software: Clasificación, Licencias y Ciclo de Vida
Clasificado en Informática
Escrito el en
español con un tamaño de 4,81 KB
Componentes Fundamentales del Ordenador
El ordenador se compone de dos elementos esenciales:
- El Hardware: Componentes físicos que se pueden ver y tocar (ejemplo: teclado).
- El Software: Parte lógica del ordenador que no se puede tocar. Es el conjunto de programas y aplicaciones que realizan distintas tareas.
El Software del Ordenador
El software engloba todos aquellos programas y datos almacenados en un ordenador. Estos programas son los encargados de dar instrucciones para realizar tareas específicas con el hardware.
El software se clasifica generalmente en dos categorías principales para su estudio:
- Según el tipo de tareas que realiza.
- Según el método de distribución.
Clasificación del Software según el Tipo de Tareas
Se distinguen tres tipos principales de software basados en la función que cumplen dentro del sistema:
- Software de Sistema: Permite que el hardware funcione correctamente. Está formado por programas que facilitan la administración de la parte física o los recursos del ordenador (ejemplo: sistemas operativos).
- Software de Aplicación: Lo forman los programas que ayudan al usuario a realizar tareas específicas en cualquier campo susceptible de ser automatizado o asistido (ejemplo: procesadores de texto, navegadores).
- Software de Programación o Desarrollo: Es el que proporciona al programador las herramientas necesarias para ayudar a escribir programas informáticos y a usar diferentes lenguajes de programación de forma práctica (ejemplo: compiladores, entornos de desarrollo integrados - IDE).
Clasificación del Software según el Método de Distribución
Esta clasificación se centra en cómo el software es comercializado o puesto a disposición del usuario. Entre estos se encuentran:
- Programas Enlatados (Comerciales): Software desarrollado por compañías y vendido principalmente a través de distribuidores.
- Software de Dominio Público: Se ofrece sin costo alguno y sin restricciones de derechos de autor.
- Shareware: Modalidad de distribución que permite al usuario evaluar el producto de forma gratuita por un tiempo específico. Su uso profesional o continuado generalmente conlleva el pago de una pequeña tasa.
- Freeware: Es un software que se distribuye sin cargo. Aunque a veces se incluye el código fuente, no es lo usual. Suele incluir una licencia que permite su redistribución, pero con algunas restricciones, como la prohibición de modificar la aplicación.
También existen otras categorías de distribución, como el Adware (software financiado por publicidad), el Software Multimedia y el Software de Uso Específico.
Licencias de Software
Definición de Licencia de Software
Una licencia de software es un contrato legal que se establece entre el desarrollador del software (sometido a propiedad intelectual y derecho de autor) y el usuario. En este contrato se definen con precisión los derechos y deberes de ambas partes respecto al uso, copia y distribución del producto.
El Software Libre
En el contexto del Software Libre, el autor cede una serie de libertades básicas al usuario, en el marco de una licencia específica. Estas licencias establecen las famosas Cuatro Libertades Esenciales, siendo un ejemplo clave la "Libertad de distribuir copias a otros usuarios".
Ciclo de Vida del Software (CVS)
El Ciclo de Vida del Software es el conjunto de actividades que deben planificarse y gestionarse para asegurar un producto final que dé solución a las necesidades de todas aquellas personas que lo van a utilizar.
Definición Formal
El CVS es un marco de referencia que contiene los procesos, las actividades y las tareas involucradas en el desarrollo, la explotación y el mantenimiento de un producto software.
Etapas Comunes del Ciclo de Vida
Usualmente, se consideran las siguientes etapas fundamentales:
- Análisis de Requisitos: Definición de lo que el sistema debe hacer.
- Diseño del Sistema: Estructuración de la arquitectura del software.
- Implementación del Software: Codificación del sistema.
- Aplicación y Pruebas: Verificación de que el software cumple con los requisitos.
- Entrega y Mantenimiento: Despliegue y soporte continuo del producto.