Skip to main content

Tag: Requirements

Become a Better BA: Study History

As a business analyst or someone aspiring to be a business analyst, do you seek out better understanding in your daily life as well as at work—exploring the angles and the what-ifs?

I think many business analysts have a mindset to explore and uncover truths that others might not.

Let me share a recent related experience.

 

During a trip to France several months ago, I crowded into the museums amid the other tourists. Despite the bustling, I re-connected with the beauty, the feeling of inspiration, and the magnificent presence of the best works of art in the Musee d’Orsay, the Claude Monet House in Giverny, and the Dali Museum.

I noticed something was different this time.

Moving mindlessly with the flow of the other tourists from one piece to another felt flat and meaningless. Most tourists approached each piece with a camera first, skimming the surface with a click and a view, posting to social media, and then turning attention to the next piece.

I wedged myself in to get closer as I listened to the audio guide. Skimming was not what I was here for this time. I was hungry for the history of each piece: the background of the artist and the details of the time and place in which the piece was created. Give me history, context, and the human perspective.

 

Learning and embracing history has quite a few benefits for building on context, scope, and possibilities.

  • It fosters knowledge and deeper understanding, contributing to a broader perspective.
  • It exposes multiple details associated with an event, which helps improve understanding.
  • It establishes connections between events (even seemingly unrelated events).
  • When expressed like a story with characters and settings, it improves comprehension and retention.
  • It can provide a base for drawing conclusions and, therefore, applying learning.

That trip to France has ended. The journey to apply the art of historical understanding to the challenge of business analysis is ongoing.

As CBAPs, we look to BABOK for guidance in our work. We use it to provide the pillars of understanding needed to do what we do in the best possible way.

Wouldn’t it be cool if we could tap into a fresh methodology that has the power to augment the resources in BABOK?

…and in walks history. You thought you wouldn’t need it after college, probably even after high school, right? Let’s explore this.

To study history effectively, one needs to engage in most of the following tasks:

  1. Take a chronological account of events and tie them together with other events.
  2. Be able to distinguish what events lead to other events to establish cause and effect.
  3. Be able to make connections between seemingly disconnected pieces of information.
  4. Keep track of the players and how they affect the events.
  5. Identify and extract the key information.
  6. Gather related information to fill in the blanks to build a more complete picture.
  7. Apply critical thinking to assess your own understanding.
  8. Be able to apply and project your own understanding based on the facts.
  9. Do not be afraid of research or large quantities of information.

 

An effective business analyst needs to be able to:

  • take in a tonne of seemingly disparate information.
  • research and uncover additional information.
  • Talk to many different people.
  • synthesise all the information.
  • put it into context (many times we have to build an entirely new context from all the information!)
  • …and then be able to express it in a way that multiple groups of people will understand it and be able to draw conclusions from it.

We look to BABOK for guidelines on how to approach this process.

If you study history, you are honing skills that BABOK teaches. In effect, you have another tool to become a better analyst.

History is usually presented as a set of sometimes-chronological facts that you need to piece together and tie to other facts. From this, you can determine cause and effect to get a bigger picture of how different events are related (represented by #1 and #2 stated above).

 

Advertisement

 

Think about the BABOK task “Conduct Elicitation.” The purpose of this task is “to draw out, explore, and identify information relevant to the change.” The task has three types: collaborative, research, and experiments, all of which rely on gathering and organising usable information and facts.

The BABOK task “Analyse Current State” contributes in a similar way. This task’s purpose is “to understand the reasons why an enterprise needs to change some aspect of how it operates and what would be directly or indirectly affected by the change.” The inputs to this task are elicitation results, and they include elements of external influencers, organisational structure, and culture to support the analysis.

Another parallel I find interesting is between #7 and #8 above and the BABOK tasks “Analyse Potential Value” and “Recommend Solution and Recommend Actions to Increase Solution Value.” You must be able to absorb and synthesise the information and come up with your own understanding, so you can use that understanding to build context and perspective for future understanding. In the two BABOK tasks, the purpose is to “estimate the value” of multiple options (or courses of action, in the case of the “Recommend Solution” and “Recommend Actions to Increase Solution Value” tasks) and determine which best meets the requirements of the enterprise based on the information available.

 

Finally, I find a parallel between gaining a deep understanding of the players in history and the need to know our stakeholders in business analysis (represented by #4 above). A deep understanding of the stakeholders is so important in business analysis that it is a core concept in the Business Analysis Core Concept Model, integral to every knowledge area in the BABOK. You cannot completely understand your project and cannot design a solid solution if you don’t have a strong handle on who the stakeholders are, how they are connected, and what they need.

Same in history. You understand the Impressionist era much less if you don’t know that Monet, Renoir, and other painters during that time period actually worked and played together.

For the passionate and effective business analyst—as well as for any history buffs reading this—I think it comes down to being curious, being structured, and doing your research.

Work like a Surgeon

There is an old joke about a surgeon and a mechanic that goes like this:.

A mechanic was removing an engine part from the motor of a car when he spotted a world-famous heart surgeon in his shop. The heart surgeon was waiting for the service manager to come take a look at his car. The mechanic shouted across the garage, “Hey Doc, can I ask you a question?” The famous surgeon, a bit surprised, walked over to the mechanic working on the car.

The mechanic straightened up, wiped his hands on a rag, and asked, “So, Doc, look at this engine. I can also open it up, take the valves out, fix them, and put in new parts, and when I finish, this will work just like a new one. So how come I get a pittance and you get the big money when you and I are doing basically the same work?” The surgeon paused, smiled, leaned over, and whispered to the mechanic, “Try doing it while it’s running.”

 

The world in which a business analyst operates is quite like the surgical world, in the sense that a BA works with a live or running organisation and needs to make the necessary changes or improvements to the company without shutting down the currently running processes, delivering the required change while reducing impact to the minimum.

We will extend this analogy a little further from the beginning of the process (the patient comes in for consultation) until its logical conclusion (the patient goes home with the issue fixed) and see what observations we can gain from the medical world. We will also use this journey to look at the toolset available to a business analyst and determine which tool would work the best for which stage of the process.

 

Let us follow the example of a hypothetical heart surgeon. A patient complaining of chest pain is referred to him by a local GP.  The surgeon reviews the medical exam tests conducted by the GP, forms some initial conclusions about the issue, and validates the same through further diagnosis of the patient. Based on the diagnosis and the testing, the surgeon determines that the heart is not in a good condition and that there is a high chance of heart failure. The surgeon advises that heart surgery is required to resolve his condition.

This carries some risk; however, avoidance of the surgery carries a greater risk and is more likely to result in cardiac arrest. He directs the patient to the hospital admin team to get an idea of the costs involved. The hospital admin team provides the patient with all the details, including the overall cost, including the pre-operation treatment, cost of operation, cost of recovery procedures, and timelines of each stage, so that the patient has a good idea of when the operation procedure will start, how long the entire process will take from end to end, and how much it will cost.

The patient agrees with the cost and the timelines and makes the arrangement to pay the funds to the hospital by the agreed date. The surgeon proceeds with the operation. The operation is successfully completed on time, and the patient is discharged with regular follow-ups scheduled.

Now, let us consider a parallel example in the software sector, i.e., a medium-sized software company. The company has noticed a steady decrease in profits along with an increase in customer complaints and wants to fix this issue. The company engages a reputed consultancy for this.

The BA from the consulting team arrives at the company and conducts a detailed study of the current state and the reported complaints. Through a series of discussions with the company members and interviews, the BA identifies all the key parties involved in the processes and complaints. The BA organises a series of workshops with the company representatives and uses several problem-solving techniques, such as the 5 Whys, root cause analysis, the fishbone diagram, and flowcharting of the current process, to get to the bottom of the issue.

 

Advertisement

 

The BA ensures that all the relevant parties understand the question by providing them with clear objectives for the workshops and what is expected of them. During the workshop, the BA also ensures that all the members get an opportunity to express their views, so that the findings are as unbiased as possible.

After this process, the BA gets a good understanding of the current state and the main causes of the issues that the company is facing. It appears that the existing software used by the company is quite old.  not in line with the current needs, resulting in inefficient and time-consuming processing. There are also a few legacy processes being carried out, with some steps that are no longer relevant but are still being carried out as the staff have always worked that way.

This is resulting in a poor customer experience, with a corresponding decrease in sales and an increase in customer complaints.

 

These series of workshops have helped the BA and the senior management of the company get a clear understanding of the current state and the main causes of the issues being faced by the company. To take the next steps, the BA also needs to get a good understanding of the future state, i.e., what the company aims to achieve as part of its short- and long-term objectives. To do this, the BA requests that the company provide its vision, goals, and the approach or strategy decided to achieve these goals. Some of this may be readily available in the company documents but may require further discussion with senior stakeholders to clearly flesh it out so that there is no misunderstanding.

For example, the company may have planned, say, a 20 percent increase in market share, but may not have thought through or clearly spelled out all the associated elements, say, an increasing rate of production, the addition of new machinery or employees, the setup of further logistics, getting additional funding, etc. The BA helps the company work through all the dependencies and impacts and create a comprehensive future state model.

The company now has a good understanding of the as-is, or current state, and the to-be, or future state. The BA now organises another set of workshops involving all the key participants to get a clear understanding of what needs to be done to move from the current state to the future state; in other words, the BA is gathering and eliciting the requirements. During this process, the BA ensures that all the identified problems and issues and the vision of the future state are clearly understood by all the participants. This helps to ensure that the requirements are in line with the needs of the company.

Based on the feedback received from the various members of the company and their understanding of what is available in the market, the BA recommends a set of options, including some quick wins through process changes and long-term solutions such as upgrading the software or replacing it with a more efficient one. The BA clearly highlights to the senior management of the company the risks associated with staying as is and the costs, benefits, and risks of the proposed solution options. The BA also supports the company with the change impact analysis process, i.e., how the changes would impact each of the company staff involved in the current process and what can be done to ensure a smoother transition.

Once the BA gets agreement from the key stakeholders on which solution or solutions they would like to progress, the larger team, including the project managers, system architects, IT consultants, testers, and other change management personnel, is brought together along with the key members of the company, and the project is initiated. The BA carefully monitors the requirements through the various stages of the development process using a requirement traceability matrix to ensure that there is no dropping of key requirements or addition of wants based on the personal desires of some stakeholders.

The BA also ensures that the company representatives are kept well informed about the progress of the project and that there is proper end-to-end, two-way communication. This ensures that the project is successfully delivered with minimal post-project impacts.

Requirements are a Contract

Ensuring that project requirements have been understood and agreed to by all stakeholders is one of the foundations of a Business Analyst’s work.

However, that understanding and agreement from the stakeholders doesn’t always translate to the successful delivery of the project. Even though everyone on the business side has confirmed that the BA understands their wants and needs, those requirements can wind up being misinterpreted (or outright ignored) once they reach the technical team.

No matter how careful the BA has been, things seem to slowly and surely fall apart. It seems to make no difference if the project is using agile, or waterfall, or the requirements are documented in Word, or Excel, or in requirements management software such as IBM DOORS, or SPARX Enterprise Architect, or JIRA, or written on a sticky note. The results are depressingly similar from project to project.

 

Whatever is presented in the demonstration never seems to be what anyone in the business asked for. Which usually becomes the Business Analyst’s problem. Somehow the BA didn’t do enough documentation or missed something.

Over the years, I have realised that no amount of documentation, meetings, or stand-ups will save the BA. That’s because the problem is not with the requirements or the Business Analyst. The problem is with the quality of the technical team.

Before anyone gets upset, no, I am not insulting the technical team. What I’m suggesting is that most projects are a mixed bag of personalities and experience. There might be new junior developers, overworked senior developers juggling multiple projects, people who don’t want to read the documentation, and sometimes, people who outright ignore the requirements because they have determined, “that’s not how the business works.” The project is either over time and out of budget (or both) but even then, can never seem to finish.

No one seems to discuss the impact the technical team has on the requirements themselves and the amount of stress it places on the Business Analyst.

 

Think like a lawyer

What can a BA do to reduce the pressure they’re feeling?

In my opinion, a BA may find it useful to think like a lawyer.

A lawyer researches the parties involved in a contract. What are these parties like? Are they prepared to negotiate, or do they dispute everything? As a BA, you do have one advantage in that you will have communication skills and you can deal with different people and personalities. This allows you to figure out who you may be dealing with. What are they like? How experienced are they? Are there issues within the team? Although you could argue that this is just a RACI matrix – this goes one step beyond. You don’t care if they’re responsible, accountable, consulted or informed. You want to know how likely it is that the project will wind up in a mess. Something the Project Manager is unlikely to acknowledge until it’s too late (depending on the PM’s experience).

 

This changes the focus because not only are you eliciting your requirements from your stakeholders, but in the background, you’re also trying to determine what the technical team is like. The makeup of the technical team is going to help you determine your deliverables.

Alistair Cockburn states in the introduction in Writing Effective Use Cases, “A use case captures a contract between the stakeholders of a system about its behaviour.”

 

Advertisement

 

Decide on the type of contract

Keeping with a more legalistic view of requirements, the Business Analyst can then decide if the contract should involve a high degree of ceremony in which requirements are meticulously explained and documented, formally signed off, with meetings scheduled to discuss these requirements in detail. Or whether you can take an approach that is highly collaborative and relies on face-to-face chats between the team and the BA, with light touch documentation (some user stories, and a couple of whiteboard sessions).

In other words, how you construct your contract, will depend on how tightly you need to bind the technical team to that contract. And the type of contract the binds the two parties together will depend on how much you trust that other party. If you trust the other party, and you’ve known them for a while, then a handshake agreement may be all that is needed. A handshake agreement tends more towards an agile approach with some user stories and daily discussions, over and above a standup.

If you have less trust, or the project has a lot riding on it in terms of its budget or the features being delivered, you may decide on the equivalent of a legally binding contract. It may consist of several documents, and the documents are all formally signed off. Like all weighty contracts, you need to write in a manner that removes all ambiguities.

 

Much like a lawyer, your job is to ensure your wording is not open to misinterpretation or provides a way for the technical team to deliver something else entirely.

And if they do, you have your signed off documentation in which you can point to it and politely ask why the clause was ignored – and how they’re going to remedy the problem. Because the requirements are a contract. One that all parties need to adhere to.

How Product Discovery Deals with Requirements

If you are working in products, you certainly have realized product management handle requirements differently. There is a shift from eliciting stakeholders’ wishes to discovering better and faster ways to solve stakeholders’ problems. This article presents how discovery techniques popular within product management fit in the three types of requirements: business, stakeholder and solution. Understanding where the techniques fit in this spectrum will allow a better understanding of how and when to use them.

Keywords: Requirements; Elicitation; Product discovery

 

What is Product Discovery and this “Modern” Elicitation

There may have been times in the past where business analysis was (incorrectly) seen as a passive discipline.  Some might have viewed that a business analyst’s job when “gathering” requirements, most of the time, was attending meetings where they interviewed a group of people. Typically, these people had significant roles in the product (although most of the time they wouldn’t be the future users of the solution) and the business analyst would simply be a clerk and register all their dictated “wish list” items.

This approach is based on the premise that your sources know what they need and dictate the solution, yet how often is this actually realistic?  More often there will be experimentation, change and the need for flexibility. The emergence of agile development methods and frameworks like Dual Track Agile, influenced organisations to split their efforts into product discovery and delivery.

 

The main shift on the premise of product delivery, compared to bespoke or market-driven requirements engineering, is that teams have to discover what the user’s problems are based on a set of assumptions and validate if a delivered solution contributes to the desired outcome. For business analysts, this means being involved in both the discovery and delivery processes, and it requires a shift in how requirements are elicited and managed. BAs need to challenge stakeholders’ perceptions on any assumed solutions and get to the underlying need using modern requirements techniques. They have to discover the requirements rather than gather them.

 

The Requirements Engineering Cycle

The cycle that typically involves elicitation, documentation, validation, and management of requirements is often associated with the broader field of Requirements Engineering or Requirements Management within the context of software development or project management. This cycle is iterative and continuous throughout the project lifecycle. Here’s how it works:

  1. Elicitation: Requirements are gathered from stakeholders, users, and other relevant sources. This step involves understanding their needs and expectations for the software or project.
  2. Documentation: The collected requirements are documented in a clear and comprehensive manner. This documentation can take various forms, such as a Software Requirements Specification (SRS), user stories, use cases, or other requirement documents.
  3. Validation: The documented requirements are then validated to ensure that they accurately represent the stakeholders’ needs and are feasible to implement. This involves checking for consistency, completeness, and correctness of the requirements.
  4. Management: Throughout the project, requirements are actively managed. This includes change management to handle updates or modifications to requirements, traceability to link requirements to design and testing, and prioritization to determine which requirements are most important.

The requirements process doesn’t end after the initial elicitation, documentation, and validation. It’s a continuous and iterative cycle because requirements may change over time due to evolving project goals, stakeholder feedback, or other factors. Therefore, effective management of requirements is essential to ensure that the project remains aligned with its objectives and stakeholder expectations. It often involves feedback loops, revisions, and ongoing communication with stakeholders to refine and adjust requirements as needed throughout the project’s lifecycle.

 

1.    Discovery Techniques for Elicitation

“How might We…” Technique

The “How Might We” technique is a crucial aspect of the design thinking process and is often used in design sprints to frame problem statements and generate creative solutions. The “How Might We” technique involves rephrasing challenges or problem areas into open-ended questions that invite elicitation through brainstorming and creativity. The challenge is to rephrase it as an open-ended question that begins with “How might we…?” The “How Might We” statements invites participants to generate creative ideas without feeling restricted by existing limitations. It shifts the focus from problems to possibilities, and it helps teams explore solutions from different angles, often leading to innovative and unexpected outcomes.

 

Jobs-To-Be-Done

“Jobs-To-Be-Done” (JTBD) encourages us to appreciate why a product or service was “hired”, not only in a functional dimension, but also in circumstances and emotional dimensions.  The book “Jobs to be Done – Theory to Practice” by Anthony Ulwick describes a framework that you can use to define your jobs, from setting your different customers, the different kinds of jobs (core, related, emotional, consumption chain and purchase decision jobs), and setting the desired outcomes.

The behaviours of the customers that afterwards lead to definition of the “hired” job are identified by observation. Observation is a common elicitation technique. In this case, rather than observing (or shadowing) in order to replicate a given process, an observation within JTBD aims to relate a behaviour to customer’s outcomes.

 

Continuous Interviews

Teresa Torres described a set of “continuous discovery habits” to engage customers in a continuous cadence. The main shift in doing interviews is that questions don’t focus on what customers want. Rather, questions should focus on their past experiences to discover an opportunity.

As the name states, it uses interviews techniques. Once more, a very popular way to perform elicitation. As mentioned, the main shift is that questions that are asked focus on their past experiences to discover an opportunity.

 

The Mom Test

the Mom Test is another interesting approach for conducting stakeholder interviews. It has similarities with “Continuous Discovery Habits”, as the questions should focus on their past experiences to discover an opportunity. The premise of the Mom test is: your mom will always like your idea, but doing the right questions can make her tell what you really need to hear. Elicitation by performing these kinds of interviews allows us to depict the problem in question, rather than waiting for the interviewees to tell us the solution they want.

 

Advertisement

 

2.    Discovery Techniques for Analysis

Value Proposition Canvas

The Value Proposition Canvas is a strategic tool used in business and product development to understand and communicate how a product or service creates value for customers. It’s typically used in conjunction with the Business Model Canvas to create a holistic view of a business. The canvas helps businesses design their offerings by gaining a deep understanding of customer needs and how their products or services fulfil those needs.

It demonstrates a clear understanding of customer pains, gains, and jobs to be done, and introduces alignment of the pain relievers, gain creators, and product(s) benefits.

 

User Journeys

User journeys, also known as customer journeys or user experience (UX) journeys, are a product discovery technique that originated from the field of User Experience Design (UXD) and User-Centered Design (UCD). User journeys provide a visual representation of the user’s interactions and experiences while using a product or service. They aim to capture the user’s perspective, emotions, actions, and touchpoints across different stages of their interaction with the product.

 

 Opportunity Solution Trees

Opportunity solution trees are a visualisation of potential solutions to a customer problem. They involve breaking down the problem into smaller opportunities, generating multiple solutions for each opportunity, and then evaluating and selecting the most promising solution.

It is our analysis work in getting insights from conducting the Continuous Interviews, allowing us to identify opportunities for our product.

 

 

3.    Discovery Techniques for Documentation

Epic Alignment

Epic alignment” is from Nils Janse’s book with the same name, proposes a single source of truth about the requirements, in form of a “lightweight” documentation that is based around epics. The structure that is proposed for this documentation includes information that is incrementally added to what we know about a given epic throughout the product development stages (namely, Ideation, Discovery, Prioritization, Refinement, Development and Testing). The structure of these documents allow to follow the information about an epic, which user stories are included, and the details that are needed for their implementation.

 

4.    Discovery Techniques for Validation

User story mapping

The last technique I want to discuss in the article is user story mapping. This is a technique where team members collaboratively discover how a set of user stories solve a customer problem. The method consists of sequencing the user’s activities, and allows further elicitation to take place so that detailed stories and tasks can be captured. This in turn ensures that the solution will  support the user’s activities that were presented.

Classifying this technique in a single stage can be tricky. I rather believe it encompasses elicitation, analysis and validation of requirements.

It’s a technique where team members collaboratively discover how a set of user stories solve a customer problem. End users may be involved in the collaborative process as well, most probably giving inputs in the user journey and the sequence of activities – which makes it an elicitation technique. Sequencing activities may be an output of previously performed elicitation, resulting from analysis of that information. Lastly, acceptance criteria may be included in the details of the story mapping, which forces the team to start stepping up into the requirements validation. In the case of users not have been part of collaborative process, the model may be used to validate together with users that the user journey is indeed correct.

Best of BATimes: Business Analyst Role in COTS Projects

Many tech companies offer commercial off-the-shelf (COTS) products.

 

Such products allow to meet their clients’ business needs relatively fast, comparing to the development of the new IT solutions from scratch. However, a COTS product for a complex solution such as ERP, CRM, laboratory or hospital information systems requires considerable time and effort to be invested into the configuration. Hence organizations usually involve a separate implementation team of professionals familiar with the COTS product to adapt it for the company’s needs.

COTS vendors normally provide the implementation service to their clients. This can vary from company to company, but oftentimes it includes discovery phase, configuration or customization of the system according to the business needs, user training and making sure the project goes live.

This article describes the BA role in the implementation of the COTS projects and cooperation between a COTS product team and BA from an implementation team.

 

BA in Implementation Project

One might say that COTS projects do not require business analysis since there seem to be no significant development activities. However, COTS projects could vary from completely out-of-the-box to complex solutions with lots of configuration and additional customization (codding) involved. In the latter case we can and shall involve the standard business analysis activities:

  1. Plan your business analysis work. Ask yourself what is your business analysis approach (adaptive vs predictive)? Who are your stakeholders? Do you have a requirements governance process in place?
  2. Requirements elicitation and analysis. This covers discovering the current and desirable states, conducting workshops and interviews, document analysis, etc. Don’t forget to elicit and document any gaps if a COTS solution is not capable to meet some of the business needs.
  3. Requirements modeling. COTS projects normally do not require the complete functional specification since the solution is predefined already. However, there are many other requirement views which can be useful for the configuration project. We will discuss that in the section that follows.
  4. Solution evaluation. Define your KPI and measure if they improved compared to the legacy solution.
  5. Configuration. System configuration is normally out of business analysis scope, but some companies tend to involve business analysts in such activities. In any case, the BA should know how the system works and understand the solution limitations.

 

Requirements Modeling

As mentioned before, it might not be required to document all the functional requirements for the already predefined solution like COTS product. However, not documenting requirements at all could result in certain drawbacks:

  1. Apparently, external stakeholders, like end users, and internal stakeholders, like testing or support teams, will need at least some documentation that describes how the system behaves.
  2. Without modeled requirements, there is no way to validate the requirements before they are actually implemented and the system is demoed for users. What if you only validate your assumptions by demoing already configured piece of functionality? That is right, you will most likely need to reconfigure the system again once you receive the feedback, and then again and again. Nevertheless, you still can present out-of-the-box functionality which doesn’t require any configuration efforts and use it as a starting point to collect the initial feedback from your users.
  3. The change management process can suffer. Imagine that you documented the requirements for the billing module in the bunch of meeting notes, and now 4 weeks after the requirements were implemented the clients insists that some of the billing transactions are not calculated correctly. Would it be easier to refer to the SRS part where all business rules are documented, or try to find the relevant emails?

 

Advertisement

 

To address the above issues, the BA can use a variety of the business analysis techniques which will be applicable for the project and audience. For example:

  1. Roles and Permission Matrix: most of the COTS solutions allow roles configuration and assigning permissions. Start with defining and documenting user roles and their permissions. The organization chart can come in handy to define the roles.
  2. Process Modeling: you can elicit and model the current processes using either the standard notations such as BPMN, UML or come up with a simple drawing which doesn’t follow any notation standard but clear for the audience. The next step will be to review the models with stakeholders, define if anything should be changed in the process and update the model. Once done, you can supplement the model with the additional requirements view, e.g. use cases.
  3. Gap Analysis: as the BA on the implementation project you need to identify the areas in your client’s business which are not covered by the COTS package and address it to the product team. Bear in mind that it is always a good idea to think about the potential workarounds you can offer to the client, before escalating the gap to the product team. That way the client can access the desired functionality earlier, the product backlog will not be overloaded and there will be no need to overengineer the product with the functionality potentially used by only 1 client. So at first always assess if it is possible to configure the system in an alternative way or if the client can agree to do certain steps manually.
  4. User Stories: this is a simple and popular way of specifying the requirements, especially if you follow the agile approach and need to deploy the COTS solution incrementally. It is also quite convenient to prioritize the requirements using the user story form.
  5. Use Case and Scenarios: you can document each separate business flow in the use case. Use cases can easily be converted into the test scripts and serve for validation purposes.
  6. Business Rules Analysis: it is always a good idea to elicit and document business rules. Make sure you have a process in place to update business rules due to external or internal changes.
  7. Interface Analysis: your COTS product will most likely not be used as a standalone solution and will communicate with other components. Define and document interfaces specific to your client.
  8. Data requirements: usually a COTS solution replaces an outdated legacy solution and you need to take care of the historical data. And it is better to define data requirements upfront before you realize you cannot import 256 characters long text into the address column for one of the top customer’s client. Ask yourself the following questions: do you need to import the historical data into your brand new COTS solution? will the legacy data fit the new system? how will you handle the cases when the data doesn’t fit the new COTS product?

 

Provide Feedback to your Product Team

A good way to improve the product is to listen to your user’s feedback. And when it comes to COTS project who is the best candidate to elicit, analyze and document all the client’s concerns and frustrations? Yes, you’ve got it right! It is the implementation BA or anyone else who fulfills this role in an organization. And thus the BA is the one who should establish a process to communicate all business concerns and client gaps to COTS product team.

For example, the BA can create a separate Wiki page per a client where they can list all gaps discovered during the project and communicate them to the product team. The product team can then collect the feedback from all clients, prioritize the gaps for the future releases and share the roadmap with the implementation team.

 

Conclusion

COTS implementation projects can be a challenge for the BA as they differ from the traditional IT development projects. However, with the right attitude and a bit of creative thinking, we can adopt the BA techniques and establish the process which will bring value to the implementation projects and help improve the COTS product.

 

 

 

Published: 2019/08/08