Software Engineering Principles and Methods

Online or Face-to-face

Delivery mode

6 x 4-hr sessions



Skill Level




The JCSE is offering a six session course on Software Engineering Principles and Methods. This course is an accredited Wits University Short Course targeted at a post-graduate or professional developer level.

Leading organisations apply contemporary approaches to delivering software more quickly, with higher quality and at competitive costs. These outcomes rely on the adoption of appropriate software engineering principles which result in bringing discipline and effective ways-of-working to teams – whether Agile or Plan-driven.

The course first focuses on the behaviour of a team under the influence of governance. An appropriate balance of governance encourages a team to display behaviour that is suitable to the situation, be it Agile or Plan-driven. Hence the term “Situational Software Engineering” (SSE).

The concept of SSE is then further explored by introducing Barry Boehm’s ICSM – Incremental Commitment Spiral Model. Against the background of SSE and ICSM we introduce Essence – a standard for software engineering – adopted by the OMG (Object Management Group – ) in 2014. (Other OMG-adopted standards include CORBA, UML and BPMN).

Essence is the primary result of the SEMAT initiative – Software Engineering Method and Theory – and is used to give further substance to situational approaches to software engineering.

Two core stages of the course then focus on the selection of practices of software engineering: first from the perspective of plan-driven, controlled quality, and then from an agile, crafted quality point of view. The course concludes by exploring the meaning of Technical Debt in the broader context of Situational Software Engineering.


Completing this course will help you:

Who is the course for?

This is an advanced-level course. It is aimed at those who are professional developers with 5 or more years of relevant experience. Although there are no formal educational pre-requisite courses required for this course, familiarity with coding and professional software development will be an advantage.


I'm Barry Myburgh - your lecturer for this course

After graduating from Wits with a B.Sc. Eng. (Elec) degree, it did not take long for me to start working in the Computer Industry. Some years later I graduated from UNISA with a Master in Business Leadership (MBL) degree. (UNISA’s equivalent of an MBA.) 

Throughout my career I have delighted in sharing with others things that I have managed to understand and master. This naturally led to me getting involved with training and education from my earliest days in the Industry. 


Learning Path

(a) The Complex Adaptive Situational Model (CASM): (i) Essentials of complexity science; (ii) Forces of management and production governance; (iii) States of dynamic equilibrium; ((iv) Overview of the characteristics of each CASM state including each state’s propensity to incurring technical debt; (v) Similarities between CASM and Kent Beck’s 3X model.

b) A new definition for software engineering

a) ICSM Overview
b) ICSM Phase: (i) Exploration; (ii) Valuation; (iii) Foundations; (iv) Development; (v) Production and Operations

a) The Essence of Software Engineering: (i) The OMG Standard; (ii) Areas of Concern; (iii) Alphas, Alpha States and Checklists; (iv) Activity Spaces; (v) Competencies

b) How Essence enables situational software engineering

a) The Life Cycle – SEMAT Plan-driven Abacus
b) Key Practices: (i) Requirements; (ii) Design; (iii) Development; (iv) Verification and Validation

a) Iterative life cycle – SEMAT Exploratory Abacus
b) Key Practices

a) Scope of Technical Debt
b) Management of Technical Debt
c) Technical Debt Defined
d) Management of Technical Debt: (i) In engineering; (ii) In management; (iii) In process

What people are saying

More Courses

You might also be interested in these courses

Course 2

The Digital Transformation Lifecycle

All organisations - from the very large to the very small - are feeling increasing pressure to "go digital". The course covers a general digital transformation journey and provides practical guidance at each stage.

How should business leaders and owners tackle digital transformation

This is a new course. It is currently being reviewed pending its certification as a Wits Short Course.

Both online and face-to-face versions of this course. Six 2-hour sessions + tutorials + group project + exam
View Course


Professional Software Development - technical practices 1

Aimed at professional software developers wanting to move to a higher level of competence, this course is a Wits University accredited short courses that helps software professionals enhance their technical skills set. The course covers many essential “tricks of the trade"

Raise your level of competence and enhance your career prospects

This is a certified Wits Short Course.

Taught online over 8 weeks. 2-hour interactive session + 1 hour tutorial per week
View Course