Several studies have shown superior software development success rates when using an agile approach like Scrum or Kanban versus a waterfall approach. Does using a waterfall approach to develop software cause many projects to fail? Conversely, does using an agile approach cause projects to succeed? I wish it was that simple. Ultimately people cause projects […]
Month: February 2013
Writers Can Teach Us Something About Writing Software
In this post, I’m sharing a technique for writing a software module with you. I’m assuming that we are implementing a user story and that the acceptance criteria are clear. The story has been divided into a set of tasks and the task durations are known. It’s an approach that works well for me though […]
Binary Choices are Better When Choosing Software Features
In the world of agile software development, there’s a lot of emphasis on things like story estimates, daily standups and team retrospectives. Those things are important but there’s a serious problem that none of them address — feature set. What features should the software have in the next release? Waterfall development practitioners tend to include […]
Faster Business Is Better Business When You Need to Change
Can you get your software to market faster by following agile software development principles from Scrum, XP, Kanban or Lean? That’s a complex question that generates controversy no matter how I answer it. I’m okay with controversy so my answer is yes — if you give the team time to mature. Regardless of what you […]
Hire the Best People By Focusing on What Matters
In my post “Don’t Just Prioritize User Needs, Prioritize the Process Too”, I discussed the need to prioritize the elements and artifacts of the software development process. In this post, I’m turning my attention to the hiring process. When your team needs to bring another developer on board, what do you look for? If yours […]
Change Is Good, Upheaval Is Not
You want your software development team to switch from using a waterfall approach to using an agile approach like Scrum, Kanban, Lean or XP. Should you do it gradually or go cold turkey (all at once)? Before you answer that question there are a few things to consider. Let’s walk through an example. This will […]
Open Source, Agile Development and Social Media Have Something In Common
Open source software, agile development techniques and social media tools are three of my favorite things. They have one thing in common that binds them together — they help people collaborate. All three provide mechanisms people can use to interact and cooperate. In fact, the more we do so, the better the results. That’s how […]
Don’t Just Prioritize User Needs, Prioritize the Process Too
Many software development teams go to great lengths to prioritize requirements, features or user stories. (I hope your team does.) It’s a valuable exercise if people take the time to truly evaluate the importance of each request they make or receive. Do you want to improve your software development process? Apply the same logic to […]
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 […]
It’s Not About the ‘How’. It’s About the ‘What’.
Software development experts, myself included, get caught up in methodology battles. I like Scrum. You like waterfall. My approach is more responsive than yours. Your approach is more disciplined than mine. But, are we losing sight of ‘what’ really matters? The approaches we follow are the ‘how’ of building software systems. My goal (and I […]
10 Rules for Lean and Agile Thinking
Many companies have adopted or are considering adopting an agile software development approach using the principles of Scrum, Kanban, XP or Lean. Regrettably, their goal is often to reduce time-to-market but agile methods are not designed to reduce development time. These methods are focused on quality and aligning development teams with customers. If time-to-market is […]
Agile Software Development Is Like a Home Renovation Project
Have you ever watched a home renovation show on television? I’m thinking of shows like Love It or List It and Property Brothers (both on HGTV). The specifics vary but they use the same general approach to managing renovation projects. The work crews are given a fixed time period and a fixed budget to complete […]