Category: Process

Plans, Guesses and Illusions

Does the software project you’re currently working on have a plan? It doesn’t have to be an elaborate gantt chart — frankly, gantt charts are pretty worthless though they force us to think through a variety of project issues. It doesn’t have to be a massive missive either — no one reads those things anyway. […]

Does Planning Make Perfect? No, But It Helps!

One of the leading causes of delays in software development projects is simply the state of being not-ready. I see it all the time. A team member tries to work on something and runs right smack into a wall of missing information. Or a someone tries to hand-off a work item to another team member […]

It’s Easier to Get Software Right From the Start

Let’s discuss “done” as it relates to writing software versus testing it — code completed versus code validated. Here’s the scenario. A software developer has finished implementing a code module or, preferably, a story. This means he’s unit tested the code and it works as intended. Is he done? Now, someone specializing in software testing […]

To Build Better Software, Exploit the Fun Factor

I’d like to draw a couple of analogies between software development and learning a new skill such as playing the piano or speaking a new language. Bear with me and hopefully you’ll gain new insights into the benefits of agile development over waterfall development. Have you ever taken piano lessons? Or, have you ever taken […]

Agile Project Management Works for Small Businesses

Guest Post I’m pleased to share this post written by the folks at Agil8. Project management systems are not methods that are just for big businesses and large-scale organisations alone. They are also suitable for smaller businesses that can benefit a great deal from these methods too. The fundamental principles of project management can be […]

Shorter Is Better But It’s Not Agile

I’m hearing and seeing the word ‘agile’ more and more around the office. It comes up in hallway conversations and management presentations. Managers have gotten the message and want us to be more agile. That’s great, right? So I ask them what it means to be more agile and the answer I get is rather […]

Software Projects Fail for the Wrong Reasons

I’d like to discuss failure — specifically, software development projects that fail. Has it ever happened to a project team you were on? If so, it was probably not for the reason you think. Before we can examine this further, we need to agree on what constitutes failure. I’ll offer my definitions and you can […]

Sprint Zero – Your Context May Vary

I’ve advocated for using “Sprint Zero” a few times on this blog and each time I get some negative feedback. I’m going to continue my crusade in this post but with a twist. Firstly, recognize that “Sprint Zero” is about ‘hitting the ground running’. That is, getting the team ready to start writing code that […]

Enterprise Projects Need to Start with Sprint Zero

The idea behind “Sprint 0” is that software development teams should spend some time at the beginning of an agile project doing analysis, design and other preparation tasks. I’m not referring to small projects — a few people for a few months. I’m thinking about enterprise projects involving multiple teams deploying to multiple servers. At […]

Agile Software Development Will Never Go Mainstream

The headline of this post pains me but it’s true. Real agile approaches to software development will never replace the old and outmoded command-and-control approaches based on waterfall. Scrum, Kanban, XP, Lean, etc. will augment and improve waterfall approaches but never replace them. Here are two reasons for my pessimism. The Safe Choice Have you […]