Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are some situations where Agile is inappropriate? [closed]

I have been hearing and reading about Agile for years. I own a book or two on it and I like the idea.

I am finally in a position where I could roll something like this out where I work, but I have serious concerns about whether it's the way to go for us:

  • Isn't there a minimum size for this? Big design up front must be more efficient for a three or four week project... Right?
  • Our customers usually require fixed prices. They need to know what they're dealing with, except in special cases where we are up against an obvious black hole and even then people are more comfortable with a cap. So how can you provide a quote if you're going with a process that is tolerant of ongoing requirement changes?
  • I understand that Agile may provide better odds of success in more complex projects, but won't it drive up costs to the customer? And of course there is the cost of failure to consider - perhaps we are back at the minimum size question here.
  • How in the world would you explain this counter-intuitive approach to customers? Non-technicial stakeholders might not have the experience to wrap their heads around anything beyond Waterfall.
  • Even for internal projects, there are budgets. What am I missing?
  • It seems like there is some backlash against Agile lately. Is something else going to start gaining traction soon?

Note: We are a 5 dev shop with projects ranging from a day or two all the way up to several months. I don't believe that there is one methodology to rule them all, but it would be great to find something flexible enough that we can adapt it to all of our projects.

Thanks a lot!

Brian MacKay

like image 507
Brian MacKay Avatar asked Dec 08 '08 03:12

Brian MacKay


People also ask

In which situation is an Agile process inappropriate?

If you have laid out all the advantages of the Agile methods for the given project and the customer is reluctant to follow you, do not try to use Agile methodology against his will. Without your customer's continuous feedback and high involvement in the development process, your project will be doomed to fail.

When Agile is not appropriate for a project?

Projects that need to deliver against very specific, often legal or regulatory, requirements aren't agile-appropriate either. In these cases, the requirements and delivery timeframes are very explicit – typically with penalties associated for failing to meet them.

Where can Agile not be used?

Agile should not be used if teams or clients don't think the methodology is right for their project. Some teams will decide to reject the Agile approach due to personal reasons. This is the same for some clients who won't relinquish control of a project.


1 Answers

I don't think one methodology can rule them all. I am sorry. I am a firm believer in finding the right model for the right project. For example how would you feel if your were into surgery and you knew the machine which was keeping you alive was developed in a rapid iterative cycle with little design upfront.

But anyway, on to your question. I am a big believer in agile approaches, of keeping your iterations short, focusing on what the user wants, and not building the battleship but only building exactly what you need. I would say 95% of all projects could use agile approaches, and if they can't it's usually a cultural issue, not a project issue.

Now as far as BDUF (Big Design up Front), we had great success with a 20 person team on a 4 month project, we took the project broke it down into 3 four week cycles, at the start of each cycle we all meet in a room, and said ok here's what we need to build, here's how we will build it, and we took a stab at what our interfaces would look like, what data we needed etc...But it was only a stab, we then went back to our desks, and whoever owned the various pieces flushed out the details.

Essentially we did enough BDUF upfront to jumpstart the team (And ensure we covered all the business requirements). We used to call these sessions Developer Days and it was a good way to jumpstart the team. If you have the cash take the team off site you can stuff them in a conference room at a hotel feed them lots of junk and watch the juices flow.

like image 148
JoshBerke Avatar answered Nov 09 '22 19:11

JoshBerke