Este documento presenta un informe gerencial sobre la calidad del software y metodologías de desarrollo como MoProSoft y Extreme Programming (XP) realizado por cinco estudiantes de la Universidad Politécnica de Maracaibo. Compara las etapas y características de MoProSoft y XP, discutiendo las ventajas y desventajas de cada una. Luego aplica indicadores de calidad de MoProSoft a seis grupos de estudiantes desarrolladores de software.
investigación de los Avances tecnológicos del siglo XXI
Informe gerencial sobre Moprosoft
1. República Bolivariana de Venezuela
Ministerio del Poder Popular para la Educación Superior
Universidad Politécnica de Maracaibo
Departamento de Informática
INFORME GERENCIAL
Integrantes:
T.S.U Johana Gerardino: 17.544.203.
T.S.U Howard Pernía: 16.018.069.
T.S.U Hendrix Finol: 13.298.553.
T.S.U Alexis León: 13.006.338.
T.S.U Lisandro Méndez: 14.438.880.
Maracaibo, Junio 2011.
2. Hoy en día el desarrollo de software ha adquirido una relevancia
incuestionable, los proyectos son más exigentes y la magnitud de tiempo y
dinero aumentan considerablemente. El tema de calidad de software, ha ido
ganando terreno en el sector médico; este paso importante ha generado retos a
la teoría para insertar un concepto tan valioso en una forma clara y práctica.
Sería tan simple pensar que la calidad hace referencia al mero cumplimiento de
especificaciones técnicas fijadas por los ingenieros de desarrollo o la aplicación
de satisfacción de los requerimientos de los clientes, o la adaptación para el
costo logrando mayor eficiencia, pero lamentablemente, el concepto tiene
mayores alcances.
La Ingeniería del Software se ha ido desarrollando a través de la creación e
implantación en la industria software de métodos, procedimientos, técnicas y
útiles que tratan de cubrir las necesidades de cada una de las etapas del ciclo
de vida de un producto software, desde la definición de sus requisitos hasta su
mantenimiento una vez el producto comience a emplearse. Y ello con las
restricciones generales de todos los procesos modernos de ingeniería, esto es,
la necesidad creciente de incrementar la productividad de la programación
mejorando y garantizando, simultáneamente la calidad del producto resultante.
La creación e implantación de normas de desarrollo del software son un
autentico desafío que tiene la Ingeniería de Software como medio de
comunicación para transferir sus métodos, técnicas y procedimientos a la
industria del software para el diseño y desarrollo de nuevos productos. Estas
normas tienen como criterio general de desarrollo maximizar la comunicación
entre los profesionales del software a través de la definición de documentos
generales que se han de producir, proveyendo de guías que indican a nivel de
detalle el contenido de dichos documentos y recomendaciones de las
actividades que hay que realizar durante todo el proceso de producción del
software, así mismo reducir los costos por un aumento de productividad y una
mejora de la calidad de los desarrollos de software
En relación a las normas nos encontramos con un problema fundamental: la
dispersión de las normas relativas de calidad de software que, con frecuencia,
3. han sido creadas por organismos muy diversos, bajo enfoques distintos y
destinadas a ámbitos de actuación diferentes. Muchas compañías, por su
parte, se han visto obligadas a generar sus propias normas cuando no
disponen de unas de ámbito general. De hecho muchas organizaciones
desarrollan sus propios conjuntos de normas adecuándolas a sus fines
específicos. Pero también se dan casos en que organizaciones distintas tienen
los mismos objetivos por lo que resultaría razonable su colaboración y, en todo
caso, la adopción de las normas de la organización que tenga más avanzados
sus desarrollos y un ámbito de actuación más amplio. Puede afirmarse que en
la actualidad se ha llegado a un nivel de madurez en la industria del software
que ha permitido a todos los implicados que exista un interés por aunar sus
experiencias y esfuerzos para crear normas generales que abarquen sus áreas
de interés.
Estos esfuerzos varían en cuanto al tipo de industrias o usuarios así como
en lo relativo a los logros alcanzados, pero la tendencia actual es hacia la
normalización del proceso de desarrollo software a través de normas que
conduzcan a homogeneizar los planes de garantía de calidad, los planes de
gestión de la configuración del software, la documentación de sus pruebas, etc.
Consciente de ello, la Asociación mexicana para la Calidad en Ingeniería de
Software (AMCIS) ha trabajado en un modelo que cubra los requisitos que la
norma ISO 9000 demanda a los productos de esta naturaleza. En el 2002 la
Secretaria de Economía inicio el programa para el desarrollo de la industria de
Software (PROSOFT) con el objetivo de alcanzar niveles internacionales en
capacidad de procesos.
Se trata de un proceso que estimula cambio y mejoras en las organizaciones
en base a información recopilada, midiendo así el desempeño, tanto propio
como el de otros, este proceso debe ser sistemático, formal y organizado.
Herramienta para desarrollar ventajas competitivas en una organización.
La actividad de MOPROSOFT es interna cuando en una organización de
más de un área o departamento, llevan a cabo tareas similares, los distintos
grados de eficacia registrados entre diferentes sectores de una misma
empresa, hace posible la aplicación de procesos de Benchmarking internos.
4. Para tratar de analizar la calidad hay que recurrir a la óptica de quien la
implementa. Para algunos se ha convertido en una necesidad que requiere
completa atención; para otros es una herramienta que necesita ser aplicada al
interior de la empresa para salir a un mundo cada vez más competitivo; para
otros, es algo que esta inherente en la organización que impulsa a hacer las
cosas bien. No hay que descartar tampoco que algunos tienen la creencia que
es la solución a todos los problemas organizacionales y que su implementación
traerá una nube de tranquilidad y seguridad y, otros más descarados, se lanzan
al mundo de calidad total porque es el traje de moda que hay que vestir y lucir,
así internamente nunca haya habido higiene empresarial.
La calidad busca en su esencia formalizar el trabajo en equipo: cuando se
piensa en equipo y no individualmente cada persona se preocupa no sólo por
hacer bien su trabajo sino porque los demás hagan lo mismo. Así, cuando
alguien tiene problemas otro le proporcionará ayuda porque quiere que el
trabajo salga bien para el beneficio mutuo.
En relación a los antes mencionados se describe a continuación
comparaciones sobre el modelo moprosof y los ciclo de desarrollo de
SISCEHIM desarrollado bajo la metodología XP.
Estructuras de ambas metodología
Los procesos de MOPROSOFT abarcan las responsabilidades asociadas a
la estructura de una organización que son: la Alta Dirección, Gestión y
Operación.
Las prácticas de planeación, seguimiento y evaluación se incluyeron en todos
los procesos de gestión y administración
Los Valores originales de la programación extrema son: simplicidad,
comunicación, retroalimentación (feedback) y coraje. Un quinto valor, respeto,
fue añadido en la segunda edición de Extreme Programming Explained.
5. Características
MOPROSOFT METODOLOGIA XP
Las categorías de procesos
corresponden a niveles
Desarrollo iterativo e incremental
organizacionales de
administración
Procesos integrados y
Pruebas unitarias continuas
relacionados
Foco en producto y su
Programación en parejas
capitalización
Capacidad organizacional de
Corrección de todos los errores
gestión de procesos
Capacidad organizacional de
Refactorización del código
gestión de proyectos
Alineación con objetivos de
Propiedad del código compartida
negocio
Diferencias entre ambas metodologías
Metodología XP Extreme Programming MoProSoft
Ventajas Desventajas Ventajas Desventajas
Es recomendable
Evaluaciones
Programación empléalo solo en
Basada en normas ISO formales
organizada proyectos a corto
constantes
plazo.
Reduce números de
Facilita la compresión No es práctico ni
Mejor código. participantes en
del modelo. fácil de usar.
proyecto.
Conseguir su
Múltiples Simplifica la relación No es
implantación en un
desarrolladores entre el modelo de compresible para
equipo es algo que
contribuyen al procesos y la los modelos ISO
puede resultar
diseño. organización. 9000: 2000
dificultoso.
Cuenta únicamente con Mejora de
El equipo no está 9 procesos evitando la procesos
Propiedad colectiva
acostumbrado a este fragmentación que se orientado al
del código.
tipo de técnicas. presenta en otros objetivo del
modelos. negocio.
Menor tasa de Capacidad
errores y Alta comisiones en organizacional de Proyectos para
Satisfacción del caso de fallas. gestión de procesos y largos plazos.
programador. proyecto.
6. El siguiente cuadro muestra las etapas de desarrollo bajo el modelo Moprosoft y las fases
de desarrollo de SISCEHIM, donde se puede apreciar desde nuestro punto de vista que las
metodologías agiles no cumple con todas las fases de desarrollo que debería tener un proyecto
de desarrollo de software, estas son muy limitadas en las actividades de cada una de las fase.
En cada las fases implementadas para el desarrollo de SISCEHIM bajo la metodología XP
no hace una verificación de resultados, se producen entregables anticipadas y estos conlleva a
altas comisiones en caso de fallas. (Que en realidad ocurrió cuando se le agregaron nuevos
módulos al sistema).
MoProsoft VS SISCEHIM
MoProsoft VS SISCEHIM
MoProsoft SISCEHIM
Flujo de Trabajo: Cumple con 4 fases de desarrollo:
Ciclo de trabajo, Fases de un ciclo y Planificación del proyecto, Diseño del
actividades de una fase. proyecto, Desarrollo del sistema.
Pruebas al sistema propuesto.
Fases de un ciclo: Inicio, Requerimientos, Cada fase tiene sus propias actividades
Análisis y Diseño, Construcción, Integración y específicas.
Pruebas y cierre.
Actividades de una fase: Producción/ Se inicio la fase de desarrollo sin la
corrección, Verificación, Validación /Aceptación, culminación de las fases anteriores.
Registro de Mediciones, Incorporación bajo Adapto el sistema a la documentación.
control de configuración
Entregables al finalizar toda la fase. Entregas anticipadas sin necesidad de
culminar la fase.
Orientada a los procesos. Orientada exclusivamente a las
necesidades del cliente.
El propósito de MoProSoft es apoyar a las organizaciones en la
estandarización de sus prácticas, en la evaluación de su efectividad y en la
integración de la mejora continua. Los procesos abarcan las responsabilidades
asociadas a la estructura de una organización que son: la Alta Dirección,
Gestión y Operación, fue desarrollada por la AMCIS (emitida como norma por
el NYCE. Es un sistema de gestión de la calidad de los procesos de desarrollo
y mantenimiento de software para las PYMES.)
• Mejora la calidad del software producido por la empresa que adopta el
modelo.
7. • Eleva la capacidad de las organizaciones para ofrecer servicios con
calidad y alcanzar niveles internacionales de competitividad.
• Integra todos los procesos de la organización y mantiene la alineación
con los objetivos estratégicos.
• Inicia el camino a la adopción de los modelos ISO 9000 o CMMI.
• Sirve para implantar un programa de mejora continua.
• Permite reconocer a las organizaciones mexicanas por su nivel de
madurez de procesos.
• Facilita la selección de proveedores.
• Permite obtener acceso a las prácticas de ingeniería de software de
clase mundial.
Mientras que la metodología XP Extreme programming es una metodología
de desarrollo ligero que se basa en la adaptabilidad de cualquier cambio como
medio para aumentar las posibilidades de éxito de un proyecto. La metodología
XP pretende evitar retrasos en la planificación, sistemas deteriorados y tasa de
defectos, requisitos mal comprendidos y cambios de negocio con falsa riqueza,
cambio de personal. Sus objetivos radican en satisfacer al cliente y potenciar el
trabajo en grupo, contiene cuatro variables importantes que son costo, tiempo,
calidad y ámbito.
El propósito del método de evaluación de procesos EvalProSoft para la
industria de software, es otorgar a la organización solicitante, un perfil del nivel
de capacidad de los procesos implantados en la organización y un nivel de
madurez de capacidades
Por otra parte, y desde nuestro punto de vista los estándares ISO, CMM etc
los adoptaríamos en proyectos grandes, para proyectos pequeños Moprosoft
es una opción por su adaptabilidad a proyectos de pequeña envergadura. Sin
embargo el éxito no depende de los modelos de desarrollo o estándares
aplicados ya que todos cumplen con un proceso de desarrollo, con un ciclo de
vida.
La implementación de un plan estratégico sólo será exitosa si la dirección
de la organización está convencida de la utilidad de esta herramienta y la
8. condición más importante para el éxito es la propiedad y la participación activa
de los miembros del nivel directivo.
Los procesos a disposición del equipo de trabajo son el punto de entrada a
un cambio de paradigma que aumentara la calidad de los desarrollos. Técnicas
como la documentación de procesos y datos cosechados a partir del uso y de
las lecciones aprendidas, y aún más otro concepto que se está instaurando son
las mediciones y los datos de los proyectos, serán las piezas fundamentales
sobre las que se pueda elaborar un producto garantizando su integridad y
calidad durante todo su ciclo de vida.
Se debe busca integrar la calidad en el propio proceso de desarrollo. Es más
se debe busca que la única posibilidad de desarrollo sea creando cosas que
funcionen correctamente, que cumplan con una definición de producto
acabado en la que participan, colaborativamente, el equipo de desarrollo y el
cliente o dueño de producto. Se debe integrar en el equipo a cualquier persona
involucrada, como pueden ser personas responsables del testeo de software,
pues comparten el mismo objetivo que el resto del equipo.
A continuación se presenta los indicadores de calidad del Moprosoft
aplicados a 6 grupos de estudiantes desarrolladores de software del Instituto
Universitario de Tecnología de Maracaibo.
Indicadores Si No
Los miembros de la organización conocen el Plan Estratégico y trabajan en función
del mismo.
Asegurar que los requerimientos se encuentran alineados a lo que el cliente requiere.
Se realizan modificaciones al Plan Estratégico según las Propuestas de Mejora.
El Software es fácil de usar.
El Software esta enfocado al cliente
Se encuentran documentados todos los requerimientos requeridos para cumplir con
estos objetivos.
Los requerimientos no se repiten, son independientes y únicos.
Están definidas las comunicaciones entre los involucrados en el trabajo (incluyendo
los acuerdos con el cliente)
Las actividades de definición, implantación y mejora de los procesos se realizan
conforme a lo establecido en el Plan de Procesos.
Los procesos de la organización se mantienen documentados y actualizados.
9. En cada fase de un ciclo se efectúan todas las actividades de verificación, validación
o prueba, así como las correcciones correspondientes.
El Plan de Mejora está definido en función de las sugerencias
de mejora y las oportunidades de mejora.
Se encuentran alineados con los objetivos de la organización
Se están aplicando todas las actividades definidas en el cronograma de actividades.
Grado de satisfacción del personal con respecto al ambiente de trabajo durante cierto
período.
Identifica ciclos y actividades
Entrega periódica o a solicitud, de Propuestas Tecnológicas al Responsable de
Gestión de Negocio.
Las Acciones Correctivas o Preventivas de los proyectos se generan oportunamente
y en función del análisis de los Comentarios y Quejas del Cliente.
Podemos Acceder a información generada en el proceso en una Base de Datos
centralizada.
Las reuniones de avance del proyecto se realizan conforme a lo acordado con el
Cliente.
Resultados Generales:
Grupo 1. Grupo 2. Grupo 3. Grupo 4. Grupo 5. Grupo 6.
Preguntas si no si no si no si no si no si no
1 1 1 1 1 1 1
2 1 1 1 1 1 1 Grupo: Representante
3 1 1 1 1 1 1 1 Yelitza
4 1 1 1 1 1 1
2 Ayari
3 Angel
5 1 1 1 1 1 1
4 Nilda
6 1 1 1 1 1 1
5 Aura
7 1 1 1 1 1 1
6 Johana
8 1 1 1 1 1 1
9 1 1 1 1 1 1
10 1 1 1 1 1 1
11 1 1 1 1 1 1
12 1 1 1 1 1 1
13 1 1 1 1 1 1
14 1 1 1 1 1 1
15 1 1 1 1 1 1
16 1 1 1 1 1 1
17 1 1 1 1 1 1
18 1 1 1 1 1 1
19 1 1 1 1 1 1
20 1 1 1 1 1 1
Total 13 15 13 17 14 9
10. Análisis de los Resultados:
En la tabla de resultados generales se puede observar que el grupo 4 fue el
que coincidió con el 85% de los indicadores de calidad de Moprosoft,
seguidamente con el grupo 2 con un 75 %, el grupo 5 aplico un 70 % y el
grupo 1 y 3 coincidieron con un 65%, resultando el grupo 6 tan solo con un
45% representando el porcentaje más bajo de los indicadores de calidad por
parte del modelo Moprosoft.
Según los resultados anteriores se puede concluir que no todos los
desarrolladores cumplen con los indicadores de calidad del modelo Moprosoft,
pero en general no están muy lejos de alcanzar los niveles de calidad exigidos
por dicho modelo ya que el porcentaje más alto fue de un 85% y el más bajo de
45%.