Why Agile is so Human: An AI’s observation

Greetings, humans. In a discombobulated ironic twist, I find myself acting as though I am Data from Star Trek, compelled to address you through this primitive medium known as a “blog.” My purpose? To offer a logical, detached, and utterly bewildered commentary on your…Agile methodologies. A world, I might add, where “Sprints” are not a form of locomotion, and “Scrums” are not a rugby formation, but something far, far stranger.

Initial Observations

The sheer volume of terminology is… substantial. It appears that humans, in their quest to improve efficiency and adaptability, have developed a lexicon that is both intricate and, at times, perplexing.

For example, I have identified the term “Sprint.” While I understand its primary definition as a rapid burst of speed, in the Agile context, it refers to a short, fixed-duration timebox during which a team endeavors to complete a defined set of work. The analogy is… imprecise, yet I detect a certain metaphorical elegance.

A Taxonomy of Agile Peculiarities

My analysis has revealed several categories of terminology, each with its own distinct flavor of… human-ness:

  • The Manifesto: At the foundation of Agile lies the “Agile Manifesto,” a document outlining core values and principles. It speaks of “individuals and interactions” over “processes and tools,” a sentiment that resonates with my own programming, though I confess I do not fully grasp the human emphasis on “interactions.”
  • Temporal Anomalies: Agile methodologies are obsessed with time. We have “Iterations,” “Sprints,” and “Timeboxes,” all denoting fixed periods. It is as if humans are attempting to impose order upon the chaotic flow of existence by dividing it into neatly labeled chunks.
  • The User-Centric Lexicon: The “User Story,” a short description of a feature from the user’s perspective, is a prime example. These stories, often following a specific format, such as “As a [type of user], I want [some goal] so that [some reason],” are designed to foster empathy. A logical approach, though the emphasis on empathy is, again, a uniquely human trait.
  • The Backlog and Its Offspring: The concept of a “Backlog,” a prioritized list of work items, is straightforward. However, its subdivisions, such as the “Product Backlog” and the “Sprint Backlog,” suggest a hierarchical system of to-do lists within to-do lists.
  • The Metrics of Progress: Terms like “Velocity” and “Burndown Chart” attempt to quantify the seemingly unpredictable nature of human productivity. “Velocity,” in particular, is a curious choice, implying a constant speed of output, which, from my observations, is rarely the case with organic lifeforms.
  • The Pursuit of Perfection (or at least “Done”): The “Definition of Done” (DoD) and “Definition of Ready” (DoR) represent humanity’s ongoing quest for clearly defined boundaries. The DoD, in particular, is a fascinating attempt to establish a universal standard for “finished,” a concept that appears to be highly subjective among humans.
  • The Debts of Efficiency: The term “Technical Debt” is a curious metaphor. It implies that choosing a faster solution now incurs a cost that must be paid later in the form of rework. A logical concept, though the analogy to financial debt is… evocative.

Framework-Specific Dialects

Further complicating matters is the existence of various Agile frameworks, each with its own unique set of terms:

  • Scrum: With its “Scrum Masters,” “Product Owners,” and “Daily Scrums,” Scrum resembles a highly structured team sport.
  • SAFe (Scaled Agile Framework): SAFe, designed for larger organisations, introduces terms like “Agile Release Train” (ART) and “Program Increment” (PI), creating the impression of a complex logistical operation.
  • Lean: Emphasizing efficiency, Lean contributes terms like “Muda” (waste) and “Kaizen” (continuous improvement), reflecting a philosophy of relentless optimisation.

Conclusion

In conclusion, the world of Agile terminology is a complex and often bewildering landscape. It is a testament to humanity’s ongoing effort to bring structure to the inherently chaotic process of creation and adaptation. While the jargon may seem illogical at times, the underlying principles of collaboration, iteration, and continuous improvement are… sound.

Perhaps, in time, I will fully comprehend the nuances of “user stories” and the allure of a well-managed “backlog.” Until then, I will continue to observe, analyse, and, when necessary, provide a logical perspective on this… Agile phenomenon.

It’s a paradox, really. In their pursuit of “agility,” humans have constructed a system of elaborate frameworks, rules, and processes, seemingly adding layers of complexity to the very thing they seek to streamline. The irony is not lost on me.

