El documento presenta una introducción sobre Oliver Mejía Herrera y la asignatura Fundamentos del Computador. Luego define el software como el soporte lógico de un sistema informático, distinguiendo entre software de sistema, aplicaciones y programación. Finalmente describe las etapas del desarrollo de software como análisis de requisitos, diseño, programación, pruebas, documentación y mantenimiento.
3. ¿Qué es el software?
• Se conoce como software al equipo lógico
o soporte lógico de un sistema informático, que
comprende el conjunto de los componentes
lógicos necesarios que hacen posible la realización
de tareas específicas, en contraposición a los
componentes físicos que son llamados hardware.
4. Software de sistema
•
Se llama Software de Sistema o Software de Base al
conjunto de programas que sirven para interactuar
con el sistema, confiriendo control sobre el
hardware, además de dar soporte a otros
programas
7. Software de aplicación
• El Software de Aplicación son los programas diseñados para o
por los usuarios para facilitar la realización de tareas específicas
en la computadora, como pueden ser las aplicaciones
ofimáticas (procesador de texto, hoja de cálculo, programa de
presentación, sistema de gestión de base de datos...).
10. 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.
14. Análisis de requisitos
• Extraer los requisitos de un producto de software es la
primera etapa para crearlo. Mientras que los clientes
piensan que ellos saben lo que el software tiene que
hacer, se requiere de habilidad y experiencia en la
ingeniería de software para reconocer requisitos
incompletos, ambiguos o contradictorios.
15. Diseño y arquitectura de
software
• Se refiere a determinar como funcionará de forma general sin
entrar en detalles. Consiste en incorporar consideraciones de
la implementación tecnológica, como el hardware, la red,
etc. Se definen los Casos de Uso para cubrir las funciones que
realizará el sistema, y se transforman las entidades definidas
en el análisis de requisitos en clases de diseño, obteniendo un
modelo cercano a la programación orientada a objetos.
16. Programación
• Reducir un diseño a código puede ser la parte más
obvia del trabajo de ingeniería de software, pero no es
necesariamente la porción más larga. La complejidad y
la duración de esta etapa está intimamente ligada al o
a los lenguajes de programación utilizados.
17. Pruebas
• Consiste en comprobar que el software realice
correctamente las tareas indicadas en la
especificación. Una técnica de prueba es probar por
separado cada módulo del software, y luego probarlo
de forma integral,para así llegar al objetivo.
18. Documentación
• Todo lo concerniente a la documentación del propio
desarrollo del software y de la gestión del proyecto, pasando
por modelaciones (UML), diagramas, pruebas, manuales de
usuario, manuales técnicos, etc; todo con el propósito de
eventuales correcciones, usabilidad, mantenimiento futuro y
ampliaciones al sistema.
19. Mantenimiento
• Mantener y mejorar el software para enfrentar errores
descubiertos y nuevos requisitos. Esto puede llevar más tiempo
incluso que el desarrollo inicial del software. Alrededor de 2/3 de
toda la ingeniería de software tiene que ver con dar
mantenimiento. Una pequeña parte de este trabajo consiste en
arreglar errores, o bugs. La mayor parte consiste en extender el
sistema para hacer nuevas cosas. De manera similar, alrededor
de 2/3 de toda la ingeniería civil, arquitectura y trabajo de
construcción es dar mantenimiento.
20. Tipos de licencia de
software
• Software Libre o Free Software
• Es un software disponible para cualquiera que
desee utilizarlo, copiarlo y distribuirlo, ya sea en su
forma original o con modificaciones. La posibilidad
de modificaciones implica que el código fuente
está disponible. Si un programa es libre, puede ser
potencialmente incluido en un sistema operativo
también libre. Es importante no confundir software
libre con software gratis, porque la libertad
asociada al software libre de copiar, modificar y
redistribuir, no significa gratuidad.Existen programas
gratuitos que no pueden ser modificados ni
redistribuidos. Y existen programas pagos.
21. Licencias
• Copyleft
• La mayoría de las licencias usadas en la publicación de software
libre permite que los programas sean modificados y
redistribuidos. Estas prácticas están generalmente prohibidas por
la legislación internacional de copyright, que intenta impedir que
alteraciones y copias sean efectuadas sin la autorización del o
los autores.
GPL
• La Licencia Pública General GNU (GNU General Public License
GPL) es la licencia que acompaña los paquetes distribuidos por
el Proyecto GNU, más una gran varidad de software que incluye
el núcleo del sistema operativo Linux. La formulación de GPL es
tal que en vez de limitar la distribución del software que protege,
llega hasta impedir que este software sea integrado en software
propietario. La GPL se basa en la legislación internacional de
copyright, lo que debe garantizar cobertura legal para el
software licenciado con GPL.
22. Licencias
• Debian
• La licencia Debian es parte del contrato realizado entre Debian y la comunidad
de usuarios de software libre, y se denomina Debian Free Software Guidelines
(DFSG). En esencia, esta licencia contiene criterios para la distribución que
incluyen, además de la exigencia de publicación del código fuente: (a) la
redistribución libre ; (b) el código fuente debe ser incluido y debe poder ser
redistribuido; (c) todo trabajo derivado debe poder ser redistribuido bajo la misma
licencia del original; (d) puede haber restricciones en cuanto a la redistribución
del código fuente, si el original fue modificado; (e) la licencia no puede discriminar
a ninguna persona o grupo de personas, así como tampoco ninguna forma de
utilización del software; (f) los derechos otorgados no dependen del sitio en el que
el software se encuentra; y (g) la licencia no puede 'contaminar' a otro software.
• Open Source
• La licencia de Open Source Initiative deriva de Debian.
BSD
• La licencia BSD cubre las distribuciones de software de Berkeley Software
Distribution, además de otros programas. Ésta es una licencia considerada
'permisiva', ya que impone pocas restricciones sobre la forma de uso,.
23. Máquina virtual
• En informática una máquina virtual es un software que
simula a una computadora y puede ejecutar
programas como si fuese una computadora real. Este
software en un principio fue definido como "un
duplicado eficiente y aislado de una máquina física". La
acepción del término actualmente incluye a máquinas
virtuales que no tienen ninguna equivalencia directa
con ningún hardware real.