Business people and developers must work together daily throughout the project.

Beatrix Gottanka
9 min readApr 2, 2024

--

[ Agile Manifesto — Principle 4]

When I tell participants of my trainings about long-gone Waterfall era and that we only knew about customer feedback about one year after releasing our monolithic on-prem enterprise software … I feel like telling a fairy tale from a time long ago in a software development land far far away. Not only does it make me feel old but it also makes me realize what a long way we’ve come:

Today, as we are all super agile, we fully embrace agile values and principles and living up to the fourth principle “Business people and developers must work together daily throughout the project.” can only make us yawn. But does it?

In Scrum, the authors thought this principle is so important that they created a dedicated role for it: The Product Owner. The bridge between the business and the developers.

And to make this a no brainer, they also defined a dedicated event for it: The Daily Scrum.

However, too often, I see terrible Daily Scrums. Too often, I see the Developers having no clue about their Sprint or Product Goals. I see Product Owners being unavailable for the developers. The Scrum team is stumbling into waste land. Pun intended.

I want to share a powerful sentence from the book “Extreme Programming Explained: Embrace Change”, by Kent Beck and Cynthia Andres:

“The computer business is really a people business and maintaining working relationships is important.”

It seems hard to live up to this principle for a lot of teams. But why?

In this article, I want to explore two aspects, “business people” and “daily”, what can go wrong and how to fix it:

The business people (the Product Owner)

Scrum: dedicated role

Scrum recognized that clear communication and collaboration between developers and stakeholders are essential for delivering valuable software. Hence, Scrum introduced the role of the Product Owner, who acts as a bridge between the business and the developers.

The Product Owner’s primary responsibility is to represent the interests of the business, prioritize the backlog, and ensure that the developers are working on the most valuable features. By having a dedicated individual focused on business needs, Scrum ensures that the development efforts are aligned with the overarching goals of the organization.

Kanban: collaborative flow

While Kanban doesn’t prescribe specific roles like Scrum does, it emphasizes the importance on collaboration and flow. In Kanban, the entire team, including business representatives, works together to visualize the workflow, identify bottlenecks, and optimize the delivery process.

Kanban encourages a culture of continuous improvement, where everyone has a stake in delivering value to the customer. This approach allows business people to provide real-time feedback, ensuring that the development efforts remain aligned with business objectives.

“Daily Kanban meetings help teams identify bottlenecks, visualize workflow, and maintain focus on delivering value to customers.” — David J. Anderson, pioneer of the Kanban Method

Importance of a strong relationship with business people

The success of Agile projects hinges on the collaboration between development teams and business stakeholders. Establishing a strong relationship with business people is paramount for several reasons:

  • Alignment of Priorities: Business people provide valuable insights into market trends, customer needs, and organizational goals. By collaborating closely with them, development teams can ensure that their efforts are aligned with business priorities.
  • Quick Decision-Making: In Agile environments, requirements evolve rapidly, and decisions need to be made promptly. A good relationship with business people facilitates quick decision-making, enabling teams to respond to changes effectively.
  • Feedback Loop: Business people act as the voice of the customer, providing valuable feedback on the product increments. Their input helps teams course-correct and refine their deliverables, ensuring that the final product meets customer expectations.

Sure thing, we all can agree on, right?

However, reality often shows that several challenges hinder effective communication and collaboration:

  • Lack of Engagement: In some organizations, business stakeholders may not actively participate in the development process, leading to misalignment and misunderstandings. Sometimes, even the Product Owner is distant and I get asked all the time whether the Product Owner is part of the Scrum team or not or whether the Product Owner should participate in the retrospective or not (YES!!1!). Every person representing the business should participate and benefit from the collaboration.
  • Miscommunication: Poor communication channels can result in misinterpretation of requirements, leading to rework and delays. I once worked with a Product Owner whom I called the “click and collect” Product Owner: just like in online shopping, he would “order” Product Backlog Items in JIRA and “collect” his order at the Sprint Review. The fact that his “Stories” consisted mostly of one line did not make things easier.
  • Conflicting Priorities: Business people may have conflicting priorities or agendas, making it challenging to prioritize tasks and features effectively. Too often, Product Owners are being assigned this role on top of their other responsibilities. Naturally, they are in constant conflict and in a reactive mode, allowing them only the bare minimum attendance to the team and the product they are developing.

Fixes and Best Practices

To overcome these challenges and foster a productive relationship with business people, Agile teams can implement the following strategies:

  • Shared Understanding: Invest time in building a shared understanding of project goals, objectives, and requirements. Techniques like user story mapping and collaborative workshops can help align stakeholders and development teams. For those of you working in Scrum: Do you have a clear Sprint Goal and a clear Project Goal? If not, how do you know what you are supposed to build and maybe even more importantly: how do you know what not to build?
  • Empathy and Respect: I know, business people and developers seem to be the farther away from each other in a project or organization. They like different things, they wear different clothes… However, it is key to cultivate a culture of empathy and respect, recognizing the expertise and contributions of both development teams and business stakeholders. Encourage open dialogue and constructive feedback to foster trust and collaboration.
  • Regular Stakeholder Engagement: Have regular meetings and workshops involving business stakeholders to discuss project progress, gather feedback, and address concerns. Project Kick-offs, Product Backlog Refinement and any other meeting to make sure you are aligned with the project goal.

