Course Taxonomy: Enterprise & Product Agility

Introduction to Agile

Part 1: Why Agile

  • What are the factors driving business turbulence and need for agility.
  • Understanding the changing mindset
  • What a Burning Platform is and how it ties to the need for change.
  • Why change may be needed.
  • The difference between traditional delivery and Agile delivery.
  • Why implementing Agile provides benefits beyond traditional delivery.
  • Benefits of adopting Agile.

Part 2: Agile Foundations

  • The 4 Agile Values in the Agile Manifesto.
  • The 12 Agile Principles that guide how we do our work.
  • The Agile Mindset.

Part 3: Agile Teams

  • That an Agile team is a system.
  • Scrum Team Roles.
  • Levels of Team Maturity

Part 4: Agile Methodologies

  • The value of Lean and the relationship to Agile.
  • Differences between iterative and continuous flow work.
  • The work drives the method.
  • How Agile teams embrace Continuous Planning.
  • Products, Product visions and users
  • Key Scrum events for planning and execution.
  • Review User Stories
  • Understanding Minimum Viable Product
  • The 3 core Scrum artifacts: Product Backlog, Sprint Backlog, Product Increment.
  • The importance of adapting and continuous improvement.
  • The benefits of conducting a Review at the end of each Sprint.
  • The Retrospective, your most powerful agile tool.
  • Differences between Scrum and Kanban, and complimentary capabilities.
  • The benefits of limiting the Work in Progress.
  • Stop starting and start finishing!

Part 5: Agile Adoption

  • Barriers to agile adoption.
  • Thinking about knowledge growth using Shu Ha Ri.
  • Realizing a suitable agile culture
  • Kotter Framework for organization change.
  • Ways to scale agile across large projects and portfolios.

Implementing SAFe® with Certified SAFe® Practice Consultant (SPC)

Leading SAFe® – Days 1 and 2

  • Introducing the Scaled Agile Framework (SAFe)
  • Embracing a Lean-Agile Mindset
  • Understanding SAFe Principles
  • Experiencing Program Increment (PI) Planning
  • Exploring, executing, and releasing value
  • Leading a Lean-Agile Enterprise
  • Empowering a Lean Portfolio
  • Building Large Solutions

Implementing SAFe® – Days 3 and 4

  • Reaching the SAFe Tipping Point
  • Designing the Implementation
  • Launching an ART
  • Coaching ART Execution
  • Extending to the Portfolio
  • Sustaining and Improving
  • Becoming a SAFe 6 Practice Consultant (SPC)

Leading SAFe® with Certified SAFe® Agilist (SA)

Digital Age & Business Agility

  • Thriving in the digital age
  • SAFe© as an Operating System for Business Agility
  • Core competencies of Business Agility

Lean-Agile Leaders

  • Lean-Agile Mindset
  • SAFe Core Values
  • SAFe Lean-Agile Principles

Team and Technical Agility

  • Cross-functional Agile Teams
  • Built-in Quality
  • Organizing around value with ARTs

Agile Product Delivery

  • Customer-centric culture
  • Design Thinking
  • ART Backlog and WSJF
  • PI Planning
  • Develop on Cadence; Release on Demand
  • Continuous Delivery Pipelines with DevOps

Lean Portfolio Management

  • SAFe Portfolio
  • Strategic Themes
  • Portfolio canvas
  • Epic hypothesis statements
  • Traditional and Lean budgeting approaches
  • Portfolio Kanban

Leading the Change 

  • Lead by example
  • Lead the change
  • SAFe Implementation Roadmap 

Fundamentals of Software Testing

Part 1: Introduction and Overview

Establishes a foundation for the course, provides a workable definition of software quality and shows how testing fits into the overall quality process.

Part 2: What to Test and How to Test it — The Universal Testing Method

