
- •Foreword
- •Preface the purpose of this book
- •Intended audience
- •Book organization
- •About b2t training
- •Chapter 1: Possess a Clear Understanding of Business Analysis overview
- •What is business analysis?
- •Business Analysis vs. Software Development
- •The Role of the Business Analyst
- •Business Analyst Traits
- •History of Business Analysis
- •Where Do Business Analysts Come From?
- •From it
- •Case in Point
- •From Business
- •Case in Point
- •Where Do Business Analysts Report?
- •Who makes a great business analyst?
- •Case in Point
- •Business Analyst Suitability (- відповідність) Questionnaire
- •Suitability Questionnaire
- •Answers
- •Business Analyst Career Progression
- •Key business analysis terms/concepts
- •What Is a Requirement?
- •Iiba Business Analysis Body of Knowledge® (babok®) definition of requirement:
- •Core Requirements Components
- •Why Document Requirements?
- •Why Do Requirements Need to Be Detailed?
- •High-Level Requirements Are Interpreted Differently
- •Many Analysts Only Use Text to Document Requirements
- •Complex Business Rules Must Be Found
- •Requirements Must Be Translated
- •Case in Point
- •What Is a Project?
- •What Is a Product?
- •What Is a Solution?
- •Case in Point
- •What Is a Deliverable?
- •System vs. Software
- •It Depends
- •Business analysis certification
- •Iiba babok®
- •Summary of key points
- •Bibliography
- •Chapter 2: Know Your Audience overview
- •Establish trust with your stakeholders
- •With whom does the business analyst work?
- •Executive or Project Sponsor
- •Case in Point: Giving the Sponsor Bad News
- •Project Manager
- •Why Does a Project Need a Project Manager and a Business Analyst?
- •Project Manager and Business Analyst Skills Comparison
- •Tips for Those Performing Both Roles
- •Other Business Analysis Professionals
- •Subject Matter Experts and Users
- •Getting to Know Your Subject Matter Experts
- •A Manager Who Does Not Understand His or Her Employees’ Work
- •When the Expert Is Not Really an Expert
- •When the Expert Is Truly an Expert
- •The Expert Who Is Reluctant to Talk
- •The Expert Who Is Angry about Previous Project Failures
- •The Expert Who Hates His or Her Job
- •Quality Assurance Analyst
- •When “qa” Is a Bad Word in Your Organization
- •Usability Professional
- •It Architect
- •Case in Point
- •It Developer
- •Case in Point
- •The Developer Who Is Very Creative
- •The Developer Who Codes Exactly to Specs
- •The Developer’s Industry Knowledge
- •Data Administrator/Architect/Analyst
- •Database Designer/Administrator
- •Stakeholder Analysis
- •Balancing stakeholder needs
- •Case in Point
- •Understanding the Political Environment
- •Working with dispersed teams
- •Physical Distance
- •Time Zone Differences
- •Nationality/Cultural Differences
- •Language Differences
- •Using Team Collaboration Tools
- •Using a Shared Presentation
- •Sharing a Document
- •Summary of key points
- •Bibliography
- •Chapter 3: Know Your Project
- •Why has the organization decided to fund this project?
- •Business Case Development
- •Case in Point
- •Project Initiated Because of a Problem
- •Case in Point
- •Project Initiated to Eliminate Costs (Jobs)
- •Project Initiated by Outside Regulation
- •Project Initiated by an Opportunity
- •Projects for Marketing or Advertising
- •Case in Point
- •Projects to Align Business Processes
- •Strategic planning
- •Portfolio and Program Management
- •How Does Your Project Relate to Others?
- •Enterprise Architecture
- •Business Architecture
- •The Organizational Chart
- •Locations
- •Swot (Strengths, Weaknesses, Opportunities, Threats)
- •Products
- •Information Architecture
- •Application Architecture
- •Technology Architecture
- •Case in Point
- •Security Architecture
- •Communicating Strategic Plans
- •Project Identification
- •Project initiation
- •Naming the Project
- •Initiation
- •Approach or Methodology
- •Statement of Purpose
- •Objectives
- •Problems/Opportunities
- •Stakeholders
- •Business Risks
- •Items Out of Scope
- •Assumptions
- •Scope of the Business Area
- •Scoping the Analysis Area Using a Context-Level Data Flow Diagram
- •Area of Study
- •High-Level Business Processes
- •Scoping the Analysis Area Using a Use Case Diagram
- •Project Initiation Summary Revisit Scope Frequently
- •Scope Creep
- •Summary of key points
- •Bibliography
- •Chapter 4: Know Your Business Environment overview
- •Case in Point
- •How does a business analyst learn about the enterprise?
- •Read the Company’s Marketing Materials
- •Read the Company’s Financial Reports
- •Review the Corporate Strategic Plan
- •Seeing things from the business perspective
- •Case in Point
- •Prioritizing Requests
- •Case in Point
- •How a business analyst learns the business: elicitation techniques
- •Review Existing Documentation
- •Case in Point
- •Observation
- •Case in Point
- •Case in Point
- •Interviews
- •Surveys and Questionnaires
- •Facilitated Sessions
- •Why Use a Facilitated Session?
- •Challenges for the Business Analyst as the Facilitator
- •Focus Groups
- •Competitive Analysis
- •Interface Analysis
- •Learn the current (as is) system
- •Case in Point
- •What is a business process?
- •Essential Analysis
- •Perfect Technology
- •No Storage Limitations or Constraints
- •Case in Point
- •Completely Error-Free Processing
- •Case in Point
- •No Performance Limitations
- •Technology Is Available at No Cost
- •Case in Point
- •Summary of Perfect Technology
- •Essential Business Processes
- •Case in Point
- •What Is the Difference between a Process and a Use Case?
- •Describing a Process
- •Seeing Things from the Top and from the Bottom
- •Implementation Planning
- •Training
- •Rollout Plan
- •Schedule
- •Metrics
- •Procedures/Organizational Changes
- •Summary of tips for learning your business
- •Summary of key points
- •Bibliography
- •Chapter 5: Know Your Technical Environment overview
- •Case in Point
- •Why does a business analyst need to understand the technical environment?
- •Understand Technology, But Don’t Talk Like a Technologist
- •Case in Point
- •What does a business analyst need to know about technology?
- •Software Development/Programming Terminology
- •Does a Business Analyst Need to Know How to Develop Software?
- •Software Development Methodologies
- •Methodology/Software Development Life Cycle
- •Waterfall
- •Planning Phase
- •Analysis Phase
- •Design Phase
- •Construction Phase
- •Testing Phase
- •Information Engineering
- •Joint Application Development/Design
- •Rapid Application Development
- •Iterative/Incremental Development Approaches
- •Object-Oriented Analysis and Design
- •Rational Unified Process
- •Agile Development Approaches
- •An Organization’s Formal Methodology
- •Why Don’t Most Methodologies Detail the Business Analysis Approach?
- •An Organization’s Informal Standards
- •Technical Architecture
- •Operating Systems
- •Case in Point
- •Computer Networking
- •Data Management
- •Relational Database
- •Structured Query Language
- •Software Usability/Human Interface Design
- •Software Testing
- •Case in Point
- •Software Testing Phases
- •Unit Testing
- •Integration Testing
- •System Testing
- •Regression Testing
- •Case in Point
- •User Acceptance Testing
- •Post-Implementation User Assessment
- •Working with it Communicating with Developers
- •When to Get it Involved in a Project
- •It Corporate Culture
- •Summary of key points
- •Bibliography
- •Chapter 6: Know Your Analysis Techniques overview
- •Case in Point
- •Categorizing and presenting requirements Collecting and Managing Requirements
- •What Is a Requirement?
- •Categorizing Requirements
- •Case in Point
- •Why Categorize Requirements?
- •Developing a System for Organizing Requirements
- •Iiba babok Categories
- •A Recommended Categorization System
- •Business Requirements
- •Functional Requirements
- •Technical Requirements
- •Core requirements components
- •Overview of Core Requirements Components Data (Entities and Attributes)
- •Processes (Use Cases)
- •External Agents (Actors)
- •Business Rules
- •Case in Point
- •Core Requirements Component: Entities (Data)
- •Core Requirements Component: Attributes (Data)
- •Attribute Uniqueness
- •Mandatory or Optional
- •Attribute Repetitions
- •Core Requirements Component: Processes (Use Cases)
- •Core Requirements Component: External Agents (Actors)
- •Internal vs. External
- •Core Requirements Component: Business Rules
- •Finding Business Rules
- •Analysis techniques and presentation formats
- •Glossary
- •Workflow Diagrams
- •Why Use Workflow Diagrams?
- •Entity Relationship Diagramming
- •Why Build a Logical Data Model?
- •Business Process Modeling with the Decomposition Diagram
- •Why Build a Decomposition Diagram?
- •Use Case Diagram
- •Use Case Descriptions
- •Why Use Use Cases?
- •Case in Point
- •Prototypes/Simulations
- •Why Use Prototypes/Simulations?
- •Other Techniques Event Modeling
- •Entity State Transition/uml State Machine Diagrams
- •Object Modeling/Class Modeling
- •User Stories
- •Traceability Matrices
- •Gap Analysis
- •Data Flow Diagramming
- •Choosing the Appropriate Techniques
- •Using Text to Present Requirements
- •Using Graphics to Present Requirements
- •Using a Combination of Text and Graphics
- •Choosing an Approach
- •Case in Point
- •Business Analyst Preferences
- •Case in Point
- •Subject Matter Expert Preferences
- •Case in Point
- •Developer Preferences
- •Project Manager Preferences
- •Standards
- •Case in Point
- •As is vs. To be analysis
- •Packaging requirements How Formally Should Requirements Be Documented?
- •What Is a Requirements Package?
- •Case in Point
- •Request for Proposal Requirements Package
- •Characteristics of Excellent Requirements
- •Getting Sign-Off
- •Requirements Tools, Repositories, and Management
- •Summary of key points
- •Bibliography
- •Chapter 7: Increase Your Value overview
- •Build your foundation Skill: Get Started
- •Skill: Think Analytically
- •Skill: Note Taking
- •Technique: Brainstorming
- •Skill: Work with Complex Details
- •Case in Point
- •How Much Detail? Just Enough!
- •Case in Point
- •Time management Skill: Understand the Nature of Project Work
- •Skill: Work on the Most Important Work First (Prioritize)
- •Case in Point
- •Technique: Understand the 80-20 Rule
- •Technique: Timeboxing
- •Build your relationships and communication skills Skill: Build Strong Relationships
- •Skill: Ask the Right Questions
- •Case in Point
- •Skill: Listen Actively
- •Barriers to Listening
- •Listening for Requirements
- •Skill: Write Effectively
- •Case in Point
- •Skill: Make Excellent Presentations
- •Skill: Facilitate and Build Consensus
- •Skill: Conduct Effective Meetings
- •Prepare for the Meeting/Select Appropriate Attendees
- •Meeting Agenda
- •Conducting the Meeting
- •Tips for Conducting Successful Meetings
- •Follow-Up/Meeting Minutes
- •Skill: Conduct Requirements Reviews
- •How to Conduct a Review
- •Step 1. Decide on the Purpose of the Review
- •Step 2. Schedule Time with Participants
- •Steps 3 and 4. Distribute Review Materials and Have Participants Review Materials Prior to the Session
- •Case in Point
- •Step 5. Conduct the Review Session
- •Steps 6 and 7. Record Review Notes and Update Material
- •Step 8. Conduct a Second Review If Necessary
- •Typical Requirements Feedback Corrections
- •Missing Requirements
- •Unclear Sentences
- •Scope Creep
- •Keep learning new analysis techniques Technique: Avoid Analysis Paralysis!
- •Technique: Root Cause Analysis
- •The Five Whys
- •Case in Point
- •Skill: Intelligent Disobedience
- •Continually improve your skills
- •Skill: Make Recommendations for Solutions
- •Understand the Problem
- •Imagine Possible Solutions
- •Case in Point
- •Evaluate Solutions to Select the Best
- •Skill: Be Able to Accept Constructive Criticism
- •Case in Point
- •Skill: Recognize and Act on Your Weaknesses
- •Technique: Lessons Learned
- •Business analysis planning
- •Technique: Map the Project
- •Examples of Mapped Projects
- •Skill: Plan Your Work
- •Technique: Assess Business Impact
- •Case in Point
- •Factors That Determine Business Impact
- •Case in Point
- •Technique: Conduct Stakeholder Analysis
- •Technique: Plan Your Communications
- •Skill: Choose Appropriate Requirements Deliverables
- •Skill: Develop a Business Analysis Task List
- •Skill: Estimate Your Time
- •Summary of key points
- •Bibliography
Technique: Root Cause Analysis
Root cause analysis is a technique used to assess the symptoms of a problem and find the ultimate cause. Often, problems are not clearly studied and inappropriate solutions are recommended. An analyst should not make a solution recommendation until he or she understands the underlying cause of the problem. Finding the root cause is the first step in solving a problem. The fishbone diagram (see Figure 7.1) is one visual technique for structuring root cause analysis. Major categories of possible causes are connected to the “backbone” of the fishbone diagram. Brainstorm in each category and document the causes in each category. Another technique for root cause analysis is the five whys.
Figure
7.1: Sample
Fishbone Diagram
The Five Whys
The why question is one of the most valuable tools in the BA’s tool kit. It is used to help dig down to the root cause or underlying reason for a problem or opportunity. The why question can be used at any point in analysis work and is often used to help a business or IT stakeholder better explain their requirement. The five whys technique recommends that the analyst ask why in response to reasons five times to get to the root reason. Sometimes the root cause is found after only a couple of whys (GOAL/QPC, 2000).
|
Case in Point
“I want a red Ferrari!” Why? “Well, it looks good.” But why? “Because I would look good in it!” But why? “My friends would be very impressed if they saw me driving it.” Why?
“Because it is a very expensive car so, they would know that I must have sold a large number of books!” Why is that important? “If I sold a large number of books, then my book must have contained some really important information, so I must be very smart!” So—you want a Ferrari so that your friends will know that you are very smart? “When you put it that way, I don’t want the Ferrari so much anymore.”
|
|
Although the why question is very powerful and useful, you must use it carefully. It can be very annoying to keep asking the same question over and over again. When you ask the why question the first time, you need to listen carefully to the answer. Does this answer seem to be the true reason? In many cases, the question needs to be asked only once to get to the correct answer. If you feel there is more information, you need to elicit using different words (for example, “For what reason do you . . .?”) or pose a scenario question (“What would happen if . . . ?”). Varying the type and format of questions will be less tedious for stakeholders. Explain the technique to the stakeholders to help them understand your line of questioning.
Uses for the five whys include:
Get to the true reason/objective for a project
Get to the root cause of a problem
Get to the true reason for a requirement
Find the true essential business process (see Chapter 4)
The following two scenarios are projects where the monetary justification may not be initially obvious. The five whys will be used to get to the root cause of the project.
Scenario A
Project Statement of Purpose
The purpose of this project is to upgrade our XYZ payroll software from version 1.0.3 to version 1.1.0. This upgrade is being undertaken because the vendor of the XYZ software will discontinue support of version 1.0.3 at the end of the calendar year. All customized screens and reports that are currently available must be available in the new version. New functionality must be analyzed and considered. If any new functionality will be implemented, user procedures must be updated and users must be trained. (See Table 7.3 for the why questions and answers.)
Table 7.3: Five Whys for Scenario A |
||
|
Question |
Answer |
Why #1 |
Why do you think the organization is funding this project? |
The software vendor is discontinuing support of the current version of the software. |
Why #2 |
Why does it matter if the vendor discontinues support? |
Because if the vendor does not support the soft-ware, it will have to be supported internally or another software package must be purchased and implemented. |
Why #3 |
Why not maintain it internally? |
No internal developers (current employees) are familiar with the underlying architecture or the development environment. |
Why #4 |
Why not hire experienced developers or train internal developers in this technology? |
Because developers with this experience are rare and very expensive. Training developers would also be expensive and time consuming. |
Ah ha! It only took four whys to “find the money” in this case. Although undertaking this project is going to cost the organization some money, the expectation is that if the project is not funded, the organization will spend more money on developers. Thus the underlying justification for the project is to save costs.
Notice that the project is not being done to provide more functionality or better usability. Understanding and remembering that this project is focused on saving money are critical. It may be tempting to add functionality or improve usability “while we are making this change anyway,” but those tasks do not support the fundamental objective of the project. Always remember the reason for project initiation.
Teams sometimes try to add features and functionality that were not requested. The phrase gold plating was used by McConnell (1996) to describe this behavior. This is not a positive activity for an organization. Deliver on business needs as quickly and inexpensively as possible.
Scenario B
Project Statement of Purpose
Convert the customer database from the ABC DBMS to the XYZ DBMS. This conversion will not have any impact on the user interface to the application software. The change should be transparent to the software users. (See Table 7.4 for the why questions and answers.)
After asking why five times, the BA uncovers the true reason for the project: increase sales. “Buy more products” translates to receive more revenues, which translates tomore profit! If you go back to the statement of purpose, you won’t see anything about increasing sales, but this is the underlying business driver. You may consider revising the statement of purpose when you discover the true “why.”
Table 7.4: Five Whys for Scenario B |
||
|
Question |
Answer |
Why #1 |
Why do you think the organization is funding this project? |
The XYZ DBMS is a more current technology. |
Why #2 |
Why do we want to be using a more current technology? |
Because we want our systems to be state-of-the-art. |
Why #3 |
Why do we want our systems to be state-of-the-art? |
Because we don’t want customers or outside competitors to think that we are using old technology. |
Why #4 |
Why don’t we want customers or outside competitors to think that we are using old technology? |
Because we want to be perceived as being on the leading edge of technology. |
Why #5 |
Why do we want to be perceived as being on the leading edge of technology? |
Because if we are perceived as having lead-ing-edge technology, our customers will buy more products from us. |