Business analysis (BA) can be understood as a discipline that explores and identifies business needs, prioritizes them based on risks and business goals, and provides potential solutions that fulfill those needs (Unhelkar, 2010d). The SFIA defines BA as "The methodical investigation, analysis, review, and documentation of all or part of a business in terms of business functions and processes, the information used, and the data on which the information is based." These BA activities are carried out by business analysts in order to improve the processes and systems within and across organizations. BA activities employed in an organization include exploring the enterprise, justifying the costs and business benefits, creating visual models for requirement, and working together with the key stakeholders on the acceptance criteria.
While the traditional BA work occurred in the problem space, as Beal[*] outlines, BA work today occurs at varying levels within an organization ranging from high-level evaluation of business alternatives (irrespective of the underlying technical solutions) to documenting requirements from the point of view of a software system. BA helps in identifying the corporation's vision and strategy, aligning it with the business capabilities, creating use case models, writing user stories and features, undertaking modeling of business entities, and participating in acceptance testing. Therefore, BA plays a positive role in Agile projects (Unhelkar, 2010c), as it also influences enterprise architecture (Unhelkar, 2010b) and enables a synergy between business and information technology (IT) strategies (Unhelkar, 2010a).
CAMS formalizes these BA activities through its process map. BA activities in CAMS are made up of their roles description, practices, deliverables, metrics and measurements, tools and techniques, implementation, and maturity measures. BA in CAMS, especially in a large organization, is practiced through the combination of a BA framework, process maps, and Agile practices. Setting up of a "Center of Excellence for BA", while embedding BA within all areas of business operations provides added impetus for BA work within Agile projects and organizations.
At project level, business analysts play a key role in requirements elicitation, their analysis, workshop facilitation, and running focus groups. Operating from a holistic as well as pragmatic operational perspective, business analysts go deeper into modeling functional requirements employing use cases or user stories, implementing process models, and utilizing data models that employ high-level class diagrams. A BA skill set also includes translation and clarification of requirements as expressed by the users and as understood by the developers. This work leads to what the Agile values are promulgating—an all important buy-in from key stakeholders that would ensure successful implementation.
Pure Agile approaches usually eschew the detailed work carried out by business analysts because the methods based on the Agile Manifesto focus heavily on the actual solution (typically, the software product). In contrast with the emphasis of earlier planned methods on modeling of requirements and associated documentation, there is a relative shift away from the need for detailed modeling, in-depth documentation, and extensive planning in an Agile project. Composite Agile, however, welcomes the substantial aspect of planning, modeling, and documentation that is carried out by business analysts, while emphasizing Agile values such as transparency and collaboration within the activities of BA.
Examples of skills and competencies used by business analysts include questioning, listening, documenting, modeling, negotiating, facilitating, translating, and presenting. These competencies are put to use by the business analyst in modeling functional and nonfunctional requirements of the systems, aligning the requirements with the business capabilities and goals of the organization, being aware of the technical solutions and systems, and carrying out basic data modeling and testing tasks. Understanding the structure of an organization together with its processes, the relationships of an organization with external parties, and the ongoing balancing of risks enables the business analyst to understand an organization's current and desired future state.
- Identifying the needs of the organization: This needs analysis requires abstraction and imagination skills coupled with knowledge of the business ecosystem. For example, here BA can handle decisions related to potential mergers and acquisitions, exploring strategies for business transformation, and identifying long-term goals of the organization. This area of BA work is primarily external facing from the organization. Risks associated with these BA activities are high and these activities cannot be clearly defined. Agile values and principles that embrace uncertainty and change provide excellent support in undertaking business needs analysis. The customer-centric Agile principles provide that Agile support to business analysts when they undertake "needs identification" with CAMS.
- Understanding the capabilities of the organization: The analysis here delves into the overall capabilities of the organization. These are the capabilities that can satisfy the business needs identified earlier—or provide a limitation on those needs. This area of BA work is internal facing to the organization. Therefore, an in-depth internal understanding of the structure and dynamics of the organization is required in order to specify the capabilities. Analysis here includes modeling of existing systems and processes, ascertaining the gaps between current and future capabilities, and outlining the business options to fill those gaps. The architecture-centric Agile principles are used in CAMS to carry out this BA work. These principles enable focus on organizational-level constraints and limitations.
- Modeling the functionality of the organization: Analysis in this area of work requires detailed understanding of business architecture, business processes, and behavioral flows. Changing (reengineering) business processes and their impact on the rest of the organization, including people and technologies, is studied and executed in this area of work. This is where the developer-centric Agile principles come in handy and support the business analysts in CAMS.
- Modeling the operational requirements of the organization: Analysis here is the work required in understanding the requirements of BAU operations. This work explores and models the adherence to standards, use of metrics and measurements, dealing with service level agreements (SLAs) (including contract negotiations if the agreements are with third-party service providers), and ongoing maintenance and management of processes. Deployment of a system also requires an improved understanding of the nonfunctional requirements of the system. CAMS encourages business analysts to document and model the nonfunctional (operational) requirements by using the management-centric Agile principles in carrying out this area of work.
Taken from : The Art of Agile Practice: A Composite Approach for Projects and Organizations
No comments:
Post a Comment