Industry experts agree -- the success of any software development project depends directly on the definition of complete, high-quality, accurate requirements. Today's business analyst (BA) takes a lead role in defining those requirements. BAs are responsible for eliciting, analyzing, communicating, and validating requirements for a huge variety of business processes and information systems.
Since the activities of a BA are so critical to a timely, cost-effective, successful software project, it is important to equip the modern BA with a toolset that supports and accelerates all requirements definition activities, as well as provides the BA with practical guidance and resources to support this rapidly evolving role.
This toolset, known as a Business Analyst Workbench, allows analysts to do the following:
- Gather and record stakeholder needs from a variety of sources
- Interpret and analyze this information to produce a set of solution requirements
- Collaborate with stakeholders to validate the requirements
- Communicate the agreed-upon requirements to those who need to design, build, and test the solution
A Business Analyst Workbench can dramatically increase the accuracy and efficiency of both requirements definition and test definition. But what should you look for when evaluating a potential workbench?
A full-featured Business Analyst Workbench should satisfy four main criteria:
- Support for multiple requirements approaches
- Support for all phases of the requirements definition lifecycle
- Intelligent integration with other application lifecycle management (ALM) tools
- Inherent change management of requirements
Support for all requirements approaches
The diversity of today's software applications, and the varying and rapidly evolving environments in which they are designed and developed, require BAs to develop requirements in many different formats. Today's analysts use many approaches (sometimes individually but usually in combination), ranging from text-based declarative approaches to scenario-based approaches, prototyping approaches, and more.
The degree to which a workbench can support a BA's existing practices and approaches -- and the degree to which it can be fully adopted with minimal process adjustment and re-training -- are important criteria for a workbench. Ideally, a Business Analyst Workbench should be "process-independent." It should not force the BA to adhere to a specific requirements definition process but should support and facilitate existing processes and accommodate the evolution and "tuning" of processes over time.
The software must allow for fast, easy, and complete adoption by organizations, many of whom follow many methodologies. The workbench should seamlessly align with your organization's current processes and practices and allow for evolution in order to streamline the requirements definition lifecycle.
Support for all phases of requirements definition lifecycle
A Business Analyst Workbench must support and accelerate the entire requirements definition lifecycle, which typically consists of four phases:
1. Elicitation -- This phase involves gathering and capturing requirements, often from a multitude of sources. A Business Analyst Workbench must allow the BA to rapidly and easily capture textual requirements, even in Joint Application Development (JAD), brainstorming, or interview situation. It must allow the BA to rapidly navigate, sort, and re-organize this requirements information from a number of perspectives, based on customizable criteria. The workbench must also support inclusion and precise linking to relevant information in pre-existing reference materials, such as Word or Excel documents, images, screenshots, etc.
2. Elaboration -- In this phase, a workbench should allow the BA to extend, refine, and create models based upon the elicited textual requirements. This includes creating use case models and their detailed flows, creating data definitions and objects, modeling business rules, mocking up GUI screens and their behaviour, linking to supporting reference information in external documents, and analyzing and maintaining traceability relationships between model elements.
3. Validation -- In this phase, a Business Analysis Workbench should allow the BA to visually simulate and demonstrate requirements for the stakeholders in a way that is easy to understand and that facilitates immediate feedback and change. The workbench should also allow analysts to collect and record reviewer feedback regarding any aspect of the demonstrated requirements, such as on a particular use case, step, textual requirement, prototype screen, or data element.
4. Acceptance -- In this phase, a Business Analyst Workbench should allow the BA to automatically generate requirements documents in customizable formats that comply with each organization's standards. Automatic generation of requirements documents based on a validated requirements model saves a great deal of time, reduces the cost and risk of human error, and supports standardization. A Business Analyst Workbench should also allow the BA to create a formal baseline of the requirements at particular milestones.
Intelligent integration with QA and ALM tools
The BA works in tight collaboration not only with the line of business, but also with Quality Assurance (QA), architects, designers, development teams, and other stakeholders in a software development project. Therefore, it is critical that a Business Analyst Workbench provides intelligent integration with QA and ALM tools in order to save time, reduce cost, and minimize the risk of inconsistent information existing in different toolsets. A workbench should integrate directly with popular UML design solutions, requirements management solutions, project management solutions, QA & testing solutions, business process management (BPM) solutions, and more.
For integration with QA, a Business Analyst Workbench should allow automatic generation of tests directly from the validated requirements at any time during the requirements definition process. The workbench should allow test generation to be tuned to different scopes (full coverage, selected coverage, impact/change-oriented, or policy-driven tests), and it should allow different types of tests to be generated: system, integration, component, user-acceptance, and regression tests.
The workbench should also be able to export requirements content and auto-generated tests directly into popular testing tools such as HP Quality Center, and it should be able to import content from testing tools into the workbench.
Inherent change management
Since the nature of software development dictates that changes will occur and must be properly managed to decrease costs and to reduce risk, a Business Analysis Workbench should support inherent change management features.
One important change management feature is traceability. Traceability features allow the BA to view and manage traceability between elements in a requirements model. The traceability information should be fast and easy to define and easy to access. That's because it is critical to have these relationships defined at the time of requirements definition in order to help identify the scope of impact for requirements changes and to audit requirements to validate their coverage.
A Business Analyst Workbench should provide configuration management features that support a multi-user, multi-version environment, such as distributed access, requirements versioning and baselining, requirements branching and merging, history, and security features such as authentication and authorization.
Last but not least: Training and support for the BA
As well as satisfying the four main criteria described above, the Business Analyst Workbench must provide access to resources and services that allow the BA to learn and use the workbench to its full potential, as well as improve and accelerate the requirements definition process. When you consider the pivotal role that the BA plays in determining project success, and the fact that this role is currently undergoing very rapid change and formalization, it is clear that today's BA can benefit from up-to-date, expert guidance. Training and mentoring must be available, and the workbench must provide the BA with access to self-training assets and resources from within the toolset, such as tutorial guidance, reference information, video or multimedia examples, knowledge base, and frequently asked questions.
A Business Analyst Workbench can empower the BA throughout the entire requirements definition lifecycle. The resulting high-quality requirements will save organizations time and money and will significantly reduce the amount of development and testing rework done in today's software development projects.