Is there a role for a business analyst in an Agile environment?

Featured
28248 Views
5 Comments
64 Likes

So, what is the issue?

This question has been asked several times before, and various answers have been advanced to settle this matter. A short answer is ‘Yes’. But, unfortunately, this answer is not good enough to the ‘naysayers’, who think a business analyst has no place in Agile teams.

To answer this question in a long way, we have to take the bull by its horns and talk about the elephant in the room. This article is an attempt to contribute to this ongoing debate. Whether you agree with me or not (as I tackle this elephant in the room), the truth is - this argument is apposite and has to be had.

Business Analyst and Agile

How about some root cause analysis?

Firstly, why do we find ourselves – as business analysts - with our backs against the wall, and at pains to justify our existence? I strongly believe that the origins of our problems in Agile teams lie in the founding of the Agile manifesto itself. This manifesto was founded by a group of developers – and it is a fair argument to put forward that developers’ primary driver is to showcase their skills and expertise through writing code that works, and not necessarily worrying about whether this code addresses business or customer needs.

Is it by accident that the scrum framework does not mention the ‘business analyst’ role, but mentions only three roles - the development team, the product owner and the scrum master? The power of ‘naming’ things cannot be under-estimated. This is where the loss of ground for business analysis begins. In a very casual manner, the ‘development team’ is always interpreted as referring to developers, testers and (sometimes) business analysts. It is an apt question to raise whether the Agile manifesto, from inception, carried due recognition of the critical role played by business analysts in the product development process.

Whose Perspective is it, anyway?

With this comes a point of perspective, which is embedded in our subconscious. The developers (in most cases) look at the world through the lens of technology. They get a kick from trying out new technologies. When left to their devices, their point of departure is probably from showcasing their adeptness on the latest technology, and what they can do with it. They do not necessarily depart from a point of view of whether the technology is talking directly to the business needs. Yes, some of the advances in technology have indeed given birth to new business models. However, for these models to be business and customer-centric, a business analyst is the necessary ingredient to make them ubiquitous and sustainable. The biggest conundrum to deal with is whether business analysts are stepping up to claim their rightful place in these situations. So, if a developer writes a user-story, whose perspective is s/he representing? Surely, it cannot be that of business. The business analyst is one person who holds the perspective of business in an Agile team, not the tester, not the developer and not the Scrum Master.

But, are BA’s only good for writing user stories?

The question of recognition of the BA skill in the Agile team is always met with a standard answer (almost sounding like a scripted one) – Agile is about T-shaped individuals. It is not about the roles, but about the team. If this is axiomatic, can developers be replaced by business analysts? I do not think so.

This is because, if business analysts are T-shaped, then it means their core skills lie in business analysis and secondary skills (sometimes) in systems development. It is a rare occurrence to find someone who is strong in both business analysis and systems development (simultaneously). I am not saying that such skills combination is an absolute mutually exclusive occurrence. The reality is that such a person is a rare find. And another reality is this: - will business stakeholders be happy to accept an IT system developed by the T-shaped business analyst, with an understanding that the incumbent is strong in business analysis, but has working knowledge in systems development. I do not think so.

The systems development languages are evolving at such a high speed that systems developers have to continuously upskill themselves to keep up. The same applies to business analysis, it is a profession that is evolving, albeit, not at the same rate as the systems development languages. So, how can a business analyst be expected to keep up with the developments in his/her field of business analysis and equally keep abreast of the developments in the languages of systems development? It is clear to me that a business analyst cannot replace a developer in the Agile team. And so, how is it casually taken that developers feel they can replace or do business analyst's work in these teams? This nonchalant attitude, in my opinion, is founded on one narrow-minded view of what a business analyst is, or does – someone who just writes ‘user-stories’.

The ‘T-shaped individuals’ and ‘self-organizing teams’ is a convenient way of dis-empowering business analysts in the Agile world. It is self-evident that it is highly unlikely that stakeholders (including the ‘development team’) can easily accept when a business analyst says ‘because the developer has been booked off sick for the next two weeks, I will take over his/her ‘role’ and write the business function, procedure or method that he/she would have written – so that we can demo to the client at the end of Sprint X’.

One of the contributory misconceptions to the ‘lightweight view’ of business analysts, is the unfortunate and prevalent ‘malpractice’ that Agile replaces the activity and/or the nature of requirements elicitation (I am not talking about requirements representation) and all the necessary pre-work that needs to happen in the analysis phase. Agile advocates for the change in the intensity and duration of analysis, but not for the complete annihilation of the latter.

Nowhere does the Agile manifesto, including the 12 principles of this methodology, say analysis is completely unnecessary – it only argues against extended analysis that would normally end up with ‘analysis paralysis’. The Agile mindset argues that, while we do not have all the answers in terms of the details, we can proceed to start building in small increments, with the big-picture understanding of what is required. We know how this big-picture fits in with the strategy of the business, and with the architectural lay of the land. To borrow from the finance and legal fraternities, one can say an Agile mindset cultivates an ‘ex post’ approach as opposed to an ‘ex ante’ one. Let us not spend too much time before building the solution, let’s rather learn from what we have built.

