Platform Contributor Guide
[Legacy v3] Platform
[Legacy v3] Platform
  • 👋[Legacy v3] Welcome | README
  • Contributing | Getting Involved
    • Specific tasks needed for COVID19-support
    • Add code to Ushahidi
    • Encouraging contribution from non-developers
  • Frequently Asked Questions
  • Join the Ushahidi community
  • Contributors ✨
  • 🛣️ The Ushahidi Platform Roadmap
    • V2-V3+ Migration tool
  • Privacy and security best practices
    • Security as a user
    • Security for deployment admins
    • Security for deployment hosts
  • Development & Code
    • Development: Overview
    • How to get the source code
    • Setup Guides
      • Installing for production environments
      • Development environment with XAMPP
      • Development environment setup with Vagrant
      • [Client] Setting up the Platform Client for development
        • Migration from AngularJS
      • Setting up the Pattern Library for development
      • [API & Client] Bundled release install
    • Add code to Ushahidi
    • Development process
    • Coding Standards
    • Track and submit issues in Github
    • Upgrading Ushahidi
      • Upgrading to latest release
      • Upgrading from V3.x.x to V4.x.x
    • ⚙️ Installation Helper‌
  • Tech Stack
    • API Documentation
    • Third party app development
      • Web hooks
    • Database | Tables overview
    • Database | Database Schema Diagram
    • Database | Table details
    • 📐Architecture
    • Use case internals
  • QA & Testing
    • The QA process
    • How to run QA tests
    • Defect Management
    • How to write QA test scripts
    • Hotfixes
  • Front-end development
    • Changing UI styles: introduction to the pattern library
      • File-structure
      • Installing new packages
      • How to Apply to the Platform
      • Using the changed styles in platform-client
      • Syntax and Formatting
      • Grid, Breakpoints, & Media Queries
      • Variables
      • Mixins
      • Helpers
      • Icons
      • Create a New Component from Scratch
      • Read Direction
  • Design
    • 🎨Design: overview
    • 'Best practice' design
    • Ushahidi Platform 'Sticker Sheet'
    • User testing process
    • User testing script examples
    • Synthesising user testing results examples
      • Synthesis example 1
      • Synthesis example 2
      • Synthesis example 3
      • Synthesis recommendations example 1
      • Synthesis recommendations example 2
    • Open Source Design
  • Documentation
    • Documentation
    • Contributing docs via GitHub
  • Translation
    • Localization and Translation
  • The Ushahidi Platform Facebook bot
    • The Facebook bot
      • Installing the bot
      • The bot script
  • Hackathon and events
    • Installathon, May 2019
      • Welcome to the hackathon!
    • Write/Speak/Code 2019
    • Open Design: Bangalore
    • Open Design: Taipei
    • 📑Google season of docs
    • 💻Google Summer of Code
      • GSoC 2024
  • Enhancement Proposals
    • Exchange Format
    • Importing data from previous versions
Powered by GitBook
On this page
  • Where to find the roadmap
  • How a new item gets accepted into the roadmap
  • How the decision to prioritize one issue over another is made
  • Next steps

🛣️ The Ushahidi Platform Roadmap

PreviousContributors ✨NextV2-V3+ Migration tool

Where to find the roadmap

  • We add to our roadmap and modify it on a rolling basis based on the projects we have commited to doing for different grant projects or customer requests, prioritized bugs, and feature requests from the community. As we introduce more open roadmap planning strategies to our workflows, you will be able to access our near term roadmap aggregated in a public location.

  • You can find the next features that we are considering adding to our roadmap with the tag

  • You can find the features we are working on by filtering with the tag

How a new item gets accepted into the roadmap

  • We evaluate new features in collaboration with engineering, product, design, support and other functions in Ushahidi.

  • Ushahidi staff triage issues as they come in. These are general guidelines to ensure your feature request or bug report will be understood properly and can be acted upon:

    • Follow the issue submission guidelines. We provide complete issue templates for Bug reports and Feature requests, .

    • You may receive follow up questions from the team doing triage and prioritization, which you are encouraged to respond to. This will ensure the person triaging the issue can understand the scope of work and needs fully.

    • It helps to have a concise description, from a first-person point of view, of what the problem you are facing and need to solve is.

  • It's also worth noting that not all parts of the system are equally funded at any given point for feature development, and that reality also influences when a feature can be prioritized to be worked on by Ushahidi staff. Funding for a specific goal (ie improve data triage process so that people can work more efficiently in an emergency) means our focus will generally be in a handful of improvements related to that goal.

How the decision to prioritize one issue over another is made

  • For bugs, it comes down to how critical it is, if it's in the critical path to a function, and how common it is that someone would run into it trying to execute a function. For instance triage issues tend to be prioritized higher than issues in the webhook setup flows, since triage is a much more common action than webhook setup. This is also weighed with the time necessary to fix an issue, the team available to fix it, and the budget available for it.

  • For features, we prioritize what we want to see in the platform next with the help of all the Ushahidi team, their inputs as they interact with users, and user testing.

  • Alignment to Ushahidi platform goals, resource limits, and needs of users: it's important for us to work on things that align closely with our mission. That means we will often have to say no to things that fall outside the scope or intent of the product. For instance: while a calendar might sound great, we cannot really make a calendar from scratch because it's outside of the scope of our product and what we do best, plus we just don't have the resources to maintain it... however: we could integrate with one if there was enough evidence that it is needed. When requesting a new feature, we recommend providing the problem you are trying to solve so that together we can try to come to a solution that fits the Ushahidi Platform's scope.

Next steps

We are working on improving how we prioritize move issues into them our roadmap. The next steps on this are first internal discussions with Ushahidi staff on what we believe are the rules of engagement on roadmap decisions, initial documentation about the new roadmap decision making structure, and after initial docs, and requests for comments from the community. As we adjust our workflows to become more open and transparent for everyone, we want to hear from you, and will be opening up our process for comments in the near future.

consider for upcoming cycle
https://github.com/ushahidi/platform/issues?q=is%3Aopen+is%3Aissue+label%3A%22Stage%3A+In+progress%22
which you can find here