Introducción
La ingeniería se encuentra definida como una fuente de conocimientos científicos y tecnológicos especializados, basados en normas estándares y colecciones de información, apoyados en procesos y gestión que permiten tener resultados exitosos.
En esta unidad se brindará al estudiante los conocimientos esenciales para conocer la ingeniería de software, presentando el panorama evolutivo junto las prácticas comúnmente usadas en el análisis, diseño e implementación de un proyecto de software, soportado del uso de los estándares internacionales que actualmente se emplean para este fin.
Propósitos de aprendizaje
Propósito general
Promover una visión consistente de la ingeniería de software a nivel global.
Propósitos específicos
- Desarrollar una introducción a la ingeniería del software y sus principales componentes.
- Comprender la importancia de la ingeniería de software.
- Proporcionar un enfoque global de la ingeniería de software.
- Conocer la gestión integral de un proyecto de software.
¿Qué es el software?
La ingeniería del software es una de las disciplinas modernas de la ingeniería. Su principal interés es permitir el crecimiento de las industrias digitales garantizando la estabilidad para los desarrollos de sistemas de software. Es aquí donde es importante conocer y definir qué es el software, entendido como algo intangible, no material, pero sí necesario para cada proceso actual desarrollado.
El software es definido como las instrucciones utilizadas de manera detallada para controlar los procesos y el funcionamiento de un sistema de cómputo. Las principales funciones de un software están definidas para controlar y administrar los recursos físicos computacionales denominados hardware; a su vez, tiene la responsabilidad de distribuir el rendimiento de estos recursos para sacar el máximo provecho de cada elemento que integra un ordenador. El software también se convierte en el intérprete de información almacenada en equipos de cómputo de los usuarios.
¿Qué es el software?
Software de sistemas
El software es el agente responsable de cumplir funciones de acuerdo a los requerimientos establecidos para la solución de un problema. De esta manera, se identifican los roles de cada uno de los actores involucrados para el desarrollo y generación del software. Entre estos se destacan principalmente los analistas, diseñadores y arquitectos de software, desarrolladores y testing, quienes evalúan y analizan de manera detallada las características internas y externas antes de ser puesto en marcha para ser entregado al cliente.
Es importante destacar los componentes más importantes para la clasificación del software, tal y como se presenta en la siguiente interactividad.
¿Qué es el software?
Principales tipos de software
Para los ingenieros de software es importante contar con una clasificación y la mejor manera es de acuerdo a su funcionabilidad, por lo que presentaremos una breve descripción de las categorías más relevantes. Cada uno de sus componentes y elementos son influyentes para el funcionamiento del software.
De acuerdo a esto decimos que la ingeniería de software no es una actividad aislada sino que es parte de un proceso de ingeniería de sistemas más amplio. Por lo tanto, los sistemas de software no son sistemas aislados sino que son componentes esenciales de sistemas más amplios que tienen un propósito humano, social u organizacional.
![]() |
Un ejemplo para comprender mejor, lo anteriormente dicho, es el sistema de clima de un departamento meteorológico, pues este hace parte de sistemas más amplios de registro y pronóstico del tiempo, ya que incluyen hardware y software, procesos de previsión, usuarios del sistema junto con las organizaciones que presentan las predicciones meteorológicas. |
Ingeniería de software
Antes de hablar de la ingeniería de software tomemos un momento para pensar en la definición de ingeniería como tal, ya que existen muchas definiciones y nomenclaturas frente a esta disciplina, sabiendo que todas tienen algo en común: están creadas para obtener soluciones eficientes que resuelven los problemas de una manera práctica, apoyados en la aplicación del conocimiento científico y desarrollando tareas de manera fácil y efectiva para la humanidad.
Por esta razón se define a la Ingeniería del Software como una disciplina creada para el uso práctico del conocimiento científico en el análisis, diseño y construcción de programas, soportados en la documentación requerida para cada uno de sus procesos, entablado los parámetros para el desarrollo, operación y mantenimiento del software.
Ingeniería de software
Software de aplicaciones
El software de aplicación es aquel que utilizamos día a día. Cada uno de los programas, aplicaciones o utilidades, que manejamos dentro de nuestra computadora, entran dentro de esta clasificación. Es el resultado de la programación de software, enfocado hacia alguno de los sistemas operativos; es el tercer y último paso. Hablando de forma técnica es el software diseñado para el usuario final.
![]() |
A continuación se explica cada una de las aplicaciones de software, presentadas también en el gráfico principal de esta pantalla, y otras adicionales. |
Ingeniería de software
Evolución del software
El inicio del software fue desarrollado y usado por la misma persona de la organización. La misma persona lo escribía, lo ejecutaba y, si fallaba, lo reparaba. Debido a este estilo de trabajo, las personas sentían la seguridad de ser indispensables en sus trabajos. En este entorno personalizado del software, el diseño era un proceso implícito, realizado en la mente de alguien, y la documentación normalmente no existía.
La definición de “ingeniería del software” se presenta por primera vez en la década de 1960 como resultado de la evolución del hardware de computadores de tercera generación. Estas máquinas desarrollaron mayor capacidad que las máquinas de segunda generación, y su buen rendimiento permitió la incursión de nuevas aplicaciones que hasta el momento eran imposible de ejecutar. En la siguiente interactividad se explica con mayor detalle dicha evolución, de acuerdo con Díaz Murillo, M (2017).
Dadas estas circunstancias muchos proyectos no alcanzaron a cumplir con las necesidades de los clientes, que llevó al aumento de costos, manejos difíciles poco confiables y con bajo rendimiento.
![]() |
A continuación se explican las variables existentes en el proceso de la evolución de un software y su mejora continua. |
El proceso de software
El objetivo principal de la ingeniería de software es desarrollar métodos para sistemas grandes, que ayuden a los desarrolladores a obtener software de alta calidad en un tiempo mínimo y a bajo costo. Por lo tanto, es esencial realizar el desarrollo de software en fases.
De acuerdo a la IEEE 1074, los procesos de ciclo de vida de software se presentan de la siguiente manera:
- Análisis de los requisitos del software
- Diseño
- Desarrollo
- Pruebas
Dentro de las etapas de la ingeniería de software se presentan tres variables que conllevan a presentar algunas limitaciones las cuales ayudan a tomar la decisión de continuar o no. Estas tres variables son: técnica, tiempo y presupuesto, tal y como se explica en el video principal de esta pantalla.
![]() |
El desarrollo de un sistema de software está definido por el tiempo, los recursos y sus requerimientos. Las etapas del proceso de desarrollo de software se presentan como una comparación con el proceso de construcción de una obra civil. |
El proceso de software
Modelos de proceso del software
El desarrollo de un sistema de software está enmarcado por los recursos, el tiempo y un conjunto de requerimientos.
La descripción de un proceso del software es la representación o visión del mismo. Los modelos pueden incluir actividades que son parte de los procesos y productos de software y las personas involucradas en la ingeniería del software.
El ciclo de vida del software está conformado por un conjunto de etapas que involucran métodos y técnicas de la ingeniería de software para su producción, a continuación se presenta cada uno de los modelos mas utilizados en la industria del software.
Actividad de aprendizaje
![]() |
Relaciona columnas haciendo una analogía entre las fases del ciclo de vida de software y el proceso de una obra civil. |
El proceso de software
Modelos evolutivos del proceso del software
Modelo de proceso evolutivo
“Los modelos evolutivos son iterativos. Se caracterizan por la manera en la que permiten desarrollar versiones cada vez más completas del software” (Vera Carranza, M.C., Hernández, L., 2013)
De acuerdo con Vera Carranza, M.C., y Hernández, L (2013), a continuación se presentan los siguientes conceptos: los prototipos, como parte de la etapa del modelo de proceso evolutivo, y el modelo concurrente.
![]() |
A continuación se presenta una línea de tiempo interactiva sobre la historia del computador. Estudia su evolución. |
Actividad de aprendizaje
![]() |
De acuerdo con lo estudiado hasta este punto y una vez realizado las lecturas de los materiales de apoyo, completa el crucigrama de los modelos involucrados en la ingeniería de software. |
Resumen
Según IEEE (s.f.), la ingeniería de software se define como "la aplicación de un enfoque sistemático, disciplinado y cuantificable para el desarrollo, operación y mantenimiento de software; es decir, la aplicación de la ingeniería al software". En resumen, la ingeniería de software puede definirse como un enfoque sistemático para desarrollar el software dentro del tiempo y presupuesto especificados.
Uno de los principales objetivos de la ingeniería de software es ayudar a los desarrolladores a obtener software de alta calidad. Esta calidad se logra mediante el uso de la Gestión de Calidad Total (TQM), que permite la mejora continua de procesos personalizados que lleva al desarrollo de enfoques más establecidos para la ingeniería de software.
Caso de estudio
![]() |
Visualiza el siguiente caso donde deberás encontrar una solución de software para el control de inventarios de una empresa. Recuerda presentar tus resultados al docente de clase. |
Bibliografía ()
- Amo, F. A., Martínez Normand, L. y Segovia Pérez, F. J. (2005). Introducción a la Ingeniería del Software. Modelos de desarrollo de programas. España: Delta Publicaciones.
- Braude, E. (2003). Ingeniería del Software: una perspectiva orientada a objetos. RA-MA Editorial.
- James, S. (2001). Análisis y diseño de sistemas de información. (2da ed.) México: Mc Graw Hill.
- Kendall, K. y Kendall, J. (2005). Análisis y Diseño de Sistemas. (6ta ed.) México: Pearson Educación.
- Pressman, R. S. (2005). Ingeniería del Software. (6ta ed.) México: McGraw Hill.
- Sommerville, I. (2005). Ingeniería del Software. (7ma ed.) Madrid, España: Pearson Educación S.A.
- Weitzenfeld, A. (2004). Ingeniería del Software orientada a objetos con UML, Java e Internet. México: Thomson Learning.
Referencias Web
- Cáceres, E. (2014) Análisis y diseño de sistemas de información. [pdf] Recuperado de: http://www.facso.unsj.edu.ar/catedras/ciencias-economicas/sistemas-de-informacion-II/documentos/aydise14.pdf
- Cassallas R. y Yie, A. (2016) Ingeniería de software. Ciclos de vida y metodologías. [PowerPoint slides] Recuperado de: https://cfajardosite.files.wordpress.com/2016/07/ingenierc3ada-del-software.ppt
- Computer History Museum (s.f) [online] Recuperado de: http://www.computerhistory.org/
- Díaz Murillo, M. (2017) Historia y evolución del software. Docplayer. Recuperado de: http://docplayer.es/49170687-Historia-y-evolucion-del-software.html
- IEEE Standasds Association (s.f.) Software and systems engineering standards. [online] Recuperado de: http://standards.ieee.org/catalog/olis/arch_se.html
- Ortíz Martínez, D. y Álvarez del Castillo, R. (2015) Evolución de Windows. [Mensaje en un blog]. Recuperado de: http://elblogdedianayregina.blogspot.com/2015/08/evolucion-de-windows.html
- Otero Vidal, M. (2011). Ingeniería del Software. [online] Universidad del País Vasco. Recuperado de: http://www.vc.ehu.es/jiwotvim/ISOFT2011-2012/ingSoftware1112.htm
- Vera Carranza, M. e Islas Hernández, L. (2013) Ingeniería de Software. Apuntes Digitales. [online] Universidad Autónoma del Estado de Hidalgo. Recuperado de: http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro17/index.html












