A week has passed since our first project using Mingle started at Caxiam. Even thou this was a short week, we have been able to ‘eyeball’ a roadmap out of a mountain of things to do on this project. Provided the team can work seamlessly and each member focuses on his tasks, Mingle will be a great guide as work gets more complicated.
So far, my favorite feature in Mingle is the ability to set any particular report or ‘view’ as a standard page. This is a bit more than a fancy aggregated report. Any user is able to view current workload broken by resources, priority, iteration, really, any metric shared among all existing tasks.
It is invaluable to be able to reassign a particular task to a different iteration or assign it to a different developer. All the metrics for a view are then recalculated to provide a quick overview of your actions. Shuffling tasks between iterations recalculates the sum of the hours of work per iteration or reassigning tasks to a different developer recalculates each developer’s workload accordingly. It sure beats weekly re-prioritization meetings.
A picture would be invaluable to illustrate this point but content of these things is sensitive to both our company and our clients so the best I can do is point to whatever information Thoughtworks has available…
The illustration above depicts a typical project under Mingle broken down per status (let’s imagine). Imagine a series of aggregates on these different statuses for time allocated, time elapsed, etc. Moving (heavy use of AJAX) cards (boxes) from one status to another automatically recalculates relevant affected metrics.
This is but one of many features on Mingle. I would say that early in a project, this is one of the most useful ones. The ability to quickly task a team, and reshuffle quickly as things happen is priceless.
It is worth mentioning that shuffling 20, 30 cards at a time puts these requests in a long queue where one can only sit back and wait until all one’s actions are realize. I think this could be a deal breaker in a big project with a thousand tasks perhaps… My experience here is very limited, perhaps our Mingle server needs more memory.
Lastly, a lot of the benefits provided by Mingle are greatly diminished if not everyone on the team uses it or runs a parallel number of tasks outside of Mingle. This effectively puts a dent on everyone else’s work. It is most important that each developer updates his tasks and sticks to their queue… it is rather easy for any developer to ‘grab’ more tasks unassigned and stay busy so this should not happen.
One thing I have barely touched here is how a project is broken into little bits in Mingle. The basic idea is to break down everything into a series of ‘card’. Perhaps that will be my next post.