sábado, 25 de octubre de 2008

Integrando el PMBOK al Proceso Unificado de Desarrollo de Software en Proyectos de TI

El siguiente tema que tocaré a continuación ha sido una ponencia en el Congreso Nacional de Gerencia de Proyectos PMI 2007 dictado por el PMP Guillermo Villavicencio. Los principales tópicos fueron: el problema con los proyectos TI de desarrollo de software, el RUP, integración del PMBOK al RUP (Mapeo de los principales entregables y actividades entre el PMBOK y el RUP) y un caso de aplicación práctica en el sector financiero en Perú.

Según un reporte Chaos realizado por la Standish Group identificó las siguientes causas del problema con los proyectos TI de desarrollo de software son:

-> Falta de involucramiento del usuario.
-> Falta de apoyo de la alta gerencia.
-> Objetivo de negocios difusos.
-> Gerente de proyecto inexperto.
-> Hitos de larga duración.
-> Requerimientos no administrativos.
-> Personal inexperto.
-> Planeamiento insuficiente.

Los dos grandes factores de éxito que pueden ayudar en la mejora de los proyectos de desarrollo de software a un 100% en 10 años son: proceso iterativo y manejo de proyectos profesional.


RUP es un proceso de desarrollo de software cuyas características son: iterativo, conducido por casos de uso, centrado en la arquitectura y gestión temprana de riesgos. Es un proceso bidimensional eso quiere decir que está compuesta por fases y disciplinas. Como ya sabemos RUP tiene 4 fases: iniciación, elaboración, construcción y transición; y cada una de esas fases tiene sus objetivos principales y su periodo de ejecución. Las disciplinas de gestión permiten: balancear y cumplir los objetivos de negocio, administrar los riesgos involucrados en los proyectos y entregar con éxito un producto que satisfaga las necesidades del cliente y de los usuarios.

El PMBOK posee un framework para gestión de proyectos, posee procesos principales que son agrupados en nueve áreas de conocimientos y muestra el nivel de actividad de cada proceso basado en el tiempo.

Ahora con respecto a la Integración del PMBOK al RUP, cabe recalcar lo siguiente: El RUP no cubre por completo todos los procesos de gerenciamiento de proyectos descritos en el PMBOK, con respecto al gerenciamiento de costos, recursos humanos y adquisiciones. Por otro lado, el PMBOK no está orientado a Proyectos de Desarrollo de Software.

Principales Características:


Propuesta de Solución: “Buscar en el PMBOK las mejoras prácticas de gestión de proyectos e integrarlas al RUP”


Mapeo de Áreas de Conocimientos del PMBOK con disciplinas del RUP


Conclusiones

Podemos utilizar la metodología iterativa incremental de RUP con gestión de proyectos PMBOK para proyectos medianos y grandes, y proyectos exitosos.

Es importante que el cliente entienda las ventajas del proceso iterativo incremental y las ventajas de una metodología formal de gestión de proyectos, al igual que las personas que practican la gerencia de proyectos comprendan la importancia de utilizar una metodología iterativa incremental de gestión de proyectos.

Todavía el mapeo tiene algunos vacíos en la disciplina de la Gestión de Proyectos:

-> Gerenciamiento de Recursos Humanos.
-> Gerenciamiento de Costos.
-> Gerenciamiento de las Adquisiciones y contrataciones.
-> Gerenciamiento del Alcance del Proyecto (el RUP se enfoca más en el alcance del producto o del software).
-> Análisis cuantitativo de riesgos y el planeamiento e ubicación de recursos para su tratamiento.
-> Otras técnicas que si se abordan en el PMBOK.

sábado, 18 de octubre de 2008

Ocho Tendencias a combatir cuestiones claves en Proyectos CRM

Muchos proyectos de CRM no son exitosos debido a que el gran problema es tratado de resolver todas las necesidades a la vez. Otros no tienen éxito debido a la política entre la TI y los interesados del negocio. Sin embargo, existen proyectos de éxito de CRM que han demostrado afrontar términos de tiempo, dinero y recursos. Estos proyectos siguen 8 tendencias importantes para luchar contra las cuestiones claves que a menudo se encuentran en proyectos de CRM, incrementando así el éxito de la entrega de una sólida visión de CRM.

Entonces, ¿Cuáles son dichas tendencias?

