There seem to be two simultaneous movements going on, both seeming to be contradictory to each other. The first is the growth of agile software development and the corresponding concern in the business analyst community as reflected in the earlier posts and elsewhere. The second seems to be a movement away from "pure agile" (the kind of software development that spurns any business analysis except as done by the developers and any intermediaries at all between the developers and the business and the rest of the organization).
At first that might seem contradictory. How can we be moving toward agile development and away from it at the same time? I only observe. Organizations are renaming their business analysts and other functionaries with agile sounding titles and tasks. Other organizations are moving developers, and former business analysts, into official business analyst roles. Why?
In the first place we are seeing the back end of the adoption curve with organizations stepping up into agile practices and following the preachings of the purists and the books to try to catch up with what these organizations perceive as the path to software development nirvana. The other trend appears to be followed by the earlier adopters who have tried the pure approach and are now reverting back to a more 'normal' approach. The natural 'reversion to the mean' that follows any extreme behavior or performance.
Those who have 'reverted' appear to be more 'agile' than they were before their agile excursion and retain many of the agile qualities and practices, but appear to be pulling back from the extreme measures: bringing back professional business analysts as facilitators, administration roles to ease the interaction with the organization, and project management to make multiple project or large project coordination easier. It seems that pockets of pure agility cannot survive and turning an entire organization that has developed its culture and practices over generations into agile over night as the zealots proselytize just is not working as predicted. Nor are there major advances in sales, revenue, or profit from the adoption of agile that support the claims. So the way we were becomes the way we are albeit a bit more agile in character and application.
Search This Blog
Thursday, July 4, 2013
Friday, May 3, 2013
Business analyst in agile Software development 4: Scrum Master
Some business analysts are more comfortable with the soft skills than others, soft skills like conversation, elicitation, mediation, negotiation, influence, reading body language, listening and so forth. If you are such a business analyst and perhaps are not into defining requirements and dealing with authority but would rather deal directly and continuously with people, then perhaps the role of Scrum Master or Agile Coach is for you. According to the Scrum Guide (2011) by Ken Schwaber and Jeff Sutherland, the Scrum Master serves three roles: the Product Owner, the development team, and the organization. Specifically, "The Scrum Master is responsible for ensuring Scrum is understood and enacted. Scrum Masters do this by ensuring that the Scrum Team adheres to Scrum theory, practices, and rules. The Scrum Master is a servant-leader for the Scrum Team." And, "The Scrum Master helps those outside the Scrum Team understand which of their interactions with the Scrum Team are helpful and which aren’t. The Scrum Master helps everyone change these interactions to maximize the value created by the Scrum Team."
This requires a great deal of influence skills and communication skills. one of the primary duties of the Scrum Master is removing impediments or obstacles to the development team's progress. This requires analysis and problem solving. It also requires a good sense of organizational politics.
Scrum Masters in the teams I have seen generally facilitate most of the meetings, including the Daily Stand Up, and represent the team and the product owner to management. Similar to the business analyst, the Scrum Master has no authority of his or her own so must make things happen through influence and political skill. Many business analysts have moved in the direction of the Scrum Master. Some work as part time Scrum Master, and others are full time on one or more teams. Scrum Master, certified or not, is a positive step in an agile environment where the position of business analyst is no longer welcome.
This requires a great deal of influence skills and communication skills. one of the primary duties of the Scrum Master is removing impediments or obstacles to the development team's progress. This requires analysis and problem solving. It also requires a good sense of organizational politics.
Scrum Masters in the teams I have seen generally facilitate most of the meetings, including the Daily Stand Up, and represent the team and the product owner to management. Similar to the business analyst, the Scrum Master has no authority of his or her own so must make things happen through influence and political skill. Many business analysts have moved in the direction of the Scrum Master. Some work as part time Scrum Master, and others are full time on one or more teams. Scrum Master, certified or not, is a positive step in an agile environment where the position of business analyst is no longer welcome.
Sunday, April 14, 2013
Business analyst in agile Software development 3: Product Owner
Perhaps the most obvious role for the business analyst to
assume when presented with the options
afforded by the typical agile software development implementation is that of Product
owner.
The characteristics seem similar and the experience the business
analyst has in defining requirements and solutions seem to play well in the product
owner arena. The product owner defines a set of specifications for the project that
are rendered as ‘user stories’ and posted in a priority order on the product backlog.
This seems right up the business analyst’s alley. The business analyst must work with all the product
stakeholders to define a set of specifications that solve the business problem and
render it in the form of requirements.
The product owner meets with the solution team regularly to
go over the product backlog to elaborate and explain the details of the stories
so the developers can write the code to implement them. The business analyst meets
regularly with the solution team to review and explain the requirements and
changes that develop during implementation.
There is a lot of similarity between the business analyst and
the product owner. Where the similarity ends is where the problems begin. The product owner has complete authority over
the ultimate product and by reference over what the team does and the order in
which the team does it. And the product owner has total authority for
acceptance of whatever the solution team delivers. The business analyst by definition has no
authority. If you have been a business
analyst for any length of time, assuming that authoritarian position from one
who works strictly with influence might be quite a hurdle to overcome. Additionally, despite the apparently parallel
requirements definition tasks, the product owner does not spend time collecting
and analyzing information to produce the requirements. In this regard, the product
owner is more like a project manager than a business analyst and Ken Schwaber,
author of Scrum, warns against the business analyst moving to product owner for
just that reason: the business analyst may revert to performing as a business
analyst and not as a product owner.
However, if you can make that transition, becoming the product owner is
a good step for a business analyst in an agile world. If not, I have some more suggestions coming
up.
Thursday, March 7, 2013
The business analyst in agile software development, part 2: What is your value??
Let’s talk about where the somewhat negative attitude toward
business analysts in the agile community comes from. Please note that the
attitude is changing for the better, and we’ll talk about that later.
The knock on business analysts is because of the observed
behavior of business analysts who perceive their role as one of ‘collecting
requirements’ from the stakeholders. As such they facilitate a meeting and ask
the stakeholders in the meeting what they want. The stakeholders respond, and
the business analyst writes the requests down as dictated, rewrites the
requests into the formal organization-defined business requirements document,
get it approved, and pass it on to the developers. The developers, seeing this,
wonder why they can’t simply ask the stakeholders the same question, get the
same set of requirements, and start working on them without the interim steps.
As hopefully can be seen, the problem is that the business
analyst in the scenario does not really add any value to the transaction
between the stakeholder and the developer. Perhaps the business analyst might
point out that he or she provided translator services by translating
business-speak into tech-speak. The
agile developers say that they can just as easily ask for an explanation of any
terms or jargon they do not understand, and there will be less chance that of
mistranslation. Again, the question is what value is added?
As a business analyst, in general, not just in terms of
agile, we have to know what our value is to the organization, and also to all
the parties. What is our value to the stakeholder? What is our value to the
solution team? This is not an insignificant
question. Many business analysts assume
that just because they are a business analyst and they are assigned to a
project everyone will understand the value they bring. After all, no one questions the value a Java
developer brings to the project.
Remember, though, that the profession of business analyst is very new
and as a profession we are still struggling to define our place in the scheme
of things. So if we cannot come up with
a universal definition of what a business analyst does (other than practice
business analysis) how can we expect that everyone else will share a common
definition?
Even a Java developer has different value on different
projects and perhaps even at different times during a project. While the senior
line manager is defining the business case, the Java developer may have limited
value, for example. If the primary bulk
of the code is being written in C#, the Java developer has less value than the
C# developer. And so forth.
The issue is, what is your value to the organization? Can you state it in unequivocal terms? Can you state it so the organization
management not only understands but agrees if you were called upon to do so?
Can you state the value you are adding to the project? Can you state it in such a way as to gain
accordance from the team and stakeholders involved with the project? Can you defend your value statement if
someone does not agree (as in the statement of “I add value by translating
terminology” above).
Once you can define the value you add to the project and to
the developers then you will be in a position that any software development
approach, even agile, cannot unseat you because they cannot replace your value
with anyone but you (or some other equally qualified business analyst). And you
don’t have to worry about being booted off the agile island.
I will give you some time to think about your answer and
provide a few suggestions later. In the meantime, in the next installment I
will address the issue of it being too late. When the die is already cast and
the business analyst role is already removed from the software development
process, what do you do? Where do you
go? Answers next.
Wednesday, March 6, 2013
The Business Analyst in Agile Software Development Part 1
I am getting a lot of questions and concerns from business
analysts about how business analysts fit into the agile world that appears to
be taking over software development, and just about every other thing. My local grocery store has a sign that says “agile
grocery shopping”. I’m not sure exactly what that means. I’ve been afraid to go
in and try it.
Because of the interest and uncertainty, I thought I’d do a
few blogs on agile and the business analyst, looking at the issue from a
variety of different perspectives, both good and bad.
Here is the bottom line according to the agile zealots: there is no business analyst in agile. Wow!
Is that harsh!
I have had many long conversations over the years with agile
adherents such as Ron Jeffries, Scott Ambler, and Steve Gordon among others about
the subject of business analysts in agile software development and the message was
always clear: there is no need of business analysts in agile software
development. Why? Because the theory is that the developers will talk directly
to the customer, in the form of a product owner or a customer on-site, and need
no intermediaries. To the ardent
agilists, a business analyst is just an impediment who offers no value to the
transaction. Why would a developer need someone to translate what the business is
saying when the developer can talk directly to the business person and not run
the risk of miscommunication?
This is not really meant to be a pejorative condemnation of business
analysts by these stalwart gurus, although many developers do not have a
positive view of the role of business analyst which I will address in my next
blog.
The issue is what does a business analyst do when faced with
the situation of the developers and others suggesting that their value to the software
development effort is negligible and their services as business analyst are no
longer needed? I have four possible solutions
and a bit of positive news in the forthcoming blogs.
Sunday, November 25, 2012
Are you qualified to do business analysis?
In a recent discussion I was asked if there are a set of competencies, other than a certification, that could define a business analyst. Is there a list of characteristics that will indicate whether a person will make a good business analyst or not?
Here is the paraphrase of my answer:
For one thing, many of the competencies, such as ability to communicate in both written and verbal formats, do not have finite measurements. Some people communicate better than others and some communicate well in writing, but not verbally. All might be good business analysts, and all might not.
I think a list of competencies (abilities, traits, talents, etc.) that a person typically needs to possess to be successful at business analysis would provide a good guideline for all those interested in performing as a business analyst. If a person is honest about their own competencies - where they are above average in performance and where their ability or knowledge is lacking - the person can seek improvement in that area. And that is a good thing.
In the end, if you took the winner of the Nobel Prize in Business Analysis and sat them next to an average workaday business analyst, you might not be able to distinguish between them based on a competency list. In fact, the Business Analyst of the Year may not be able to pinpoint what he or she does differently than the average business analyst. The competencies, such as communication, inquisitiveness, empathy, analytical abilities such as critical thinking, visualization, curiosity, system thinking, networking, influence skills, negotiation and mediation skills, and so forth, have become so habitual and part of the prize-winning business analyst that he or she would not be able to describe them.
The list of competencies should not be used to distinguish a person as a business analyst or to qualify a person's ability as a business analyst, but to provide a guideline for those in the profession and those who would join the profession as to what they have to work on, to hone, to improve, so that the competencies become inherent, habitual and automatic.
Thursday, November 1, 2012
The business analyst and ITIL production requirements
I spend a few weeks in London in September and October capping a year long project that involved both analysts and production and operations managers. I had assumed over the years that the physical move into production was a project manager's responsibility. The PM was the one working with the production people to ensure a smooth transition into production, usually while the developers, business analysts, QA and users are completing the acceptance testing and getting final sign off of the product.
In this particular company which follows ITIL it turns out that there are a number of standard procedures (which I helped initiate many years ago and are now refined into smoothly running processes) that are more business-related than project related. As we worked on various projects and processes I began to realize that the business analyst can actually do a lot during the project to make the transition easier for production. I talk a lot about the business analyst making the transition easier for the users, which does not go away, but there are also tasks the business analyst can do to ease the flow of the application into operations. It turns out that the overall business requirements do not only come from the users and business stakeholders.
It is not enough to just make sure the problem is solved and the requirements are met. It’s not enough for a business analyst to ensure the described well enough for the developers to build. The business analyst also needs to work with the production people to make sure that the application moves smoothly into operations. There are requirements from production, for example ITIL standards to meet, that have to be defined as well. While these are not necessarily business requirements, they do affect the business in that they affect the ultimate delivery and use of the application in the operational environment. Since the business analyst is responsible for solving the business problem, the business analyst should be aware of requirements for that solution to go live. The guiding principle is always: if the users (customers, stakeholders) are not using the solution to solve the problem, the problem is still not solved.
Subscribe to:
Posts (Atom)