Metodología de la Red Nacional de Integración y
              Desarrollo de Software Libre
                        (MeRinde)
    Una Propuesta Metodológica para Elaborar Software Libre con el Uso
           de Estándares Abiertos y con un Enfoque de Calidad




                                               Ponente: Ing. Kiberley Santos

                                 Abril 2010
                                       
Agenda

    1. El Problema
      2. ¿Qué es MeRinde?
        3. Audiencia
           4. Mejores Prácticas
             5. Estructura
               6. Visión Dinámica
                     7. Visión Estática
                       8. Habilitador Web
                         9. Ventajas
                             10. Aportes
                                11. Casos de Éxito
                                        
El Problema



            Diversas                                   Diversos tipos de
          Metodologías                                  Documentación

                                Equipos de Proyectos




        Definición de                                  No se Sigue un Mismo
    Artefactos y Plantillas                            Modelo de Desarrollo 

        Aseguramiento                                   No cumplimiento
                                Problemas
          de Calidad                                    del decreto 3.390


          Trazabilidad                                  Definición de Roles
                                                          y Actividades
                                     
¿Qué es MeRinde?


    MeRinde es un proyecto de Software Libre (SL) que propone un estándar
    para el proceso de desarrollo de software que puede ser empleado y
    adaptado según los requerimientos de cualquier comunidad u organización.
    Además, esta mantiene una librería de plantillas reutilizables para la
    Ingeniería de Software.


    Surge de la combinación y adaptación de modelos y metodologías
    ampliamente utilizadas para el desarrollo de software y la reingeniería de
    procesos del negocio.


    Pretende entre sus principales objetivos apoyar a las comunidades de
    desarrollo de software libre en sus proyectos, suministrando las
    herramientas necesarias para que estos cumplan con un proceso de
    desarrollo y documentación de sus sistemas.




                                         
Audiencia


Destinada a cualquier persona, comunidad u organización implicada
             en un proceso de desarrollo de software.



Es útil para :


    Analistas y usuarios finales (que especifican                la   estructura   y
    comportamiento requeridos por el sistema);
    Diseñadores (que        diseñan   los       sistemas   que   satisfacen   esos
    requerimientos);
    Desarrolladores (que convierten esos diseños en código ejecutable);
    Probadores (que verifican y validan la estructura y comportamiento del
    sistema) y;
    Líderes del proyecto.

                                             
Mejores Prácticas

    1) Adaptar el Proceso de Desarrollo
    2) Alto Nivel de Abstracción
    3) Centrarse en la Arquitectura
    4) Colaboración entre Equipo
    5) Demostrar Resultados Iterativamente e Incrementalmente
    6) Dirigido por Casos de Uso
    7) Diseño Simple
    8) Enfoque Continuo en la Calidad
    9) Enfoque en los Riesgos
    10) Fomento del aprendizaje de Experiencias
    11) Interacción contínua con Cliente
    12) Modelar el software
    13) Permanecer Ágil y Esperar los Cambios
                                       
Estructura




                             
    Esfuerzo en actividades según la fase del proyecto
Visión Dinámica


    Fases




            Fases ­ Iteraciones ­ Hitos

                          
Visión Estática


    Proceso de MeRinde




                                      Disciplina




                            
Visión Estática


    Roles


            ✔   Analista de Calidad
            ✔   Analista de Producto
            ✔   Arquitecto de Software
            ✔   Desarrollador
            ✔   Involucrado
            ✔   Líder del Proyecto
            ✔   Mentor
            ✔   Probador




                                  
Visión Estática


    Modelo de Equipo




                               
Visión Estática


    Artefactos


              Se proponen setenta y siete (77) artefactos




    Partiendo de estos artefactos se pueden crear sólo los artefactos que
    se consideren necesarios para el proyecto, adicionalmente según los
    lineamientos establecidos se les puede hacer modificaciones a los
    mismos y también se pueden establecer artefactos adicionales a los
    aquí propuestos siempre que estos faciliten y cumplan con los
    requerimientos.

                                        
Visión Estática


    Artefactos Requeridos

    1) Documento de Arquitectura del Software (DAS)
    2) El Sistema
    3) Especificación de Requerimientos del Software (ERS)
    4) Glosario del Sistema
    5) Modelo de Diseño
    6) Plan de Gestión de Riesgos
    7) Plan de Implantación
    8) Plan de Pruebas
    9) Planificación del Proyecto
    10) Repositorio de Versiones
    11) Solicitud del Sistema
    12) Términos de Referencia del Sistema
    13) Términos de Referencia para el Equipo de
    Desarrolladores del Sistema
    14) Visión del Sistema.        
