Agile & Lean Management

Reducing the Software Value Gap

Research shows at least 50% of IT developers’ time is wasted due to the following reasons: Rework due to incomplete or poorly defined needs and requirements (“incomplete kit”); Rework due to frequent changes in requirements and scope up to the final delivery stages; most such changes are not “must have” but only “nice to have”; Software…
Read more

Written requirements in the age of agile development

Many of today’s agile software projects are characterized by a lack of written requirements and other documentation. The rationale behind this is that requirements change “too often” to be written down. Project management might also be afraid that writing documents consumes too much time of developers and stakeholders. However, my personal experience is that projects with…
Read more

Estimations done right

How reliable, useful and realistic are effort estimations and what are the implications of different methodologies? Since at least the 1960s, this is a hot topic for software engineers and their managers, although the importance of precise estimation is decreasing in the age of agile development. I would like to give a summary of my past experiences,…
Read more

What Architecture Means for Agile Development

In contrast to some discussions we observe in the software community, agile development is not about cargo cult adoption of Scrum or any other process, toolkit, or methodology — although we certainly observe this and consider it a problem. The essence of agility is responsiveness, learning, and sufficiency. Agility is reflected in sustainability and quality…
Read more

Is your team really agile?

Most teams purporting to be doing agile software development are not applying the level of technical rigor necessary to succeed at it. Most “agile” teams have actually only adopted Scrum’s project-management practices and have failed to effectively adopt “the hard disciplines” like test-driven development, refactoring, pair programming, simple design, and continuous integration. Jean-Raymond Abrial, Faultless…
Read more

What to document in agile projects?

A posting in the Agile and Lean Software Development group on LinkedIn inspired me to think about the amount and type of documentation that should be created in agile projects. It is a misconception, if developers think that agile methods do not require any written documents. Here are a few (I think the most important)…
Read more

Does responsibility mean to follow the rules?

There’s a misconception about responsibility that probably starts to establish in our brains during childhood. When we grow up, we get taught that responsibility means to follow the established rules of society (including our parents and the various educational institutions), which indeed is a good start. Now, the challenges we face in large software projects are…
Read more

Self-organization in agile teams

For years, I was arguing against the believe that agile teams are actually self-organizing (like a flock of birds), because every practitioner knows that there is a lot of active organization and planing needed for a software project to be successful – especially in agile environments. If the management doesn’t care, the team will barely feel the…
Read more