1. La correcta solución es seleccionada para un uso razonable de tiempo de ejecución
Si la solución no encaja en el modelo de negocio o procesos de negocio revisados con la funcionalidad out-of-the-box, no debería ser considerada sino se puede implementar con un mínimo de personalizaciones o integraciones con sistemas externos. En lugar de depender únicamente de las aportaciones a largo plazo de los empleados, la dirección ejecutiva usualmente contrata un proveedor independiente comprometido para trabajar con negocios y la administración de TI para determinar la solución que mejor satisfaga las necesidades empresariales.
2. Selecciona el proveedor correcto para la implementación que haga la diferencia
Está bien elegir una de los cinco empresas de Consultorías de spin-off para la implementación de la solución CRM, los más exitosos proyectos de CRM optan por empresas reconocidas de consultoría basada en la retroalimentación “antes de” y en los clientes existentes. Pequeñas empresas de consultoría proporcionan resultados mas eficientes (por lo general tres veces más calidad de los productos proporcionados por las 5 mejores empresas de consultoría), desde el diseño de las fases de producción y meticulosamente la toma de la propiedad en el éxito de la implementación del CRM.
3. Las personas negativas nunca deben estar en el equipo

Siempre habrá personas con energía negativa con el afán de destruir los proyectos de CRM. Los empleados perezosos y descontentos estarán mejor servidos si son expulsados del proyecto o participando en la fase del testeo del sistema donde la negatividad les forzará a ellos a tratar de malograr el sistema, identificando potenciales errores y funcionalidad perdidas que pueden ser resueltas antes de la aceptación del usuario.
4. Equipos híbridos proporcionan mejores resultados
Siempre hay un equipo híbrido que siempre se está basando de un complemento en el lado del cliente al lado del líder desarrollador, líder del testeo, líder de la integración, y un líder del negocio que entiende los procesos del negocio para cada función del sistema. Si los equipos de desarrollo se encuentran en el lugar, dos empleados y/o consultores del cliente estarán disponibles para la explicación de la lógica del negocio que normalmente se pierde en la traducción - un administrador señor de proyecto que comprende el desarrollo de los análisis de control, tableros, y los planes de proyecto detallados y un jefe técnico (consultor con años de experiencia en la entrega de la solución CRM).
5. Malos procesos son eliminados como parte de la preparación de CRM
El éxito de proyectos CRM tienen stakeholders ejecutivos que entienden que los malos procesos implementados en una solución CRM no es más que un mal proceso de negocio automatizado que requiere una mayor personalización, en última instancia utilizando mas tiempo, recursos y presupuesto.
6. La calidad de los datos y la fiabilidad está planificada en fases tempranas
Reconociendo que la conversión de datos deben ser planificados y desarrollados en el mismo tiempo de desarrollo es clave para una visión CRM exitosa. La migración de datos e integración de datos son planificados con las iniciativas de calidad de datos en las etapas de diseño no después del desarrollo de la funcionalidad del sistema.
7. Presentación de informes no es al final
El éxito de los proyectos CRM es mantener el propósito de la gestión de la visibilidad en la planificación y diseño. Dado que ésta es siempre una prioridad y la razón superior para la implementación, la presentación de informes es planificado tempranamente en las etapas de diseño por la ODS y expertos del Data Warehousing.
8. El tiempo de prueba es por lo menos el doble del tiempo de desarrollo

La norma estándar de la asignación de dos veces el tiempo de desarrollo de la prueba exacta sigue siendo válida. El éxito de los proyectos CRM tiene 5 fases que involucra el testeo unitario y funcional, el testeo del sistema, el testeo de la aceptación del usuario, el testeo de prueba de errores del testeo que son resueltos por el equipo de desarrollo. En resumen, los proyectos CRM pueden ser exitosos si estas tendencias se cumplen desde el comienzo del proyecto. A raíz de estas tendencias comunes aumentará la probabilidad de éxito de una visión CRM puesta en acción.

viernes, 10 de octubre de 2008

Las herramientas top10 para la Gestión de Proyectos para oficinas virtuales

