I believe the following is accurate for developing 95% of business applications:

  • People buy software to solve problems, that can be making their life easier, making money or providing pleasure (don’t read too much into that =D)
  • Features enable solutions to problems
  • When we write software, we build features.
  • With the right level of abstraction, there is a common and finite set of features to be implemented in code.
  • Applications should be built by tailoring features to solve a user problem.
  • If tailoring features have to be done by writing code, so be it, but this is very costly in terms of time and money.
  • It’s preferable to have this done via configuration.

Pin It on Pinterest