FAQ: How do you decide which features and bug fixes to prioritize?

Contributed by Shardool Gore, Product Manager

Co-edited by: Karyn Tan, Senior Manager in Marketing

This article explains the criteria and methods used by the Zimbra product team to shape the Zimbra roadmap.

Stages in Zimbra Roadmap

Before we dive into the prioritization process, let’s do a quick recap of the different stages in the Zimbra roadmap

In review: Initial evaluation of feature requests or bugs to ensure alignment with product vision and goals.

Accepted: Feature requests or bugs that meet our criteria are added to the backlog for future consideration. Bugs and features are prioritized using an industry-standard framework. They are then placed into a prioritized backlog.

In progress: The development team picks up bugs and features from the backlog as per priority. This stage is the active development phase of the process.

Released: The feature or bug fix is available in a production build.

Detailed explanations of each stage can be found here.

The RICE Framework and Bug Prioritization

An essential aspect of moving a bug or feature from “In Review” to “Accepted” to “In Progress” is prioritization.

At Zimbra, we use the RICE prioritization framework. RICE stands for Reach, Impact, Confidence, and Effort.

Here is how we apply the RICE framework to evaluate and prioritize feature requests and bug fixes:

Reach

We evaluate how many customers will benefit from a bug fix or feature over a specified period. If a bug affects a sizeable portion of our user base, it may receive a higher priority. For example, a bug that reports an issue with mail search will get a higher priority than an issue related to Tasks search.

Impact

We assess the potential effect of the bug fix or feature on a user. Impact measures the estimated impact on an individual user related to a goal. Basically, a generalization of how much the feature/functionality affects the user. For example, an enhancement that adds a new filter criterion will greatly impact a user’s productivity by filtering out unnecessary mail, compared to providing a more user-friendly message for an error that occurs in rare situations.

Confidence

We determine our level of certainty regarding the reach, efforts and impact estimates. If we have high confidence that fixing a bug will positively affect many users, it’s more likely to be prioritized.

Effort

We estimate the amount of work required to implement the bug fix or feature. Bugs that have high reach and can be resolved quickly might be addressed sooner.

Once we have assessed a bug or feature request using the criteria above, we assign it a RICE score. This score helps in comparing and ranking the items in our backlog. High-scoring items are more likely to move from the “Accepted” stage to the “In Progress” stage.

Balancing Business Goals and Customer Needs

While the RICE framework plays a critical role in prioritizing bugs and features, a holistic approach necessitates the consideration of additional factors that balance both business objectives and customer needs. Here is a deeper dive into these nine factors. Please note that these factors are not in any specific order.

1. Alignment with Zimbra’s Product Strategy

We evaluate how closely a bug fix or feature aligns with Zimbra’s long-term goals and vision. Strategic alignment ensures that our efforts contribute to the overarching objectives of the product.

2. Customer Feedback

We pay close attention to feedback from our customers. Issues frequently raised by the Zimbra community, issues having several salesforce cases or those that have a significant negative impact on customer satisfaction may receive higher priority.

3. Security

Ensuring that Zimbra maintains the highest levels of security is paramount. Bugs that pose security risks are often addressed urgently.

4. Technical Debt and Maintainability

Sometimes, prioritizing work that reduces technical debt, reduces technical dependencies, or improves the maintainability of our codebase is necessary, even if it does not have immediate visible benefits for customers. This ensures the sustainability of the product in the long run.

5. Resource Availability

The availability of resources, including the development team’s bandwidth and budget, affects the timing of bug fixes and feature development.

6. Regulatory Compliance

Ensuring that Zimbra remains compliant with various regulatory standards is critical. If a bug or feature involves compliance issues, it may receive immediate attention.

7. Scalability and Performance

Zimbra is known for very large-scale deployments. We consider the scalability and performance implications of bugs and features to ensure that Zimbra remains fast and reliable for all customers.

8. User Experience and Usability

We may prioritize bugs or features that significantly enhance the usability and experience of the end users of Modern UI or Classic UI.

9. Usage of Third-party Services

Zimbra’s ability to work with and use other libraries is a key feature requirement for the proper working of the Zimbra software. Bugs affecting these integrations or features that enhance them may be prioritized.

Conclusion

Prioritizing bugs/features is a complex process that balances the needs of Zimbra customers, the goals of the product, and the resources available. Using this framework, we aim to create a product roadmap that delivers the most value to our Zimbra community.

 

 

ICYMI (In case you missed it)

PM Portal-related FAQs  can be found here

Understand the different stages of your feature requests on pm.zimbra.com

 

No comments yet.

Leave a Reply

Copyright © 2022 Zimbra, Inc. All rights reserved.

All information contained in this blog is intended for informational purposes only. Synacor, Inc. is not responsible or liable in any manner for the use or misuse of any technical content provided herein. No specific or implied warranty is provided in association with the information or application of the information provided herein, including, but not limited to, use, misuse or distribution of such information by any user. The user assumes any and all risk pertaining to the use or distribution in any form of any subject matter contained in this blog.

Legal Information | Privacy Policy | Do Not Sell My Personal Information | CCPA Disclosures