top of page

THINGS ABOUT SOFTWARE DEVELOPMENT

Home: Welcome
Home: Blog2
Search
Writer's pictureZeCoder

Development Priorities

When developing software there are many things that need to be done: features, bugs, testing, etc. and not all of them have the same priority. So how does one know what to do next? I would like to proposed a simple system of prioritizing development work.



Classification


There are 2 main types of tasks assigned to developers:

  • A bug

  • A feature

Sometimes a bug is a feature, but that is another story. So all tasks should be assigned or related to fixing a bug or developing a feature. If you working on something that is not linked to a bug or an official feature you are probably working on something that no one cares about and should think again about what need to do.


Bug Types


Showstopper

  • A problem that directly prevents or seriously hinders your client/clients from using the software

Urgent/Critical

  • A problem that seriously diminish the client's experience and abilities when using the software compared to a version without the problem

High

  • A problem that prevents your client/clients from using a feature/features but can still receive value from other of the software's functionality

Medium

  • A problem that "annoys" your client/clients when using the software

Low

  • A minor issue that is noticeable by a small number of users but overall does not reduce the software's value to your client/clients

Feature importance should be determined by product owners and client/clients


Priorities


1) Showstopper

  • Bugs/Issues of this type should be addressed immediately as in "drop everything and handle it"

2) Urgent/Critical

  • Bugs/Issues of this type should be inserted to the current development cycle and the fixes should be released in the next update (hopefully you are working in an Agile environment, continuous delivery, so it should be a matter of days/hours to the next update)

3) High

  • Bugs/Issues of this type must be part of the work plan for the next version release

4) Medium

  • Bugs/Issues of this type should be "fix at the first opportunity". When you are planning your development tasks and activities you should consider including some of the medium bugs. If you find that you are unable to include medium bugs in your plans for multiple cycles, it could be an indicator of: low quality (there are always higher priority bugs that need attention), lack of resources (all resources are tied up in the development of important features), nobody cares about these issues (a low priority bug/issue that was miss labeled) or a mix of these reasons.

5) Low

  • Issues that are not important enough to waste resources on fixing them. they are tracked as "known issues" that someday will be addressed (probably in the "2.0" version of the software)

Feature importance should be determined by product owners and client/clients. It is up to the product and the development managements to discuss all bugs and features and classify them to clarify the goals of each development cycle.


This system of classification and priorities provides clarity and transparency throughout an R&D organization and helps focus the efforts on the important stuff.

41 views0 comments

Recent Posts

See All

5 Levels of Maturity

I remembered a lecture I attended a while back about the Capability Maturity Model (CMM) and I thought I write my version of it from my...

Software Development Roles

Who are those people that actually do the development work? I've worked for companies that had a nicely defined hierarchy of roles and...

Commentaires


Subscribe Form

Home: Subscribe
Home: Contact
bottom of page