Agile methods (agile modeling, agile data, the agile unified process and the agile enterprise process) were once the brainchild of Scott Ambler. The coauthor of 19 books, and counting, he’s not afraid to share his opinion, and the agile methodologies have escaped to a broad audience. As a companion piece to other methodologies, notably Scrum and Extreme Programming, ‘agile’ has become a sort of industry pronoun, like what Xerox did for copiers, Klenex did for tissue paper, and Google did for search.
That’s all fine and good for trivia night, but what if you’re faced with using agile during your workday, and more specifically, on a data warehousing project? It’d be nice to have a baseline reference, to understand where this stuff came from and what it is supposed to do for you. That’s what this blog post is about. If there’s interest, maybe we can continue this topic in a future blog series. But for now, let’s just take a look at the revised values of the Agile Unified Process.
Revised Values? Yes, the original values used words like “software” instead of “solution” and “customer” instead of “stakeholder”. As agile has grown beyond its software development roots some of that language got in the way, but the concepts were still sound.
The Agile Values
1. Individuals and interactions over processes and tools.
“…the most important factors that you need to consider are the people and how they work together because if you don’t get that right the best tools and processes won’t be of any use. Tools and processes are important, don’t get me wrong, it’s just that they’re not as important as working together effectively.”
2. Working solutions over comprehensive documentation.
“When you ask a user whether they would want a fifty page document describing what you intend to build or the actual software itself, what do you think they’ll pick? …never forget that the primary goal of software development is to create software, not documents – otherwise it would be called documentation development wouldn’t it?”
3. Stakeholder collaboration over contract negotiation.
“Only your [stakeholders] can tell you what they want. Yes, they likely do not have the skills to exactly specify the system. Yes, they likely won’t get it right the first. Yes, they’ll likely change their minds. Working together with your [stakeholders] is hard, but that’s the reality of the job.”
4. Responding to change over following a plan.
“People change their priorities for a variety of reasons. As work progresses on your system your project stakeholder’s understanding of the problem domain and of what you are building changes. The business environment changes…There is nothing wrong with having a project plan, in fact I would be worried about any project that didn’t have one. However, a project plan must be malleable, there must be room to change it as your situation changes otherwise your plan quickly becomes irrelevant.”
This is probably a good place to note these agile values are meant to be read as valuing one over the other, not at the exclusion of the other. Understanding the values of a concept is helpful when determining what to expect from its implementation and as the name implies, agile has a lot of emphasis on flexible achievement of goals. You can see that concept repeated throughout the values.
So what now? I’d like to suggest you copy down these four values and take them with you for a week at work. Check in on them occasionally and note how often you apply one, wish you could, or flat out do the opposite. Go ahead and be honest, you’ll be the only one who knows. You might find a couple areas where your projects are rigid, and maybe a few where you are already more agile-minded than you thought.
Scott Ambler, Ambysoft. http://www.ambysoft.com – Scott’s personal website for sharing Agile information. Quotes in the values list were retrieved from an essay Scott wrote about the Agile Manifesto.
The Agile Alliance. http://www.agilealliance.org – An industry-neutral group that supports people using Agile principles and promotes agile use.
Leave a Reply
You must be logged in to post a comment.