Software development priorities
Help create a sustainable future by delivering operational, maintainable, secure, easy to use, and efficient software—in that order.
While all mentioned goals are worth achieving, some are more important than others since they contribute more to the software’s overall and longterm value:
- If it doesn’t work, it doesn’t generate value. (no product)
- If it isn’t maintainable, it cannot be changed/improved. (no future)
- If it isn’t secure, its operation is harmful. (losing customers)
- If it isn’t easy to use, fewer people will use it. (little adoption)
- If it isn’t efficient, money and opportunities are wasted. (decreased ROI)
Efficiency, for example, is nice, but as a goal it has to come last in this list. Of course, if software executes too slow, at some point the before mentioned objectives will not be met anymore. Some level of efficiency is required for all of them, but improving efficiency beyond that level, has to come last.