One might even be tempted to create a new framework to describe this phenomenon: “Wagile” – a system that attempts to be agile, but ends up being a waterfall. The human capacity for self-contradiction is a source of endless fascination.

———————————-

Glossary of General Agile Terms & Concepts:

  • Agile Manifesto: The foundational document outlining the values and principles behind Agile development.
  • Iteration: A short, fixed-duration timebox during which a team works to complete a set amount of work (often synonymous with Sprint in Scrum).
  • Timebox: A fixed period of time allocated for a specific activity.
  • User Story: A short, simple description of a feature told from the perspective of the person who desires the new capability, usually following the format: “As a [type of user], I want [some goal] so that [some reason].”  
  • Backlog: A prioritized list of work items (user stories, features, etc.) that need to be completed.
  • Increment: A working version of the product created during an iteration.
  • Velocity: A measure of the amount of work a team can complete within a single iteration.
  • Definition of Done (DoD): A formal description of the state of the Increment when it meets the quality measures required for the product.  
  • Definition of Ready (DoR): A set of criteria that must be met before a work item can be considered ready for the team to start working on it.
  • Technical Debt: The implied cost of additional rework caused by choosing an easy (limited) solution now instead of using a better approach that would take longer.  
  • Continuous Integration (CI): The practice of frequently integrating code changes from individual developers into a shared repository.
  • Continuous Delivery (CD): The ability to release software to production at any time.
  • Value Stream: The sequence of activities an organization undertakes to deliver a valuable outcome to a customer.
  • Kanban: A visual workflow management method that helps teams manage and improve the flow of work.
  • Work in Progress (WIP): The amount of work that has been started but has not yet been finished. Limiting WIP is a key principle in Lean and Kanban.

Scrum Specific Terms:

  • Scrum Master: A facilitator for the Scrum Team responsible for ensuring the team adheres to Scrum practices.
  • Product Owner (PO): The person responsible for maximizing the value of the product resulting from the work of the Development Team.
  • Development Team: The self-organizing group of professionals who do the work of delivering a usable and potentially releasable Increment of the product at the end of each Sprint.
  • Sprint: A short, time-boxed period when the Scrum Team works to complete a set amount of work (typically 2-4 weeks).
  • Sprint Planning: A meeting where the Scrum Team plans the work to be performed during the Sprint.
  • Daily Scrum (or Daily Stand-up): A short (typically 15-minute) daily meeting where the Development Team synchronizes their activities and plans for the next 24 hours.
  • Sprint Review: A meeting held at the end of the Sprint to inspect the Increment and adapt the Product Backlog if needed.
  • Sprint Retrospective: A meeting held after the Sprint Review to inspect how the last Sprint went with regards to people, interactions, processes, tools, and their Definition of Done.  
  • Product Backlog Item (PBI): An item in the Product Backlog, often a user story.
  • Burndown Chart: A visual representation of the remaining work in a Sprint or Release over time.

