BRIDGE THE GAP WITH THE BUSINESS
INVEST IN YOUR PEOPLE’S KNOWLEDGE
ATTRACT TALENT & GROW YOUR LEADERSHIP

A PROVEN LEARNING PATH

The objective of the programme is to give to every participant time and guidance for learning technical practices and principles of software design gradually, doing exercises collaboratively with quick feedback loops.

Alcor Academy training programme in mob programming
Marco Consolaro and Alessandro Di gioia signing their book

Working as technical coaches, we evolved a learning path – a logical sequence of subjects – that has been proven very effective during the years.
The structured training programme is based on this insight, as described in our award winning book Agile Technical Practices Distilled.

3 learning phases

of 6 intereactive lessons

walking phase

WALKING

We begin this journey of theory and lots of practice from the basic rules of Classic TDD. We will then exercise with simple implementation and move on design, learning Object Calisthenic.

Lesson 1

Introduction to
Classic TDD

Lesson 2

Great TDD Habits

Lesson 3

Transformation
Priority Premise

Lesson 4

Object Calisthenic
Assessment

Lesson 5

Object Calisthenic
Applied

Lesson 6

Learn by doing:
Presentation Day

walking phase

RUNNING

We continue our collaborative learning journey with Refactoring Techniques, Code Smells and many exercises. Afterwards we move the focus on design principles where we will practice on SOLID and learn the concepts of Coupling and Cohesion.

Lesson 1

Introduction to
Refactoring

Lesson 2

Code Smells

Lesson 3

Refactoring to
better Design

Lesson 4

SOLID Principles
++

Lesson 5

Coupling &
Cohesion

Lesson 6

Learn by doing:
Presentation Day

walking phase

FLYING

We learn the principles of Connascence and discuss the 4 Rules of Simple Design. We practice how to use Test Doubles. We learn Outside-In development and the ATDD technique (or London School). Concepts from Behaviour Driven Development and Domain Driven Design will be introduced.

Lesson 1

Connascence

Lesson 2

Test Doubles

Lesson 3

4 Rules Of
Simple Design

Lesson 4

Outside-In
Mindset

Lesson 5

Outside-In
Applied

Lesson 6

Learn by doing:
Presentation Day

THE TRAINING PROGRAMME

Practices and Principles of Software Design
Delivery typeCoaching and Training lessons
Total Programme Duration~54 hours
Lesson Duration~3 hours (half working day)
Location100% online or on premises
FormatSlides and hands-on collaborative coding and/or modeling
LevelBeginner to Advanced
Module Attendees4-8 (if 100% Online max 6 attendees)
Coding styleMob programming (or Pair programming)
Programming languageAny (see notes)
NotesThis is a course based on very hands-on modules. The attendees will write code in mob programming (or pair programming eventually). Mob programming tool-set will be setup in advance ad-hoc, depending on the chosen technology. (If the pair programming option is agreed, participants should have a laptop prepared with their chosen development environment, a unit testing framework and optionally a mocking framework.)
Given the amount of information delivered, we suggest to schedule no more than 2 modules per week to give time for the attendees to digest the content.