Saliendo un poco del tema de las metodologías para la gestión de proyectos, comienzo a buscar algún artículo sobre de alguna novedad que se esté orientada a las herramientas de software para la gestión de proyectos, es así que encuentro un artículo muy interesante que explicaré a continuación. Pero antes quisiera explicar un término que en el artículo se repite en muchas ocasiones, la definición de un asistente virtual ¿? se denomina a “un profesional independiente que brinda servicios administrativos, creativos y/o técnicos. Utilizando medios de comunicación de tecnología avanzada, una VA profesional asiste a clientes en su área de expertise desde su propia oficina, enmarcando los servicios en un acuerdo contractual”.
Ahora que las oficinas remotas, teletrabajo, el trabajo desde el hogar y asistentes virtuales están cobrando impulso, es imprescindible que lleguemos a un modelo general que mejor se adapte a nuestras necesidades para la gestión de proyectos dentro del equipo de trabajo, y con los clientes.
Para una organización de gran tamaño, que aprueba el teletrabajo y el framework de oficina remota, entonces no hay nada de que preocuparse. La oficina remota se ocupará de las herramientas de gestión personalizada y le informará acerca de ello. Por otro lado, si es un asistente virtual independiente, entonces mi hipótesis es que si está confiando en los hilos de su correo para hacer un seguimiento de las conversaciones y el uso de hojas de cálculo para realizar un seguimiento de la situación del proyecto. Si usted es un poco más inteligente, usted va a usar etiquetas (como en Gmail) o carpetas (como en Yahoo y Hotmail) para ordenar los hilos de correo para facilitar el acceso. Archivos adjuntos de correo se pueden guardar en su escritorio. De nuevo, si usted es inteligente, se comparten los documentos en lugar de enviarlos por correo. Ser un Asistente virtual, se entiende al conjunto de trabajo que se encontrará en línea (online). Se puede hacer el manejo de más de un proyecto para el mismo cliente, o tener más de un cliente en cualquier punto dado del tiempo.

La mayoría de las herramientas online para la gestión de proyectos son libres (con algunas características para un único usuario), y viene a un precio razonable (si quieres funciones avanzadas). La lista que figura a continuación muestra las 10 principales herramientas online para la gestión de proyectos:
1. ProjectInsight:
Tiene todas las características necesarias de un sistema de gestión de proyectos. No es tan básico ni tan avanzado. Por lo tanto, si usted es un asistente virtual con conocimientos regulares de trabajo de cómo un sistema de gestión de proyectos trabaja, entonces tiene las posibilidades de probar el siguiente programa.
2. AceProject:
Según lo que considera el autor el AceProject es el mejor sistema de gestión de proyectos. Tienen alrededor de 22 características como un foro de debate, dependencias de tareas y proyectos múltiples, y gestión de tareas considerada como la mejor. Ofrecen una web alojada y una opción auto-organizada si desea que se encuentre de un negocio intralink. Podría ser abrumado inicialmente, pero una vez que llegue a conocerlo, las cosas son mas fáciles. El autor menciona que es un sistema completo para un único usuario y multi-usuarios, por ejemplo: Agencias personales virtuales.
3. CoMindWork:
El autor considera que es el segundo mejor sistema de gestión de proyectos en la web basado en las características como wiki y blog de proyectos específicos que son ofrececidos. Ellos permiten la integración con otras PMS como BaseCamp y Salesforce, y también la integración con Gmail y OpenID. La razón por la que está como el segundo es porque para los usuarios libres solamente pueden tener un proyecto. Tal vez pagando el servicio se ajusten a las necesidades de su negocio.
4. MyClientSpot:
El siguiente sistema de gestión de proyectos ha sido diseñado para asistentes virtuales independientes que operan independientemente. Es sencillo y pequeño. Se trata de un interfaz muy intuitiva y hasta 5 usuarios les permite compartir e interactuar con el equipo de trabajo o cliente. Si maneja 2 proyectos al mismo tiempo (con 20 MB de espacio), entonces esta es, sin duda, la que se ajusta a sus necesidades.
5. BaseCamp:
Dá una visión general de las cosas del proyecto sin adornos. La interfaz tiene pestañas como el tablón de mensajes, archivos de zona, hitos y listas son sólo un clic de distancia. Pruebe la cuenta gratuita para obtener el sentir de las cosas.
6. VirtuaAssistantManager:
La demo da una buena idea sobre de lo que esperamos cuando nos registramos. La lista está alineada según los clientes existentes, dándole una imagen de estado del proyecto en relación con un cliente específico. Este es un servicio de pago a partir de 39 $ / mes por 1 Asistente virtual. Sus clientes incluyen a Pepsi, Time Warner y Comcast, entre otros.
7. EasyProjects:
Esto es especialmente bueno si usted tiene un equipo, y quiere un único centro de mando para todos los proyectos del cliente y también para proyectos in-house delegados al equipo de trabajo. El empleado de tiempo y papel jerárquico basado en permisos son características dignas de mención. Una vez más, este es un servicio de pago.
8. Project.net:
Esta es una edición completa de un sistema de gestión de proyectos. La demo ofrece una visión general de las características de Project Manager del punto de vista. Sin embargo, queda por ver cómo esto puede ser modificado para adaptarse a un único usuario, con múltiples clientes. Ellos ofrecen la personalización de las pestañas y campos de formulario. Pero nunca se sabe hasta que lo intenta.
9. IdidWork:
El autor no llama a este proyecto una herramienta de gestión, pero si son parte de un equipo que te obliga a presentar actualizaciones periódicas de trabajo a largo como correos electrónicos o las hojas de cálculo compartida, puede hacer uso de su interfaz como Twitter, para comunicar su situación laboral. Además, todos acumulados "mensajes de estado" puede ser por correo electrónico al administrador del equipo. Esto también permite una visión general de rendimiento durante un período de tiempo. Vale la pena intentarlo, aunque las preferencias individuales puede diferir.
10. SmartSheet:
Si son muy cómodos con el uso de hojas de cálculo y, a continuación, este sistema de gestión de proyectos es definitivamente para ti. El concepto de trabajo se utiliza para agregar las hojas para el mismo proyecto y le gusta la de ella. Usted puede colaborar con los clientes y cargar archivos para el debate. Toma un poco de tiempo para acostumbrarse al sistema. Esta es gratuita y tienen la versión beta en marcha. http://outsorcerer.com es un proveedor líder de bajo coste, pero fiable asistentes virtuales para ayudar a los empresarios ocupados a ampliar sus esfuerzos.
Espero que les haya gustado! Hasta la próxima...
Source: http://EzineArticles.com/?expert=Ishani_Mitra

