You can read more about our product development process by reading our blog.
In short, we work to a fairly structured calendar of:
Between 2 and 4-week development cycles
A number of feature-focussed product updates per year
Twice a year, we set time aside to focus on housekeeping / upgrading the internal aspects of the product. This isn't compatible with developing new features so we do it separately. We keep some flexibility in our schedule to accommodate holidays, or if someone gets sick or has a baby or whatever else life brings.
The priority of what goes into an update:
(1) Fix bugs (as no software is free of defects).
(2) Fix issues that aren't bugs, but have caused confusion or delays for customers; our aim is to reduce support requests.
(3) Items from the product roadmap that are customer co-funded.
(4) Items from the product roadmap that we invest in.
These items can include:
- improving the technical architecture of the system (for example, to improve performance);
- improving user experience / usability of existing features;
- making more of the application's behaviour customisable by admin users;
- features which add new capabilities to Citizen Space.
How we release new features
We've tried various approaches to releasing new features in Citizen Space. We have in the past released 'beta' (or 'test') features, but beta features can behave in unexpected ways and need improvements.
Internally, we run a formal QA process which tests for things like data integrity, cross-browser compatibility and accessibility. We also test improvements and new features with our account managers and other staff, who can act as the voice of the customer.
While this means that the total time to get features into the hands of customers can occasionally be quite long, it ensures that the quality is high, and we don't drop nasty surprises on our users.