Ingeniería del software
¿Qué es?
• En 1968 se produjo una crisis del software, debido a
  ello surgió el campo de la Ingeniería del software.
• Éste término se introdujo por primera vez en 1968 en
  una conferencia de la ingeniería del software de la
  OTAN.
• Era necesario realizar una gran cantidad de cambios a
  la hora de desarrollar software.
• El objetivo primario de la ingeniería del software es
  construir un producto de alta calidad de una manera
  oportuna.
• El término ingeniería según la RAE se definiría como:
    "Estudio y aplicación, por especialistas, de las diversas ramas de
     la tecnología”,
    “Actividad profesional del ingeniero“.
Capas en Ingeniería del
           software.
• La ingeniería del software es una tecnología
  multicapa, cualquier enfoque de ingeniería debe
  apoyarse sobre un compromiso de organización de la
  calidad.
Ciclo de vida del software.
• Todo software exige llevar a cabo numerosas tareas
  antes de ser lanzado por los desarrolladores.
• Principalmente hay tres pasos generales:
   – En la fase de definición se intenta determinar qué información
     ha de usar el sistema, qué funciones ha de realizar, qué
     condicionantes existen, cuáles han de ser las interfaces del
     sistema, y qué criterios de evaluación se usarán.
   – En la fase de construcción se diseñan las estructuras de los
     datos y de los programas. Posteriormente, se
     escribe, documenta y prueba el software.
   – La fase de mantenimiento comienza cuando el sistema ya está
     desarrollado y finaliza cuando el producto ya no se utiliza.
Ciclo de vida del software.
• El ciclo de vida clásico consta de varias fases secuenciales
  siguiendo un esquema en cascada con el mismo orden que el
  esquema general.
Ciclo de vida del software.
• Los ciclos de vida normalmente varían en el alcance
  del ciclo, dependiendo de hasta dónde llegue el
  proyecto correspondiente, las características de las
  fases en que dividen el ciclo y de la organización,
  estructura y sucesión de las etapas, si hay
  realimentación entre ellas o si tenemos libertad de
  repetirlas.
• Otros modelos son:
      Modelo en V.
      Iterativo.
      De desarrollo incremental.
      En espiral.
      De prototipos.
Metodologías del desarrollo
      del software.
• Una metodología es un conjunto integrado de
  técnicas y métodos que permite abordar de
  forma homogénea y abierta cada una de las
  actividades del ciclo de vida de un proyecto de
  desarrollo.
• Las metodologías se basan en una combinación
  de los modelos de proceso genéricos.
• Definen artefactos, roles y actividades, junto con
  prácticas y técnicas recomendadas.
• Hay dos tipos de metodologías: las tradicionales
  y las ágiles.
Desarrollo iterativo e
            incremental.
• Es un proceso de desarrollo de software cíclico desarrollado en
  respuesta a la debilidad del modelo en cascada.
• Empieza con una planificación inicial y termina con el
  despliegue, con la iteración cíclica en el medio.
Desarrollo ágil.
• La ingeniería del software ágil combina una
  filosofía y un conjunto de directrices de
  desarrollo.
• La filosofía busca la satisfacción del cliente y la
  entrega temprana de software incremental.
• Las directrices de desarrollo resaltan la entrega
  sobre el análisis y el diseño y la comunicación
  activa y continua entre los desarrolladores y
  los clientes.
• Están especialmente ambientadas para
  desarrollar proyectos software pequeños.
Reingeniería.
• El principal objetivo de la reingeniería es reducir el tiempo y los
  recursos empleados en el mantenimiento del software
  mejorando la productividad del proceso.
• Un modelo de reingeniería incluye una estrategia operativa y
  define seis actividades.

13. ingeniería del software

  • 1.
  • 2.
    ¿Qué es? • En1968 se produjo una crisis del software, debido a ello surgió el campo de la Ingeniería del software. • Éste término se introdujo por primera vez en 1968 en una conferencia de la ingeniería del software de la OTAN. • Era necesario realizar una gran cantidad de cambios a la hora de desarrollar software. • El objetivo primario de la ingeniería del software es construir un producto de alta calidad de una manera oportuna. • El término ingeniería según la RAE se definiría como:  "Estudio y aplicación, por especialistas, de las diversas ramas de la tecnología”,  “Actividad profesional del ingeniero“.
  • 3.
    Capas en Ingenieríadel software. • La ingeniería del software es una tecnología multicapa, cualquier enfoque de ingeniería debe apoyarse sobre un compromiso de organización de la calidad.
  • 4.
    Ciclo de vidadel software. • Todo software exige llevar a cabo numerosas tareas antes de ser lanzado por los desarrolladores. • Principalmente hay tres pasos generales: – En la fase de definición se intenta determinar qué información ha de usar el sistema, qué funciones ha de realizar, qué condicionantes existen, cuáles han de ser las interfaces del sistema, y qué criterios de evaluación se usarán. – En la fase de construcción se diseñan las estructuras de los datos y de los programas. Posteriormente, se escribe, documenta y prueba el software. – La fase de mantenimiento comienza cuando el sistema ya está desarrollado y finaliza cuando el producto ya no se utiliza.
  • 5.
    Ciclo de vidadel software. • El ciclo de vida clásico consta de varias fases secuenciales siguiendo un esquema en cascada con el mismo orden que el esquema general.
  • 6.
    Ciclo de vidadel software. • Los ciclos de vida normalmente varían en el alcance del ciclo, dependiendo de hasta dónde llegue el proyecto correspondiente, las características de las fases en que dividen el ciclo y de la organización, estructura y sucesión de las etapas, si hay realimentación entre ellas o si tenemos libertad de repetirlas. • Otros modelos son:  Modelo en V.  Iterativo.  De desarrollo incremental.  En espiral.  De prototipos.
  • 7.
    Metodologías del desarrollo del software. • Una metodología es un conjunto integrado de técnicas y métodos que permite abordar de forma homogénea y abierta cada una de las actividades del ciclo de vida de un proyecto de desarrollo. • Las metodologías se basan en una combinación de los modelos de proceso genéricos. • Definen artefactos, roles y actividades, junto con prácticas y técnicas recomendadas. • Hay dos tipos de metodologías: las tradicionales y las ágiles.
  • 8.
    Desarrollo iterativo e incremental. • Es un proceso de desarrollo de software cíclico desarrollado en respuesta a la debilidad del modelo en cascada. • Empieza con una planificación inicial y termina con el despliegue, con la iteración cíclica en el medio.
  • 9.
    Desarrollo ágil. • Laingeniería del software ágil combina una filosofía y un conjunto de directrices de desarrollo. • La filosofía busca la satisfacción del cliente y la entrega temprana de software incremental. • Las directrices de desarrollo resaltan la entrega sobre el análisis y el diseño y la comunicación activa y continua entre los desarrolladores y los clientes. • Están especialmente ambientadas para desarrollar proyectos software pequeños.
  • 10.
    Reingeniería. • El principalobjetivo de la reingeniería es reducir el tiempo y los recursos empleados en el mantenimiento del software mejorando la productividad del proceso. • Un modelo de reingeniería incluye una estrategia operativa y define seis actividades.