sábado, 4 de octubre de 2008

Procesos Unificados y AUP

En el anterior post me enfoqué sobre el OpenUp sus beneficios, principios y ciclo de vida; pero me olvidé de mencionar algo muy importante de que el OpenUp se encuentra dentro de un grupo de mejoras y variaciones del Proceso Unificado. Ahora comenzaré a dar una introducción sobre el proceso unificado para después comenzar a hablar sobre el Proceso Unificado Ágil (AUP) .



¿Qué es Proceso Unificado?

El proceso unificado o también llamado proceso unificado de desarrollo de software es un framework de procesos de desarrollo de software iterativo e incremental. La variación más conocida y extensivamente documentada de los Procesos Unificados es el RUP (Proceso Unificado Racional). También el proceso unificado es generalmente usado para describir procesos generales incluyendo aquellos elementos que son comunes en la mayoría de las variaciones.

Características del Proceso Unificado

- Iterativo e incremental
- Manejo de los Casos de Uso
- Centrado en la Arquitectura
- Enfocado en los Riesgos

Ciclo de Vida del Proyecto

Este punto ya ha sido mencionado en el anterior post en detalle, pero quiero recalcar que todas las variaciones del Proceso Unificado tienen las mismas 4 fases en común: Iniciación, Elaboración, Construcción y Transición.

Refinamientos y Variaciones del PU

Los refinamientos del Proceso Unificado varían de uno del otro en la forma que se categorizan sus disciplinas o flujos de trabajo. Por ejemplo, RUP define 9 disciplinas: Modelamiento del Negocio, Requerimientos, Análisis y Diseño, Implementación, Prueba, Despliegue, Configuración y Gestión del Cambio, Gestión del Proyecto y Ambiente. El EUP (Proceso Unificado Empresarial) adiciona ocho disciplinas empresariales y mientras las variaciones ágiles del Proceso Unificado tal como OpenUp/Basic y AUP (Proceso Unificado Ágil) simplifican el RUP reduciendo el número de disciplinas.

Los refinamientos también varían en el énfasis puesto en los diferentes artefactos. Los refinamientos ágiles racionalizan el RUP simplificando los flujos de trabajo y reduciendo el número de artefactos; además pueden variar en las especificaciones después de la etapa de transición como por ejemplo en el RUP después de su fase de transición es usualmente seguida por la fase de iniciación mientras que en el EUP es la fase de Producción.

Las organizaciones utilizan los procesos unificados invariablemente incorporando sus propias modificaciones y extensiones. El siguiente listado es sobre los refinamientos y variaciones más conocidos:

- Proceso Unificado Ágil (AUP): variación ligera desarrollada por Scott W. Ambler
- Proceso Unificado Básico (BUP): variación ligera desarrollada por IBM y el precursor del OpenUp.
- Proceso Unificado Empresarial (EUP): extensión del RUP
- Proceso Unificado Esencial (EssUP): variación ligera desarrollada por Ivar Jacobson.
- Proceso Unificado Racional (RUP): proceso de desarrollo de software racional propuesto por IBM.
- Método Unificado de Oracle (OUM): proceso de desarrollo e implementación de Oracle.

AUP – Disciplinas, Principios y Ciclo de Vida

Como ya lo había mencionado antes el Proceso Unificado Ágil es una versión simplificada del RUP, la cual describe en una forma simple, fácil de entender y brinda un enfoque de desarrollo de software utilizando técnicas ágiles y conceptos del RUP.

En comparación de las disciplinas del RUP que son 9, el AUP tiene solamente 7 las cuáles algunos son combinaciones de dos disciplinas del RUP

1. Modelo: Entender el negocio de la organización, el problema de dominio que se abordan en el proyecto, y determinar una solución viable para resolver el problema de dominio.
2. Implementación: Transformar el modelo(s) en código ejecutable y realizar un nivel básico de pruebas individuales.
3. Prueba: Realizar una evaluación objetiva para garantizar la calidad. Esto incluye la búsqueda de defectos, validar que el sistema funciona tal como está establecido, y verificar que se cumplan los requisitos.
4. Despliegue: Realizar un plan para la presentación del sistema y ejecutarlo para hacer que el sistema se encuentre a disposición de los usuarios finales.
5. Gestión de Configuración: Realizar la gestión de acceso a artefactos de su proyecto. Esto incluye no sólo el seguimiento de las versiones del artefacto en el tiempo, sino también el control y la gestión de cambios para ellos.
6. Gestión del Proyecto: Dirigir las actividades que se lleva a cabo en el proyecto. Esto incluye la gestión de los riesgos, la dirección de personas (la asignación de tareas, el seguimiento de los progresos, etc), y coordinar con las personas para garantizar que se entrega a tiempo y dentro del presupuesto.
7. Ambiente: Apoyar el resto de los esfuerzos por garantizar que el proceso adecuado, la orientación (normas y directrices), y herramientas (hardware, software, etc) están disponibles para el equipo según cuando ellos lo necesiten.

El ciclo de vida del AUP es el siguiente:


La primera cosa que es notable es que las disciplinas han cambiado. En primer lugar, la disciplina "Modelo" abarca el Modelado de Negocios, Requisitos y Análisis y Diseño del RUP. El Modelo es una parte importante del AUP, como se puede ver, no domina el proceso. En segundo lugar, las disciplinas Configuración y Gestión del Cambio es ahora la Gestión de Configuración, en su desarrollo ágil de Gestión del Cambio son parte de de los esfuerzos de gestión de requerimientos, que forma parte de la disciplina del Modelo.


Puedo mencionar algunos principios como:

1. El personal necesita saber lo que está haciendo. La gente no va a leer la documentación de los procesos en detalle, sino que quieren una orientación de alto nivel y/o formación de vez en cuando. El producto AUP proporciona enlaces a muchos de los detalles si uno está interesado pero no obliga seguir los detalles.
2. Simplicidad. Todo se describe concisamente usando unas páginas, no miles de páginas.
3. Agilidad. El AUP se ajusta a los valores y principios de la Alianza Ágil.
4. Centrarse en las actividades importantes. La atención se centra en las actividades que realmente cuentan.
5. Herramienta de la independencia. Poder usar cualquier herramienta que desee utilizar con la AUP. Es recomendable utilizar herramientas que mejor se adapten para el trabajo, que a menudo son herramientas simples o incluso herramientas de código abierto.
6. Querer adaptar este producto para satisfacer sus propias necesidades. El producto AUP es fácil de manejar a través de cualquier herramienta de edición de HTML. Usted no necesita comprar una herramienta especial, o tomar un curso, para adaptar el AUP.

Las versiones incrementales en el tiempo son las siguientes:

El primer release a menudo toma más tiempo que las demás, ya que mayormente el equipo de trabajo tiene la necesidad de obtener la mayor parte del sistema lo que permite la existencia de la colaboración del equipo. La primera producción de liberación puede tomar doce meses y la segunda nueve meses, y otras cada seis meses. Una de las primeras se centran en cuestiones de despliegue no sólo le permite evitar problemas que también le permite aprovechar de sus experiencias durante el desarrollo. Por ejemplo, cuando se está implementando el software en una área debe tomar notas de lo que funciona y lo que no.