A new star was expected
When we first heard about Mingle everyone expected a new approach in using Scrum Tools. In one respect Mingle fulfilled our expectations in others it did not. Mingle went totally in the direction of using the story card metaphor for its Scrum Tool. From a Product Owner point of view it looks very simple but if you start using it you get overwhelmed by the amount of possibilities it enables.
Mingle is an agile project management application from ThoughtWorks Studios and its current 2.0 version includes some major new features from version 1.0, like the Card Trees and Aggregate Properties. Mingle works more like a platform than a closed tool, allowing the user to create different kinds of dashboards and project structures. This in one way brings a great amount of flexibility, but in another, makes the tool a little bit inaccessible for occasional users. Mingle is a web application which requires a MySQL database to hold the persistent information, however this is not included in the package.
Creating a project from the scratch on Mingle can be a tough task, but luckily there is a Scrum project template ready to be used. It is interesting how Mingle structures the projects. Card is a term used for the different levels of a project, normally we associate the term Card with User Stories so it is a little strange to create a Card for a release or a sprint. It’s also possible to create custom properties for each type of card so you can define all kinds of information you need for your items and these properties can also be an aggregation of properties from the level below.
The project structure on Mingle can be totally customized even with more than one structure in the same project, here called card trees. The Scrum template comes with two card trees, Planning and Feature. On the Feature card tree we have the following hierarchy: Epic -> Feature – > Story, so you can control some kind of relationship between your stories.It is the Planning card tree which is the real deal: Release -> Sprint -> Story -> Task -> Defect. I am not a real fan of the defect level but it doesn’t compromise the organization.
Using the planning tab on the tree view is a really good and fast way to create all the levels of your project. It is possible to rapidly create a huge amount of Items, Sprints, Stories, Tasks, and such like, and to then add more detailed information to each one of them. The card tree defines a hierarchy for the cards but not in a very rigid way. For instance, it’s possible to create stories that are not related to a Sprint or Release, so you can build a Product Backlog the way it should be, and arrange the stories in releases and sprints when their time comes. The drag and drop helps to organize the project with little effort. When your tree gets too big it´s possible to use many diferent kind of filters which allow you to see only a particular sprint or only the stories or tasks in development or to even hide an entire level.
The Product backlog tab can also be useful during the estimation and sprint planning. The estimates can be used on stories and tasks as well with no particular unit of measure, so you can use it as Story Points, Ideal Days, Hours, Tomatoes or whatever you may like, and it’s possible to define the scale for the estimates, so if you use Story Points and Planning Poker, you can use 1,2,3,5,8,13…100 for the values of your estimates. If the estimation part is well done the same cannot be said about the priorization. Mingle comes with the values High, Medium and Low for the prority of the cards, the problem with this is that an overuse of the High value and priority loses its meaning. It is possible to create new values for priority, but a drag and drop on a list would work much better.
The Sprint backlog tab is good for the daily meeting and emulates the taskboard, the drag and drop feature really helps to create an immediate link to the mechanics of a taskboard on the wall. It’s also possible to organize your task by sprint, owner, story and to order by estimate or priority. Speaking of which, the way Mingle handles the priority of tasks on the sprint backlog is not very good. Normally we prioritize our stories and the task priozitation is done respecting the order of the story each task belongs to, but on Mingle you cannot sort the task by the Story priority, so if you want to put the task in real order, you have to set the priority task by task, or at least, task group by task group. The Scrum template provides some charts on dashboard screen for the Release and Sprint levels. It works fine but if you need a different kind of chart be prepared to explore the MySQL database structure and to write some SQL statements and to use a wiki-like language to generate them. Providing a more visual tool to create new charts would really increase the access of this feature to more users.
If you have a look into the price list of Mingle you clearly see what the target customer of Mingle is. Large enterprises who want to spent money into a tool. Mingle belongs from it price into the group of Scrum enterprise tools. If it has the maturity as Version One or Scrumworks the teams and the customer needs to decide.
Mingle can be a very complex or a very simple tool, depending on how much you want from it, it’s not possible, in this article, to cover all of its features. Here we only explored the Scrum template, and with some effort we translated the majority of the practices to the tool with success. There are a lot of customizations and expansion points but they are not really accessible. The feeling is that without the templates it would need a lot of work to create something really useful for a Scrum team. But in the end Mingle can deliver the goods. A star was expected … Decide for yourselve if it is one. It is worth to have a look into it. If you need a web-based tool.