El Software
El "software" por definición es la parte blanda o lo que no vemos de un sistema informático (programas, aplicaciones, procesador y/o editor de textos, etc.), y es un contraste del "hardware" o parte física. El software es toda información procesada por los sistemas informáticos que hacen posible la realización de tareas específicas. 

El Software Como Programa

Consiste en un código, en un lenguaje de máquina específico para un procesador individual. El código es una secuencia de instrucciones ordenadas que cambian el estado del hardware de una computadora.

El software puede distinguirse en tres categorías: software de sistema, software de programación y aplicación de software. Dicha distinción es arbitraria ya que muchas veces un software puede caer en varias categorías.





Historia Del Software
Primera Era

1950 a 1965     En sus  primeros años el software se contemplaba como un añadido,  para el que existían pocos métodos sistemáticos. El desarrollo del software se realizaba  sin ninguna planificación, hasta que   descalabro y costos comenzaron a correr. Los programadores trataban de hacer las cosas bien, y con un esfuerzo heroico  a menudo salían con éxito. Los problemas a ser resueltos eran principalmente de naturaleza técnica, el énfasis estaba en expresar algoritmos conocidos eficazmente en algún lenguaje de programación.
En estos primeros años lo normal era que el hardware fuera de propósito general. Por otra parte, el software se diseñaba a medida para cada aplicación y tenía una distribución relativamente pequeña.

Segunda Era
1965 a 1972
La evolución de los sistemas de computadora se extiende desde la mitad de la década de los sesenta hasta finales de los setenta. 
La multiprogramación y los sistemas multiusuario introdujeron nuevos conceptos de interacción hombre máquina y las técnicas interactivas abrieron un nuevo mundo de aplicaciones y niveles de clasificación del hardware y software. Los sistemas de tiempo real podían recoger, analizar y transformar datos de múltiples fuentes, controlando así los procesos y produciendo salidas en mili segundos en lugar de en minutos.        
 Los avances en los dispositivos de almacenamiento en línea condujeron a la primera generación de sistemas de gestión de bases de datos.
Tercera Era


1972-1989 

El sistema distribuido, múltiples computadoras, cada una ejecutando funciones concurrentemente y comunicándose con alguna otra, incrementó notablemente la complejidad de los sistemas informáticos, las redes de área local y global, las comunicaciones digitales de alto ancho de banda y creciente demanda de acceso “instantáneo” a los datos, supusieron una fuerte presión sobre los desarrolladores del software.
Esta etapa se  caracterizó por la llegada y el amplio uso de los microprocesadores.


Cuarta Era

1989 a la fecha el impacto de las  computadoras y del software es colectivo. Potentes máquinas personales controladas por sistemas operativos sofisticados, en redes globales y locales, acompañadas por aplicaciones de software avanzado se han convertido en la norma. Las arquitecturas informáticas están cambiando de entornos centralizados de grandes computadoras a entornos descentralizados cliente/servidor. Las redes de información en todo el mundo proporcionan una infraestructura que iguala a expertos y políticos en pensar sobre una “superautopista de información” y una “conexión del ciberespacio”. De hecho internet se puede observar como un “software” al que pueden acceder usuarios individuales.
Ciclo de Vida del Software 

El término ciclo de vida del software describe el desarrollo de software, desde la fase inicial hasta la fase final. El propósito de este programa es definir las distintas fases intermedias que se requieren,  el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura de que los métodos utilizados son apropiados.
  
El ciclo de vida básico de un software consta de los siguientes procedimientos:
  • Definición de objetivos: definir el resultado del proyecto y su papel en la estrategia global.
  • Análisis de los requisitos y su viabilidad: recopilar, examinar y formular los requisitos del cliente y examinar cualquier restricción que se pueda aplicar.
  • Diseño general: requisitos generales de la arquitectura de la aplicación.
  • Diseño en detalle: definición precisa de cada subconjunto de la aplicaci
  • Programación (programación e Implementación) : es  un lenguaje de programación para crear las funciones definidas durante la etapa de diseño.
  • Prueba de unidad: prueba individual de cada subconjunto de la aplicación para garantizar que se implementaron de acuerdo con las especificaciones.
  • Integración: para garantizar que los diferentes módulos se integren con la aplicación. Éste es el propósito de la prueba de integración que está cuidadosamente documentada.


Clasificación  Del Software

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.

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


Software del sistema es responsable de administrar una variedad de componentes de hardware independientes, por lo que pueden trabajar juntos armoniosamente. Su propósito es aligerar el software de aplicación programador de los detalles complejos de la computadora en particular se utiliza, incluyendo tales accesorios como dispositivos de comunicaciones, impresoras, lectores de dispositivo, pantallas y teclados y también para particionar los recursos del equipo como el tiempo de procesador y memoria en forma segura y estable.


Software de Aplicación

Software de aplicación está desarrollado para realizar en cualquier tarea que se beneficia de la computación. Es un conjunto de programas que permite al equipo realizar un trabajo de procesamiento de datos específicos para el usuario. Es una categoría amplia y abarca el software de muchos tipos, incluyendo el navegador de Internet utilizado para mostrar esta página.
  
Software Propietario 

Es cualquier programa informático en el que el usuario tiene limitaciones para usarlo, modificarlo o redistribuirlo (esto último con o sin modificaciones). También es llamado código cerrado, software no libre, privado o privativo. Para la Fundación para el Software Libre (FSF) este concepto se aplica a cualquier software que no es libre o que sólo lo es parcialmente ( semi libre ), sea porque su uso, redistribución o modificación está prohibida, o requiere permiso expreso del titular del software.








Software Libre 
Es un programa  o secuencia de instrucciones usada por un dispositivo de procesamiento digital de datos para llevar a cabo una tarea específica o resolver un problema determinado, sobre el cual su dueño renuncia a la posibilidad de obtener utilidades por las licencias, patentes, o cualquier forma que adopte su derecho de propiedad sobre él (o sea, el software libre puede estar licenciado, o protegido por una patente autoral ), por lo que puede utilizarse o transferirse sin pago alguno al licenciarte, o a su creador.


Software de Programación
 son aquellas herramientas que un programador utiliza para poder desarrollar programas informáticos. Para esto, el programador se vale de distintos lenguajes de programación. Como ejemplo se pueden tomar compiladores, programas de diseño asistido por computador, paquetes integrados,editores de texto, enlazadores,depuradores, intérpretes, entre otros



Software General o de uso Especifico 

El software para uso general ofrece la estructura para un gran número de aplicaciones empresariales, científicas y personales. El software de hoja de cálculo, de diseño asistido por computadoras(CAD),de procesamiento de texto, de manejo de Bases de Datos, pertenece a esta categoría. La mayoría de software para uso general se vende como paquete; es decir, con software y documentación orientada al usuario.  http://www.angelfire.com/electronic2/softwareinf/softwaredeusogeneral.html

 Software En Venezuela 

 En Venezuela desde Febrero del año 1999, se ha considerado  estratégicamente la formulación de  prioritario del Software Libre como primer paso para alcanzar esos ideales, ya que la adopción del mismo conforma una de las bases  para constituir un desarrollo tecnológico orientado al desarrollo social y la eficiencia productiva, gracias a la posibilidad que brinda de socializar tanto los productos como el uso  de  esos productos que hayan sido desarrollados bajo estos estándares propios del Software Libre.
Por las razones antes expuestas, nuestro país ha marcado una pauta importante  en América Latina, al reconocer, desde la propia Constitución de la República Bolivariana de Venezuela a través del Decreto  N°3.390, iniciar  importantes  esfuerzos orientados a asumir el uso y aplicación prioritaria del Software Libre desarrollado con Estándares Abiertos en la Administración Pública Venezolana, como instrumento para alcanzar nuestra soberanía tecnológica.Y para fortalecer cada día más nuestro orgullo como Venezolanos, debemos hacer referencia  también  a la distribución venezolana GNU/Linux llamada  Canaima, la cual fue liberada por el Centro Nacional de Tecnologías de Información (CNTI), ente adscrito al Ministerio del Poder Popular para Ciencia, Tecnología e Industrias Intermedias, en fecha del mes de Octubre del año 2008 cuando  publicó la versión 2.0 de este proyecto que en principio fue adaptado para satisfacer las necesidades ofimáticas de la Administración Pública, en cumplimiento con el referido Decreto N° 3.390.


