33
2007 Recomendaciones y Lecciones Aprendidas en la Utilización de Herramientas para el Soporte a los Procesos Lic. Walter Ariel Risi, CQE, CSQE 5 de Noviembre de 2008

IEEE / UCA Talk on Software Engineering Tools, By Walter Ariel Risi, 2008

Embed Size (px)

DESCRIPTION

Presentation given by Walter Ariel Risi at session organized by IEEE and Argentinean Catholic University, 2008.

Citation preview

  • 1. Recomendaciones y Lecciones Aprendidas en la Utilizacin de Herramientas para el Soporte a los ProcesosLic. Walter Ariel Risi, CQE, CSQE 5 de Noviembre de 20082007

2. Motivacin por qu herramientas? Dice el adagio popular, "primero los procesos, luego las herramientas pero en la prctica, esto es slo parcialmente cierto Cuntos elementos manuales es necesario mantener para mantenerfuncionando el proceso? Las herramientas han comenzado a ser unaPor otro lado, los procesos y las necesidad, no un lujo.herramientas se afectan mutuamente no se pueden dejar paradespus. 3. Mejora de Procesos con Herramientas qu es?Definir / mejorar / adaptar los procesosde una organizacin de la mano de una herramienta, que permita automatizarmuchas de las actividades del proceso que de otra manera se haran manualmente. Implica un componente Implica un componenteTECNOLGICO (entender el METODOLGICO (entender, alcance y capacidades de la definir, adaptar, mejorar losherramienta, hacer de puente procesos, capacitar, transmitir,entre proceso y herramienta,gestar el cambio) implementar) 4. Ejemplos de Herramientas RPM Es la solucin integral de gestin de proyectos, portfolio y servicios IBM RATIONAL (de TI o negocio). Entre sus elementos principales se encuentran: Gestin de Mltiples Proyectos Gestin de Portfolio Gestin de Recursos Manejo de Presupuestos / Gastos Manejo de Requerimientos y CambiosManejo de Issues / Riesgos Manejo de Documentacin Definicin de Workflows / Procesos Carga de Horas Reportes Estticos y Dinmicos Interfaz c/Otras Aplicaciones 5. Ejemplos de Herramientas EPM Es la solucin integral de gestin de proyectos de MICROSOFT (de TI o negocio). Entre sus elementos principales se encuentran: Gestin de Mltiples Proyectos Gestin de Recursos Manejo de Issues / Riesgos Manejo de Documentacin Definicin de Workflows / Procesos Carga de Horas Facilidades de Colaboracin Integracin con Office Amplsima Extensibilidad (se puedeprogramar en .NET sobre ella) 6. Ejemplos de Herramientas PPM 7. Ejemplos de Herramientas Revisiones de CdigoHerramienta de Revisin (II) Botonera de filtros de resultadosAcceso al detalle del resultadoDetalle delresultado 8. Los problemas tpicos Cmo es que esto no se puedePero entonces hacer? para que la compr?Al final estoy No era que y cmo esdemorando msapretbamos un esto de que el bug que antes!botn y ?estar resuelto en el release del 2009?Cmo que es unbug de laherramienta? EN QU NOS Cmo es queEMBARCAMOS !! esta funcionalidad se licencia aparte? 9. Objetivos de la presentacinTransmitir experiencias tiles para El manejo de las (muchas veces excedidas) expectativas sobrelos problemas que las herramientas vienen a solucionar yaquellos que realmente solucionarn.El balance entre las limitaciones herramentales, los workarounds para manejarlas, y las expectativas de sponsors yusuarios. El manejo de los problemas y la gestin del soporte del proveedor, tanto del punto de vista del cliente como del implementador.Los principales puntos a tener en cuenta en la bsqueda yseleccin de la herramienta, y los tropiezos ms importantes a evadir. 10. Experiencias de todo tipo y factor 2 proyectos de3 proyectos de2 Proyectos de Implementacin de Implementacin de Implementacin, 1 proyecto de SCM y Deployment Herramientas de Herramienta SCMSeleccin decon HerramientasProject & Portfolio World ClassHerramientas deOpen Source / BajoManagement con 2SCM World ClassCosto World-Class Distintas2 Proyectos de1 Proyecto deMejoras / Ajustes 1 Piloto conSeleccin decon Herramienta de Herramienta deHerramientas deProject & PortfolioProject & PortfolioProject & Portfolio World Class Management WorldManagementClass 1 Proyecto de 1 Piloto conControl SobreHerramienta de2 Proyectos con Implementacin de y varias SCM World ClassHerramientas deProcesos en SCMexperiencias msTesting Tcnico World Classcomo usuarios yWorld Class seleccionadores 11. Taxonoma de Consejos La Puesta enMarcha, laLa Herramienta,Implementacinel ProductoTcnicoEl Producto Comercial , elFabricante 12. La Herramienta / Leccin Aprendida 1Pero cmo es que no puedo sacar un reporte en este formato? Si con Excel poda! al final, no s para que compr la herramienta.Ya vamos por la tercera reunin de relevamiento, y seguimosdiscutiendo las adaptaciones al cuadrito de avance que vamos a programar, porque el que vena no gustaba y El uso de una herramienta comercial EN TODOS LOSCASOS implica un TRADE OFF recuerde y hgalorecordar, ganamos algo a cambio de algo (Potenciavs. Flexibilidad, en general) 13. La Herramienta / Leccin Aprendida 1 / Survival Kit Las herramientas normalmente estn pensadaspara funcionar con un cierto modelo o forma de usosubyacente Por ejemplo, existen herramientas muyorientadas al trabajo por proyectos. Si intentousarlas en un modelo ms orientado aoperaciones, es posible que resulte poconatural. Lo mismo a la inversa. Cuanto ms me separe del modelo propuesto,menos la estoy aprovechando y menos estoyamortizando el costo. Cuando uno compra una herramienta, estsacrificando la flexibilidad extrema que nos da undesarrollo a medida, por un paquete ms general,pero que viene ms o menos listo para usar. 14. La Herramienta / Leccin Aprendida 2 A: No puede ser, en teora esto tendra que andar B: Ah, espera, que lleg la respuesta de soporte es un bug del producto. A: Con razn y cundo tendremos el bug fix? B: A fin de ao, cuando salga el BETA del nuevo release. Las herramientas tienen BUGS y defectos a vecesinslitos, y la solucin muchas veces no llegar en el corto plazo. Habr que convivir con los workaroundsalgunas veces, y un implementador flexible y realista es la clave para suplir este problema 15. La Herramienta / Leccin Aprendida 2 / Survival Kit Suena inslito que aceptemos esto, pero es una realidad qu cunto ms reciente la herramienta, ms potencia, pero tambin ms sorpresas. En primer lugar, naturalmente hay que prevenir o aceptar el riesgo. Naturalmente, en un paquete con 1 mes en el mercado, estos problemas son de esperar. En otros casos, ayuda consultar en la comunidad de usuarios (Ej. foros), o a conocidos que la estn usando. La fama del vendor tambin es una seal. Pero una vez con la herramienta adquirida, no tiene caso desesperarse ante un problema. Algunos consejos para cuando el workaround ya es una necesidad Primero, tener registro de los workarounds. En lo posible, seguir los workarounds recomendados por el fabricante o la comunidad. Dejar bien claro con el fabricante cul es el problema y el workaround (normalmente, a travs del sistema de tickets). 16. La Herramienta / Leccin Aprendida 3A: Pero esta herramienta no es flexible A: En Diciembre sale el nuevo release depara nada! Estbamos mejor con lala herramienta estimamos seis mesesanterior!para migrar. B: Por qu? Si era mucho ms primitiva. B: Seis meses!? A: Porque se adapta mejor a nuestroA: Si, uno para el producto en s, y el resto modelo! La adaptamos de pies a cabeza para todas las soluciones adhoc quecon scripting desarrollamos por encima. Las herramientas tienen un MODELO DE USOSUBYACENTE ms o menos definido, y es preferibleACOMPAARLO NO IR EN CONTRA del mismo. De otra manera, se termina con hbridos difciles de mantener y evolucionar. 17. La Herramienta / Leccin Aprendida 1 / Survival Kit Normalmente, hay dos extremos en toda Cunto ms me aleje del modelo herramienta de soporte a los procesos preestablecido, ms difcil ser La herramienta con funcionalidad Subirme a las nuevasfuera de la caja y poca flexibilidad. versiones La herramienta con funcionalidad Tener soporte del fabricante.mnima y gran cantidad de ladrillosaltamente flexibles y combinables. Tener soporte de lacomunidad. Es clave tener bien claro qu es lo que uno est comprando o necesitando para Puede ayudar, al momento de evitar decepciones y malos entendidos. seleccionar la herramienta, teneridentificada la funcionalidad (Ej. Por otro lado, es clave tambin para Casos de Uso) que interesa hacer cuentas, y calcular el costo total utilizar, y ver una maqueta o piloto de implementacin y mantenimiento. de tal funcionalidad, si el vendornos lo permite. 18. El Producto / Leccin Aprendida 1IMPLEMENTADOR: Buen da, quiero hacerleCLIENTE: estamos urgidos poruna consulta por el feature X.saber si podemos correr en estaSOPORTE: Por favor, un ticket por problema.plataforma. (varios tickets ms tarde) IMPLEMENTADOR: DebemosIMPLEMENTADOR: Quera consultarle por el certificarlo con el soporte oficial. feature X, el problema es Esta plataforma est certificada? SOPORTE: Por favor, tradzcalo al elbons SOPORTE: Y el manual debera antes de enviarlo, ya que vamos a transferirlo aldecir. Estuvieron vindolo? Algo centro de Elbonia. debe decir MUCHAS VECES, UNO ESTAR SOLO El vendor puede ayudaro no, porque a veces incorpor la herramienta hace muy poco; Tiene soporte local? De qu nivel? En nuestro idioma? Mitigue riesgos balanceando vendor, implementador y comunidad. 19. El Producto / Leccin Aprendida 1 / Survival Kit Tips sobre el vendor Tips sobre el partner Tiene presencia local real, o slo Tiene experiencia en la oficina de valija?herramienta o en herramientas similares? Hace cunto adquiri la herramienta? Podemos chequear Tiene experiencia en los procesos que la conoce realmente?subyacentes? Es slo un instalador de la herramienta? Dnde est el centro de soporte del vendor? En Argentina? En Tiene capacidad demostrable? EEUU? En Elbonia?Es una empresa slida, que puede manejarse ante una rotacin? El vendor tiene consultores tcnicos locales? El soporte est incluido en la propuesta? El soporte est incluido en el Existe una opcin B? producto? 20. El Producto / Leccin Aprendida 2 A: y si quiero automatizar mi CLIENTE: Bien, ya estamos con todo casi listo.workflow, puedo? Slo resta que agreguemos estos campos extra enB: Si, claramente! los reportes. A: O sea que comprando ABCIMPLEMENTADOR (tras probar): EncontramosEnterprise tengo todo! una limitacin no esperada!B: Eh, no. ABC Enterprise permiteSOPORTE (tras averiguar): Si, la limitacin es unusar workflows predefinidos. Para feature. Modificar esos campos es un serviciomodificarlos, se necesita ABC aparte. Se cobra por separado. Enterprise Plus. Cuidado, CONOZCA BIEN LO QUE VA A COMPRAR Y LO QUE NO. Muchas veces los productos son complejos, tienen licenciamiento complejo, y podemos encontrarnos con sorpresas. A veces, incluso inslitas. 21. El Producto / Leccin Aprendida 2 / Survival Kit Especifique las tareas que cada uno de los potenciales usuarios va a hacer (por ejemplo, tipo Caso de Uso). Solicite un mapeo entre productos, licencias y tareas. Solicite el mapeo entre lo anterior y los tems de la propuesta comercial. Ejemplo Carga de Horas Mdulo 1 X Licencias - $$$ Creacin de Proyectos Mdulo 2 Y Licencias - $$$ Pregunte anticipadamente qu tipo de licenciamiento est quedando afuera, y analice si no lo necesitara realmente. Cul es el costo de subirse a lo que qued afuera? 22. El Producto / Leccin Aprendida 2 / Algunos Ejemplos 23. El Producto / Leccin Aprendida 3 Vi que se estn fusionando con B cul es elfuturo del producto? porque B tiene otroequivalente, e incluso mejor. Qu raro, esta herramienta tiene un cliente que parece salido de principios de los 90. Que raroque no tenga cliente web HUELA EL ABANDONO ANTES DE COMPRAR! La herramienta huele a antiguo? Hace cunto que no se actualiza? Qu se actualiz durante losltimos releases? Existe alguna fusin en puerta? 24. El Producto / Leccin Aprendida 3 / Survival Kit Analizar el ritmo de actualizacin de la herramienta. Analizar reingenieras en puerta y el roadmap de transicin (tcnico y comercial) Cmo voy a subirme a un sucesor? Qu sucede con las licencias que ya compr? Se transforman en las nuevas? Analizar la tecnologa de base de la herramienta si la tecnologa base cae, caer la herramienta (tpicamente, bases de datos antiguas, plataformas cerradas). Analizar fusiones y adquisiciones que puedan atentar sobre el futuro de la herramienta. No hay problema en preguntar frontalmente! Cul es el plan del vendor para dar continuidad a los clientes en caso de una discontinuidad del producto? 25. La Implementacin / Leccin Aprendida 1A: Cmo que el lunes empezamos con la nueva herramienta? A m nadie me avis nada! Pero como necesitan B: S, se dictaron las capacitaciones hace dos o tresayuda? Si les dimos unsemanas.manual de autoA: Ah, pero yo fui slo al principio, porque tena uncapacitacin!incendio en produccin y NINGUNA CAPACITACIN SER SUFICIENTE (alprincipio) preprese para un acompaamiento intensivo durante las primeras semanas de adopcin. Pero tampoco deje de capacitar en persona, o seargumentar no haber recibido capacitacin. 26. La Implementacin / Leccin Aprendida 1 / Survival Kit En general, sobre todo en una herramienta que implementa el proceso, es casi imposible el concepto de capacitacin one shot. La auto capacitacin es viable cuando la herramienta est establecida cuando puedo consultarle al de al lado sobre algo que no se entiende del manual. Para hacer una transformacin de la forma de trabajar, tenemos que sincronizar diferentes medios: capacitacin, material de auto induccin y soporte personalizado. Ms all de la capacitacin formal, es importante el acompaamiento, el soporte continuo, el hacer juntos por primera vez el trabajo. Dado que el soporte al uso es altamente exigente en trminos fsicos (estar al lado del usuario), en general es conveniente empezar por grupos reducidos e incrementalmente subir. 27. La Implementacin / Leccin Aprendida 2A: Salimos en produccin el lunes con la nueva herramienta? B: No, el lunes tenemos workshop de validacin y ajustes A: Otro workshop? No vamos por el dcimo?B: S, en el anterior surgi el caso de uno de los programadoresque a veces usa una PC con Windows 3.11 y NO IMPORTA CUNTO SE PREPARE, SIEMPRE QUEDARN CASOS ESPECIALES que se verndurante el uso. No demore la largada, o alimentarinfinitamente las expectativas. Cuando ms alto prometa subir, ms duro ser el primer traspi. 28. La Implementacin / Leccin Aprendida 1 / Survival Kit Los casos especiales, sobre todo en una gran corporacin, pueden ser para discusiones eternas. El que tiene Windows 3.11 porque el paquete de negocio nunca se actualiz. El que saca el reporte en letra ms grande porque tiene un usuario con problemas visuales. Etc. Es importante salir con una solucin para el 80% de los casos, probarla, practicar, y en todo caso subir luego a los casos especiales. O eventualmente, manejarlos con un workaround. 29. La Implementacin / Leccin Aprendida 3Largamos con las capacitaciones! Resrvense el da completo!Cmo que vamos a dejar afuera ( das despus ) tal feature?! Con lo que cost laCmo que no saben usarla? Si lesherramienta no lo vamos a usar! dimos el curso completo!NO INTENTE IMPLEMENTAR LA HERRAMIENTA implemente escenarios de uso en la herramienta. La herramienta completa ser demasiado para casitodos los usuarios. Hgalo saber a sus usuarios, que tendrn ansia de usar todo lo que ofrece. 30. La Implementacin / Leccin Aprendida 1 / Survival Kit El ansia por los features tiene aspectos interesantes a manejar. Por un lado, tratar de implementar mucho a la vez terminar siendo contraproducente o agobiante. Por otro lado, nuestros usuarios estn interesados en una solucin que podamos proveerles, no en todo lo que gastamos en el mega producto. Por otro lado, al comprar licencias, es importante ver qu vamos a estar usando realmente el primer ao. Conviene econmicamente / financieramente adquirir aquello que no vamos a usar inmediatamente? 31. Conclusiones Las herramientas son hoy en da casi un must, pero para poder aprovecharlascompletamente, es necesario desmitificar muchos aspectos, y ser realista respecto a otros en particular Las herramientas no solucionarn todos los problemas Las herramientas son un trade off entre temas resueltos y a resolver Los proveedores pueden no tener todas las respuestasLa transicin no estar exenta de idas y vueltasEn esta presentacin, intentamos transferirles estos conceptos en base anuestras repetidas experiencias con los puntos anteriores.En este sentido, la clave es una clara gestin de expectativas y una fuerte gestin de riesgos.Estamos entonces listos para nuestra ltima leccin 32. MUCHAS GRACIAS! 33. Para ms informacin Walter Ariel Risi ([email protected]) Contctenos: Argentina Espaa ChileSan Martn 575 2 Lpez de Hoyos 35 1 Luis T. Ojeda 0191 Of. 701,(C1004AAK) Buenos Aires (28002) Madrid Providencia, SantiagoTel (+54-11) 4327-1999Tel (+ 34) 91-745-9912 Tel (+56-2) [email protected]@practia.es [email protected]