Testers follow the same basic process that scientists use; we follow the principles of experimentation and measurement. In this course, we map your testing method back to those principles and show how, at each step in your testing, you’re making complex decisions about what to test and how to test it. Utilizing a combination of skills, tactics, practices, and tools – this section helps build a base that testers in any context (of any skill level) can apply to solve testing problems.

  1. Model the Testing Space. Compose, describe and work with visual models of the software to identify relevant dimensions, variables, and dynamics so you can develop an effective test strategy.
  2. Determine Test Coverage. Understand a variety of common measures of test coverage and choose the most appropriate ones for each project; determine the scope of testing; establish a structure to track test coverage
  3. Determine Test Oracles. Identify the sources of truth to determine whether the application has passed or failed tests; review common formal and heuristic oracles 
  4. Determine Test Procedures. Define what test procedures and test cases are; identify common test procedure types; learn how to document test procedures in a practical, efficient manner
  5. Configure the Test System. See how to ensure you have everything needed to support testing; discuss common challenges to test configuration; consider test lab requirements and realities
  6. Operate the Test System. Learn how to manage tester contact with the application under test (AUT); discuss different methods of interaction with the system to address different testing objectives; identify common artifacts and practices related to test operation
  7. Observe the Test System. Learn what empirical data to capture about the application under test and how to preserve testing interactions for review and reproducibility; consider common tools used to assist with test observation; identify common problems and human tendencies related to observation
  8. Evaluate Test Results. Discuss possibilities and probabilities related to test results (not every test failure is a bug!); identify typical test result evaluation tasks; consider performance test results interpretation; learn key factors related to defect communications
  9. Report Test Results. Learn how to make credible, professional reports of testing results and testing progress that address the varied needs of your target audiences; identify guiding principles for report design; review best practices and examples for defect reporting, progress status reporting, and quality statistics reporting

Part 3: Test Case Strategies

The heart of good testing is coming up with good test cases.  In this section, we will define what makes test cases “good”, and discuss these strategies for identifying test cases in specific contexts:

  1. White Box strategies
  2. Black Box strategies
  3. Input and data-based strategies
  4. User interface oriented strategies
  5. Business Process flow strategies
  6. Strategies based on your personal and organizational experiences

Part 4: Common Phases of Testing

Different testing activities take place as the software progresses through its life cycle. (Agile testers perform these same testing activities, even though they are not project phases.) This section explains the common phases of software testing, including the purpose of each, who normally performs it, and the typical types of tests that are done.

Test phases or types discussed:

  1. Unit and Software
  2. Integration
  3. System and System Integration
  4. Product Readiness
  5. Regression
  6. User Acceptance

Part 5: Approaches to Testing

Different approaches to testing are used to address different testing objectives and different project conditions. Some approaches are more formal, lengthy, traceable, and reproducible. Others are more free-form, quicker, less traceable, and less reproducible. The range of such approaches forms a continuum from which testers select the optimal combination for a given project. The best selection of approaches addresses the needs for both positive and negative testing.

  1. The Testing Approach Continuum
  2. Scripted Testing
  3. Freestyle Testing
  4. Middle-Ground (Charters, Checklists, Scenarios)

Part 6: Non-Functional Testing

Without question, functional testing is a must-have for software quality. However, there’s more to the picture than that. This section describes several key types of non-functional testing and identifies, what their scope is, and what techniques or best practices apply. 

  1. Performance
  2. Usability
  3. Accessibility
  4. Security
  5. Portability
  6. Localization

Part 7: Platform Specialization

Software is not just on the desktop—it runs on numerous platforms, and it all needs to be tested. This section takes multiple platforms into consideration and identifies each platform’s unique challenges, and the best testing approaches for each given platform.

  1. Web-Based
  2. Mobile
  3. SOA (Service-Oriented Architecture)
  4. Telephony and Voice
  5. DW/BI (Data Warehouse and Business Intelligence)
  6. COTS/MOTS – Package Implementations (COTS)

Part 8: Test Automation — Bonus Section

There have been many organizations that have set out to implement automation testing in their projects, and many of them have failed. This section identifies the different types of tools and practices that fall into the “automation” category and helps set realistic expectations and goals for automated testing. Learn how to optimize your automation testing investment and plan properly for long-term success. This is a bonus section that is discussed as time permits.

  1. Automated Test Tools
  2. System Monitor Tools
  3. File/Database Comparison Tools
  4. Static Analysis Tools

Part 9: Behavior Driven Development (BDD) & Test Driven Development (TDD) — Bonus Section

BDD and TDD are related approaches to software development that came out of the Agile movement and have proven to have a significant positive impact on software quality. This section provides an introduction to the concepts so testers can be prepared to adopt them together with developers and other project members using iterative development methods. This is a bonus section that is discussed as time permits.

  1. Test-Driven Development activities
  2. Behavior-Driven Development activities
  3. Tools for Different Languages

