Anatomy of a TSM Release: Feature Selection

In this series, we are detailing what goes on behind the scenes to ship a new major TSM addon release. Specifically, we will be describing how version 4.12 of the addon is being built, from deciding what features will be included, to publicly releasing it. This first post will focus on how we decided what features will be in version 4.12 of the addon.

Selection Criteria

There is no end to the list of things we want to implement into TSM to make it the best gold making addon possible. We have curated a list of improvements we are considering on our public roadmap, so any discussion on what we prioritize for the next version starts by reviewing the list there. Our biggest constraint as a team (and, not to get philosophical, but in life as well) is time, but there are many factors we consider as we filter through this list. In no particular order, and with much less formality than they are described here, these include the following high-level points:

  • What portion of our user base would benefit from this feature? How much value will this feature bring to them? How much complexity would it add to the addon for new users or those who wouldn’t directly benefit from it?
  • Is this feature especially relevant to the current state of the game or the other projects being worked on within TSM (i.e. new pricing data functionality)?
  • What resources (design time, development time, dependencies on our web backend or desktop app, etc) are required to ship this feature?

Back when we were deciding what the focus of TSM 4.11 was going to be, we went through a ranking exercise to help us prioritize our list of high-level features we wanted to implement. This resulted in optional material support and custom themes being prioritized for 4.11, and also Gathering being called out as the next big feature to prioritize in 4.12. Therefore, when it came time to plan out 4.12, we went in with the idea of Gathering being the primary focus.

Digging Deeper

Once we’ve decided on the primary feature, in this case Gathering, the next step is to go one level deeper and figure out exactly what use-cases we want to better support. This is almost entirely influenced by feedback we’ve received around Gathering from our users over the years. The most challenging part of this is deciding what we are NOT going to do. Again, we are balancing how much of our time we want to spend on a given feature (and how long before we can release it) vs. how much value it will deliver to our users. For example, Gathering for multiple characters at the same time is not something we are going to be doing in 4.12 because it would require a ton of design and development effort to do it in a way which doesn’t add a ton of complexity that the user needs to manage. It would also provide relatively-low value when compared with the other features, such as supporting intermediate crafts from other professions. The result of this exercise is again reflected in our public roadmap under the “Prioritised Ideas” column. In the case of 4.12, it includes the following:

  • A bunch of general usability and UI improvements to the Task List and Gathering tab of the Crafting UI
  • Adding support for gathering from the bank in Classic
  • Support intermediate crafts on alts as a Gathering source
  • Improved connected realm support
  • Add a default “Farming” source which will track how many the player has acquired through a more manual means

This is a fairly ambitious set of features, but we are fairly confident in being able to tackle them within 4.12. Of course, things may change as we go along, and we may tweak this list as we go through the design and implementation process. However, this list is what we are currently working towards delivering. In addition to the major feature of Gathering, we also went through our overall backlog of feature requests and pulled out a few things which we thought would be easy to implement and/or especially timely to pull into 4.12. This includes things like persisting the “Show Ungrouped Items as” selection between sessions.

Next Steps

The next steps are split between design and development. On the design side, we are brainstorming what a better UI/UX for the task list and Gathering tab looks and feels like. On the development side, we are starting to implement some of the backend changes to support the new features, and knocking out other things which don’t have any dependencies on the new UI.