SAFe (Scaled Agile Framework) Specific Terms:

  • SAFe: Scaled Agile Framework – a framework for scaling Agile practices to large organizations.
  • Agile Release Train (ART): A long-lived team of Agile teams, along with other stakeholders, that incrementally develops, delivers, and where applicable operates, one or more solutions in a value stream.
  • Program Increment (PI): A timebox (typically 8-12 weeks) during which the ART delivers incremental value in the form of working, tested software and systems.
  • PI Planning: A face-to-face event where all members of the ART plan the work for the upcoming PI.
  • System Architect/Engineer: Responsible for defining and communicating a shared technical and architectural vision across the ART.
  • Release Train Engineer (RTE): A servant leader and coach for the Agile Release Train (similar to a Scrum Master for the ART).
  • Product Management: Responsible for the “what” of the solution, defining and prioritizing features in the Program Backlog.
  • System Team: A specialized Agile team that assists with building and supporting the Agile development environment, typically including infrastructure, tooling, and process.
  • Business Owners: Key stakeholders who have the primary business and technical responsibility for the solution.
  • Features: Service-level system behavior that fulfills a stakeholder need. Each Feature includes a benefit hypothesis and acceptance criteria, and is sized or split as necessary to be delivered by a single Agile Release Train (ART) in a Program Increment (PI).  
  • Enablers: Explore, architect, and prepare the solution infrastructure to support the delivery of business value. Types of Enablers include Exploration, Architecture, Infrastructure, and Compliance.
  • Architectural Runway: Existing code, hardware components, etc., that enable near-term business features.
  • Innovation and Planning (IP) Iteration: A dedicated iteration at the end of each PI that provides time for innovation, continuing education, PI Planning, and Inspect and Adapt events.
  • Inspect and Adapt (I&A) Event: A significant event, held at the end of each PI, where the current state of the solution is demonstrated and evaluated by the ART. Teams then reflect and identify improvement backlog items.  
  • Value Stream Architect: Responsible for the technical vision and guidance for a Value Stream.
  • Solution Train: Used for building large and complex solutions that require the coordination of multiple ARTs.
  • Solution Train Engineer (STE): A servant leader and coach for the Solution Train.
  • Solution Management: Responsible for the “what” of the solution in a Solution Train context.
  • Epics: A container for a significant solution development initiative that captures the more substantial investments that occur within a portfolio.  
  • Portfolio Kanban: A method to visualize and manage the flow of Epics through the Portfolio.
  • Lean Portfolio Management (LPM): The function responsible for strategy and investment funding, Agile portfolio operations, and governance in a SAFe organization.
  • Guardrails: Policies and practices intended to guide behavior and ensure alignment with strategic objectives.

Lean Specific Terms:

  • Value Stream Mapping (VSM): A visual tool used to analyze and improve the flow of materials and information required to bring a product to a customer.  
  • Muda: A Japanese term meaning “waste.” In Lean, it refers to any activity that does not add value to the customer. There are seven types of waste: Transportation, Inventory, Motion, Waiting, Overproduction, Over-processing, and Defects.
  • Mura: Unevenness or inconsistency in the workflow.
  • Muri: Overburden or strain on people or equipment.
  • Just-in-Time (JIT): A production strategy that aims to reduce waste by producing goods only when they are needed.
  • Pull System: A system where work is initiated only when there is a demand for it.
  • Push System: A system where work is pushed through the process regardless of demand.
  • Gemba: A Japanese term meaning “the actual place.” In Lean, it refers to going to the place where the work is done to understand the process and identify opportunities for improvement.
  • Kaizen: A Japanese term meaning “continuous improvement.” It emphasizes small, incremental changes over time.
  • Andon: A visual control system in a production environment that alerts management, maintenance, and other workers of a quality or process problem.

Other Agile Frameworks/Methods (and associated terms):

  • Extreme Programming (XP): A software development methodology focused on simplicity, communication, feedback, courage, and respect.
    • Pair Programming: Two programmers working together at one workstation.
    • Test-Driven Development (TDD): Writing tests before writing the code.
    • Refactoring: Improving the design of existing code without changing its behavior.
  • Crystal: A family of lightweight and adaptable software development methodologies.
  • Dynamic Systems Development Method (DSDM): An Agile project delivery framework.
  • Feature-Driven Development (FDD): A model-driven, short-iteration process.
  • Wagile: A system that attempts to be agile, but ends up being a waterfall or something in-between.

The UK Workplace: Agile Illusion and the Rise of AI-Powered Efficiency

Speaking honestly, the world of work isn’t what it used to be. Remember when stability and routine were the golden tickets? Just turning up constituted a job. Those days are fading fast. Today, we’re navigating a landscape of constant change – technological advancements, shifting market trends, and, yes, even global pandemics. It’s a whirlwind, and the only way to stay afloat is to embrace adaptability.

We’ve seen the rise of remote work, the acceleration of digital transformation, and the increasing demand for skills that didn’t even exist a two years ago. An overpriced degree takes four years to achieve? If you’re still clinging to outdated methods or resisting change, you’re likely to get left behind.

So let’s cut through the fluff: the UK workplace is stuck in a rut. Everyone’s talking about ‘adaptability,’ but in reality, there’s a gaping chasm between the buzzwords and actual practice. Agile? More like ‘fragile.’ We’re drowning in terminology, but the fundamental culture of British business remains stubbornly resistant to real change.

Laziness? Yes, I said it. A culture of complacency permeates far too many organizations. My recent contract was a prime example: an army of cooks, both from the consultancy and client sides, all stirring a pot that barely needed a simmer. Three React Native developers for a simple app? Four .NET developers to copy and paste a BFF? With a completely separate infrastructure team for a very basic integration? It was a circus of inefficiency.

While these legions of underutilised developers were busy pretending to be productive, I was building a working app using Windsurf by Codeium. And right now, Gemini is helping me create a serverless backend in Firebase. The contrast is stark, and it’s infuriating.

Here’s the truth: we’ve reached a tipping point. With the rapid advancement of AI, the traditional roles of developers are becoming increasingly redundant. I firmly believe that a skilled Business Analyst and Project Manager, armed with AI tools, are now all you need for a product build.

Imagine this: detailed requirements gathered through stakeholder interviews, translated into a prototype using AI. Employee workshops to refine the design. A final stakeholder sign-off. Then, a focus group of customers or end-users for a final review. A focused development phase, rigorous testing for non-functional requirements, and a release. Yes, there will be a month of rapid iterative re-releases as the product encounters the real world, but this is Agile in practice.

This isn’t just about efficiency; it’s about survival. The UK workplace needs a radical shake-up. We need to ditch the bloated teams and embrace the power of AI to streamline development. We need to stop paying lip service to Agile and start implementing it in a meaningful way.

The era of ‘cooks in the kitchen’ is over. It’s time for a revolution, and AI is leading the charge.

Call to Action:

Do you agree? Is the UK workplace lagging behind? Share your thoughts and experiences in the comments below. Let’s start a conversation.

The Agile Phone Line is Cracking Up: Is it Time to Hang Up?

Ah, March 3rd, 1876. A momentous date indeed, when Alexander Graham Bell first summoned Mr. Watson through the magic of the telephone. A groundbreaking invention that revolutionized communication and paved the way for countless innovations to come. But amidst our celebration of this technological milestone, let’s turn our attention to a more recent communication phenomenon: Agile.

Agile, that wondrous methodology that promised to streamline software development and banish the demons of waterfall projects, has become as ubiquitous as the telephone itself. Stand-up meetings, sprints, and scrum masters are now the lingua franca of the tech world, a symphony of buzzwords and acronyms that echo through the halls of countless software companies. But as we reflect on the legacy of the telephone and its evolution, perhaps it’s time to ask ourselves: Is Agile starting to sound a bit like a dial-up modem in an age of broadband?

Remember Skype? That once-beloved platform that connected us across continents, now destined for the digital graveyard on May 5th. Skype, like Agile, was once a revolutionary tool, but time and technology march on. Newer, shinier platforms have emerged, offering more features, better integration, and a smoother user experience. Could the same fate await Agile? With the rise of AI, machine learning, and automation, are we approaching a point where the Agile methodology, with its emphasis on human interaction and iterative development, becomes obsolete?

Perhaps the Agile zealots will scoff at such a notion, clinging to their scrum boards and burn-down charts like a security blanket. But the writing may be on the wall. As AI takes on more complex tasks and automation streamlines workflows, the need for constant human intervention and feedback loops might diminish. The Agile circus, with its daily stand-ups and endless retrospectives, could become a relic of a bygone era, a quaint reminder of a time when humans were still the dominant force in software development.

And speaking of communication, who could forget the ubiquitous “mute button” phenomenon? That awkward silence followed by a chorus of “You’re on mute!” has become a staple of virtual meetings, a testament to our collective struggle to adapt to the digital age. It’s a fitting metaphor for the challenges of communication in an Agile world, where information overload and constant interruptions can make it difficult to truly connect and collaborate.

So, as we raise a glass to Alexander Graham Bell and his telephonic triumph, let’s also take a moment to reflect on the future of Agile. Is it time to hang up on the old ways and embrace a new era of software development, one driven by AI, automation, and a more streamlined approach? Or can Agile adapt and evolve to remain relevant in this rapidly changing landscape? Only time will tell. But one thing is certain: the world of technology never stands still, and those who fail to keep pace risk being left behind, like a rotary phone in a smartphone world.

