Monday, May 17, 2021

The purpose of software development and its associated primary capabilities

The purpose of software (product) development is basically to create a product, timely, that is useful, hopefully pleasurable, secure (this is perhaps not an universal) and maintainable (because we aim to build on top of what we have already delivered).

To be successful in fulfilling our purpose we need to i) know how to manage (=gather, analyze, tweak) our users' requirements, ii) build in quality (="0" errors), usability, security and maintainability, iii) Be great at deployment/roll-out and iv) provide excellent service.

All other capabilities are secondary to these. 

 

P.s.

I am aware of that the cost aspect is missing here and of course someone has to keep the cost-revenue in check, but that is just one of many external constraint, other such constraints are the skill-set of the team you have, and the maturity of your users and their environments, and more.