However, this approach does not mean going blindly into a project, wishing that all will work out in the end, because ‘we are Agile’. The understanding of the business context – such as, which levers to pull or push, which parameters we can operate within, etc. - is a non-negotiable. It shows a lack of prudence on the part of a business analyst to waive the ownership of such understanding to the developers. The true owner lies with the business analyst working very closely with the product owner. This is where, as business analysts, we are short changing ourselves. We waive our rights to own these conversations and thereby allowing developers to completely take-over.

Agile is a delivery vehicle meant to make the process of systems development more efficient and less prone to omissions by emphasizing collaboration in what I call the ‘production line’ and fast-tracking the decision making during this process. People who work together, as experts in various fields of systems development, can decide in the quickest possible manner when they are in one conversation.

The ‘production line’ mindset

If we draw the parallels between manufacturing (motor) and IT (software development) industries, the Scrum ceremonies (for instance) can be equated to the assembly or production line. However, in manufacturing, product development does not just begin by lining up material/parts into the assembly line. A lot of business-related activities happen way before a model is lined up for development. However, once the assembly line has been configured correctly, and all the business activities completed, then the production begins and seamlessly runs without any hiccups.

I feel that in software development using the Agile methodology, a lot of business-related activities are skipped and we go straight into the production line. Once we are in the continuous production line, we end up being frustrated and say the methodology does not work. This is where we miss the boat, because the focus is so much on the production line (the Agile ceremonies), culminating in the churning of the user stories – everything else that precedes the user stories is not given as much emphasis. These activities should be owned by business analysts. I am of the view that this ownership is feeble, as business analysts continue to second guess themselves.

Being caught up in the production line, business analysts do not get to do what they should be good at – which is based on two core skills – analytical thinking and logical thinking. Analytical thinking is about is the ability to decompose the whole business (with its complexities) into smaller components, to understand how these smaller components contribute to the generation, replication and sustainability of value. These small components are not only conveyed to the customers through the IT systems but also through business processes. How then can business analysis be about only writing user stories?

User stories are not business requirements. They are an encapsulation of business, functional, non-functional requirements and business rules. They express the end state, the wish of a customer. But to fulfill the wish of a customer, business needs to ensure that it has its ducks in a row, by making sure that all the underlying business processes (including customer support) are in place, once that wish of the customer has been automated through an IT system. Can a developer think of that? I don’t think so. A business analyst is tasked with that responsibility – the interest of business is to ensure that all the smaller components have been analysed properly (not extensively).

What does it mean to ‘understand business’?

I believe that when we speak of ‘understanding business’ we do not put things into perspective. I am sure most business analysts – especially junior to intermediate (and some senior as well) – are always confronted by the vagueness of this phrase. The picture below – which depicts the organisational architecture – provides a view of the lengths and breadths of what a business analyst should grasp to demonstrate an accurate understanding of business.


What skills does a BA bring (beyond writing user stories)?

The logical skill talks to the ability to sequence activities in a manner that enables business not only to satisfy the wish of a customer but to be able to support this wish as well – post IT system production. What is the point of rushing to satisfy the wish of a customer to be able to order his bank card online so that he can withdraw cash at the ATM or swipe at the POS if the card production partner is not ready to timely receive and process orders of those bank cards?

The developer can write the API to interface with the card production partner – but who owns the data that needs to be passed on? Surely not the developer, because he/she is not close enough to the business to understand the nature of the data, that being a must-have versus the one that is a nice to have. Who understands the business process of the card production partner – surely not the developer or the tester? So, how can a developer replace a business analyst in the Agile team?

Logical thinking is about use case thinking. I am not saying business analysts in Agile should write use case narratives, but surely they should possess use case narrative thinking as a skill. The ability to understand how the solution will logically flow into the existing or new business processes to offer a seamless customer experience is a good example.

If the business analyst does not fully understand the entire business processes, how can he/she then claim to understand the business he/she is servicing? I am of the view that business analysts who are thrown into an Agile environment’s production line are deprived of the logical thinking discipline, which use case diagrams and narratives instill. The ability to own and define how exceptions and errors will be handled – from a user point of view (and not the developer’s). The reason why we end with ‘An error has occurred, please try again later’ situation is because business analysts are not owning that part of the logical flow. It is owned by the developers in the Agile world.

In closing, business analysis as a discipline has a lot of value to add in Agile teams. This value sits outside of writing user stories. The business analyst brings to the team a skill that no other team member possesses. The reason why this value is not fully realized in some (if not all) Agile teams is that business analysts are very operational in their thinking, and not elevating themselves to competently represent Product Owners.


Author: Edward Ngubane, Head of Business Analysis, DVT

