Sunday, 18 August 2013

Business Analysis Life Cycle

This is a difficult one to define.   We all know the life cycle of software, be it a product or service or a feature.  The following is an attempt to provide the life cycle of business analysis at very high level.



Product marketing team comes up with a high level direction of different features that should be part of the product/service for a particular release or financial year based on the approval from the senior management.  

They provide the overview of the high level direction to all the stakeholders.  This will be primarily based on the following factors:
  •       Market Research
  •       Competitive Analysis
  •       Product Direction
  •       Sales strategy
  •       Client feed back
  •        Missing features in the product suite
Once marketing comes up with the features list, Analysis team analyzes these features and comes up with the requirements at high level to get it signed off from the product marketing.   This is the basis for analysis team to do research and provide with the best of the functionality for the product/service they are going to create. So, the scope of the features will be freezed based on the high level requirements.

Then analysis team details these requirements and periodically walks through all the stakeholders and gets it signed off from the Product Marketing team.  They also may get the product/service mock ups in order to make sure that they are understanding clearly what the Product Marketing is saying.  Once they come to an agreement, Analysis team works with the software development to build the product.  So, they will create requirement specification documents, process flow diagrams, mock up UI screens and other requirement documents as needed for the software development teams. They will be reviewed among all the stake holders (Senior Management, Software Architects, Software Development, User Interface and Software Testing) and get them reviewed periodically.

Analysis team takes the responsibility of creating the product as envisioned by the Product Marketing. So, they do the adhoc testing periodically and help the development/testing team with all the clarifications they needed. Analysis team has to have the understanding of the domain and product in order to give utmost clarity of the requirements to the software development/testing teams.  They have to innovate to come up with the best way of communicating the requirements to the teams to minimize the misunderstandings. 

For service organizations, the Client will give the requirements.  So, the Marketing/Product Management team will be the client's team primarily the same personnel. However, the business analysis team may not have direct access to team. 

Saturday, 17 August 2013

Who Can Be a Business Analyst

I believe, Business Analysis as a discipline is not evolved yet.  Business Analysis has different interpretation in different organizations based on the need of those organizations. What a Business Analyst does could be different in different kind of organizations.  They do different things in product based companies and service based companies. Also, the tasks will be entirely different in big organizations and small organizations.
In such kind of situations, it is really important to understand what this discipline is all about and what are the organizations that are helping for the evolution of Business Analysis as a discipline.

There are many names for a business analyst in the organizations primarily based on the kind of job they do:
  • System Analyst
  • Business Analyst
  • Business Systems Analyst
Primarily  two kinds of people are
becoming business analysts in organizations:
  • MBAs as a typical career opportunity
  • Non MBAs who are very good in the domain   side (Subject Matter Experts)


However, the skill-set for a business analyst should be analyzing certain aspects of business/product/market in order to build a product/service which helps the customer/client with some value addition.  Whoever is becoming a business analyst has to acquire this skill-set in order to be a good business analyst.  Though domain/product knowledge is very important to be a business analyst, the following qualities should be developed over a period of time for building products/services which helps the customers.
  •  Ability to probe the stakeholders for getting the requirements right
  •  Understanding details, ability to draw a line between business/system requirements
  •  Looking more from customer/business aspect while building a product/service
  •  Understanding the philosophy of product/service and who its clients are
  • Sensing the market and the concerned market segment and its demographic changes
  •  Developing good relations with all stakeholders and respecting their role in the organization
Nobody knows everything. So, it is important for a business analyst to maintain good relations with everybody and understand from them as to what is needed to build a product which the client wants to see. So, a business analyst should be a great listener and should acknowledge others and value others opinions. They should be able to get the buy-in from all the stakeholders for freezing the requirements only by building right relationships.

A business analyst typically understands what the product/service that needs to be built for the customer/client from wide variety of stakeholders and help the software development team develop exactly how he/she envisions the product should be.  Business Analyst takes the responsibility for building the product as it should be and guides the software development team periodically as appropriate. They also take the responsibility for getting the sign-off from the senior management by working with the product owner.

So, if somebody wants to become a business analyst they need to think like a business analyst and develop the above skill-set in order to be a business analyst. I will put the responsibilities of a business analyst in coming posts.