12 Reflection on the Kernel

The goal of this chapter is to reflect ct on general observations on software engineering using Essence and its kernel, beyond the example discussed thus far. In this chapter, we show

  • that software engineering is essentially concerned with addressing complexity when developing software;
  • that each alpha addresses the complexity of a development endeavor from a different perspective; and
  • that each alpha/dimension is associated with its own lifecycle, and underlined with its own theory


After studying this chapter, you should be able to

  • explain using examples that although alphas are separate, they are not independent;
  • explain how anomalies in the endeavor can be detected via the disbalance in alpha progress;
  • name potential software engineering anomalies in waterfall and agile projects, and explain how Essence can help to detect them;
  • name ways to integrate Essence into software development process; and
  • perform card games you now know in the context of a method you know, so that the card play smoothly integrates into daily team conversations.