Here I go creating 2-people Kanban board for our current project efforts so that we can easily see how our work goes and share it with my Junior (he’s a Junior Dev, but he’s got more IT experience than I in fact… he did a career sidestep just recently). And the first thing I hear is: “I’m allergic to agile” (meaning: “I don’t want to use it, it’s agile and agile sucks”).
Since I felt like I’m on the dark side here, I’ve asked: “Why?”
So he told me a story about his friend’s company where they’ve got a project run using “agile”. “Developers were drawing their burndown charts and so on” – he said, “but when it came to the project delivery the customer didn’t like the outcome and didn’t pay for the project”.
It struck me here: how’s that agile? After all, first of the key principles of agile projects says “Our highest priority is to satisfy the customer through an early and continuous delivery of valuable software.”
But there one thing that struck me even more.
The agile manifesto was published over 15 years ago, but the idea of incremental software development methods goes as far back as the 1970s (there’s a pretty nice article on agile history on TechBeacon for those more interested). Even though agile matured over time, there’s a big number of misconceptions about agile or how to be agile. I’m not going to dwell on the agile principles or misconceptions here, you can easily google it.
Just think about it, you’re “doing agile” yet you concentrate on processes, tools, creating overflowing documentation or following a plan. How’s that agile?
Ok now. I know. Agile methods are not for everyone. It’s not perfect, and its real application is sometimes extremely hard. Not every company is ready to be agiler. Not every customer has the possibility to be (look at government or other places full of complicated processes). But agile in itself isn’t bad. It’s more the matter of application the right methodology than just trying to adapt SCRUM in every possible place and complaining afterward that Agile sucks.
Through my career, I’ve met lots of people wanting to go agile, or think they already have. As team members, we need to understand the methodology we work on and don’t create any further misunderstandings. If your project manager tells you that you are doing SCRUM should know you’re not coz there’s no such a role in SCRUM as Project Manager. There’s more than one application of agile principles: Crystal, Scrum, Lean SD, Kanban. All are based on mentioned before agile manifesto and its principles.
As a developers we’re all about creating working applications and agile priciples are supposed to help with doing it in a painless way. Yet many is getting allergic to the idea of being agile. I believe it comes from misunderstanding what core of agile really is. If you don’t want to be agile, it’s fine – you don’t have to. But if you want to be agile, understand what agile really is and don’t follow blindly what you’re told. Be agile and deliver valuable software!
Happy software development!