1. Ciclo de vida del software
    1. Paradigmas
      1. Ágil
        1. Modelo XP
          1. tiene como principal objetivo incrementar la productividad a la hora de desarrollar un proyecto. su prioridad son los procesos con un resultado directo.
        2. Modelo Scrum
          1. Scrum es un marco de trabajo ágil para el desarrollo de proyectos, que se basa en entregas iterativas en sprints de duración fija. Se enfoca en la colaboración, transparencia y adaptación continua. El equipo Scrum incluye un product owner, un Scrum Master y el equipo de desarrollo.
        3. Desarrollo rápido de aplicaciones - RAD
          1. El método comprende el desarrollo interactivo la construcción de prototipos y el uso deutilidades CASE (Computer Aided Software Engineering).
      2. Orientado a Objetos
      3. Tradicional
        1. Proceso Racional Unificado - RUP
          1. Divide el desarrollo de software en 4 fases, donde se desglosan con interacciones faces: Inicio, Elaboracion, Construcción y transcisión
        2. Incremental
          1. Es una forma de desarrollar software en pequeñas partes que se entregan y prueban iterativamente en ciclos cortos. Esto permite ajustes y mejoras en cada ciclo y una mayor flexibilidad para adaptarse a los cambios en los requisitos del cliente.
        3. Modelo Cascada
          1. Plantea un proceso lineal de desarrollo por fases que se van terminando y continuando con las siguientes faces
    2. Fases
      1. Pruebas
      2. Mantenimiento
      3. Diseño
      4. Análisis
      5. Planificación
  2. La ingeniería de requisitos abarca todas las actividades relacionadas con la determinación de las necesidades y condiciones que deben ser satisfechas al desarrollar un software nuevo o realizar modificaciones en uno existente. Esto implica identificar, analizar y documentar de manera precisa los objetivos, funcionalidades y restricciones del sistema. La ingeniería de requisitos se enfoca en establecer una comunicación efectiva entre los usuarios y el equipo de desarrollo, a fin de garantizar que el software creado cumpla con las expectativas y sea exitoso en su funcionamiento.
  3. Clasificación de Requerimientos
    1. Usuarios
    2. De sistema
      1. No funcionales
      2. Funcionales
  4. Características que deben cumplir
    1. Necesario
      1. Completo
        1. Consistente
          1. Correcto
          2. Factible
          3. Modificable
          4. Priorizado
          5. Verificable
          6. Rastreable
  5. Etapas
    1. Elicitación
      1. Análisis
        1. Especificación
          1. Validación