Este documento compara la metodología XP (Extreme Programming) y el estilo MoProSoft. XP se basa en desarrollo iterativo e incremental con pruebas continuas, programación en parejas y refactorización del código. MoProSoft incluye 9 procesos alineados con objetivos de negocio. Ambos buscan mejorar la calidad pero XP es más adecuado para proyectos cortos mientras que MoProSoft facilita la comprensión y gestión organizacional a largo plazo.
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Diferencia entre metodología xp extreme programming y estilo moprosoft
1. 2010UNEMI<br />DIFERENCIA ENTRE METODOLOGÍA XP EXTREME PROGRAMMING Y ESTILO MOPROSOFT<br />Estructuras de ambas metodología<br />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. (Representado por la tabla No. 1 y No. 2)<br />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. (Representado por la tabla No. 3)<br />Diferencias entre ambas metodologías <br />METODOLOGIA XP EXTREME PROGRAMMINGMOPROSOFTVentajasDesventajasVentajasDesventajasProgramación OrganizadaEs recomendable emplearlo solo en proyectos a corto plazoBasada en normas ISOEvaluaciones formales constantesMejor códigoReduce número de participantes en proyectoFacilita la comprensión del modeloNo es practico ni fácil de usarMúltiples desarrolladores contribuyen al diseñoConseguir su implantación en un equipo esalgo que puede resultar dificultosoSimplifica la relación entre el modelo de procesos y la organizaciónCapacidad organizacional de gestión de proyectos Propiedad Colectiva del códigoEl equipo no estáacostumbrado a este tipo de técnicasCuenta únicamente con 9 procesos evitando la fragmentación que se presenta en otros modelosCapacidad organizacional de gestión de proyectos Menor tasa de erroresAltas comisiones en caso de fallarCapacidad organizacional de gestión de procesos No es comprensible para los modelos ISO 9000:2000Satisfacción del Programador Capacidad organizacional de gestión de proyectos Mejora de procesos orientado al objetivo del negocio<br />Características<br />MOPROSOFTMETODOLOGIA XPLas categorías de procesos corresponden a niveles organizacionales de administración Desarrollo iterativo e incrementalProcesos integrados y relacionados Pruebas unitarias continuasFoco en producto y su capitalización Programación en parejasCapacidad organizacional de gestión de procesos Corrección de todos los erroresCapacidad organizacional de gestión de proyectos Refactorización del códigoAlineación con objetivos de negocio Propiedad del código compartida<br />Conclusiones<br />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.)<br />Mejora la calidad del software producido por la empresa que adopta el modelo. <br />Eleva la capacidad de las organizaciones para ofrecer servicios con calidad y alcanzar niveles internacionales de competitividad. <br />Integra todos los procesos de la organización y mantiene la alineación con los objetivos estratégicos. <br />Inicia el camino a la adopción de los modelos ISO 9000 o CMMI. <br />Sirve para implantar un programa de mejora continua. <br />Permite reconocer a las organizaciones mexicanas por su nivel de madurez de procesos. <br />Facilita la selección de proveedores. <br />Permite obtener acceso a las prácticas de ingeniería de software de clase mundial.<br />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.<br />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<br />Criterios Empleados<br />MOPROSOFT<br />Se han aplicado los siguientes criterios para la elaboración de este modelo de procesos:<br />La estructura de procesos resultante debe ser acorde a la estructura generalmente empleada por las organizaciones de la industria del software (alta dirección, gestión y operación)<br />La alta dirección tiene un papel importante a través de la planificación estratégica. Debe actuar como promotor del buen funcionamiento de la organización a través de su implicación en la revisión y mejora continua del modelo.<br />El modelo considera a la gestión como proveedora de recursos, procesos y proyectos; así como responsable de la vigilancia del cumplimiento de los objetivos estratégicos de la organización.<br />El modelo considera a la operación como ejecutora de los proyectos de desarrollo y mantenimiento de software.<br />El modelo integra con claridad y consistencia los elementos indispensables para la definición de los procesos y las relaciones entre ellos.<br />Moprosoft se basa en los modelos de procesos ISO 9001:2000, en las áreas de procesos de los niveles 2 y 3 de CMM-SW: CMM-SW v.1.1., en el marco general ISO/IEC15504 y en prácticas y conceptos de PMBOKY SWEBOK.<br />METODOLOGIA XP EXTREME PROGRAMMING<br />Las características fundamentales del método son:<br />Desarrollo iterativo e incremental: pequeñas mejoras, unas tras otras.<br />Pruebas unitarias continuas, frecuentemente repetidas y automatizadas, incluyendo pruebas de regresión. Se aconseja escribir el código de la prueba antes de la codificación. Véase, por ejemplo, las herramientas de prueba HYPERLINK quot;
http://es.wikipedia.org/wiki/JUnitquot;
quot;
JUnitquot;
JUnit orientada a Java, DUnit orientada a Delphi y NUnit para la plataforma.NET. Estas dos últimas inspiradas en JUnit.<br />Programación en parejas: se recomienda que las tareas de desarrollo se lleven a cabo por dos personas en un mismo puesto. Se supone que la mayor calidad del código escrito de esta manera -el código es revisado y discutido mientras se escribe- es más importante que la posible pérdida de productividad inmediata.<br />Frecuente integración del equipo de programación con el cliente o usuario. Se recomienda que un representante del cliente trabaje junto al equipo de desarrollo.<br />Corrección de todos los errores antes de añadir nueva funcionalidad. Hacer entregas frecuentes.<br />Refactorización del código, es decir, reescribir ciertas partes del código para aumentar su legibilidad y mantenibilidad pero sin modificar su comportamiento. Las pruebas han de garantizar que en la refactorización no se ha introducido ningún fallo.<br />Propiedad del código compartida: en vez de dividir la responsabilidad en el desarrollo de cada módulo en grupos de trabajo distintos, este método promueve el que todo el personal pueda corregir y extender cualquier parte del proyecto. Las frecuentes pruebas de regresión garantizan que los posibles errores serán detectados.<br />Simplicidad en el código: es la mejor manera de que las cosas funcionen. Cuando todo funcione se podrá añadir funcionalidad si es necesario. La programación extrema apuesta que es más sencillo hacer algo simple y tener un poco de trabajo extra para cambiarlo si se requiere, que realizar algo complicado y quizás nunca utilizarlo.<br />La simplicidad y la comunicación son extraordinariamente complementarias. Con más comunicación resulta más fácil identificar qué se debe y qué no se debe hacer. Cuanto más simple es el sistema, menos tendrá que comunicar sobre éste, lo que lleva a una comunicación más completa, especialmente si se puede reducir el equipo de programadores.<br />ANEXOS<br />Tabla No. 2 MOPROSOFTTabla No. 1 MOPROSOFT319468523876052070302260<br />149098036830<br />Tabla No. 3 Metodología XP<br />BIBLIOGRAFIA<br />Beck, Kent. Smalltalk Best Practice Patterns. Upper Saddle River, N.J.: Prentice Hall, 1997.<br />Fowler, Martin. Refactoring: Improving the Design of Existing Code.Addison-Wesley.<br />http://www.esp.uem.es/jccortizo/xp.pdf<br />http://www.extremeprogramming.org<br />