Applying Lean thinking to Software Development


Including an introduction to the Kanban method

A 3-day training course including exercises and simulations.

Objective


Demonstrate how Lean thinking can be applied to software development and equip students with practical tools for improving their development processes and environments.

During the 1980's it became clear that the Toyota Production System was something different, and superior, to the system used by other manufacturers. Researches coined the term Lean to describe the techniques and methods used by Toyota to design and build cars. These ideas have been successfully applied in manufacturing, logistics, construction and most recently to software development and engineering.

Who should attend?


  • Those responsible for the development of software: Project Managers, Team Leaders, Development Directors and Managers, Scrum Masters and Architects.
  • Team members (Software Engineers, Testers, Business Analysts and Product Managers) involved with improving the software development process.

What will I learn?


This workshop uses lecture material and exercises to teach Lean ideas and provide students with experience of applying Lean techniques.
The following topics are included:
  • The relationship between Lean and Agile.
  • 13 Principles of the Toyota Product Development approach.
  • How Lean principles apply in software development.
  • Examples of Lean in construction, manufacturing and services.
  • Lean product development and how it differs from Lean manufacturing.
  • Lean in the requirements and customer engagement process.
  • Basis of Lean systems: Value, Flow, Waste and Pull systems.
  • Identifying and reducing work in progress.
  • Quality is free: Building in quality and stop the line improvements.
  • Tools for improvement: 5 Ways, fishbone diagrams and value stream mapping.
  • Using the Kanban development method to apply Lean in software development, and designing a Kanban system.
  • Metrics to support improvement including: Little's law, queuing theory and Goodhart's law.
  • Tools for managing Lean development: visual displays, tokens, go-see and place-of-truth, A3 reports, set-based design and multi-project management.
  • Continuous improvement through Kaizen and Kaikaku.
  • Building a learning organization to support ongoing Lean and the human dimension.

Workshop leader


This workshop is designed and led by Allan Kelly, an experience software engineer and manager. Allan is the author of the book
Changing Software Development: Learning to be Agile (2008) and holds BSc and MBA degrees.