Part 10: Managing Testing Projects

Whether you lead a team of testers or work as the lone tester on a project, effectively managing the testing work is key to your ability to successfully test the software on time with the resources at hand.  In this section, we will address the basics of managing your work in a way that is relevant to individual contributors and lead leads alike.

  1. Planning for Testing (Universal Testing Method Steps 1-4)
  2. Requirements Traceability
  3. Test Resource Needs
  4. Testing Risks and Issues
  5. Testing Entry and Exit Criteria
  6. Measuring Testing Progress

Fundamentals of Secure Application Development

Part 1: Secure Software Development

  1. Assets, Threats & Vulnerabilities
  2. Security Risk Analysis (Bus & Tech)
  3. Secure Dev Processes (MS, BSI…)
  4. Defense in Depth
  5. Approach for this course

Introductory Case Study

Part 2: The Context for Secure Development

  1. Assets to be protected
  2. Threats Expected
  3. Security Imperatives (int&external)
  4. Organization's Risk Appetite
  5. Security Terminology
  6. Organizational Security Policy
  7. Security Roles and Responsibilities
  8. Security Training for Roles
  9. Generic Security Goals & Requirements

Exercise: Our Own Security Context

Part 3: Security Requirements

  1. Project-Specific Security Terms
  2. Project-Related Assets & Security Goals
  3. Product Architecture Analysis
  4. Use Cases & MisUse/Abuse Cases
  5. Dataflows with Trust Boundaries
  6. Product Security Risk Analysis
  7. Elicit, Categorize, Prioritize SecRqts
  8. Validate Security Requirements

Exercise: Managing Security Requirements

Part 4: Designing Secure Software

  1. High-Level Design
    1. Architectural Risk Analysis
    2. Design Requirements
    3. Analyze Attack Surface
    4. Threat Modeling
    5. Trust Boundaries
    6. Eliminate Race Objects
  2. Detail-Level Design
    1. Secure Design Principles
    2. Use of Security Wrappers
    3. Input Validation
    4. Design Pitfalls
    5. Validating Design Security
    6. Pairing Mem Mgmt Functions
    7. Exclude User Input from format strings
    8. Canonicalization
    9. TOCTOU
    10. Close Race Windows
    11. Taint Analysis

Exercise: A Secure Software Design, Instructor Q and A

Part 5: Writing Secure Code

  1. Coding
    1. Developer guidelines & checklists
    2. Compiler Security Settings (per)
    3. Tools to use
    4. Coding Standards (per language)
    5. Common pitfalls (per language)
    6. Secure/Safe functions/methods
      1. Stack Canaries
      2. Encrypted Pointers
      3. Memory Initialization
      4. Function Return Checking (e.e. malloc)
      5. Dereferencing Pointers
    7. Integer type selection
      1. Range Checking
      2. Pre/post checking
    8. Synchronization Primitives
  2. Early Verification
    1. Static Analysis (Code Review w/tools)
    2. Unit & Dev Team Testing
    3. Risk-Based Security Testing
    4. Taint Analysis

Exercise: Secure Coding Q and A

Part 6: Testing for Software Security

  1. Assets to be protected
  2. Threats Expected
  3. Security Imperatives (int&external)
  4. Organization's Risk Appetite
  5. Static Analysis
  6. Dynamic Analysis
  7. Risk-Based Security testing
  8. Fuzz Testing (Whitebox vs Blackbox)
  9. Penetration Testing (Whitebox vs Blackbox)
  10. Attack Surface Review
  11. Code audits
  12. Independent Security Review

Exercise: Testing Software for Security

Part 7: Releasing & Operating Secure Software

  1. Incident Response Planning
  2. Final Security Review
  3. Release Archive
  4. OS Protections:
    1. Address Space Layout Randomization
    2. Non-Executable Stacks
    3. W^X
    4. Data Execution Prevention
  5. Monitoring
  6. Incident Response
  7. Penetration Testing

Exercise: A Secure Software Release

Part 8: Making Software Development More Secure

  1. Process Review
  2. Getting Started
  3. Priorities

Exercise: Your Secure Software Plan

Docker Containerization Boot Camp

Students should bring laptops to class. This 3-day Docker training workshop is conducted as a continuous hands-on lab. From the initial install to the multi-container application stack, you will learn Docker through real-world practice.

