Monday, November 09, 2020

Evaluating the health of a software development unit

[ Out of scope (but extremely important): Are we producing the right thing? ]

If I were to evaluate a software development unit, I would ask the following questions:

(measures of current health)

  1. How long does it take after an new idea is conceived until it starts being used by end users?
  2. How long does it take until a change request or a bug is discovered until it is deployed?
  3. How consistent are these times?
  4. How many errors are being deployed to production, and how are they discovered?

(measures of continuous/improved health)

  1. Are developers growing?
  2. Are processes being improved?
  3. Is technical debt managed?

 

To probe further as to where the areas of improvement lie, I would investigate the following key attributes of the product:

  1. Maintainability (e.g. coding standards, test automation, documentation)
  2. Release management (e.g. CI/CD, traceability, planning, configuration mgt)
  3. Risk management (e.g. single-point-of-failures, technical debt, regulatory compliance)
  4. Quality management (e.g. testing, code reviews, repeatable procedures)
  5. Serviceability (e.g. logs from production (errors, statistics), handbook, su configuration)
  6. (Security (e.g. scans, audit, access mgt, policy))


Sunday, February 09, 2020

Making (new year's) resolutions - a framework/categories

How should one go about setting (New Year's) resolutions? I tried last year to set myself some goals, it was useful. They were not overly ambitions but gave me some push to complete certain tasks which gave me a sense of accomplishment at the end last year.

So this year I decided to give it another try, but this time I went about it more methodologically (big word!). After several iterations I ended with the following categories. I am pretty satisfied with the categories, think they create the right framework for settings goals with the focus on the long term.

Two categories go to creating a well functioning 'machine' necessary for everything else:
  • Physical well being/performance (ísl. líkamsrækt).
  • Mental agility (ísl. hugrækt).
 One category goes to purpose or basic need:
  • Connections (family and friends in particular, those that will last to old age).
 One category goes to security:
  • Professionalism
The last category goes for guiding the decision making (for this journey to old age)
  • Values.