Decreto N* 3390

El decreto 3390 indica:

"Artículo 1.

La Administración Pública Nacional empleará prioritariamente Software Libre desarrollado con Estándares Abiertos, en sus sistemas, proyectos y servicios informáticos. A tales fines, todos los órganos y entes de la Administración Pública Nacional iniciarán los procesos de migración gradual y progresiva de éstos hacia el Software Libre desarrollado con Estándares Abiertos."
"Artículo 3. del decreto dicta que: "En los casos que no se puedan desarrollar o adquirir aplicaciones en Software Libre bajo Estándares Abiertos, los órganos y entes de la Administración Pública Nacional deberán solicitar ante el Ministerio de Ciencia y Tecnología autorización para adoptar otro tipo de soluciones bajo los normas y criterios establecidos por ese Ministerio.
"decreto: 
"Artículo 5. El Ejecutivo Nacional fomentará la investigación y desarrollo de software bajo modelo Software Libre desarrollado con Estándares Abiertos,
procurando incentivos especiales para desarrolladores."
decreto: 
"Artículo 8. El Ejecutivo Nacional promoverá el uso generalizado del Software Libre desarrollado con Estándares Abiertos en la sociedad, para lo cual
desarrollará mecanismos orientados a capacitar e instruir a los usuarios en la utilización del Software Libre desarrollado con Estándares Abiertos."
                                  Piratería de Software 

Cuando un software es pirateado, los consumidores, los creadores del mismo y los vendedores son perjudicados. La piratería de software aumenta el riesgo de que la computadora del consumidor sea dañada por un software defectuoso, malicioso o infectado con virus u otras amenazas a su seguridad y privacidad.técnico. 
El software pirateado normalmente tiene documentación inadecuada,que no permite a los consumidores usufructuar todos los beneficios del paquete de software.Además de eso, los consumidores no tienen la posibilidad de recibir versiones actualizadas del programa y soporte técnico, que están disponibles para los usuarios legítimamente registrados. 

Los creadores pierden sus beneficios a causa de la piratería, tanto de productos actuales como de programas futuros. Eso ocurre ya que, cuando se vende un software la mayoría de los creadores invierten una parte de la ganancia en investigación y desarrollo futuro para las mejoras del mismo paquete de software. Cuando esos programas son pirateados, está claro que el desarrollo de nuevas versiones se interrumpe y eso termina perjudicando a toda la cadena. 

                                                                Tipo de piratería 

Piratería de usuario final
La piratería de usuario final tiene lugar cuando una única copia con licencia de un software es instalada en diferentes computadoras. 
Otra forma común de piratería de usuario final ocurre cuando se utiliza una versión "crackeada" del software. 
Un software crackeado es aquel en el que el usuario ingresa una clave de registro (que invalida la protección de copia), o códigos clave generados ilegalmente que desbloquean una versión limitada. 
Piratería de revendedor 
La piratería de revendedor ocurre cuando un revendedor distribuye copias de un único software a diferentes clientes; eso se da principalmente con los sistemas operativos y softwares precargados en computadoras nuevas.El usuario no recibe los discos, manuales y registro del software. La piratería de revendedor acontece también cuando se venden versiones falsificadas de software, imitando embalajes, sellos y documentos del software original. Los signos que indican piratería de revendedor son varios usuarios con el mismo número de serie, falta de documentación original, una configuración incompleta y la ausencia o insuficiencia de documentación original.
Violación de marca registrada 
Esta infracción sucede cuando una empresa no acreditada se presenta como negociante autorizado, técnico, proveedor de soporte o revendedor, o usa indebidamente un nombre de marca registrada.