Daily collaboration

But! The 4th principle of the Agile Manifesto goes even further and wants to have daily collaboration. I deliberately did not say “meeting” as this collaboration can have many forms. The easiest way would be for the Product Owner to sit in the same room as the rest of the team. This way, you cannot not collaborate, can you?

The second best is to attend the Daily Scrum or your Daily Kanban meeting.

Why work together daily?

Agile development is about baby steps and verifying them as soon as possible. Otherwise we risk going in the wrong direction. We want to inspect and adapt at least daily. That means, we can adjust plans, directions, tools, risk severities, and everything else that does no longer fit or is no longer valid:

  • Rapid Decision-Making: Agile projects thrive on quick decision-making and adaptability. Daily interactions enable business people to provide timely feedback and make informed decisions, allowing developers to adjust their course of action promptly. Have you ever been in a situation where the developers discussed directions and the Product Owner was not present? The matter could have been resolved in seconds, but the team was stuck.
  • Continuous Feedback Loop: Working together daily facilitates a continuous feedback loop between business stakeholders and development teams. This feedback loop is crucial for validating assumptions, refining requirements, and ensuring that the product meets customer expectations. Sometimes, we only know during development that a certain approach does not work out the way we expected it to work. Together with the Product Owner we can decide on a way forward.
  • Alignment of Goals: Business people and developers often have different perspectives and priorities. Daily collaboration ensures that both parties remain aligned with the project’s goals and objectives, minimizing misunderstandings and conflicts. I am looking at you who have failed to define a Sprint Goal. The Sprint Goal drives our focus. Without the Sprint Goal, we can be all over the place. The Product Owner may remind us of the Goal and what contributes to it — and what not!
  • And lastly, we ensure transparency: one of the three pillars of empirical process control.

Consequences of not working together daily

This should be easy to understand now, so I’ll make this quick:

  • Misalignment: Without daily collaboration, business people and developers may drift apart, leading to misalignment of goals and priorities. This misalignment can result in wasted effort, missed deadlines, and dissatisfaction among stakeholders.
  • Delayed Feedback: Lack of daily interaction delays the feedback loop, making it difficult to course-correct and address issues promptly. This delay can lead to project delays, increased costs, poor market-fit and decreased customer satisfaction. It may even be a failed product causing your company’s reputation and financial standing to decrease.
  • Quality Issues: In the absence of daily collaboration, developers may proceed based on assumptions or incomplete information, resulting in quality issues or misaligned deliverables. This can damage the reputation of the project and erode customer trust. It also demotivates developers to a great extent to have a lot of reword as their assumptions were incorrect. The last thing you want to have on a project are demotivated developers. It can lead to high staff turnover, and hence further delays.

These outcomes highlight the importance of adhering to the 4th principle of the Agile Manifesto. Organizations that embrace and implement these practices not only waste less money but also achieve greater project success.

Practical fixes and best practices

  • Shared Workspaces: Encourage business people and developers to work in shared physical or virtual spaces to facilitate spontaneous collaboration and communication. Co-location fosters a sense of camaraderie and promotes open dialogue.
  • Collaborative Tools: Utilize collaboration tools and communication platforms to facilitate remote collaboration and information sharing. These tools enable real-time communication and transparency.
  • Daily Stand-up/Scrum/Kanban Meetings: Conduct daily meetings, where business people and developers come together. These short, focused meetings promote transparency, accountability, and alignment. I know, Daily Scrums can go wrong in many ways, too. But this would be too much to cover in this Blog article. Find our YouTube videos concerning the Daily Scrum here: https://www.youtube.com/@agilistas.

If you cannot get hold of the business people daily, make sure the collaboration is at least regular and often. Also, make sure to provide an opportunity to address specific concerns, clarify requirements, and to strengthen the relationship.

Education is key

To me, education is key. If people understand why certain things are important and if they understand what the consequences are if they do not act, they can make their own informed decisions. It also helps to understand the business and the development side of things. Viewing the world from each other’s perspective will make you value the collaboration even more.

Summary

The 4th principle of the Agile Manifesto emphasizes the importance of daily collaboration between business people and developers throughout a project.

In Scrum, this principle is supported by the introduction of the Product Owner role and the Daily Scrum event. Kanban, on the other hand, promotes collaborative flow without prescribing specific roles. Establishing a strong relationship with business people is crucial for aligning priorities, making quick decisions, and maintaining a continuous feedback loop.

However, challenges such as lack of engagement, miscommunication, and conflicting priorities can hinder effective collaboration. To address these challenges, Agile teams can implement strategies like building shared understanding, cultivating empathy and respect, and regularly engaging stakeholders.

Daily collaboration enables rapid decision-making, ensures a continuous feedback loop, and aligns goals, ultimately leading to project success.

Failure to work together daily can result in misalignment, delayed feedback, and quality issues, highlighting the importance of adhering to Agile principles.

Practical fixes and best practices include shared workspaces, collaborative tools, and daily stand-up meetings, supported by ongoing education and understanding of both business and development perspectives.

--

--