Introduction
This started off as a little aide-mémoire to get my head into the right space for preparing for an interview. It's not an exhaustive list, and twists terminology that has been used to represent other things (see: to Velocity), so don't treat it as a text book reference to work from.
Most of the listed points can be associated back to so called "non-functional requirements" - NFRs. I don't like that particular terminology, so alternatively we might consider them as dimensions of the quality of the sytem.
Usability
"If you build it, they will come" should come with a provisor, "... but if it's awkward to use they'll soon go away, and might not come back."
Security
All of the aspects that combine to protect data from
being seen or manipulated by anyone other than the intended recipient
or sender, and also assuring users that the data has originated from the intended source.
Velocity
Here I'm cheating a bit by trying to come up with a term to represent the speed at which a system can respond to user input - not development velocity.
Accessibility
This has multiple dimensions to it, ranging from the devices that can present the interface, to the affordances offered for people with disabilities.
Reliability
The system does what it is intended and expected to do, in a consistent manner over a significant period of time.
Elasticity / Scalability / Capacity
How well the system can cope when it becomes popular enough to attract a lot of users.
Likewise, how well it can scale back down to a level that is suitable when there is less demand - and less need for potentially expensive resources to be available.
Adaptability / Flexibility
It's not necessarily always the case, but given a range of possible technologies to choose from, they will often have an associated time or money cost for applying changes.
Not all roads lead to Profitability
In a commercial product, these are intended to combine to lead to profitability.
Not all products will consider these as being equally high priority, so you may find it a valuable exercise to get your team together and agree on a relative ranking so that you can focus on what is important for your business to succeed with the challenged and opportunities in the current environment.
Visualise Priority Ranking
I'd even go so far as to suggest having a visual representation of the value rankings so that there can be little doubt what to prioritise when making changes - in the days of office working this might be something like a poster on the wall or an A4 printout in the top corner of the whiteboard where the team has their stand-up meetings.
No comments:
Post a Comment