Edward Ngubane, the current Head of Business Analysis at DVT, started his career as a mathematics teacher at Senaoane Sec School in Soweto. He has been in the IT industry for almost 20 years, and worked for the following companies: Telkom SA, Investec, BMW Financial Services, Wesbank and FNB (Online Banking and eWallet Solutions). He has held numerous positions, viz:- Systems Developer, Systems Analyst, Business Analyst, Product Development Manager, Business Analyst Manager, Head of PMO, Practice Lead (Business Analysis and Architecture), Practice Manager.

He has setup and ran BA CoP’s (Community of Practice), developed and mentored a number of business analysts and published papers on the business analysis discipline. Over the years he has received numerous awards, and is passionate about the business analysis domain.

He holds five degrees, two of which are at the Masters level – the M.Ed (Maths Education) and the MBA (Cum Laude) – both from the University of the Witwatersrand. The title of his dissertation for his M.Ed was ‘What are links between a teacher’s views of mathematics and his/her classroom practices’. And the title for his MBA dissertation was ‘Managing IT Knowledge workers within South African Financial Industry’.

He is currently doing his PhD (part-time) at the University of the Witwatersrand, and is a recipient of a Post Graduate Merit Award. His thesis is on the ‘The development and sustainability of SMME’s through Cloud Computing in South Africa’. He is the former Secretary of the IIBA-SA, and the current Treasurer of the same organisation.

Contact details:
Edward Mzwandile Ngubane
DVT (https://dvt.co.za/))
Head of Business Analysis : Gauteng, South Africa
Business Enablement Division
Mobile +27 (82) 851 3638
[email protected]

Like this article:
  64 members liked this article
Featured
28248 Views
5 Comments
64 Likes

COMMENTS

LDO posted on Thursday, November 14, 2019 3:14 AM
Good article Edward and certainly very topical. Its interesting the business analysis discipline is growing at a phenomenal rate in the commercial world in general. Yet there is this conflict going on internally within software development as to whether there is a need for the skills of business analysis. What your article in many ways says to me is that we could divorce the BA from the Agile project, with all its ceremonies/ sprints and the like. Instead the BA should be looking at the problems/ opportunities in the business much earlier, understanding them and articulating them such that when an Agile project is given the green light a great deal of analysis and information is directly available to the Agile team to support a collaborative effort.


In other words a BA has done the ground work to improve the business by identifying threats/ opportunities long before someone decides to put up the money for a solution to be developed using Agile.


The old adage use to be 70% effort of a project was in the analysis (and how often do we get this amount, rarely or never....unless you work for NASA or the like) - get the analysis right and you have a blue print for a design and coding should be just like following a knitting pattern, everything fits in to place, so the testing should be a tick box exercise not somewhere to discover requirements and start resolving problems.

I don't think Agile is the panacea for all projects, so I think BA's or someone with those types of skill, who understands and can articulate a problem and how it can be solved from a business perspective will always be needed. But not always directly inserted in to an Agile team.


The benefits of Agile are you to be proven, only time will do that. As a project management approach and discipline method of collaborative working for development teams, it has a lot of advantages and possible delivers what it promises in certain circumstances. Who's ever selling has made a big impact on organisations thinking this make projects; cheaper, quicker and deliver a more effective solution, I am yet to be convinced.
Petera01
Michael Wolski posted on Friday, November 15, 2019 6:48 AM
Good article. In my opinion, the analyst in an agile team is a sapper: what is supposed to disarm mines, which builds bridges over the encountered rivers. An analyst as a member of the team is to help create a better, more perfect software. I wrote a little about it in my article : https://wolski.pro/2019/09/analyst-in-agile-team/
MichaelWolski
Patricia Nevitt posted on Friday, November 15, 2019 7:15 AM
I was in a meeting just the other day for a team that I am joining, and the dev manager was lamenting that nothing was documented; in order to proceed with planned upgrades, we needed the current requirements documented because no one really understood the system. One of the other meeting attendees commented that "Maybe we have been too agile."

I find that new analysts often do not fully understand how valuable it is to have a document management system with the current requirement state. I am pretty astonished that they would be so willing to throw away their work at the end of the sprint--they see no value in keeping it.

All of my recent projects have been on Agile teams, and I find that it works best if I sprint one sprint ahead of development. Any more than that, you risk stale requirements.

BTW, I have no trouble finding new work--I start a new job in December. The company that I am leaving attempted to offshore our BA work, and it was disastrous for our project.
paanne
Shelly Campher posted on Monday, November 18, 2019 5:43 AM
I'd be interested in gauging thoughts on how BAs work with User Researchers on Agile projects ....
SCampher
RajMenon posted on Tuesday, December 10, 2019 9:47 AM
Mr. Ngubane, great insights have been shared to the world by you through this article. I agree that BA is a necessary part of the Agile Team. In fact, I propose that BA or a PM with strong BA skills should be the leader assisting the Customer Manager in an IT projects. Agile/Waterfall etc cannot beat common sense practices in completing a project on time and on budget. Only solid analysis and solution design can make implementation approaches like Agile succeed in delivering value to the customer - my opinion.
Rajesh.Menon@usask.ca
Only registered users may post comments.

 



Upcoming Live Webinars

 




Copyright 2006-2024 by Modern Analyst Media LLC