SYS-CON MEDIA Authors: Pat Romanski, Liz McMillan, Yeshim Deniz, Elizabeth White, Courtney Abud

Blog Feed Post

Setting rules of engagement for scaling Agile

I like the daily stand-up meeting in scrum. The rules are clearly laid out. 

Each team member is supposed to speak just on 3 things - what they did yesterday, what they plan to do today and impediments, if any, in their way. Team members are encouraged to be brief and to the point. The entire meeting is not supposed to go beyond 15 minutes. 

World over though, managers are moving away from a "command and control' approach to management to a more hands-off, goal oriented, decentralized and empowered way of management. They talk less about "how" and more about "what". One of the 12 principles of agile software development is that "the best architectures, requirements, and designs emerge from self-organizing teams". In fact the word "manager" does not exist in agile lexicon. The more accepted word is "servant leader". 

In fact, a scrum team is supposed to be a self organizing team where the team is supposed to decide how they will go about achieving their time boxed goal. Viewed in that context, the rules regarding the daily stand up might appear to be interfering with the independence of a scrum team. But the fact is that unless you set this rule a 7 member scrum team can talk about 700 things in a stand up meeting and still not achieve the primary objective of updating themselves about the progress made.


What often gets missed in this discussion is that while managers should and can shun "command", they cannot shun control. While they are not supposed to control how the team members go about achieving their time-boxed goal, they still have to control the larger ecosystem in which they operate and in which other similar teams operate. This becomes all the more critical and challenging when organizations are trying to scale agile and large number of teams are involved. Please note that a rule is also a "command", not one which has to be blindly followed but that can be debated, questioned and if required, changed. It is the degree of prescriptiveness and rigidity in a rule which needs to be modulated. Do daily meetings, do daily meetings for 15 minutes, do daily meetings for 15 minutes where each member talks atleast for 2 minutes - these are all rules with increasing degrees of prescriptiveness. The general recommendation is to be less specific and provide more room to interpret and apply a rule in a given context.

Just like the rules of a daily stand up meeting, program managers / master scrum master / master orchestrator have to define similar rules of engagement for the various entities who are part of the scaled agile ecosystem. 

Below is a simple scaled agile structure and the 8 areas of team interactions - both intra and inter teams. Of these most critical are 1, 2 and 5, as explained below. 





Between Scrum Teams

This is the most critical interaction happening in a large agile team and probably the weakest link. Whether scrum teams are working on different features or epics, there will be dependencies between them. They need to communicate and collaborate amongst themselves but at the same time maintain their individual team identity and focus. A dependency map should be created and kept updated. In my experience, just like the daily standup which happens within the scrum team, a daily dependency standup should happen between the scrum teams to quickly talk about 2 things - a. Is there any change in the dependency map (add, modify, delete) and b. Any inputs either team needs from the other to proceed with their work. Keeping the discussion focussed on these 2 points will ensure that it is short and effective. 

Between Scrum Teams and the SME/Shared Resource Pool

Architects, UX experts, performance and security testing experts, database / network designers, etc., are important players in a development team but their relative workload is less compared to the actual coders and testers. This mix will obviously vary depending on the specific needs of a project but whatever it is, there will always be roles who are better off being shared amongst the scrum teams rather than being dedicated to one. 

Different scrum teams will reach out to this shared pool for various requests and if this is not controlled, it can quickly lead to chaos. In my experience, maintaining a common SME request log which is accessible to all the scrum teams helps in prioritizing and utilizing these resources more effectively. Keeping an oversight on what kind of requests are coming in from the various teams also helps in deciding the right mode of involvement for the SMEs (dedicated or common communication sessions). In many organizations and projects, some of these SMEs become part of a 'hardening' sprint which occurs after every 3~4 development sprints. However, a hardening sprint is more for review and validation rather than design which is more of a continuous process in agile. 

Between Scrum Team Members

The conventional wisdom is nothing within a scrum team should be controlled as it is supposed to be a self organizing team. Agree. However, what do you do when you see a dominant personality within the team adopting a command and control approach towards the other team members - the very behaviour we want the team to be shielded from? How long do you wait when you see a team perenially in the "storming" state? Then there are questions whether the team gets to choose its members or are they assigned by somebody? What do you do when you see issues related to committment, motivation, integrity or skill? Do the teams self assign features / user stories or are they assigned by somebody? Unless the operating rules around these decision points are well laid out, they will be personality driven - not a good recipe for scaling. 

Master scrum masters / equivalents have to set these rules of engagement upfront. Instead of going as commands, they should go as proposals - which can be debated, questioned and changed, if required, but finally collectively agreed to. 

Read the original blog entry...

More Stories By Sujoy Sen

Sujoy is a TOGAF Certified Enterprise Architect, a Certified Six Sigma Black Belt and Manager of Organizational Excellence from American Society for Quality, a PMP, a CISA, an Agile Coach, a Devops Evangelist and lately, a Digital enthusiast. With over 20 years of professional experience now, he has led multiple consulting engagements with Fortune 500 customers across the globe. He has a Masters Degree in Quality Management and a Bachelors in Electrical Engineering. He is based out of New Jersey.

