Microsoft Solution Framework
Tiempo total: 20 días con 21:36:37 hrs
Esta publicación trata sobre el marco de trabajo Microsoft Solution Framework, describiendo los conceptos principales, metodologías que utiliza, sus bases, sus principios fundamentales y los patrones de pensamiento. Se presentara un resumen de los aspectos más importantes de los documentos de consulta utilizados.
Qué es?
Para definir qué es? Es necesario entender las siguientes definiciones:
Framework
Es un entorno de trabajo que reúne un conjunto estandarizado de términos, conceptos, practicas y criterios que están enfocados en un tipo de problemática que sirve como base para enfrentar nuevos problemas de cualquier índole.
Como ingeniería de software representa una arquitectura de software que modela las relaciones generales de las entidades del dominio, proporcionando las aplicaciones propias del dominio y una metodología especial de trabajo.
ITIL
MSF funciona utilizando el marco de trabajo ITIL, sus siglas en ingles significan biblioteca de infraestructura de tecnologías de información. ITIL consiste en una serie de prácticas para la gestión de servicios y desarrollo de tecnologías de la información. Es decir que ITIL provee una guía que abarca toda infraestructura, desarrollo y operaciones que están relacionadas con IT siendo prácticas totalmente independientes del proveedor.
Metodologías de trabajo
MSF está basado en dos metodologías de trabajo, las cuales son modelo en cascada y desarrollo ágil de software.
Modelo en cascada
Las fases de esta metodología son concepción, iniciación, análisis, diseño, construcción, pruebas, producción/implementación y mantenimiento. Esta metodología consiste en pasar a la siguiente iteración únicamente si la anterior se ha completado correctamente. Esta metodología está orientada a industrias, debido a que el cambio en las fases anteriores es algo difícil una vez se ha finalizado y se le ha dedicado bastante tiempo, en las industrias es algo bastante costoso y poco usual.
Desarrollo ágil de software
Es un método de desarrollo de software que promueve la planificación adaptativa, desarrollo evolutivo y mejora continua mostrando una respuesta rápida a los cambios. Se puede decir que el desarrollo ágil está conformado por varias iteraciones en las que se busca proporcionar demos de una manera mucho más rápida y eficiente que el modelo en cascada. El modelo en cascada está restringido a hacer cambios de una manera mucho más costosa y complicada, en cambio con una metodología ágil lo que se logra es una mejor adaptación a los cambios que se han realizado o se solicitaran.
Principios fundamentales y patrones MSF
Los principios fundamentales y patrones de pensamiento son la base de MSF a partir de los años de experiencia que han adquirido, estos son conceptos de sentido común que giran en torno a modelos, procesos y disciplinas que hacen que el equipo desarrolle productos de una mejor calidad.
Principios fundamentales
1. Fomentación de las comunicaciones abiertas.
Necesario para que el equipo de trabajo una vez conocen los objetivos del proyecto puedan compartir la solución y así establecer una mejor comunicación, desarrollando una mejor solución.
2. Trabajo hacia una visión compartida.
Ayuda al equipo de trabajo a la toma de decisiones bajo el contexto correcto logrando mejores resultados.
3. Empoderar a los miembros del equipo.
Significa permitir que los miembros del equipo aporten ideas al desarrollo del proyecto. En casos contrarios se hacen que los integrantes restrinjan su creatividad bajando la moral y limitando el rendimiento en equipo.
4. Establecimiento de la responsabilidad clara y responsabilidad compartida.
La responsabilidad hace que los miembros autorizados del equipo sientan una mayor responsabilidad por el rendimiento del equipo haciéndose responsable de sus resultados, y en conjunto por producir un mejor resultado. Esto se puede fomentar al enfocarse en los resultados positivos y en la calidad.
5. Entrega de valor incremental.
Tiene dos tipos de facetas, asegurarse que lo que se entrega tiene un valor óptimo para las partes interesadas y que, en cada entrega se agrega un valor óptimo a lo presentado.
6. Respuesta ágil, expectativa y con facilidad de adopción a los cambios.
Debido a que el cambio se da en cualquier momento, es mejor mantener a la organización o grupo de trabajo preparado y listo para adaptarse a los cambios de una manera ágil, ajustándose más rápidamente a los cambios presentados.
7. Inversión en calidad.
Consiste en defender la calidad y cuantificar el nivel de calidad. La calidad debe de incorporarse en el ciclo de vida de desarrollo de la solución porque esta no se dará de una manera espontanea o rápida en un instante en el desarrollo del proyecto.
8. Aprender de todas las experiencias.
Significa aprender de las experiencias pasadas a nivel de proyecto, individual y de organización para producir mejores resultados.
9. Asociación con clientes internos y externos.
Ayuda a que las partes interesadas interactúen mas con la solución que se presentara, asegurándose que se reciba el producto que se espera.
Patrones de pensamiento
Los principios fundamentales están orientados al trabajo en equipo, un patrón de pensamiento es una orientación individual que se debe de dar al trabajador o integrante del equipo para asegurarse que se obtendrán los resultados que se necesitan, guiando al individuo por el camino correcto.
1. La fomentación de un equipo de compañeros.
Hace que las personas trabajen en equipo y no fomenta la anarquía y administración por comités. Hace que las personas trabajen con responsabilidad e igualdad en grupo.
2. Céntrese en el valor de negocio.
Significa hacer entender lo que es de valor para un cliente, es decir que no se centrara en la entrega del producto final, se debe de centrar en la entrega de una solución efectiva que sea de valor para las necesidades del cliente.
3. Mantener la perspectiva de la solución.
Para esto es necesario tener una visión compartida. Significa que los integrantes del equipo se deben de centrar en la solución definitiva que se requiere y no en los detalles pequeños de lo que se les ha asignado.
4. Fomentar el sentimiento por el orgullo del trabajo.
Significa hacer que los miembros del equipo produzcan calidad y que se adopte como una responsabilidad individual por los resultados.
5. Aprendizaje continuado.
Debido a que el sentirse orgulloso del trabajo no es suficiente para producir el resultado esperado, es necesario tener en mente que cada proyecto es diferente y nuevo, requiriendo nuevas habilidades que se deberán de aprender. Se debe de fomentar la mejora continua para aprender nuevas habilidades en cada proyecto.
6. Internalización de las calidades de servicio.
Todos los miembros de la organización deben de saber que es la calidad de servicio, no únicamente los arquitectos. Esto hace posible la internalización de la calidad de servicio haciendo que cada persona pueda entender que es lo que se quiere producir.
7. Promover el ser un buen ciudadano.
En el desarrollo de software ser un buen ciudadano significa ser una persona que provee respeto, sigue reglas, interactúa con el equipo de trabajo y hace todo con responsabilidad para presentar el producto esperado por el cliente.
8. Cumplir con los compromisos.
Es sinónimo de responsabilidad. En un equipo de trabajo se espera que todos los integrantes cumplan con los compromisos establecidos, de esta manera nunca se perderá el plazo establecido promoviendo la confianza en el trabajo en equipo. El cumplir con los compromisos no permite el desequilibrio del equipo.
Conclusiones
- MSF es un marco de trabajo que presenta una guía para desarrollar software.
- Está basado en el marco de trabajo ITIL para desarrollo de tecnologías y estrategias basadas en IT
- Utiliza dos metodologías de trabajo que son desarrollo ágil y el modelo en cascada. El modelo en cascada se desarrolla por iteraciones, pasando a la siguiente fase únicamente si la iteración anterior ha finalizado correctamente. El problema del costo por cambios solicitados se soluciona en el desarrollo ágil, permitiendo una mejor adaptabilidad en los cambios.
- Los principios fundamentales de este marco de trabajo se centran en el trabajo en equipo para hacer que las personas tengan el enfoque correcto de responsabilidad y calidad.
- El objetivo de un patrón de pensamiento es hacer que el individuo tenga la visión correcta de desarrollar un producto en equipo, creando soluciones creativas y aportando al producto de calidad que se espera.
Referencias
[https://www.youtube.com/watch?v=qn6n1YIQJb8]
[https://www.youtube.com/watch?v=UYBInEKo57o]
[https://www.youtube.com/watch?v=YCp2G9aS5qE]
[http://msdn.microsoft.com/es-es/library/jj161047.aspx]
[http://es.wikipedia.org/wiki/Framework]
[http://es.wikipedia.org/wiki/Information_Technology_Infrastructure_Library]
[http://en.wikipedia.org/wiki/Microsoft_Solutions_Framework]