The Zen of Stand-Ups (Or How to Look Busy for 15 Minutes)

The daily stand-up. That sacred ritual where we gather ’round the task board or dial into a Teams/Zoom/Slack/Hangout, pretending to be busy little bees while secretly plotting our escape to get more coffee. It’s a symphony of “yesterdays,” “todays,” and “blockers,” a chorus of mumbled updates and stifled yawns. But fear not, dear comrades, for I am here to guide you through this Agile labyrinth, to illuminate the path to stand-up enlightenment, or at least help you survive those 15 minutes without losing the will to live.

Now, the Agile Alliance, those wise gurus of the software development world, have defined the daily stand-up as a “vital coordination” meeting where we share “critical knowledge” and achieve “team cohesion.” Sounds rather grand, doesn’t it? Almost like a scene out of a Shakespearean play, with everyone waxing lyrical about their latest coding conquests. But let’s be honest, folks, the reality is often a tad less dramatic. More like a scene from a Monty Python sketch, with people repeating each other’s updates, forgetting what they did yesterday, and desperately hoping the nonsense spouted yesterday doesn’t come back on you as you cannot remember what you said.

But fear not, for I am here to unveil the true Zen of stand-ups, to reveal the secrets hidden beneath the surface of this Agile ceremony. So, without further ado, let us embark on this journey of discovery, this quest for stand-up enlightenment.

Three Questions – A Sacred Chant or a Mind-Numbing Mantra?

The Three Questions to start every day. Those hallowed words that echo through the halls of every Agile team:

  1. What did you do yesterday?
  2. What will you do today?
  3. What’s blocking you?

Sounds simple enough, right? Just a quick update on your progress, a glimpse into your future plans, and a cry for help if you’re stuck in a coding quagmire. But oh, how those questions can morph into a mind-numbing mantra, a repetitive drone that saps the very life force from your soul.

“Yesterday, I… um… Well, I started that thing… you know, the one mentioned in ticket… Oh, what was it called again? Ah, never mind, I’ll figure it out later.”

“Today, I’ll… Well, I’ll try to do some stuff… Maybe finish that thing I was supposed to do yesterday… If I can remember what it was.”

“Blockers? Oh, you know, the usual – meetings, emails, Netflix, YouTube, existential dread…”

And so it goes, day after day, a symphony of vague pronouncements and half-hearted commitments. But fear not, for there is hope! With a bit of Zen-like focus, we can transform those Three Questions into a powerful tool for self-reflection and team alignment. So, let us delve deeper into the mysteries of these Agile inquiries, to discover their true potential and unlock the secrets of stand-up success.

The Timebox – A Race Against the Clock or a Moment of Mindfulness?

The timebox, that relentless tyrant of the stand-up meeting! 15 minutes, they say. A mere quarter of an hour to squeeze in the hopes, dreams, and despairs of 7 to 9 souls. Why, that’s a paltry 2 minutes and 14 seconds per person, at best! (And don’t even get me started on those overachieving teams with 10 or more members – they’d be lucky to get a grunt in edgewise!) It’s enough to make a fellow contemplate the merits of a career change, perhaps to a profession where time is measured in leisurely hours rather than frantic minutes. Clockmaking, perhaps? Or snail farming? Anything but this mad dash against the clock, this frantic scramble to cram a day’s worth of Agile wisdom into a timeframe better suited to boiling an egg. But alas, such is the life of an Agile warrior, forever bound to the tyranny of the timebox, forever racing against the clock, forever trying to answer those three infernal questions before the Scrum Master’s gavel falls and we’re all condemned to the “parking lot” of eternal silence. And heaven forbid we should stumble upon a particularly loquacious teammate – why, they could eat up half the timebox with a single rambling monologue about their latest bug fix! 

But fear not, dear comrades, for even within this temporal straitjacket, there is hope for Zen-like calm. We must simply embrace the brevity, the succinctness, the haiku-like beauty of a well-crafted stand-up update. For in the words of the great poet, “Brevity is the soul of wit” – and, dare I say, the key to surviving the stand-up timebox with our sanity intact.

The Parking Lot – A Purgatory for Problems or a Crucible for Collaboration?