Part 1: Introduction

  1. What can you use Docker for?
  2. A logical segregation of duties
  3. The relationship between Docker and SOA
  4. How Docker fits into the development lifecycle
  5. How Docker ensures consistency from development through UAT and staging, and on to production
  6. Example use cases of Docker in the real world

Part 2: The components of Docker

  1. Underlying technology
  2. Docker client and server
  3. Filesystem images
  4. Registries
  5. Containers
  6. Networking

Part 3: Getting set up to start using Docker

  1. Getting set up on Windows
  2. Getting set up on the Mac
  3. Trying out our first container
  4. Getting set up for production on Linux
  5. Tweaking your production environment for best performance
  6. User interfaces for Docker management

Part 4: Container management

  1. Container naming
  2. Starting and stopping containers
  3. Attaching to a container
  4. Seeing what is happening in a container
  5. Running a process inside a container
  6. Daemonizing a container
  7. Automatic container restarts
  8. Deleting containers when we are finished with them

Part 5: Docker images and repositories

  1. Docker images explained
  2. How Docker images work
  3. Getting a list of images
  4. Searching for images on a repository
  5. Pulling an image
  6. Creating our own image
  7. Specify an image in a Dockerfile
  8. Building Dockerfile images
  9. Using the build cache for templating
  10. Viewing the image we have created
  11. Launching a container using our new image

Part 6: Registries

  1. What is the Docker hub?
  2. Pushing images to the Docker hub
  3. Running your own internal Docker registry
  4. Testing the internal registry

Part 7: A simple use case

  1. A single container static website
  2. Setting up a container running Nginx
  3. Launching our static site
  4. Updating our static site from git or bitbucket

Part 8: Continuous integration with Docker

  1. How Docker enables and supports CI
  2. Getting set up for Jenkins and Docker
  3. A basic Jenkins job
  4. Multi-configuration jobs
  5. Drone
  6. Shippable

Part 9: A more complex use case: Multi container application stacks

  1. A container for our NodeJS application
  2. A base image for our Redis containers
  3. Creating our Redis back-end cluster
  4. Capturing logs
  5. Managing containers

Part 10: Docker orchestration and service discovery

  1. Getting set up with Fig
  2. Configuring the fig.yml file
  3. How to use Fig
  4. Console
  5. Running a Console cluster

Part 11: Integrating with configuration management

  1. Managing your Docker hosts with Chef / Puppet / Ansible
  2. Building containers using configuration management tools
  3. Managing running containers with configuration management

Part 12: Docker and DevOps

  1. Enabling collaboration with Docker
  2. Using Docker to streamline workflow
  3. Using Docker's version control capabilities to enable experimentation and learning
  4. Docker's role in the overall IT value chain
  5. Creating value and quality with Docker
  6. Enabling smoother flow of work

Part 13: Course conclusion, open discussion, and Q&A

  1. Going back to work with a plan
  2. What was not covered in this class
  3. Q&A with the instructor
  4. Goodbyes

DevOps Implementation Boot Camp (ICP-FDO)

Part 1: Introduction

1.      DevOps Defined

  • DevOps (Then and Now)
  • CI/CD
  • Infrastructure as Code
  • BizDevOps
  • DevSecOps
  • AIOps
  • DataOps

2.     High-Performance IT Organizations

  • Elite Performers
  • Use of the Cloud
  • Work-Life Balance
  • Optimized Change Review

3.     Origins and History of DevOps

  • The Quality Movement and W Edwards Deming
  • The Lean Movement and the Toyota Production System
  • The Agile Movement – Mindset, Value, Principles & Practices
  • The Continuous Delivery Movement

4.     Argument for DevOps

  • Business Value of DevOps
  • Net Effect of DevOps
  • Exercise: Argue for the value of DevOps in your organization

Part 2: Maturing a DevOps Practice in the Enterprise

1.      CALMS – The 5 DevOps Principles

2.     The 5 Cultural Challenges

3.     5 Cultural Dimensions

4.     Value Stream Mapping

  • Value Stream Definition and Examples
  • Exercise: Choose and Map a Case Study Value Stream
  • Analyze: Value Stream Lead Time, Quality, Involvement
  • Exercise: Analyze a Value Stream

Part 3: Your DevOps Journy – Optimize Flow

