Category Archives: Agile

How far should you look ahead?

I’m a consultant. So an easy answer would be, “It depends.” My real answer is more nuanced: only look ahead far enough to see some significant issue and a plausible way to resolve it. If you want to get better, … Continue reading

Posted in Agile, Software Architecture, Software Design | 1 Comment

Agile Architecture Myth #5: Never Look Ahead

Stop it! Stop anticipating! Get coding. Get that next user story working. Don’t. Ever. Anticipate. This seems to be a common agile mantra these days. Since we allegedly aren’t good at anticipating how code will evolve, well frack it, let’s … Continue reading

Posted in Agile, Software Architecture, Software Design | Tagged , , , | 4 Comments

Agile Architecture Myths #4 Because you are agile you can change your system fast!

Agile designers embrace change. But that doesn’t mean change is always easy. Some things are harder to change than others. So it is good to know how to explain this to impatient product stakeholders, program managers, or product owners when … Continue reading

Posted in Agile, Requirements, Software Architecture, Software Design, Uncategorized | Leave a comment

Re-thinking Thinking and Planning

In the tutorial, Hooray We’re Agile Testers! What’s Next?, Janet Gregory apologized a couple of times for saying upfront thinking or planning. I know Janet wanted to let the audience know that she isn’t a fan of massive test plans … Continue reading

Posted in Agile | Leave a comment

Who Defines (or Redefines) Landing Zone Criteria?

Who should be in on discussions that set landing zone criteria? Because most landing zone have architectural implications, someone knowledgeable about the system architecture, in addition to the product owner and other key stakeholders should have a lot to say … Continue reading

Posted in Agile, Requirements, Software Architecture | Tagged , | Leave a comment

Landing Zone Targets: Precision, Specificity, and Wiggle Room

A landing zone is a set of criteria used to monitor and characterize the “releasability” of a product. Landing zones allow you to take product features and system qualities and trade them off against each other to determine what an … Continue reading

Posted in Agile, Requirements, Software Architecture, Software Design | Tagged , | Leave a comment

Agile Landing Zones

In my last post I introduced the idea of landing zones, a set of criteria used to monitor and characterize the “releasability” of a product. A landing zone contains system attributes that must be achieved to declare “success”, along with … Continue reading

Posted in Agile, Requirements | Leave a comment

Introducing Landing Zones

On an aircraft carrier, the landing zone describes a small section of deck that a pilot must touch down in to land the plane safely. By analogy, a landing zone for a product describes a range of measurable attributes that … Continue reading

Posted in Agile, Requirements, Software Architecture | Leave a comment

Software Architecture Stewardship

On agile teams, architects do more than design and implement the interesting tricky bits. They typically balance a wide range of concerns: short-term goals, overall system design integrity, risks versus efforts, design expediency… The successful agile architects I know aren’t … Continue reading

Posted in Agile, Software Architecture | Leave a comment

Agile Architecture Myths #3 Good Architecture Emerges

Last time I left the cap off of the toothpaste, a small blob of toothpaste flowed onto the counter. No planning; it just emerged. Now I know that emergent software architecture is another thing entirely. We can’t anticipate everything about … Continue reading

Posted in Agile, Software Architecture, Uncategorized | 5 Comments