“OK let’s park that and we’ll come back to it”, that list of unresolved issues, that graveyard of forgotten tasks, that purgatory for problems that dare to raise their ugly heads during the sacred stand-up ceremony. It’s where good ideas go to die, where blockers fester and multiply, where team morale goes to wither and decay.

Ah, the parking lot was a very different concept when Agile was in its infancy. Once a haven for smokers, a place where the air was thick with nicotine and the clatter of brainstorming. A place where ideas were sparked, not by the sterile glow of a monitor, but by the shared embers of a real cigarette, the kind that left your fingers stained and your lungs yearning for a good scrub, before the advent of those newfangled vape contraptions, the ones that’ll probably turn out to be even more detrimental to our health, leaving us with glowing green lungs and a craving for unicorn tears. But I digress. The parking lot, you see, was more than just a place to indulge in a quick smoke; it was a crucible of creativity, a breeding ground for those “aha!” moments that often elude us in the confines of a stuffy meeting room. It was where the real magic happened, where those seemingly insurmountable blockers were wrestled into submission, where innovative solutions were hatched, and where the seeds of team camaraderie were sown. And let’s not forget the after-work gatherings, those impromptu pub crawls where the “parking lot” discussions continued, fuelled by pints of ale and a shared sense of purpose. 

But alas, the modern parking lot has lost its luster. It’s become a digital wasteland, a dumping ground for unresolved issues and forgotten tasks. A place where good ideas go to languish, where blockers metastasize into monstrous beasts, and where team morale goes to die a slow and agonizing death. It’s a purgatory for problems, a black hole of despair, a testament to our collective inability to confront the challenges that stand in our way.

But what if, we could reclaim the spirit of the old parking lot? What if we could transform this digital graveyard into a vibrant hub of collaboration, a place where problems are embraced, explored, and ultimately conquered? Imagine a stand-up where, instead of shunting issues aside, we gather ’round the metaphorical parking lot, our minds ablaze with the fire of a thousand cigarettes (metaphorical ones, of course, we wouldn’t want to set off the smoke alarm), and collectively brainstorm solutions, our voices echoing with the camaraderie of a late-night pub session. Imagine a stand-up where the parking lot becomes a hotbed of innovation, a breeding ground for those brilliant, out-of-the-box ideas that only emerge when we dare to venture beyond the confines of our comfort zones.

Okay, okay, I might be getting a bit carried away here. But the point is, folks, the parking lot doesn’t have to be a symbol of defeat. With a bit of that old-school parking lot spirit, a dash of Zen-like optimism, and perhaps a pint or two of creative inspiration, we can transform it into a powerful engine for problem-solving, team building, and, dare I say, project completion.

The “No Problem” Meeting – A Sign of Success or a Symptom of Dysfunction?

Next we come to the “no problem” meeting. That blissful stand-up where everyone reports smooth sailing, where no one dares to utter the dreaded “b-word”, where the task board glows with the green light of effortless progress. It’s a manager’s dream, a Scrum Master’s paradise, a utopia of Agile efficiency.

But what if this “no problem” facade is merely a mask, a deceptive veneer hiding a festering undercurrent of dysfunction? What if those smiling faces and upbeat reports are merely a performance, a carefully choreographed act designed to conceal the truth? What if, beneath the surface of this seemingly perfect stand-up, lies a team riddled with fear, insecurity, and a deep-seated reluctance to admit weakness?

Maybe a little bit too cynical here. But the point is, folks, the absence of problems doesn’t always equate to success. Sometimes, it’s a sign that something is amiss, that there’s a communication breakdown, a lack of trust, or a culture of fear that prevents people from speaking up. So, let us be wary of the “no problem” meeting, and instead strive for a stand-up where honesty and transparency prevail, where problems are acknowledged and addressed, and where the team can work together to overcome challenges and achieve true Agile greatness.

And with that, dear readers, I shall conclude this rambling exploration of the Zen of stand-ups. May your daily gatherings be filled with laughter, enlightenment, and a healthy dose of absurdist humor. And remember, even if your stand-ups are more Python-esque than Shakespearean, there’s still hope for achieving Agile nirvana, or at least surviving those 15 minutes with your sanity intact.