« The Evolution of a Project Schedule | Main | Sort and Aggregate Functions in the VersionOne Open Platform »

Monday, December 08, 2008

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d83452ee9169e20105364e6fad970c

Listed below are links to weblogs that reference The Secret to Organizational Agility:

Comments

Anna Forss

Interesting post on an important but difficult subject. Thanks!

Wally Lafferty

This was a brilliant piece! And especially important for organizations who are transitioning to agile management from some other traditional process. We tend to focus on agile management for the development team, and forget that the Finance department often constrains the way projects are budgeted, and therefore the way resources are applied. We often forget that the Contracts department may be stuck on an SOW template that creates contractual dependencies on "requirements up front" and "testing at the end." A transition to agile should be considered in the context of a TRANSFORMATION of the entire organization to ensure ALL dependencies are broken down.

Christopher Avery

Mike,

Provocative! Thanks for the perturbation. I look forward to your unpacking this some more. For instance does this also put an end to delegation, outsourcing, performance management, and -- gosh forbid -- accountability management since you own it all?

And, I was going to comment on this over at my blog but then that would *depend* on your post remaining in place here -- and I'm not sure I can count on that as an acceptable risk.

(-;

Thanks,
Christopher

Daniel Davis

Sparking good thoughts, thanks Mike. Just read it once and intend to read another time or two, but raised an intiial question on if maybe should be some breakup for the term dependency? Aren't some dependencies encouraged, like in a SOA? Maybe its a difference between business dependencies and code dependencies?

Dan.

Mike Cottmeyer

Thanks Wally. It is hard to argue with your assessment of this post ;-)

Mike Cottmeyer

Thanks Dan for the comment.

Like many blog posts, this article was clearly and intentionally a little provocative.

I truth, I have started questioning all dependencies with my clients... especially around teams, projects, architecture, and programs.

Inevitably some dependencies remain and those are probably the good dependencies that you talk about. Sometimes dependencies remain that I would rather see broken. Either way those dependencies need to be managed.

If they are unmanaged, or overwhelming to the organization to manage, they will slow you down. Maybe if I was being more levelheaded, I would have said "minimize dependencies at all costs" rather than the "break" at all costs. I do think the stronger language makes people think harder ;-)

Thanks for reading.

Mike Cottmeyer

Thanks for your reply Christopher... I read your comment when I woke up this morning and have been trying to think of something witty to say all day ;-) I am giving up and just going to do a straight reply!

When I go out an talk to clients... the primary barrier to adopting agile methods, adopting the agile ethos, setting up accountability, setting up empowered teams, etc. is the amount of dependencies they are willing to maintain and trying to manage.

From my perspective the primary dependency challenges are between teams, projects, programs, and architectural subcomponents.

Most organizations are so mired in unnecessary dependencies, based on faulty assumptions, unvalidated assumptions... this seems the best place to start.

Removing dependencies is hard, and there is clearly no way to remove all of them... but... using this as your starting place for agile adoption helps many organizations understand more clearly why their agile implementations are failing and what they can do to help them along. Maybe a good caveat to my post is that any dependencies you decide to keep, you better make sure you are managing them effectively.

So... if you ever link to one of my posts, and you want to make sure that the link will be valid indefiantely, you will have to manage the dependency with my site. that is overhead and it might impact your ability to change YOUR post at a later date.

Therefore, you were probably better off breaking the dependency and replying straight into my blog... ;-)

Chris Bernard

Enlightening perspective on dependencies!

But when you say:

"Lastly, we assume they have an object oriented architecture that lends itself to test driven design, continuous integration, and constant refactoring."

... you seem to be assuming that OO is required for agility. Wouldn't you agree that a functional architecture can support TDD, CI, and constant refactoring just as well and an OO architecture?

And if not, why?

It would seem the programming paradigm is not important to agility, rather it is the architecture's modularity, loose coupling, and lack of duplication -- In short: flexibility -- that reduce the cost of code changes.

Mike Cottmeyer

Chris,

Your point is well taken.

I was thinking more about some of the tightly coupled mainframe Cobol environments I have worked in... and generalized the opposite of that to be an object oriented environment.

I agree that the programming paradigm is not important, but as you state... the modularity, loose coupling, and lack of duplication.

Thanks for the great comment and for keeping me honest ;-)

Mike


Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been saved. Comments are moderated and will not appear until approved by the author. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment

Comments are moderated, and will not appear until the author has approved them.

Subscribe