Outcomes not outputs

outcomes not outputs

One of the key takeaways I got from reading the excellent book Lean Enterprise is the idea that you should focus on outcomes not outputs. This is a powerful idea for strong agile teams, and ties in well with the Agile Manifesto. If you understand this concept, you can make a lot of the annoying […]

Continue reading

Common barriers to agile adoption

barriers to agile adoption

A lot of organizations are trying to “go Agile”. That sounds great, but they often fail. Sometimes they get part of the way there, sometimes they got most of the way and achieve some benefits, but then struggle. Sometimes they fall in a heap and don’t get anywhere. Often they just end up doing “cargo […]

Continue reading

The strengths of Scrum

scrum agile strengths

OK so you might think after the last post, that I’m against Scrum and I think it’s worthless. Not true at all. I use it a lot and have a lot of respect for it. There are definitely some strengths of scrum for software development. I just think it’s worth being aware of its weaknesses. To […]

Continue reading

The problems with Scrum

scrum agile problems

You might be wondering why everyone talks about Scrum so much. Often when I write about Agile on this blog, I’m pretty much talking about Scrum. It is the most widely used and known methodology for Agile software development in the world. Remember, Agile is not a methodology, it is a set of values and principles. […]

Continue reading

Agile is technology agnostic

agile technology agnostic

Have you wondered what type of languages or technologies you should use when doing Agile software development? This article will help clear that up. The answer is a lot simpler than you might think! It turns out that in fact, agile is technology agnostic. What language / design approach is best for agile? I’ve seen some […]

Continue reading

Deploy is not the same as release

software deploy

A lot of people think it’s risky to deploy software. Some of these people lose sleep over deploying software. A lot of people have jobs based around deploying software, and for them others they work with, it is a big deal. It involves a lot of something people call “technical risk management”. That’s just a […]

Continue reading

When to use Agile vs Waterfall

waterfall agile

If you read this blog, you probably think that I really love Agile, and really hate Waterfall. Well, that’s not true. I think Agile (when done well, which it often isn’t) is a good methodology for some contexts. More specifically, agile is a good methodology for building software under conditions of uncertainty. If you are not […]

Continue reading

Myths of agile: “Agile is dead”

agile software development dead

This is the last of the agile myths I’ll be covering, and it is the most controversial. There have been many articles published, for quite some time, claiming that agile is dead. I think these articles are actually claiming different things. Some of those things are right, but many of them are wrong, and many […]

Continue reading

Myths of agile: “there’s no documentation in Agile”

Another myth around Agile is that there is no documentation in agile. Once the project is done, the team disappears in a whirlwind of dust, leaving only a handful of hastily scrawled post-it notes behind them. This is actually a hard problem and there is sometimes some truth to this.  But we need to think […]

Continue reading

Myths of agile: “there’s no planning in Agile”

I’m going to tackle some of the myths around agile software development. The first and probably most well known is that “there is no planning in Agile, you just make it all up as you go along”. This is not at all true. In fact, I’m going to go out on a limb here and […]

Continue reading