1.      Principles of Flow

  • 6 Principles of Flow from the DevOps Handbook
  • 8 Principles of Continuous Delivery from the Continuous Delivery book
  • Exercise: Apply Principles to your Case Study Value Stream

2.     Infrastructure as Code

3.     Infrastructure & Application Configuration Management

  • Configuration Management Tools
  • Exercise: Configuration Management in your Case Study Value Stream

4.     Deployment Pipeline

  • Deployment Pipeline Stages and Tools
  • Deployment Orchestration Tools
  • Deployment Pipeline: Everything in Version Control
  • Exercise: Deployment Pipeline in your Case Study Value Stream

5.     DevOps Quality Management

  • Quality Foundations
  • Quality Principles
  • Quality Practices
  • Test Automation Architecture
  • Test Automation Pyramid
  • Strategies for Managing Test Data
  • Code Analysis Tools
  • Automated Testing Tools
  • Exercise: DevOps Quality Management in your Case Study Value Stream

6.     CI/CD

  • Continuous Integration
  • Continuous Delivery
  • Exercise: CI/CD in your Case Study Value Stream

7.     Database Continuous Integration (DBCI)

  • Exercise: DBCI in your Case Study Value Stream

8.     Application Management Strategies

9.     Application Architecture – SOA, Microservices, Strangler Pattern

10.  Infrastructure Architecture – Virtualization & The Cloud

11.    Containerization

12.  Exercise: Optimize Flow in Your Case Study Value Stream

Part 4: Your DevOps Journey – Amplify Feedback

1.      Objective & Principles of Feedback

2.     Telemetry Definitions & Concepts

  • Telemetry Principles
  • Exercise: Telemetry Principles in your Case Study Value Stream
  • Integrating Security into Production Telemetry
  • Telemetry Layers & Levels
  • Ensuring Effective Alerts
  • System Monitoring, Log Agregation, and Alerting Tools
  • DevOps Metrics

3.     Advanced uses of Telemetry

  • Using Telemetry to Anticipate Problems
  • Feedback for Safe Deployment of Code
  • Developers Follow Their Apps Downstream
  • Hypothesis-Driven Development and A/B Testing
  • Exercise: Telemetry in your Case Study Value Stream

4.     Change Review and Coordination

5.     Exercise: Amplify Feedback in Your Case Study Value Stream

Part 5: Your DevOps Journey – Continual Learning & Experimentation

1.      Learning Culture

  • Blameless Postmortems
  • Responses to Failure
  • Blameless Postmortems

2.     Knowledge Sharing

3.     Innovation Culture

  • Institutionalize the Improvement of Daily Work
  • Encouraging Experimentation
  • Holding Learning and Improvement Events (Hackathons, Kaizen Blitzes, Rehearsing Large-Scale Failures, Fault Injection)

4.     Role of Leadership

5.     Exercise: Learning & Innovation Culture in your organization

Part 6: Planning Your DevOps Journey

1.      Cultural challenges

2.     Organizational challenges

3.     Transformation Patterns You Can Follow

  • Lean Startup Teams
  • Collaboration Tools
  • Automate Everything You Can
  • Reserve Time for Improvement

4.     Planning DevOps Transformation

5. Exercise: Your DevOps Action Plan

Certified ScrumMaster®(CSM®)

Part 1: Scrum Theory

  • Empiricism and the three empirical pillars
  • Benefits of an Iterative and Incremental approach
  • The Scrum Framework
  • Scrum Values
  • Scrum alignment to the Agile Manifesto

 

Part 2: The Scrum Team

  • The responsibilities of the Scrum Team
  • The responsibilities of the Product Owner, Developers, and Scrum Master
  • Single Product Owners
  • Product Owners own the Product Backlog
  • Delivering an Increment
  • Benefits of a cross-functional and self-managing Scrum Team

 

Part 3: Scrum Events and Activities

  • Benefits of Timeboxing
  • Purpose of a Sprint
  • Define and perform Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective
  • Product Backlog Refinement
  • Inspecting and Adapting events
  • When to cancel a sprint
  • Daily Scrum is not a status meeting

 

Part 4: Scrum Artifacts and Commitments

  • Purpose of the Product Backlog, Sprint Backlog, Increment
  • The commitments of Product Goals,Sprint Goals, Definition of Done
  • Product Backlog emergence
  • Attributes of a Product Backlog
  • Sprint and Increment relationship
  • Evolution of a Definition of Done
  • Multiple Teams working on one Product Backlog

 

