Contenidos
Ejemplos de software
Un posible cuarto tipo es el software integrado. El software de sistemas embebidos se utiliza para controlar máquinas y dispositivos que no suelen considerarse ordenadores: redes de telecomunicaciones, coches, robots industriales, etc. Estos dispositivos, y su software, pueden conectarse como parte del Internet de las cosas (IoT).2
El desarrollo de software lo llevan a cabo principalmente programadores, ingenieros de software y desarrolladores de software. Estas funciones interactúan y se solapan, y la dinámica entre ellas varía mucho entre los departamentos y comunidades de desarrollo.
Los programadores, o codificadores, escriben el código fuente para programar ordenadores para tareas específicas como la fusión de bases de datos, el procesamiento de pedidos en línea, el enrutamiento de las comunicaciones, la realización de búsquedas o la visualización de textos y gráficos. Los programadores suelen interpretar las instrucciones de los desarrolladores e ingenieros de software y utilizan lenguajes de programación como C++ o Java para llevarlas a cabo.
Los ingenieros de software aplican los principios de la ingeniería para crear software y sistemas que resuelvan problemas. Utilizan un lenguaje de modelado y otras herramientas para idear soluciones que a menudo pueden aplicarse a los problemas de forma general, en lugar de limitarse a resolver un caso o cliente específico. Las soluciones de ingeniería de software se adhieren al método científico y deben funcionar en el mundo real, como los puentes o los ascensores. Su responsabilidad ha crecido a medida que los productos se han vuelto cada vez más inteligentes con la incorporación de microprocesadores, sensores y software. No sólo hay más productos que dependen del software para diferenciarse en el mercado, sino que su desarrollo debe coordinarse con el trabajo de desarrollo mecánico y eléctrico del producto.
Software de utilidad
Utilizar software libre es hacer una elección política y ética que afirma el derecho a aprender y a compartir lo que aprendemos con los demás. El software libre se ha convertido en la base de una sociedad del aprendizaje en la que compartimos nuestros conocimientos de forma que otros puedan aprovecharlos y disfrutarlos.
Actualmente, mucha gente utiliza software privativo que niega a los usuarios estas libertades y beneficios. Si hacemos una copia y se la damos a un amigo, si intentamos averiguar cómo funciona el programa, si ponemos una copia en más de un ordenador de nuestra casa, nos pueden pillar y multar o meter en la cárcel. Eso es lo que dice la letra pequeña del acuerdo de licencia que aceptas cuando utilizas software privativo.
Las corporaciones que están detrás del software privativo suelen espiar tus actividades y restringir que las compartas con otros. Y como nuestros ordenadores controlan gran parte de nuestra información personal y de nuestras actividades diarias, el software privativo representa un peligro inaceptable para una sociedad libre.
¿Qué pasaría si existiera un grupo mundial de programadores éticos con talento que se comprometieran voluntariamente a escribir y compartir software entre ellos y con cualquier otra persona que estuviera de acuerdo en compartirlo? ¿Y si cualquiera pudiera formar parte de esta comunidad y beneficiarse de ella incluso sin ser un experto en informática o sin saber nada de programación? No tendríamos que preocuparnos de que nos pillaran copiando un programa útil para nuestros amigos, porque no estaríamos haciendo nada malo.
Ejemplos de software de aplicación
El análisis de composición de software (SCA) de Black Duck® ayuda a los equipos a gestionar los riesgos de seguridad, calidad y cumplimiento de licencias que se derivan del uso de código abierto y de terceros en aplicaciones y contenedores.
Los avisos de seguridad de Black Duck le ayudan a evitar que las vulnerabilidades de código abierto le pillen desprevenido, tanto en desarrollo como en producción. Además, proporcionan los datos críticos necesarios para priorizar las vulnerabilidades para su corrección, como la información de los exploits, la orientación para la corrección, la puntuación de la gravedad y el análisis de la ruta de llamada. Conozca más sobre la base de datos de vulnerabilidades de Black Duck.
La gestión automatizada de políticas de Black Duck le permite definir por adelantado las políticas de uso del código abierto, los riesgos de seguridad y el cumplimiento de las licencias, y automatizar su aplicación a lo largo del ciclo de vida del desarrollo de software (SDLC) con las herramientas que sus desarrolladores ya utilizan. Más información sobre nuestras integraciones DevOps.
Tanto si su software se suministra a través de la web como si está integrado en un dispositivo de hardware, el cumplimiento de las licencias de código abierto es fundamental. Mitigue el coste y el riesgo de la propiedad intelectual con un mayor conocimiento de las obligaciones de licencia y los requisitos de atribución. Obtenga más información sobre el cumplimiento de las licencias de código abierto.
¿Qué es un software?
El término se originó en el contexto del desarrollo de software para designar un enfoque específico para crear programas informáticos. Hoy en día, sin embargo, “código abierto” designa un conjunto más amplio de valores, lo que llamamos “la manera del código abierto”. Los proyectos, productos o iniciativas de código abierto adoptan y celebran los principios de intercambio abierto, participación colaborativa, creación rápida de prototipos, transparencia, meritocracia y desarrollo orientado a la comunidad.
El “código fuente” es la parte del software que la mayoría de los usuarios no ven nunca; es el código que los programadores pueden manipular para cambiar el funcionamiento de un software, un “programa” o una “aplicación”. Los programadores que tienen acceso al código fuente de un programa informático pueden mejorarlo añadiendo funciones o arreglando las partes que no siempre funcionan correctamente.
Algunos programas tienen un código fuente que sólo puede modificar la persona, el equipo o la organización que lo creó y que mantiene un control exclusivo sobre él. A este tipo de software se le llama “propietario” o “de código cerrado”.