¿Qué es eso de las metodologías? ( II )

Y llegado este momento, y después del post anterior dónde hablábamos de las buenas prácticas,  volvemos a la pregunta que nos hacíamos al principio.¿Qué metodología debo usar?¿Cuál es la mejor?¿Cómo puede empezar a usarla?

Pues la verdad que esta pregunta puede dar para mucho más que un post, pero intentaré dar algunas pinceladas que os puedan ayudar a empezar.

La respuesta no es una respuesta absoluta de todo o nada, es decir, no existe una metodología que claramente sea mejor que otra y que siempre debamos aplicar. Factores como el tipo de proyecto o empresa son determinantes en la elección metodológica.

Disponer de una herramienta que nos ayude en el uso de la metodología que elijamos es un factor importante, aunque no determinante. La herramienta nos puede ayudar a poder seguir los requerimientos que nos pide la metodología seleccionada de una manera más llevadera.

Como ya estaréis pensando, Team System es un producto que nos puede ayudar bastante. Tal es la importancia que cobran las metodologías en Team System, que el primer paso para crear un nuevo proyecto es elegir cómo queremos trabajar, es decir, la metodología.

clip_image003_thumb1

Uno de las grandes innovaciones y ventajas de Team System son las guías de proceso. Las guías de proceso nos dan las directrices a seguir para poder seguir una determinada metodología de desarrollo; Nos dicen que roles existen, cómo se relacionan, qué elementos de trabajo existen, cuáles son los flujos de los mismo etc..Factores claves para conocer qué tengo que hacer para poder implantar una metodología.

Otro factor importante a valorar es la contratación de alguien que ya tenga experiencia en el uso de metodologías de desarrollo y que nos pueda asesorar sobre cuál es la que más no conviene a nosotros. Nos puede ayudar a tomar la decisión y lo que suele ser más importante, a implantarla. Ayudarnos a implantar puede llegar a ser clave, ya que no suele haber segundas oportunidades en este tipo de decisiones.

Metodologías en Team System

Team System incluye dos metodologías por defecto; MSF for CMMI y MSF Agile.

MSF for Agile Software Development se define a sí mismo como un proceso ligero que se adhiere a los principios del manifiesto ágil. Elige MSF Agile para proyectos de ciclo de vida cortos y orientados a resultados, dónde el grupo de trabajo puede trabajar con documentación intermedia. MSF Agile es una guía flexible que ayuda a crear sistemas adaptativos, adelantándose al cambio, enfatizando las entregas periódicas al cliente y que fomenta las validaciones del cliente como medida del éxito.

MSF for CMMI Process Impovement está diseñado para llegar al nivel 3 CMMI. Extiede MSF Agile con planificación más formal, más documentación, más elementos de trabajo y mayor seguimiento. MSF for CMMI implementa una versión más ligera de lo que es la implementación más tradicional de CMMI.

clip_image005_thumb1

La diferencia principal está en el nivel de formalismo que exigen, el nivel de esfuerzo que hay que emplear y la profundidad de las métricas que se usan. Por ejemplo, MSF for CMMI incluye el rol del auditor dentro del proyecto, existiendo una serie de tareas e informes para ese rol. Las dos alternativas soportan procesos iterativos de desarrollo, con continuos ciclos de aprendizaje y refinamiento.

Existen otras metodologías, que aunque no viene por defecto, pueden usarse con Team System; RUP, CMMI en su implementación tradicional, Scrum o eXtreme Programing son algunas de las alternativas que ya están disponibles.

Y si aún así no fuese suficiente, Team System permite crearte tu propia metodología de trabajo, ya sea partiendo de cero o modificando algunas de las existentes. También debo decir, que aunque lo permite, no lo recomiendo.

¿Una metodología ágil o guiada por plan?

Las metodologías ágiles pueden encajar en la mayoría de los proyectos de desarrollo actuales y salvo en situaciones muy especiales, por ejemplo situaciones impuestas por el cliente, ayudaran más al éxito de nuestro proyecto que las guiadas por plan.

