Showing posts with label scrum. Show all posts
Showing posts with label scrum. Show all posts

Saturday, November 23, 2024

Agile Dead?! I Think Not: A Challenge for Continued Growth, Change, and Success


Long Live Agile

I recently read a post that claimed Agile and Change Management are “dead,” and it troubled me so much that I feel compelled to speak up.

This blunt accusation misses the mark. Instead, I’d like to reframe this declaration into a more nuanced analysis of why the adoption of Agile frameworks and mindset might falter—and what we can learn from those experiences.

Having had the privilege of working across different organizations—large and small—I’ve been both a participant and an observer of Agile implementations in action. My experiences have ranged from witnessing moments of stunning success (yes, even to the point of tears) to profound struggles where Agile’s potential was obscured by mistrust, misapplication, or misaligned goals.

What makes Agile so powerful is its universality. At its core, 

Agile is about embracing change and breaking down complexity

into manageable, actionable steps. The philosophy behind the Agile Manifesto is timeless and revolutionary, challenging us to focus on collaboration, adaptability, and continuous improvement— qualities that transcend industries and organizations, regardless of size.


The Spectrum of Agile Experiences

In Smaller Groups:

Smaller teams, particularly those under 100 people, often find it easier to embrace Agile. Transparency and Adaption — two foundational pillars of Agile—are easier to nurture in close-knit environments. Frameworks like Scrum often flourish here, allowing teams to adopt Agile incrementally as they learn and adapt together.

In Larger Organizations:

Larger organizations, especially those with deeply ingrained Agile cultures, can achieve remarkable results. When Agile is treated as a shared mindset rather than just a process, it becomes a unifying language across teams and departments, enabling complex systems to function with stunning efficiency.

Where Agile Struggles

I’ve seen teams weighed down by an overemphasis on process and documentation, to the point where they stagnate in debates over the simplest of updates, terminology or roles.
Let me share an anecdotal example. My current team continues to work on standardizing project organization in Jira - our chosen devops platform. In one meeting, we aligned on the mapping method we would use to move a set of dev tickets from one project to another, and we moved everything in that meeting.

I was privately amazed, and quite moved. There was no argument, no hair splitting over labeling, or tagging in one project vs. another. There was not overthinking of 'what if' scenarios in moving all the items. One person was not in charge, we were doing it collaboratively. There was no need to include multiple internal stakeholders, multiple times in discussions when they already knew we were moving items, over the course of months, to prepare everyone for the relocation of devops project items: an action that took minutes at most. There were no outlines, or rechecks,

It was just done.

In other teams, and in other organizations, this simple move would have easily taken months. In defense of similar moves I have contributed to or witnessed in other organizations, I do understand that in large enterprises with multiple devops projects across multiple teams, a move like this, may impact many people, and that may have necessitated some additional discussion to strategize and implement the plan to relocate devops tickets.

However, in past experiences like the one above and in many others, it seemed like we were 'practicing' Agile for Agile's sake.

The Elegant Simplicity of Agile

At its core, Agile challenges us to focus on two fundamental truths:

  1. We need to break things down.
  1. We need to move things forward.
The different frameworks of Agile, like LeSSSAFe, or Scrum, are meant to be applications of the Agile philosophy and mindset. In other words, these frameworks should help teams simplify how teams communicate and work together (Transparency in communication and work, Inspection of progress, Adaptation to change).


They offer a base of shared values (FocusOpennessRespectCourageCommitment) to guide work culture, so that teams may deploy often (incrementally), and achieve objectives.
The problem I've observed in the groups where I've seen this application of Agile falter, occured when applications of Agile seemed forced, overly ceremonial (going through the motions), or became means of micro-management rather than growth. In these cases, there were multiple instances where it seemed like 'Transparency' meant exposing 'fault', 'Inspection' meant viewing the negative rather than the whole picture, and Agile values seemed pushed aside in the process.

True incremental delivery moved slower in these situations, because there was a perceived lack of trust, at the core. The result became an emphasis on needing to do for 'me', rather than for 'we' as a whole.

In these scenarios, it may appear, on its surface, that Agile is 'failing', when it is more accurate to say that the adoption of the Agile mindset, its pillars, values, and the chosen framework is faltering. It may be more accurate to note that the core issue: lack of trust, and lack of accountability, must be addressed first before adjusting any application of Agile.