Habilitador Web

      www.merinde.org.ve




               
Ventajas


    Trazabilidad del Proceso de Desarrollo
    Adaptación y extensión de la metodología según las particularidades 
    del proyecto
    Habilitador metodológico fácil de manejar
    Planificación,  agilidad  y  control  de  los  procesos  de  desarrollo  de 
    software
    Reutilización de componentes
    Mayor integración entre el cliente y los desarrolladores
    Fortalecimiento  del  perfil  de  las  empresas,  cooperativas  y 
    comunidades desarrolladoras de Software Libre
    Habilitador Web con Foro.
                                        
Aportes



    Estandarización  del  proceso  de  desarrollo,  documentación  y 
    herramientas
    Flujos de trabajo que refleja la realidad del desarrollo de software
    Proceso de desarrollo, documentación y herramientas basadas en 
    estándares abiertos
    Modelo  de  equipo  para  el  desarrollo  de  software  que  supera 
    limitaciones geográficas
    Propicia calidad en el proceso y en el producto final
    Plantillas de los artefactos
    Adaptación de varias prácticas probadas por el aprendizaje.
                                       
Casos de Éxito



    Universidades  a  nivel  nacional  e  internacional  están  utilizando 
    MeRinde en su proceso de enseñanza y proyectos de investigación. 
    Algunas  son:  UCV,  USB,  Universidad  de  Carabobo,  Unefa, 
    Universidad de Lérida, entre otras.
    El  Centro  Nacional  de  Tecnologías  de  Información  (CNTI)  utilizó 
    MeRinde para el desarrollo de algunos proyectos de software, como 
    son: TEPUI, SCE­Cenit, CNTIntranet, Habilitador Web, entre otros.
    Otras organizaciones públicas: Cenit (Proyecto Sociotecnológico IV), 
    DEM, Fonden...
    Y empresas privadas como: CEISoft y Armadillo Tech(Capacitación)
    Presentaciones y publicaciones: CNSL, ALTEC, Cenditel, Foro Opus 
    Libertati, etc.
                                      
La evolución de MeRinde depende de tí
                ¡Participa!

                 Gracias XD

                      Contacto:
              kibersan@merinde.org.ve
                  www.kibersan.org
             www.slideshare.net/kiberley
              cmarrero@merinde.org.ve
                 www.merinde.org.ve
                           