Latest Stories
Skeuomorphism usually means retaining existing design cues in something new that doesn’t actually need them. However, the concept of skeuomorphism can be thought of as relating more broadly to applying existing patterns to new technologies that, in fact, cry out for new approaches. In his session at DevOps Summit, Gordon Haff, Senior Cloud Strategy Marketing and Evangelism Manager at Red Hat, discussed why containers should be paired with new architectural practices such as microservices rathe...
In 2014, Amazon announced a new form of compute called Lambda. We didn't know it at the time, but this represented a fundamental shift in what we expect from cloud computing. Now, all of the major cloud computing vendors want to take part in this disruptive technology. In his session at 20th Cloud Expo, John Jelinek IV, a web developer at Linux Academy, will discuss why major players like AWS, Microsoft Azure, IBM Bluemix, and Google Cloud Platform are all trying to sidestep VMs and containers...
Using serverless computing has a number of obvious benefits over traditional application infrastructure - you pay only for what you use, scale up or down immediately to match supply with demand, and avoid operating any server infrastructure at all. However, implementing maintainable and scalable applications using serverless computing services like AWS Lambda poses a number of challenges. The absence of long-lived, user-managed servers means that states cannot be maintained by the service. Lo...
With the new Kubernetes offering, ClearDATA solves one of the largest challenges in healthcare IT around time-to-deployment. Using ClearDATA's Automated Safeguards for Kubernetes, healthcare organizations have access to the container orchestration to dynamically deploy new containers on demand, monitor the health of each container for threats and seamlessly roll back faulty application updates to a previous version, avoid system-wide downtime and ensure secure continuous access to patient data.
Isomorphic Software is the global leader in high-end, web-based business applications. We develop, market, and support the SmartClient & Smart GWT HTML5/Ajax platform, combining the productivity and performance of traditional desktop software with the simplicity and reach of the open web. With staff in 10 timezones, Isomorphic provides a global network of services related to our technology, with offerings ranging from turnkey application development to SLA-backed enterprise support. Leadin...
With the rise of Docker, Kubernetes, and other container technologies, the growth of microservices has skyrocketed among dev teams looking to innovate on a faster release cycle. This has enabled teams to finally realize their DevOps goals to ship and iterate quickly in a continuous delivery model. Why containers are growing in popularity is no surprise — they’re extremely easy to spin up or down, but come with an unforeseen issue. However, without the right foresight, DevOps and IT teams may lo...
Platform9, the open-source-as-a-service company making cloud infrastructure easy, today announced the general availability of its Managed Kubernetes service, the industry's first infrastructure-agnostic, SaaS-managed offering. Unlike legacy software distribution models, Managed Kubernetes is deployed and managed entirely as a SaaS solution, across on-premises and public cloud infrastructure. The company also introduced Fission, a new, open source, serverless framework built on Kubernetes. These ...
Emil Sayegh is an early pioneer of cloud computing and is recognized as one of the industry's true veterans. A cloud visionary, he is credited with launching and leading the cloud computing and hosting businesses for HP, Rackspace, and Codero. Emil built the Rackspace cloud business while serving as the company's GM of the Cloud Computing Division. Earlier at Rackspace he served as VP of the Product Group and launched the company's private cloud and hosted exchange services. He later moved o...
As you know, enterprise IT conversation over the past year have often centered upon the open-source Kubernetes container orchestration system. In fact, Kubernetes has emerged as the key technology -- and even primary platform -- of cloud migrations for a wide variety of organizations. Kubernetes is critical to forward-looking enterprises that continue to push their IT infrastructures toward maximum functionality, scalability, and flexibility. As they do so, IT professionals are also embr...
Kubernetes is a new and revolutionary open-sourced system for managing containers across multiple hosts in a cluster. Ansible is a simple IT automation tool for just about any requirement for reproducible environments. In his session at @DevOpsSummit at 18th Cloud Expo, Patrick Galbraith, a principal engineer at HPE, will discuss how to build a fully functional Kubernetes cluster on a number of virtual machines or bare-metal hosts. Also included will be a brief demonstration of running a Galer...
DevOps is under attack because developers don’t want to mess with infrastructure. They will happily own their code into production, but want to use platforms instead of raw automation. That’s changing the landscape that we understand as DevOps with both architecture concepts (CloudNative) and process redefinition (SRE). Rob Hirschfeld’s recent work in Kubernetes operations has led to the conclusion that containers and related platforms have changed the way we should be thinking about DevOps and...
Cloud-Native thinking and Serverless Computing are now the norm in financial services, manufacturing, telco, healthcare, transportation, energy, media, entertainment, retail and other consumer industries, as well as the public sector. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait for long development cycles that pro...
Docker is sweeping across startups and enterprises alike, changing the way we build and ship applications. It's the most prominent and widely known software container platform, and it's particularly useful for eliminating common challenges when collaborating on code (like the "it works on my machine" phenomenon that most devs know all too well). With Docker, you can run and manage apps side-by-side - in isolated containers - resulting in better compute density. It's something that many developer...
Technology has changed tremendously in the last 20 years. From onion architectures to APIs to microservices to cloud and containers, the technology artifacts shipped by teams has changed. And that's not all - roles have changed too. Functional silos have been replaced by cross-functional teams, the skill sets people need to have has been redefined and the tools and approaches for how software is developed and delivered has transformed. When we move from highly defined rigid roles and systems to ...
In a recent survey, Sumo Logic surveyed 1,500 customers who employ cloud services such as Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP). According to the survey, a quarter of the respondents have already deployed Docker containers and nearly as many (23 percent) are employing the AWS Lambda serverless computing framework. It's clear: serverless is here to stay. The adoption does come with some needed changes, within both application development and operations. Th...