Sunday, August 11, 2024

The Shower Shenanigans: A Communication Wake-Up Call

This morning, an unexpected visitor joined me during my shower—our small dog, who just had surgery decided to jump in!


At first, I thought she just missed her Mommy and needed some support in her pain med fog. But nope, this little escapade was actually the result of a communication mix-up between my wife and me. She assumed I had the dog, and I assumed the dog was with her; and the next thing you know, we've got a soggy, post-op pup trying to share my shampoo.

This got me thinking about how easily communication can go off the rails at work, especially in Agile and Scrum, where our ability to release high-quality updates that delight customers is 100% contingent on the level of trust we have in our team members to understand and follow through with their respective tasks. Just like the misunderstanding that led to our wet dog, we can miss crucial details if we don't take a moment to clarify and confirm our mutual understanding of the problem we are trying to solve and the solution we are working to develop.

Here's the thing: Every player collaborating to move through the stages of the Product & Software Development Lifecycle (PDLC & SDLC), sees the problem and their respective roles through varying lenses.

*Follow the links above for additional resources on the Product & Software Development Lifecycle.*

Scrum Roles in Agile

scrum framework diagram
Scrum framework

Scrum Framework

  • UX team members are laser-focused on Accessibility, Compliance, and the overall 'look and feel' of the User Experience.
  • Engineers focus on code coverage, build efficacy, regression, and merge tasks required to get to 'dev complete' and successful release.
  • Product Owners and Product Managers (PO/PM) are the guiding hands of the 'big picture'. They are the voice of the Customer and Stakeholder, and must be aware of all moving parts of a feature or enhancement - from design to Engineering, to documentation, and release readiness. As a whole, Product team members ensure that solution enhancements provide value and align with the company roadmaps necessary to achieve the 'Definition of Done' and overall business objectives.
  • Scrum Masters (PSM): These days, many Product Owners also double as both PO and Scrum Masters (PSM). They work with teams and ensure adherence to the values and principles of Scrum, to remove barriers for Engineering, and to connect teams with the necessary resources on the road to deployment. Overall Scrum Masters are key players who empower the team to meet the Definition of Done needed to deploy or release updates to the user base that meet expectation and streamline user experience.
How we get to Definition of Done in Scrum

How we get to the Definition of Done in Scrum


Throughout scrum software development, we're all trusting each other to fulfill tasks and keep one another informed. Most especially, we all need to accept, buy into, and fulfill our tasks with the same Definition of Done in mind.


Our success as a team is wholly contingent upon our ability to see the work through each other's eyes so that we can ask the right questions and obtain the correct information to move production forward. What is obvious to one person might not even cross someone else's mind, and that's where things can get tricky. Just like my surprise shower guest, assuming we mean the same thing without checking can lead to some unexpected—and sometimes messy—outcomes.

The takeaway? Clear communication isn’t just a nice-to-have; it’s a must. We need to recognize and respect the different perspectives each team member brings to the table because while it might take a village to build a great product, it also takes serious effort to ensure that village isn’t just running in circles. Check often what is meant by the Definition of Done. Clarify the work remaining to get to dev complete. Restate the task scope needed to get release-ready, and keep each other informed. As a pillar of Scrum, Transparency in software development is essential to ensure we deliver value. After all, nobody wants a surprise visitor in the shower—or in the middle of a sprint.


Cathrin is a Professional Scrum Master and Scrum Product Owner (PSM, PSPO) certified through scrum.org, who leads teams and initiatives to build enhancements and accessibility compliant IoT solutions in the healthcare industry. Please see her LinkedIn to connect.



NEW
In product development, this is particularly important. Each team member views the project through a different lens:UX designers focus on accessibility, compliance, and the overall look and feel.Engineers are concerned with code quality, ensuring that the builds are green and ready to merge.Product Owners and Managers prioritize whether we're ready to deploy, if documentation is complete, if regression testing is thorough, and how our deliverables align with the strategic roadmap and business objectives.We all trust that our teammates are handling their parts of the project. However, what might be obvious to one role may not even cross the mind of another, leading to those small (or sometimes not so small) surprises down the line.