Presentación MeRinde 6CNSL Abril 2010

  • 1.
    Metodología de laRed Nacional de Integración y Desarrollo de Software Libre (MeRinde) Una Propuesta Metodológica para Elaborar Software Libre con el Uso de Estándares Abiertos y con un Enfoque de Calidad Ponente: Ing. Kiberley Santos   Abril 2010  
  • 2.
    Agenda 1. El Problema 2. ¿Qué es MeRinde? 3. Audiencia 4. Mejores Prácticas 5. Estructura 6. Visión Dinámica 7. Visión Estática 8. Habilitador Web 9. Ventajas 10. Aportes   11. Casos de Éxito  
  • 3.
    El Problema Diversas Diversos tipos de Metodologías Documentación Equipos de Proyectos Definición de No se Sigue un Mismo Artefactos y Plantillas Modelo de Desarrollo  Aseguramiento No cumplimiento Problemas de Calidad del decreto 3.390 Trazabilidad Definición de Roles y Actividades    
  • 4.
    ¿Qué es MeRinde? MeRinde es un proyecto de Software Libre (SL) que propone un estándar para el proceso de desarrollo de software que puede ser empleado y adaptado según los requerimientos de cualquier comunidad u organización. Además, esta mantiene una librería de plantillas reutilizables para la Ingeniería de Software. Surge de la combinación y adaptación de modelos y metodologías ampliamente utilizadas para el desarrollo de software y la reingeniería de procesos del negocio. Pretende entre sus principales objetivos apoyar a las comunidades de desarrollo de software libre en sus proyectos, suministrando las herramientas necesarias para que estos cumplan con un proceso de desarrollo y documentación de sus sistemas.    
  • 5.
    Audiencia Destinada a cualquierpersona, comunidad u organización implicada en un proceso de desarrollo de software. Es útil para : Analistas y usuarios finales (que especifican la estructura y comportamiento requeridos por el sistema); Diseñadores (que diseñan los sistemas que satisfacen esos requerimientos); Desarrolladores (que convierten esos diseños en código ejecutable); Probadores (que verifican y validan la estructura y comportamiento del sistema) y; Líderes del proyecto.    
  • 6.
    Mejores Prácticas 1) Adaptar el Proceso de Desarrollo 2) Alto Nivel de Abstracción 3) Centrarse en la Arquitectura 4) Colaboración entre Equipo 5) Demostrar Resultados Iterativamente e Incrementalmente 6) Dirigido por Casos de Uso 7) Diseño Simple 8) Enfoque Continuo en la Calidad 9) Enfoque en los Riesgos 10) Fomento del aprendizaje de Experiencias 11) Interacción contínua con Cliente 12) Modelar el software 13) Permanecer Ágil y Esperar los Cambios    
  • 7.
    Estructura     Esfuerzo en actividades según la fase del proyecto
  • 8.
    Visión Dinámica Fases Fases ­ Iteraciones ­ Hitos    
  • 9.
    Visión Estática Proceso de MeRinde Disciplina    
  • 10.
    Visión Estática Roles ✔ Analista de Calidad ✔ Analista de Producto ✔ Arquitecto de Software ✔ Desarrollador ✔ Involucrado ✔ Líder del Proyecto ✔ Mentor ✔ Probador    
  • 11.
    Visión Estática Modelo de Equipo    
  • 12.
    Visión Estática Artefactos Se proponen setenta y siete (77) artefactos Partiendo de estos artefactos se pueden crear sólo los artefactos que se consideren necesarios para el proyecto, adicionalmente según los lineamientos establecidos se les puede hacer modificaciones a los mismos y también se pueden establecer artefactos adicionales a los aquí propuestos siempre que estos faciliten y cumplan con los requerimientos.    
  • 13.
    Visión Estática Artefactos Requeridos 1) Documento de Arquitectura del Software (DAS) 2) El Sistema 3) Especificación de Requerimientos del Software (ERS) 4) Glosario del Sistema 5) Modelo de Diseño 6) Plan de Gestión de Riesgos 7) Plan de Implantación 8) Plan de Pruebas 9) Planificación del Proyecto 10) Repositorio de Versiones 11) Solicitud del Sistema 12) Términos de Referencia del Sistema 13) Términos de Referencia para el Equipo de Desarrolladores del Sistema   14) Visión del Sistema.  
  • 14.
    Habilitador Web www.merinde.org.ve    
  • 15.
    Ventajas Trazabilidad del Proceso de Desarrollo Adaptación y extensión de la metodología según las particularidades  del proyecto Habilitador metodológico fácil de manejar Planificación,  agilidad  y  control  de  los  procesos  de  desarrollo  de  software Reutilización de componentes Mayor integración entre el cliente y los desarrolladores Fortalecimiento  del  perfil  de  las  empresas,  cooperativas  y  comunidades desarrolladoras de Software Libre Habilitador Web con Foro.    
  • 16.
    Aportes Estandarización  del  proceso  de  desarrollo,  documentación  y  herramientas Flujos de trabajo que refleja la realidad del desarrollo de software Proceso de desarrollo, documentación y herramientas basadas en  estándares abiertos Modelo  de  equipo  para  el  desarrollo  de  software  que  supera  limitaciones geográficas Propicia calidad en el proceso y en el producto final Plantillas de los artefactos Adaptación de varias prácticas probadas por el aprendizaje.    
  • 17.
    Casos de Éxito Universidades  a  nivel  nacional  e  internacional  están  utilizando  MeRinde en su proceso de enseñanza y proyectos de investigación.  Algunas  son:  UCV,  USB,  Universidad  de  Carabobo,  Unefa,  Universidad de Lérida, entre otras. El  Centro  Nacional  de  Tecnologías  de  Información  (CNTI)  utilizó  MeRinde para el desarrollo de algunos proyectos de software, como  son: TEPUI, SCE­Cenit, CNTIntranet, Habilitador Web, entre otros. Otras organizaciones públicas: Cenit (Proyecto Sociotecnológico IV),  DEM, Fonden... Y empresas privadas como: CEISoft y Armadillo Tech(Capacitación) Presentaciones y publicaciones: CNSL, ALTEC, Cenditel, Foro Opus  Libertati, etc.    
  • 18.
    La evolución deMeRinde depende de tí ¡Participa! Gracias XD Contacto: kibersan@merinde.org.ve www.kibersan.org www.slideshare.net/kiberley cmarrero@merinde.org.ve www.merinde.org.ve