Part 5: Scrum Master Core Competencies

  • Facilitation
  • Facilitating decision making
  • Teaching
  • Coaching
  • Mentoring

 

Part 6: Service to Scrum Team, Product Owner and Organization

  • How does a Scrum Master serve the Scrum Team
  • Explaining Technical Debt
  • Understanding development practices to improve quality and reduce technical debt
  • Supporting the Product Owner
  • Organizational impediments that affect Scrum Teams
  • Techniques for resolving impediments
  • Why are there no Project managers in Scrum?

 

CBAP Certification Prep Boot Camp

Part 1: Welcome to Boot Camp

We'll start the CBAP® Certification Prep Boot Camp with an overview of what "Certified Business Analysis Professional® " means—what it is and what it isn't. Under your instructor's guidance, you'll have a chance to discover some of the most important philosophies and aspects of the CBAP® examination, setting the tone for this fast-paced and interactive learning experience. And to get you ready for the workshop to come, we'll give you a preview of the CBAP® course content and our process for delivering a valuable learning experience.

  1. Components of the CBAP® certification
  2. Introduction to the CBAP® examination
  3. Philosophy of the exams
  4. Overview of CBAP® exam content
  5. Overview of the CBAP® Prep Boot Camp

Part 2: CBAP® Certification: The Credentials

Armed with a sense of what the certification is and a taste of the examination experience, you and your fellow CBAP course participants will then receive a guided tour of the CBAP® certification. We'll explore the certifying body—the International Institute of Business Analysis (IIBA)—and the requirements for certification. The CBAP course will take you through the application and examination processes, including tips, tools, and best practices for packaging your Business Analyst experience and education on the application. Next, we'll familiarize you with the professional standards and ethics of the CBAP® certification. And we'll conclude this module with a look at how the examination is structured and show you the best way to improve the efficiency and effectiveness of your exam preparation.

  1. The International Institute of Business Analysis (IIBA)
  2. The CBAP® certification
  3. The certification application processes
  4. The examination processes
  5. The professional code of conduct
  6. The examination structures

Part 3: Business Analysis & Key Concepts Overview

Before we can focus on the Body of Knowledge, we will need to cover critical foundational material on the topic of business analysis. We'll start by providing an overview, including common terms, concepts, techniques, and models that all business analysts must know to pass the CBAP® examination. During this overview, you'll have numerous chances to demonstrate your own knowledge, learn from your fellow Boot Camp participants, and gain useful insights from your instructor. You'll also practice exam questions to test your mastery, help you identify weaknesses, and effectively plan for further study on these important and often underemphasized exam topics.

  1. What is business analysis?
  2. The role and competencies of the business analyst
  3. The Systems/Software Development Life Cycle (SDLC)
  4. Project & Requirements Life Cycle Management
  5. Project roles and competencies
  6. Requirements engineering basics
  7. Levels of requirements, tool, and techniques
  8. Perspectives, systems, processes, and actors

Part 4: The Business Analysis Knowledge Areas

At the heart of IIBA certification is demonstrated knowledge of the Business Analysis Body of Knowledge® v 3.0 (BABOK®). In this section of the Boot Camp, we'll dive deeply into each Knowledge Area. As we cover each of these six subject-matter areas, we'll share the essential information you need to know for the CBAP examination. You'll come to understand the structure of the BABOK® and discover some practical tips for remembering what you need to know. And of course, the Boot Camp will help you continue to increase your comfort and confidence with the examinations through realistic practice exercises. Combined with the opportunity to discuss your questions, these activities will help you further refine your personalized preparation plan.

  1. Business Analysis Planning and Monitoring
  2. Elicitation & Collaboration
  3. Requirements Life Cycle Management
  4. Strategy Analysis
  5. Requirements Analysis & Design Definition
  6. Solution Evaluation

Part 5: Underlying Competencies

Having attained a deep knowledge of the BABOK® Knowledge Areas, you must still understand and know critical business analysis fundamentals. This module takes a detailed, structured look at the underlying competencies you need to know for the CBAP® certification.

  1. Analytical Thinking and Problem Solving
  2. Behavioral Characteristics
  3. Business Knowledge
  4. Communication Skills
  5. Interaction Skills
  6. Tools and Technology

Part 6: Techniques

