Para mi, una de las herramientas de software que tienen mayor importancia son las enfocadas al seguimiento y gestión de un equipo de trabajo. Me asombra percibir, por lo menos entre los usuarios de este foro la tan poca importancia que le prestan a herramientas de este tipo. De hecho, cuando en cristalab peru se presentaron proyectos de magnitud importante supuse obvia la aparición de alguna herramienta para ese proposito pero termine desilusionandome porque al parecer no significo para ellos la gestión del proyecto mas que tener una fecha de inicio y entrega. Y ya.
Cuando se me paso la idea por la cabeza de que en realidad no usaban ninguna herramienta de apoyo para el trabajo en equipo se me escapo una sonrisa de asombro, lo tome preocupante.
Hace algún tiempo que me he visto gestionando algunos desarrollos importante. Después de terminar el primero quiza, me vi inmediatamente obligado a buscar alguna alternativa diferente a llevar todo en papel ( o word), tener conciencia de lo que tengo que hacer (y creer que conque yo lo sepa es suficiente) y dar un par de ordenes de lo que espero listo para x fecha. Asi no se puede. Sobretodo con equipos de mas de 3 personas.
De menos para mi es estrictamente necesario que mi equipo conozca la actividad de cada uno de los demás desarrolladores y tenga plena conciencia sobre la estructura exacta de cualquier proyecto, así como establecer un puente de comunicación entre el cliente y ellos, sin esto es completamente imposible sentir la satisfacción de éxito al terminar un proyecto. Por eso pondré un par de herramientas que considero muy necesarias y algún que otro software que las brinda.
Calendarios, diagramas de GANTTCada desarrollador debe tener su propio calendario personal de trabajo y de preferencia debe poder ser consultado por sus compañeros de equipo, asi como tambien debe existir un calendario de proyecto que estipule fechas importantes y metas inmediatas. Un buen software debería incluir en este calendario el tiempo que cada desarrollador le dedico a alguna tarea en especifico. Es decir tiene que servir para consultas tanto a futuro como para estudios a pasado.
Una buena herramienta para comenzar es google calendar
compartiendo calendarios. Nosotros actualmente estamos desarrollando un software a nuestra medida y para mostrar los calendarios estamos usando el API de google calendar.
Algo imprescindible es organizar siempre una reunión semanal para hacer un análisis de la semana tanto del grupo, como de proyectos y empresa.
Pongo un ejemplo... en mi caso uso Google Calendar Sync para tener todo sincronizado con mi outlook y a su vez con mi PDA, de esa manera desde cualquier lugar del mundo puedo agregar un evento, o tarea, o cita, y las personas que me conviene que esten enteradas lo sabran.
Los diagramas de GANTT supongo que los conocen todos...
Gestion de equipos lideres y desarrolladores.De preferencia debe existir una lista de contactos con todas las personas que pudiesen llegar a estar involucradas en un desarrollo. Esto involucra clientes, proveedores, equipos, lideres de equipo, desarrolladores y demas. He oido de una herramienta webBassed que nunca he podido llegar a profundizar. se llama HomeBase y la ofrece
http://crossconnector.com/ es gratuita.
Control de tareas, tiempos, tickets.SIEMPRE se debe desmenuzar un proyecto lo mas posible. Se deben crear hitos de desarrollo principales y asignarlos a equipos. Hay que estipular fechas estimadas, asignar tareas, y de preferencia esto debe estar ligado con el software de calendario. Por ejemplo, se crea un ticket para el departamento de diseño web alarmando un problema en una de las paginas sobre el navegador Internet Explorer, algun diseñador acepta el ticket, e inicia un
timer que toma el tiempo que tarda el diseñador en solucionarlo y lo registra en el historial. Luego el adminsitrador de proyecto puede consultar los tiempos que tardan realmente en solucionar o hacer algo. Esto es muy importante para los programadores que siempre estan creyendo que pueden hacer todo en 2 horas, y terminan siendo semanas. Tambien es bueno especificar costos por cada cosa, cuando cobra por hora un programador, cuanto cuesta x o y. etc.
TimTracker:
http://www.formassembly.com/time-tracker/ Trac
http://trac.edgewall.comBuzZilla
etc...
pongo dos imagenes:
Platicas e historialLas reuniones son lo mejor del mundo, sobretodo esas "brainstorms" o lluvia de ideas. El problema es que nunca se quedan guardadas y se terminan olvidan, algun software para llevar minutas de documentos seria una buena opcion. Si el equipo no esta en el mismo lugar fisico las videoconferencias siempre son necesarias, skype es una alternativa, hay plugins para grabar las llamadas....
Control de revisiones de archivosCosa obligada tambien.
Subversion y Tortoise SVN
SI SON DESARROLLADORES NECESITAN DOS MONITORES Y UNA BUENA SILLAY si tienen tiempo libre armen todo esto en un solo proyecto: