Skip to main content

Tag: Agile

BATimes_Sep05_2024

The Myth of Multi-Tasking

So, you think you are good at multi-tasking. Perhaps you even list it on your CV. Multi-tasking seems like a “must have” skill in this busy world we live in, but instead of helping you get-ahead, is it actually holding you back?

 

Multiple projects/ multiple priorities

Everything is high priority, and everything is urgent. The Eisenhower Matrix is great in theory, but most of us have no-one to actually delegate anything to! The urgent drowns out the important, but everything on our list ‘must be done’.

Many BAs work across multiple teams or projects, which can be great, as it gives us variety in our work, different challenges, different stakeholders and plenty of opportunity to learn.

HOWEVER! The reality of working in this way is that your stakeholders don’t know or care that you are spinning many plates and expect outputs and answers at the same speed.

 

Notifications

Email. Teams. Slack. Chat. We have messages and notifications flowing in from multiple channels, and they often cause us to stop what we were doing/ thinking/ saying to instantly investigate. Most of these do not really need instantaneous action. Remote working has normalized being in meetings, whilst ‘simultaneously’ checking emails and responding to messages via many channels.

The instant message fallacy: just because a message arrives instantly, does not mean it needs an instant response.

Notifications are impacting the quality of our attention, our creativity and productivity.

 

Context Switching

Allowing ourselves to be distracted (or ‘notified’) seriously disrupts our ability to think, plan and decide. Moving between different apps, topics, tasks and projects requires time for our mind to adjust to the change and ‘tune in’ to the new activity. We typically underestimate how long this mental adjustment takes.

The cost of context switching is significant. We can lose a massive chunk of our day by trying to multi-task. “Each task switch might waste only 1/10th of a second, but if you do a lot of switching in a day it can add up to a loss of 40% of your productivity” (Psychology Today, 2012).

Moving between different levels of detail is particularly taxing for our brains. This is something BAs are doing regularly. We might move from a kick-off meeting for a new piece of work, which requires strategic thinking and creativity, to a clarification session looking in detail at requirements and issues, which involves recall, lateral thinking and problem solving. Wondering why you are feeling so exhausted when you have just sat still all day? We are firing up many parts of our brain, using different cognitive functions and not allowing ourselves any time to recover and recharge.

 

Advertisement

 

Flow

There is a brilliant video by Henrik Kniberg, which contains everything you need to know about:

  • work in progress
  • productivity
  • saying no (or not yet)
  • context switching
  • multi-tasking.

It emphasizes the need to get things done, before you start doing something else. It’s better for you, and it’s better for all the stakeholders you are trying to keep happy (yes – even the ones who have to ‘wait’).

 

Accomplishment

Constant interruption and inching forward affects how we see ourselves, our levels of motivation and our sense of accomplishment. Counter-intuitively, getting stuff done gives us the energy to get more stuff done. Failing to make real progress saps our energy and makes it harder to be motivated and effective. We all get a sense of satisfaction from completing tasks on our to-do list. The more attention we give each task, the more tasks we can achieve. We can still have multiple tasks on the list, or multiple projects on the books at the same time, but we need to manage our time across these activities and avoid unnecessary switching (of both projects and levels of detail).

 

Conclusion

Given the complexity of most projects, in terms of interdependencies, stakeholder relationships and technical challenges, we really need to be paying attention to the task in hand.

Research from Stanford University shows that trying to talk, read, process and respond using multiple channels (i.e. meetings, emails and messages) actually lowers our IQ!

Simple steps can make a big difference. Protect chunks of time. Turn off notifications. Manage your diary to avoid unnecessary context switches. Take a lunch break.

We all need to comprehend that the once prized skill of “multi-tasking” is actually a sophisticated and covert form of procrastination, and it’s making us less intelligent and effective.

 

Further reading

Notification fatigue is tanking productivity: HR Dive, 2022
Multiple WIP vs One Piece Flow Example: Henrik Kniberg, 2020
Context switching is killing your productivity: Asana, 2024
Media multitaskers pay mental price, Stanford study shows: Stanford Report, 2009
BATimes_July25_2024

Empowering Your Scrum Team: Why Developers Should Own the Sprint Backlog

In my seven years as a Business Analyst, I’ve worked with numerous Scrum teams across various projects. One issue that I’ve repeatedly encountered is the confusion over who owns the Product Backlog versus the Sprint Backlog. This misunderstanding often leads to inefficiencies and tension within the team. Through my experiences, I’ve come to realize the importance of clearly defining these roles to ensure smooth and successful project execution.

In the dynamic world of Agile development, Scrum stands out as a framework designed to promote collaboration, flexibility, and continuous improvement. However, even within this well-structured framework, misconceptions can arise, particularly regarding the ownership of the Product Backlog and the Sprint Backlog. Clarifying these roles is essential for any team aiming to harness the full potential of Scrum.

 

The Core Misconception

During Scrum training sessions, particularly with teams that have prior experience, one topic often sparks intense discussion: who truly owns the backlogs? The common but flawed practice is for the Product Owner to decide what work the team should pull into a sprint. While this may seem like an efficient approach, it fundamentally misinterprets the roles and responsibilities within Scrum.

 

Understanding the Roles

The Product Owner is tasked with maximizing the value of the product by managing the Product Backlog. This involves understanding stakeholder needs, prioritizing features, and ensuring the backlog is transparent and visible. However, the actual implementation of these backlog items is the responsibility of the Developers. They have the technical knowledge and expertise to assess which items are feasible, independent, and deliverable within the constraints of a sprint.

 

Why This Misconception Is Problematic

When the Product Owner oversteps and dictates the sprint tasks, it creates several issues:

  1. Undermines Developer Accountability: Developers are accountable for the work completed during the sprint. If they are not involved in selecting the tasks, their ability to commit to and deliver on these tasks is compromised.
  2. Ignores Technical Expertise: Developers are the ones with the hands-on experience and technical skills necessary to gauge the complexity and interdependencies of the tasks. By excluding them from the decision-making process, teams risk selecting inappropriate tasks that may not be deliverable within the sprint timeframe.
  3. Erodes Trust: Effective Scrum relies on mutual trust. When Product Owners dictate sprint tasks, it signals a lack of trust in the Developers’ ability to manage their work, which can lead to demotivation and disengagement.

 

Advertisement

 

The Product Owner’s Role in Ordering the Backlog

A proficient Product Owner will order the Product Backlog to maximize value, but also actively seek input from the Developers. This collaborative approach ensures that the backlog not only aligns with business priorities but also accommodates technical realities. Enabling work, technical debt, and other critical tasks should be prioritized with input from those who understand the technical landscape best—the Developers.

 

The Developers’ Autonomy in Sprint Planning

Developers must have the autonomy to pull work “out of order” when it makes technical sense. This flexibility allows the team to adapt to emerging dependencies, unforeseen challenges, and optimization opportunities. When such deviations occur, they should prompt discussions that ensure the entire team understands the rationale behind the decision. These discussions should focus on technical and strategic reasons, avoiding subjective motivations like personal preferences.

 

Fostering Trust and Professionalism

Trust is the cornerstone of successful Scrum practice. The Product Owner must trust the Developers to manage the Sprint Backlog effectively, just as the Developers trust the Product Owner to prioritize the Product Backlog judiciously. This mutual trust encourages professionalism, accountability, and open communication.

When Developers are trusted to manage their work, they are more likely to take ownership of their tasks, leading to higher engagement and productivity. Conversely, when Product Owners trust Developers with this responsibility, it fosters a collaborative environment where both parties feel valued and empowered.

 

Addressing Trust Issues

If a Product Owner finds themselves deciding what work Developers should deliver in a sprint, it highlights a deeper trust issue that needs addressing. Building this trust involves:

  1. Open Communication: Regularly discuss priorities, challenges, and feedback openly within the team.
  2. Collaborative Planning: Involve Developers in the sprint planning process, allowing them to provide input and make decisions.
  3. Reflective Practices: Use retrospectives to identify and address trust issues, facilitating an open dialogue about how to improve team dynamics.

 

Conclusion

Understanding and respecting the distinct roles within Scrum is essential for maximizing efficiency and delivering high-quality products. The Product Owner should focus on prioritizing and articulating value, while the Developers should have the autonomy to manage the Sprint Backlog. By fostering an environment of trust and open communication, teams can navigate the complexities of development more effectively and achieve their goals more consistently.

Empowering Developers to own the Sprint Backlog not only leverages their technical expertise but also builds a more cohesive, motivated, and high-performing team. Trust your team, respect their insights, and watch as they deliver exceptional results sprint after sprint.

BATimes_Apr17_2024

4 Tips for Managing Ambiguity as a Business Analyst

As a business analyst, it is common to face ambiguity in many different forms and aspects. It may be the ambiguity of the business analysis approach you have chosen, the requirements, or the design decisions that you have to contribute to.

Ambiguity and constant changes are something that is expected. It’s up to you to respond constructively. The following tips may help:

 

#1- Approve Ambiguity

Although you may want to have full control over the circumstances, it will not happen. It may take time and changes in order to establish a business analysis approach to customers’ needs or understand the full aspects of the system to be developed. It is fine not to have the full picture from the beginning of the analysis journey, but it is your job to progressively clear out the context and the scope. Approve the ambiguity of the intrinsic part of the analysis.

 

#2- Mindset Shift

Ambiguity can cause plenty of negative thoughts and worries. Instead of entering into a negative, endless dialogue, try to view ambiguity as an opportunity for new approaches, for innovation, and for gaining experience. Ambiguity can cause team members frustration and challenges, as the situations triggering it are mostly out of our control. It is important to reframe biassed thinking patterns concerning ambiguity into positive ones.

 

Advertisement

 

#3- Utilizing Effective Risk Response Strategies

As a business analyst, you should cooperate with the project manager to recognize factors and assumptions that can affect the business analysis objectives. You have to understand the sources of the risk and craft alternatives you can use if those risks actually occur. Whether you are a lead business analyst or other team member, your ability to identify and respond to risks effectively will affect the team’s ability to successfully complete project tasks.

#4 – Have a Compass

Having a specific compass for ambiguous situations is essential to guiding your decisions and actions. Orienting yourself and leading your team through a period of ambiguity can be supported by a stable and valuable foundation of personal and organizational vision, mission goals, and objectives. Knowing at any time why you are doing something and what you want to achieve and being true to yourself and your team can guide you as the North Stare in unpredictable and chaotic situations.

 

By viewing ambiguity as an opportunity, you can reduce the stress imposed by an ambiguous situation, experiment with new processes and ideas, and develop your team members. Identifying a goal or value that can be used as a “compass” can contribute to avoiding actions and behaviours you will regret later.

BATimes_Apr11_2024

Don’t Let Your Software Requirements Die

In the realm of software development, the clarity and accuracy of software requirements are pivotal for project success. Traditionally viewed as static documents to be archived post-project, this perspective neglects their ongoing potential. 

 

Living software requirements is a paradigm where these documents evolve continually with the software, serving as an enduring source of truth. This approach not only maintains relevance but also actively shapes the software’s lifecycle, promoting adaptability and precision in development processes. 

They ensure that as software grows and changes, the documentation is not left behind, thus avoiding the pitfalls of outdated or irrelevant information – because often zero documentation is worse than out of date documentation!

 

How requirements slowly die.

Picture this: a new software project kicks off with energy and optimism. The business analyst dives deep, engaging with stakeholders to gather an amazing set of requirements. They craft an impressive functional specification that serves as the project’s North Star, and as the project kicks off, hundreds of tasks get populated into a project management tool like Jira, mapping out the journey ahead.

The software delivery team starts strong. 

 

As expected, questions and clarifications emerge, evolving the requirements a little. Some tasks need tweaks; others have missing components, and there are even some sew requirements that surface. This is fine (we are agile after all!) – and these changes and additions are all added into the project management tool, as that’s now the source of truth keeping the project on track. 

As the tasks are ticked off, a sense of accomplishment fills the air. Finally, the project crosses the finish line, the board clears, and it’s a wrap. Success!

Or is it? Software, particularly the large, mission-critical kind, is never truly ‘done.’ 


The project may have ended, but the software lives on, continuous adaptation and enhancement are normal these days. But scoping new tasks becomes a little harder, as the detailed system knowledge from that original functional specification, has now changed. The source of truth is now fragmented across completed Jira tasks and buried in comment threads. 

In this scenario, the requirements didn’t just become obsolete; they died a slow death, leaving the team navigating a labyrinth of past decisions and discussions to grasp the full scope of their own software. 

 

Advertisement

 

How to keep my requirements alive?

Keeping software requirements alive is pivotal for the long-term health and adaptability of your system. Rather than relegating these crucial insights to a static document, consider embedding them within a collaborative platform accessible to the entire organization. This living, breathing approach ensures that requirements can evolve alongside your software, reflecting real-time changes and decisions. Here’s how you can make it happen:

 

1. Centralize requirements and allow collaboration: Choose a platform where stakeholders across the business can access, review, and iterate on the requirements. This system should be the go-to source for everything related to what your software does and why, and platforms such as Userdoc are specifically tailored to this task.

 

2. Project management integration: While the main body of requirements should live outside, ensure there’s a seamless flow of information into your project management tools like Jira. This helps in translating the high-level requirements into actionable tasks and ensures day-to-day activities align with the broader goals.

 

3. Continuous updates and iterations: Encourage a culture where updating the requirements is part of the process, not an afterthought. This keeps the requirements current and relevant throughout the software lifecycle.

 

4. Embrace AI – AI can be an amazing tool for helping determine what changes could affect other parts of your system, and understanding that when writing requirements for New Feature X, you will also need to update Existing Feature Y’s requirements.

 

5. Requirements versioning: Just like with code, software requirements need versions and branches. Ensure you clearly denote what features are live, what features are in development, and what features are still being scoped.

 

6. Living reference for all teams: From development to QA, from business analysts to project managers, ensure that everyone references and contributes to the same set of requirements. This alignment prevents information silos and fosters a unified understanding of the system.

 

7. Long-term business asset: Beyond project completion, maintain these requirements as a living record of what’s in place. This becomes invaluable for training, onboarding, and new developers understanding the system’s capabilities and limitations. It also ensures the source code isn’t the only source of truth for the system’s functionality.

 

Transforming your software requirements into living documentation is a strategic move that pays dividends throughout the lifecycle of your software. 

And the thing is, it’s not actually doing any extra work – it’s just simply unifying the place where that work is done, and fostering a culture of continuous collaboration and documentation.

Embrace the concept of living software requirements and watch your software, and team, move faster with more confidence.

BATimes_Apr10_2024

Unveiling the Unsaid: The Power of Subtle Stakeholder Cues

When eliciting information from stakeholders, often what isn’t said can be as significant as what is said. Of course, the information that a stakeholder explicitly mentions is of crucial importance, but often there are subtle and nuanced details that aren’t obvious unless you look for them. Perhaps a stakeholder subtly pauses and looks uncomfortable and avoids answering a specific part of a question. Or perhaps they use a qualifying word like “usually” or “sometimes”. Either way, it is crucial to probe further and find out more.

 

Hearing What You Expect To Hear

Looking out for these clues is important, but is easier said than done, particularly when time is tight. When there are a number of stakeholders to speak to, it is easy to get drawn into a pattern of hearing what you expect to hear. We’ve probably all experienced this: after three people from different departments outline a process consistently, speaking to the fourth and fifth person seems like ticking a box. After all, they are going to just confirm what the first three people have described, surely?

That might be the case, but equally they might have additional insights that the original three did not. There is presumably a reason that they have been selected to participate in the elicitation activities, perhaps because they have a different perspective on things. Yet, it would be easy to let those discussions be swayed by the conversations that have happened before. To almost go on ‘autopilot’ and lead the stakeholder in a particular direction. It is worth being especially aware of those subtle cues and nuances in situations like this.

An Example

Imagine interviewing a stakeholder in a finance team about the invoice payment process. You’ve spoken to other stakeholders previously and you’re pretty sure you know the process:

“So, you get an invoice in, and as long as there’s a purchase order number on there, and as long as it’s approved, it gets scheduled for payment, is that right?”

“So, yes, mainly…. Yeah, mostly that’s it.”

 

It’d be easy to move on from this. It would be easy to assume that they are confirming some of the key decision rules (if an invoice has a purchase order number and has been approved, it gets scheduled).  But the stakeholder has added qualifying words: mainly and mostly.  These are easy to miss, but definitely require probing.

 

Probing might go like this:

“I noticed you said that this is mainly how the process works, are there other circumstances?”

“Yes, only very occasionally though. Sometimes, we get ‘proforma’ invoices that have to be paid immediately. We have a different process for those. Also, there are some cases where we pay up front by credit card. For example, booking training and conference places. That has a slightly different process too.”

 

Suddenly, a whole new set of facts becomes available. If this were a real situation, this would lead to further probing (e.g. “Are there any other times when the process operates differently?”, “Is there just one corporate credit card, and if so who is responsible for it” etc, etc).

 

Advertisement

 

Make Sure They Feel Heard

Of course, probing this way is important to ensure that nothing crucial is missed. However, genuinely listening is important for another reason too: to ensure that people actually feel heard.

If you’ve ever had the experience of speaking to someone who appears to be preoccupied, and is perhaps presuming what your responses are, you’ll know that this rarely feels great. As analysts, it’s important that we empathize with and genuinely hear what people are saying.

Listening in this way will help uncover important information. It is a crucial and often taken for granted skill, but one that we can probably all hone and improve upon!