A Business Analyst employs a variety of tools and techniques during a project to ensure successful results. Throughout the course, we will examine and study a number of these tools and techniques and learn the best time and place in which to use each.

  1. Elicitation & Collaboration techniques
  2. Diagramming and modeling techniques
  3. Root cause analysis techniques
  4. Acceptance and evaluation definition techniques
  5. Post-project assessment techniques

Part 7: Perspectives

Most projects use one or more perspectives that provide focus to the business analyst for tasks and techniques. We will examine several perspectives identified in the BABoK.

  1. Agile
  2. Business Intelligence
  3. Information Technology
  4. Business Architecture
  5. Business Process Management

Part 8: A Guide to Success on the Exam

By this point in the Boot Camp, you'll have a clear understanding of the application and examination processes. Using our specially developed tools, you'll be ready to map out your experience and knowledge and know what you personally need to do to complete a successful application. You'll also have an individualized study plan to help you prepare efficiently and effectively for the examination. All that remains are a few final tips to improve your examination experience. In this final Boot Camp section, you'll get our best tips and tricks and have a chance to practice with a sample examination. As we wrap up our four-day journey, you'll put the finishing touches on your personal exam preparation plan so that you can quickly and easily study for your own examination.

  1. Review of key topics
  2. Key tips to remember for the exam
  3. Final test hints and tricks
  4. Practice examination
  5. Your personal preparation plan

Business Analyst Boot Camp

Part 1: The Business Analysis Profession

It's only in recent years that business analysis has begun to be recognized as a profession in its own right. While people have been performing the Business Analyst role in organizations for several decades, differing definitions of the role abound. We'll start the workshop by exploring some of them, as well as gaining a clear understanding of where the industry appears to be heading and some emerging standards for the profession.

  1. IIBA® and the BABOK®; The PMI® Guide to Business Analysis and the Business Analysis For Practitioners: A Study Guide
  2. What is Business Analysis?
  3. Business and Solution Domains—how they relate
  4. Key roles in requirements development in SDLC and Agile projects
  5. The competencies of the Business Analyst
  6. Distinguishing novice and expert Business Analysts
  7. Effective communication
  8. Six important BA skills

Practice sessions:

  • Business analysis definition
  • Competencies of a business analyst

Part 2: The Business Case for Good Requirements

IT projects have especially high failure rates, and evidence points to problems with defining requirements as one primary cause. This section presents an overview of the challenges inherent in projects in general, and specific problems typically encountered with IT project requirements. We also examine some common terms and concepts in requirements engineering.

  1. What is a good requirement?
  2. Requirements versus design
  3. Requirements attributes—who needs them?
  4. Key practices that promote excellent requirements
  5. The cost of requirements errors
  6. Requirements engineering overview

Practice sessions:

  • Characteristics of good requirements
  • Explore the differences between requirements and design
  • Evaluate requirements for effectiveness
  • Factors to improve project success

Part 3: Foundations of Requirements Development

In order to increase project success, we need to implement a repeatable, scalable strategy for effective business analysis. In this section, we'll explore a framework in which good business analysis occurs and we'll discuss ways to maximize project success using this framework.

  1. Key terms in requirements development
  2. A strategy for analyzing systems
  3. Common requirement-classification schemes
  4. The three levels of a system
  5. Levels and types of requirements
  6. The importance of traceability
  7. Understanding the business context of projects

Practice sessions:

  • Define key terms
  • Use a framework to drive out requirements
  • Types of requirements
  • Classifying stakeholders' input
  • Evaluate a fictitious but realistic organization for project alignment

Part 4: Project Initiation: Eliciting High-level and Mid-level Requirements

What most people think of as business analysis is central to project initiation. Because of the depth of skill these activities require, most Business Analysts demand separate training to develop true mastery. This course module therefore provides an overview and introduction to crucial business analysis activities by demonstrating common tools for identifying and documenting project scope, for modeling current and desired states, and for stakeholder and persona identification. And because effective initiation can lay the foundation for effective use case or user story development, we'll introduce use cases and user stories by identifying them in this module, too. After we've elicited the high-level and mid-level requirements for our project, we want to check to be sure that what we have so far is a good description of the project's scope.

  1. Understanding product vision and project scope
  2. Identifying and describing project stakeholders and personas
  3. Modeling the business
  4. Analyzing the current state and defining the future state
  5. Identifying systems and actors
  6. Determining scope
  7. Understanding and identifying use cases and user stories
  8. Taking the Agile approach: writing user stories
  9. Identifying and defining data
  10. Documenting business rules
  11. Finding quality attributes
  12. Defining and documenting the project scope