Aún así, tenemos que tener cuidado con la palabra ágil, ya que puede convertirse es un palabra peligrosa que se vuelva contra nosotros. Las metodologías ágiles surgieron como una alternativa a las metodologías formales estilo CMMI, las cuales se consideraban excesivamente pesadas y rígidas por su carácter normativo y su fuerte dependencia de las planificaciones detalladas previas al desarrollo.

Esto no implica que las metodologías ágiles no requieran documentación ni que no requieran planificación. Las metodologías ágiles dan otro enfoque, que se basa en los postulados del manifiesto ágil que deben ser asumidos si se quieren usar este tipo de metodologías:

· Valorar los individuos y su interacción, por encima de los procesos y las herramientas.

· El software funciona, por encima de la documentación exhaustiva.

· La colaboración con el cliente por encima de la negociación.

· La respuesta al cambio por encima del seguimiento de un plan.

Si queréis interesado en cambiar de metodología o empezar a aplicar una, mi recomendación sería utilizar Team System y MSF Agile. MSF Agile es una metodología ágil que no rompe en exceso con las formas de trabajar tradicionales y que puede hacer que la transición sea más llevadera. Otra metodología que me gusta especialmente es Scrum, pero debo reconocer que exige un cambio de mentalidad que no siempre es posible de realizar.

Conclusión

Disponer de una metodología adecuada en el proyecto es algo básico si queremos asegurar el éxito del mismo. Por tanto, la elección de la misma debe ser valorada correctamente teniendo en cuenta los diferentes condicionantes que pueda haber, como el tipo de proyecto o empresa.

Una vez que hemos puesto los cimientos del proyecto (las buenas prácticas ) Team System y MSF Agile pueden ser una alternativa válida para muchos de los proyectos que existen actualmente, aunque si queremos que esta elección sea lo más correcta posible, la mejor solución puede pasar por con contar con gente con experiencia en esta área, que pueda ayudarnos en la implantación de la herramienta y la metodología.

Ibon Landa

bon Landa lleva más de 15 años dedicado al desarrollo de software. Durante este tiempo ha trabajado en diferentes empresas en las cuáles ha podido trabajar en diferentes entornos y tecnologías. Actualmente está focalizado principalmente en tareas de desarrollo, arquitectura, en las herramientas del ciclo de vida y en todo lo relacionado con la plataforma de Cloud Computing Microsoft Azure, área en el que ha sido reconocido como MVP. Participa de forma activa en la comunidad, escribiendo su blog, manteniendo un portal sobre Microsoft Azure y colaborando con Microsoft y grupos de usuarios en eventos de formación, talleres y giras de producto.

7 comentarios en “¿Qué es eso de las metodologías? ( II )”

  1. Es una buen apauta ma la eleccion de metodología. EN al empresa que laboro escogieron la MSF DE microstf. pero siento que algo les falta, no los puedo guiar porque desconozco del proceso correcto. Mi pregunta es: ¿Una vez escogido la metodología, que paso debo seguir, como se organiza todo? es necesario instalar team system??

  2. Es una buen apauta ma la eleccion de metodología. EN al empresa que laboro escogieron la MSF DE microstf. pero siento que algo les falta, no los puedo guiar porque desconozco del proceso correcto. Mi pregunta es: ¿Una vez escogido la metodología, que paso debo seguir, como se organiza todo? es necesario instalar team system??

  3. Hola,

    Implantar una metodología no es un proceso trivial, es un proceso al que hay que dedicar tiempo y esfuerozo.

    http://geeks.ms/blogs/rcorral/archive/2006/10/09/Implantar-mejoras-en-la-gesti_F300_n-de-tus-desarrollos.aspx

    Team System es sólo la herramienta. Si quieres implantar una metodología primero es conocerla bien y aprender cómo funciona.

    Team System te puede ayudar a faciliar el proceso de implantación de dicha metodología en tu proceso de desarrollo.

    Un saludo,

  4. Hola, soy estudiante de bibliotecología pero no entiendo que es la metodología alternativa, he buscado vía internet por que me pidieron un trabajo de investigación sobre ella, pero no encuentro ninguna definición sobre lo que es en sí ese tipo de metodología, para mí es nueva.

    Agradezco tu aporte.

    MArlin Muñiz

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *