The best way to guarantee success of any type of project is to have a strong experienced Project Manager and strong, experienced Business Analyst. These two individuals, working together from the beginning of the project, set the stage for success by accurately planning and clearly defining the expected outcomes. Both roles are necessary because they are each responsible for a different set of tasks and they each possess a set of skills that complement each other. The two roles are closely tied, but exactly what are the similarities and differences, and why does a project need both?
This course discusses the role of Business Analysts and the business analysis skills that a Project Manager should also possess. The business analysis skill set includes critical thinking skills, elicitation techniques and requirements analysis and management. Experienced project managers may already possess some of these skills, but may apply them differently than BAs. Understanding the complexity of the business analysis role will allow the PM and BA to work seamlessly and increase the project efficiency.
Scoping is one of the most critical areas on which the PM and BA should work together. In addition to the project scope, as defined in the PMBOK™, the BA is responsible for defining the scope of business analysis. When these two components of scope are combined they define the entire boundary of the project. In this course, Project Managers will learn how Business Analysts define the scope of the area for which they will be performing analysis. This is just one example of a task with separate roles for the PM and BA. Understanding their unique roles is critical to project success.
- Scope and analyze the area of analysis to clarify the complexity of the business analysis effort
- Define an excellent requirement and the difference between business and functional requirements.
- Learn the four core components necessary to analyze a business area.
- Be introduced to the most commonly used analysis techniques.
- Discuss alternatives for traceability of requirements.
- Plan an approach for analyzing, categorizing, and managing requirements. Determine the level of formality required and consider options for documenting and packaging requirements based on project type, priorities, and risks.
- Identify techniques and documentation options appropriate for the various software development approaches and project types (COTS, maintenance, business process improvement, new development, etc).
- Understand how validating requirements impacts the project and the components of software testing.
- Review business analysis requirements to improve the quality of your deliverables.
- What is business analysis?
- Review the major tasks performed by a business analyst.
- Discuss business analysis tasks in the context of various development methodologies.
- Define the essential skills needed to perform their tasks.
Project Participants and their Roles
- Identify typical project stakeholders and their roles.
- Discuss how the business analyst interacts with these participants.
Scoping the Project from the Business Analyst's Perspective
- Identify why the project is being done in order to ensure that the right analysis effort is being performed and that requirements efforts can be appropriately prioritized. This will help to ensure that the right solution is being identified to address the real problem.
- Get an introduction to enterprise analysis in order to understand the project in the context of the greater organization’s strategic goals. Identify the business stakeholders who will be involved in the project and how they will impact business analysis.
- Learn the context diagram technique to identify and scope “what is”, and more importantly, “what is not” to be analyzed. Analyze interfaces with people, other organizations, existing systems, and other software applications.
- Discuss how a business analyst should collect, organize, and maintain requirements for efficient analysis and reuse on future projects.
- Workshop – Scope the class case study project.
Defining and Detailing Requirements
- Understand what a requirement is and why it can be so confusing.
- Learn how to define "excellent” requirements.
- Understand the difference between analysis and design or "business" vs. "technological" requirements.
- Learn how software developers use requirements.
- Learn the appropriate presentation and level of detail necessary for various audiences.
- Learn the 4 core requirement components, what they describe, and why they are important. Breaking requirements into components forces more comprehensive analysis so that requirements are not missed.
- Data (entities, attributes)
- Process (Use Case)
- External Agent (actor)
- Business Rules
Requirements Analysis Techniques
- Learn the recommended approach to categorizing requirements. Why should requirements be categorized? Who uses each category? Why is it difficult to create distinct categories?
- Business Requirements
- Solution Requirements
- Functional Requirements
- Non-functional Requirements
- Transition Requirements
- Learn the concept of traceability of requirements.
- Discuss the most commonly used analysis techniques to organize and refine requirements. Business analysts should have expertise in many analysis techniques to be able to adapt to different types of projects and businesses.
- Structured textual templates (process descriptions, data descriptions, business rules, use cases, user stories)
- Entity relationship diagram
- Decomposition diagram
- Use case diagram and use case descriptions
- Workflow diagram (BPMN, ANSI, UML, swim lane)
- User interface prototyping
- Consider options and level of formality for packaging requirements and choosing the appropriate documentation techniques for each project.
- Workshop – Put into practice several of the analysis techniques on the course case study requirements.
Conducting a Requirements Review
- Learn how to improve your analysis through effective quality reviews.
- Learn how to conduct a requirements review: Who should participate? What are the required steps? How is a session conducted? What are the common challenges?
- Workshop - Analyze a sample requirements package.
- Identify missing or incomplete requirements.
- Identify potential test cases.
- Document issues and develop an approach for going forward.
Validate the Requirements
- Understand the role of business analysis in validating requirements and software testing.
- Introduction to software testing: Why is testing important? What is the business analyst's role in testing? What is the primary objective of testing? What are the phases and types of testing?
- Learn to verify that the business requirements are complete by identifying test cases.
- Practice identifying test cases and refining requirements based on quality assurance principles.
- Pulling it all together.
- Optional Workshop – Draft an initial Business Analysis Communications Plan for a CRM project.
- Develop an Action Plan with next steps on the student’s current project.
- Student questions/discussion topics.
Appendix - Overview of Application Development Processes and Standards
- Discuss various methodologies for application development.
- Learn which models are used in each approach:
- Information Engineering
- Object Oriented - UML
Appendix - Working with Virtual Teams
- Understand what constitutes a virtual team.
- Learn about virtual team structures and terminology.
- Learn about technology requirements for virtual teams
- Consider business analysis process changes for virtual team work
- Effectively utilize the people on the virtual team