Please enable JavaScript.
Coggle requires JavaScript to display documents.
INGENIERÍA DE SOFTWARE - Coggle Diagram
INGENIERÍA DE SOFTWARE
La ingeniería de software es el establecimiento y uso de principios fundamentales de la ingeniería con objeto de desarrollar en forma económica software que sea confiable y que trabaje con eficiencia en máquinas reales
Capas de la igneniería de software
La ingeniería de software está formada por varias capas. Estas capas definen la estructura básica sobre la cual se construyen y gestionan los proyectos de software
-
2. Proceso
Define un marco de trabajo estableciendo un conjunto de actividades, acciones y tareas necesarias para para el desarrollo y la gestión de proyectos de software. Es decir, actúa como una guía que define cómo deben organizarse y coordinarse las actividades a lo largo del ciclo de vida del software.
Jerarquía del trabajo técnico dentro del proceso del software
Un proceso es un conjunto de actividades, acciones y tareas que se ejecutan cuando va a crearse algún producto del trabajo
1. Actividad
Busca lograr un objetivo amplio y se desarrolla sin importar el dominio de la aplicación o tamaño del proyecto
-
3. Tarea
Se centra en un objetivo pequeño pero bien definido que produce un resultado tangible. Por ejemplo, realizar una prueba unitaria
Modelo o estructura general para el proceso de software
Las cinco actividades estructurales en un proceso de ingeniería de software
1. Comunicación
Antes de que comience cualquier trabajo técnico, tiene importancia crítica comunicarse y colaborar con el cliente y con otros participantes (stakeholders). Se busca entender los objetivos del proyecto, y reunir los requerimientos que ayuden a definir las características y funciones del software.
2. Planeación
El plan del proyecto de software define el trabajo de ingeniería de software al describir las tareas técnicas por realizar, los riesgos probables, los recursos que se requieren, los productos del trabajo que se obtendrán y una programación de las actividades
3. Modelado
Crear modelos a fin de entender mejor los requerimientos del software y el diseño que los satisfará.
4. Construcción
Esta actividad combina la generación de código (ya sea manual o automatizada) y las pruebas que se requieren para descubrir errores en éste.
5. Despliegue
El software (como entidad completa o como un incremento parcialmente terminado) se entrega al consumidor que lo evalúa y que le da retroalimentación.
Un modelo general del proceso para la ingeniería de software incluye un conjunto de actividades estructurales y sombrilla, acciones y tareas de trabajo. Cada uno de los modelos de proceso puede describirse por un flujo distinto del proceso: descripción de cómo se organizan secuencial y cronológicamente las actividades estructurales, acciones y tareas
-
Flujo del proceso
Se describe la manera en que están organizadas las actividades estructurales y las acciones y tareas que ocurren dentro de cada una con respecto de la secuencia y el tiempo
Flujo de proceso lineal
Ejecuta cada una de las cinco actividades estructurales en secuencia, comenzando por la comunicación y terminando con el despliegue
-
Flujo de proceso evolutivo
Realiza las actividades en forma “circular”. A través de las cinco actividades, cada circuito lleva a una versión más completa del software
Flujo de proceso paralelo
Ejecuta una o más actividades en paralelo con otras. Por ejemplo, el modelado de un aspecto del software tal vez se ejecute en paralelo con la construcción de otro aspecto del software
3. Métodos
Son el conjunto de tareas y técnicas que se utilizan para realizar cada una de las actividades dentro del proceso de desarrollo de software. Incluyen tareas como el análisis de requerimientos, el diseño, la codificación, las pruebas y el mantenimiento
4. Herramientas
Las herramientas son los programas y entornos que se utilizan para automatizar o facilitar la aplicación de los métodos en el proceso de desarrollo de software
Importancia de estas capas
- Estandarización y organización: Estas capas ayudan a estandarizar el desarrollo de software, asegurando que se sigan procedimientos y metodologías claras.
- Mejora de la calidad: Al seguir un proceso estructurado y métodos validados, es más probable que el producto final tenga menos errores y cumpla con las expectativas del cliente.