Software

EVOLUCIÓN DE LAS METODOLOGÍAS Y MODELOS UTILIZADOS EN EL DESARROLLO DE SOFTWARE.

  • Origen

    Origen
    Primera generación de computadores, las prácticas de desarrollo no obedecían a una metodología, los programadores se dedicaban a desarrollar sus código, lo que acarreaba una multitud de problemas
  • Necesidad

    Necesidad
    Para finales de los 60 se veía la necesidad de establecer puntos de verificación del correcto avance de los sistemas, evitando errores tardíos
  • Modelos y metodologías clásicas

    Modelos y metodologías clásicas
    se acoge el primer modelo: "fix and code". Adopta una serie de pasos a seguir como base inicial par ala fabricación del software. Toma popularidad el término "crisis del software" por los costos, también se acuna el término "ingeniería de software".
  • Modelo en Cascada

    Modelo en Cascada
    Propiciado por Winston Royce. , sugiere un enfoque sistemático y secuencial, disciplinado y basado en análisis, diseño, pruebas y mantenimiento
  • "the humble programmer"

    "the humble programmer"
    Edsger Dijkstra presenta este trabajo, sentando las bases para la creación de las metodologías tradicionales conocidas
  • clico de vida del desarrollo del Software

    clico de vida del desarrollo del Software
    Dijkstra y el uso de los postulados de permitió solucionar inconvenientes de sistemas complejos a través del análisis por partes o etapas. “Software Develop Life Clicle” sienta las bases de los estados por los que debe trascender un producto de desarrollo desde que nace a partir de un requerimiento
  • ingeniería del Software

    ingeniería del Software
    implementación de una serie de “modelos” que dividen el proyecto en etapas desde su concepción inicial, el desarrollo, pruebas, lanzamiento y mantenimiento
  • diferenciación entre “modelos” y “metodologías”

    diferenciación entre “modelos” y “metodologías”
    Aparecen los modelos. Cendejas (2014) en su tesis doctoral deja clara la separación de ambos conceptos: El autor aclara que modelo es la abstracción simplificada del proceso de desarrollo y que la metodología es un compendio amplio que incluye al modelo, reglas, notaciones y documentación del proceso.
  • Modelo de Desarrollo Incremental

    Modelo de Desarrollo Incremental
    Creado por Harlan Mills. Se basa en el desarrollo a partir del incremento de la funcionabilidad del programa, se puede considerar un precursor de las modernas metodologías iterativas.
  • Modelo de desarrollo evolutivo

    Modelo de desarrollo evolutivo
    Propuesto por Barry Boehm. Conjuga una naturaleza iterativa en la construcción de prototipos con aspectos controlados y sistemáticos del modelo en cascada. el software se desarrolla en una serie de entregas evolutivas. En cada ciclo repetitivo va ganando madurez el producto final.
  • Scrum

    Scrum
    Utiliza un enfoque incremental que tiene como fundamento la teoría de control empírico de procesos. Define tres roles: el “Scrum master”, líder del equipo y de la implementación de la filosofía, mas no del desarrollo; el dueño del producto y el equipo de desarrollo
  • Modelo de desarrollo basado en Componentes

    Modelo de desarrollo basado en Componentes
    Creada por Fred Brooks. .” Promueve el uso de desarrollos “pre-fabricados” para que se puedan re utilizar.
  • Modelo de Cascada en “V”

    Modelo de Cascada en “V”
    propuesto por Alan Davis dice que Las pruebas necesitan empezarse lo más pronto posible en el ciclo de vida y estas actividades deberían ser llevadas a cabo en paralelo con las actividades de desarrollo
  • Metodologías Ágiles

    Metodologías Ágiles
    alternativas que procuran un enfoque en el software y no en la arquitectura o la documentación, los enfoques ágiles valoran a los individuos, equipo e interacciones por encima de los procesos y herramientas
  • desarrollo rápido de aplicaciones

    desarrollo rápido de aplicaciones
    presentado por James Martin. Se centra en una lista de tareas y una estructura de desglose del trabajo orientada a la rapidez. Comprende el desarrollo bajo un modelo iterativo la construcción de prototipos y el uso de aplicaciones informáticas dirigidas a aumentar la productividad en todos los aspectos del ciclo de desarrollo
  • Microsoft Solution Framework

    Microsoft Solution Framework
    conjunto de las mejores prácticas. Es flexible, permite aplicar de manera individual e independiente cada uno de sus componentes, es escalable según la magnitud del proyecto
  • Rational Unified Process

    Rational Unified Process
    Es dirigido por “casos de uso”, se centra en la arquitectura, dicta pautas específicas para la constitución del equipo y las escalas de tiempo, es iterativa e incremental. desde sus inicios ha contado con respaldo por parte de IBM. Propuesta por Ivar Jacobson, Grady Booch y James Rumbaugh.
  • Extreme Programming

    Extreme Programming
    Propuesta por Kent Beck, Sus postulados o principios son: Retroalimentación rápida, asumir simplicidad, el cambio incremental, la aceptación del cambio y el trabajo de calidad. busca guiar a equipos de desarrollo de software pequeños