One of the biggest challenges that we are dealing with right now is prioritizing development activities. In a perfect (unlimited budget) world we’d have multiple development teams tackling the projects in parallel. …but we’re not in a world of unlimited budgets. We have development projects across four major buckets:
1) Revenue driving features – integrating affiliate stores from other partners has a direct impact on income for the company;
2) Enhanced capability – providing new features that provide additional functionality for attracting and retaining users;
3) Usability enhancements – changing/modifying user interface elements and simplifying select tasks;
4) System architecture updates – changes to improve the performance and or capabilities of the core product engine.
Selecting projects across these would seem to be easy – but it’s not. For example; it’s important to drive revenue features, but if there isn’t enough ‘grabby’ traffic then no one will be online to use the features. You could focus on usability to improve the site experience but if you do that at the detriment of new features or revenue driving features then your site gets stale.
What we are finding appears to work is to break the projects down into smaller project chunks and not allow the development team to get totally focused on one major project. Additionally, we’re finding that writing good specs and providing graphic comps of what the pages should look like is cutting down on the back and forth between marketing and development and allowing for projects to be completed quicker. We try to complete one revenue, UI, and feature project for every release cycle right now.
I’d be interested in comments from others about how projects are prioritized and managed. Comments?