Scrumtisch with Mary and Tom Poppendiek #
Yesterday evening the Scrumtisch Berlin hosted a talk by Mary Poppendiek on Lean Development. Mary started the session
with a talk on what lean development is all about and why it goes further than Scrum ever did. Some of the core
principles she explained:
The first goal of every lean project should be to strive for customer satisfaction.
The low hanging fruit is to do exactly what the customer wanted to have. The second step is to give features he took
for granted as well - think performance, think extensibility. The ultimate goal should be to fulfill what the customer
never knew he even wanted. Customers don’t want software - they want their problems solved, the only way they are aware
of to solve their problem is through software. Show them how to really solve their problems: Before the iPhone was
invented, no one could have predicted what a great smart phone could look like.
Show technical excellence:
Testing is not optional. To be a good developer you should always be able to prove that your code is correct. As
proving the correctness of software in the mathematical sense is hard, if not impossible today, the recommendation was
to use unit testing and integration testing as a poor man’s proof for correctness. Without (automated) testing, any
agile project is doomed to develop into a big ball of mud that cannot be easily extended.
The third principle is
to deliver reliably, to design the system such that it meets its constraints. Constraints here are not only technical
requirements - constraints include budget, time, features, stability and scalability.
The fourth observation was
that no development process can fix the problems that Junior-level-only teams experience. Every lean organisation must
provide for mentoring. The mentor’s job is to climb the same path as the mentee and pull him along - instead of
pushing. In contrast to many setups, not only should new hires be mentored, but basically every employee should have a
mentor. Only that way learning - which is essential in current project (not only it) environments - is made
possible.
A very interesting observation came from the audience: Every single advise given above is well known
and appreciated by any reasonably good software engineer. Problem is: Why don’t we adopt these rules in practice? The
guy asking the question gave the answer himself: “The fish starts smelling from its head” (German proverb). So the goal
of lean developers in the end would be to talk to their management: Do short iterations of a few weeks. Deliver early,
deliver often, deliver in time. Usually that alone is enough to exceed expectations. Choose the best solution (both
from business and technical perspective). Your results should speak for themselves to step by step change the way your
organisation works.
Slides are online on the
Scrumtisch blog.