Software Process Improvement

The lecture I was attending last week was probably the best so far. The first session was eye-opening for me personally. There are so many things I've learned from the instructor who shared his wisdom and experiences regarding the necessity and relevance of standards like ISO/IEC or CMMI in ensuring quality and process management. Below are some interesting notes taken.

What is quality? Is the degree how we meet the expectation of users. This is to ensure that materials, products, processes, and services are fit for their purposes. Repeatable and scalable are two characteristics of a good pieces of software. (There should be more, for example, like good usability)

What is standard? Collection of best practices. Consultants or auditors always refer to the ISO/IEEE standards to polish up and summarize these before they apply it to the field. Following a standard depends on the degree of compliance. However, there are two questions you will need to ask yourself before apply any standards.
  1. Is BEST, good enough?
  2. Is GOOD ENOUGH, the best?
The answer to these two questions is "the best is the enemy of the good" or also known as "perfect is the enemy of good". In other words, close enough or good enough is sufficient as exact is far too costly. On a similar note, there is this concept of Nirvana fallacy, where we can't or won't (procrastinate) a task due to unrealistic or idealistic expectation.

No comments:

Post a Comment