Practice sessions:

  • Modeling the business
  • Context diagramming
  • Ways to identify use cases and user stories
  • Brainstorming and chunkifying
  • Roles and Permissions matrix
  • Use case diagramming
  • User stories
  • High-level data definition
  • Entity relationship diagramming
  • Writing business rules and quality attributes
  • Evaluate a Scope Statement

Part 5: Eliciting Detailed Requirements

Savvy business analysts and project team members have a variety of techniques for finding the detailed functional and non-functional requirements on their projects. This section introduces several of the most powerful and effective analysis techniques and discusses their use in requirements elicitation. As various techniques are covered, the workshop explores how to capture and document the requirements, including effective requirements analysis and traceability.

  1. Overview of requirements-elicitation techniques
  2. Decompose processes to lowest levels
  3. Document analysis
  4. Modeling processes to generate interview questions
  5. Interviewing the stakeholders
  6. Documenting the interview and resulting requirements
  7. Adding detail to requirements we already have
  8. Refining and rewriting for clarity

Practice sessions:

  • Elicitation techniques – advantages/disadvantages
  • Process modeling
  • Generating good interview questions
  • Coping with challenging situations
  • Interview simulations
  • Writing new requirements and refining existing requirements
  • CRUD matrix and CRUD functional requirements

Part 6: Improving Requirements Quality

After we've elicited the detailed requirements for our project, we want to analyze and refine the requirements. Writing requirements is one thing—writing "good" or "effective" requirements is another matter. As we are hearing and documenting requirements from our stakeholders, we should be evaluating them for effectiveness and refining/rewriting those that are not. In this section, we'll learn to derive maximum benefit from reviews throughout the life cycle. We'll then take a closer look at the issue of requirements quality, focusing on writing effective requirements through analysis, refinement, and review. Finally, we'll discuss how to document the scope of the project to minimize rework and scope creep.

  1. Requirements quality
  2. Common problems with requirements
  3. Analyze for ambiguity
  4. Requirements inspection, analysis, and improvement

Practice sessions:

  • Analyze and rewrite requirements

Part 7: Documenting Requirements with Use Cases and User Stories

Developing use cases is fairly straightforward, but someone actually has to document the use cases and requirements discovered during the requirements elicitation process. There is also an art to writing user stories and defining acceptance criteria for the requirements. This section of the workshop focuses on how to apply the knowledge you've gained so far to writing use cases and user stories. It also examines more complex aspects of uses cases, including sub-use cases and use-case linkages in larger systems.

  1. Better user stories using the INVEST model
  2. Defining acceptance criteria
  3. Decomposition of user stories
  4. Considering use cases for decomposing user stories
  5. Use case basics
  6. Use cases and requirements
  7. Usage narrative
  8. Anatomy of a fully dressed use case
  9. Writing effective use case narratives
  10. Understanding sub-use cases
  11. Linking use cases for larger or more complex systems
  12. Use case quality
  13. Avoiding common traps and pitfalls

Practice sessions:

  • Write acceptance criteria and perform peer reviews
  • Decompose user stories
  • Write a usage narrative
  • Write a fully dressed use case and perform peer reviews
  • Check use case quality

Part 8: Packaging and Presenting Requirements

Once we've worked with stakeholders to define their functional and non-functional requirements and to document, refine, and organize the requirements, we have to package those requirements into a specification. In addition, most systems also possess a significant number of requirements that aren't necessarily associated with specific business functions. These types of non-functional requirements must also be captured and documented as part of the complete requirement specification. This portion of the Boot Camp covers how to package the requirements into a specification that can be used for system development and testing.

  1. Organizing and packaging requirements
  2. Presenting requirements for review
  3. Baselining the requirements
  4. User story backlog management
  5. Managing requirements changes
  6. Getting to consensus and approval
  7. Conducting formal and informal reviews
  8. Documenting requirements in a Requirements Specification

Practice sessions:

  • Examine and evaluate a sample Requirements Specification
  • Discuss strategies for presenting requirements to stakeholders
  • Review how to determine impact analysis for changes to the requirements
  • Create a personal action plan for success