Scrum Fundamentals and Advanced

Video description

Overview

Scrum Fundamentals and Advanced LiveLessons provides viewers with a basic understanding of managing an Agile software development project with Scrum, which is a lightweight, adaptive framework for managing complex projects. The Advanced Scrum portion tackles some of the deeper issues around integrating requirements management and quality assurance into your process.

 

Description

Scrum Fundamentals provides helpful insight into the history of Agile and how its values and principles can focus teams on consistently delivering quality products that immediately add customer value. It covers the complete Scrum framework from project initiation and executing Sprints to delivering a product increment.

Many teams adopting Scrum struggle with how to manage requirements and integrate their quality assurance efforts into their Agile processes. Advanced Scrum provides a deep dive into both of these areas, exploring how to apply the values and principles of Agile and Scrum to avoid common pitfalls.

 

 

About the Instructor

Tommy Norman is a Lean/Agile Coach at LeanKit in Nashville, TN. For more than fifteen years, he has been helping clients build solutions using both Agile and traditional approaches as a Certified Scrum Master / Practitioner as well as a Microsoft ALM MVP. Tommy is a coordinator for the Nashville Agile User Group, one of the original founders of the devLink Technical Conference, a past president and board member of the Nashville .NET User Group, and a frequent speaker at both local and national events. He blogs about Agile, TFS, and .NET at www.tommynorman.com and rambles about most everything on Twitter as @tommynorman.

 

Skill Level

  • Beginner to Advanced

 

What You Will Learn

Scrum Fundamentals:

  • The history of Agile
  • The roles, artifacts, and events in Scrum
  • How to start a Scrum project
  • Essentials of writing good user stories
  • How to maintain your product backlog and release plan
  • Agile estimation techniques
  • How to effectively plan for and execute a Sprint
  • Agile engineering best practices
  • How to integrate QA into your Sprints
  • How to inspect and adapt your process

Advanced Scrum:

  • Agile values and principles concerning requirements management
  • How to craft good user stories and when to get more detail
  • Agile values and principles concerning quality assurance
  • How to incorporate good quality practices into your Sprints
  • Integrating test cases as part of your requirements management approach

Who Should Take This Course

  • Anyone directly involved in the software development lifecycle (developers, QA, dev managers, project managers, business analysts, etc.) who is interested in gaining a solid understanding of the fundamentals of Agile software development and Scrum.

Course Requirements

  • Familiarity with the basics of software development projects.

Scrum Fundamentals:

Lesson 1: A History of Agile

Lesson 1 “A History of Agile” covers a brief history of Agile and how it has evolved over the years. The lesson starts by reviewing how software had previously been done with a more traditional “Waterfall” approach. Viewers learn some of the intrinsic issues often encountered
in Waterfall projects. From there, the lesson covers how Agile got its start and evolved into the many frameworks available today.

Lesson 2: Agile Concepts

Lesson 2 "Agile Concepts” covers the underlying concepts behind many of the various Agile approaches. It discusses how to separate the implementation (or mechanism) of a concept from its underlying values and principles. Finally, the lesson touches on the many Agile processes and frameworks that have risen from these concepts and have become more mainstream today.

Lesson 3: An Overview of Scrum

Lesson 3 "An Overview of Scrum" presents the basic roles, artifacts, and events that make up the Scrum framework. These topics are covered at a high level in this lesson and discussed in more depth in the following lessons.

Lesson 4: Starting a Scrum Project

Lesson 4 "Starting a Scrum Project" begins by demonstration how to establish a Product Vision to act as a compass for the Scrum Team to follow. From there, it covers how to create the initial Product Backlog with good User Stories and then how to prioritize it appropriately. Next, viewers learn how to assemble their Scrum Teams to best deliver their product increments. Viewers also learn the Agile concepts and techniques used for estimating User Stories and how to create a Release Plan to forecast when and what might be done in the future.

Lesson 5: Executing the Sprint

Lesson 5: "Executing the Sprint " shows how to start developing a product. It starts off by covering the Sprint Planning Meeting where the team determines what to work on, a Sprint goal is created, and a Sprint Backlog is developed which is the plan for meeting that goal. The lesson then talks about how to work collaboratively as a Scrum Team. This lesson also covers the Daily Scrum, and it gives tips on how to make the most of this meeting. Finally, the lesson covers grooming the Product Backlog to keep a good runway of User Stories prepped and ready for the team.

Lesson 6: Ending the Sprint

Lesson 6 "Ending the Sprint” covers holding the Sprint Review and demoing the finished Product Increment to the stakeholders. Next, it talks about delivering that product increment to the users and how to do this as often as possible. Finally, the lesson discusses how to hold the Sprint Retrospective for the team to reflect and strive for continuous improvement.

Advanced Scrum:

Lesson 1: Principles of Requirements Management
Lesson 1 covers the basic elements of requirements management and some of the intrinsic issues that could be encountered with more traditional approaches. Viewers then learn the values, principles, and practices in Agile that can help them address these issues while transitioning to the Scrum framework.

Lesson 2: User Stories

Lesson 2 covers user stories, a popular Agile method for recording requirements. It starts out by reviewing the format of a user story, writing conditions of satisfaction, and what qualities to look for in a good story. Viewers also learn the various types of content that can be captured with user stories and how best to use them.

Lesson 3: Gathering User Stories

Lesson 3 covers how to collect user stories. Viewers learn how to hold story sessions as a way to elicit requirements that focus on the user’s needs. Then, the lesson discusses how to decompose requirements into smaller slices of functionality that will lend themselves better to iterative development using Sprints. Lastly, viewers learn about the benefits and drawbacks of gathering requirements collaboratively as a Scrum team.

Lesson 4: Managing the Product Backlog

Lesson 4 covers how the Scrum artifact the Product Backlog can help with the storage and management of requirements as User Stories. The lesson starts by reviewing what the Product Backlog is and its purpose, as well as how to use it to prioritize our User Stories. When and how much detail to gather is often hard to gauge. Viewers learn what factors can help make that determination. Finally, the lesson talks about the product owner’s involvement in managing requirements and how to get the most out of this role.

Lesson 5: Tests as Self Validating Requirements

 

Lesson 5 touches on how tests can be an essential part of the requirements management approach. It also discusses how this approach can influence the way test cases are written.

Lesson 6: Documentation

Lesson 6 covers some principles and practices for creating documentation that still aligns with the adoption of Scrum. Viewers learn the differences between the types of documentation gathered as input to a Sprint versus the documentation outputted as a result of the Sprint, as well has some methods for managing both of them. Also, viewers review techniques for utilizing artifacts they are already creating as part of their Sprints as a way to generate content for output documentation so they are not always writing it from scratch.

Lesson 7: Principles of Quality Assurance

Lesson 7 is the first lesson in Part II, which is dedicated to Quality Assurance and how to integrate it into the Scrum framework. The lesson starts by making sure everyone is on the same page by covering its definition and basic elements. It then discusses the common issues that come up with more traditional software methodologies in the area of Quality Assurance. Lastly, it reviews the Agile principles and values that can help viewers to successfully integrate good QA practices into the Scrum framework.

Lesson 8: Quality Elements in User Stories

Lesson 8 takes a deeper dive into quality elements in a user story. Viewers learn how QA is involved in grooming user stories and how they can map the test cases to them. Viewers also learn how tests can eventually be used as one of the primary methods for recording requirements.

Lesson 9: Writing Test Cases

Lesson 9 discusses techniques viewers can adopt when writing and structuring their test cases that will make them more conducive to an Agile environment. The lesson also covers the different ways to classify and categorize the test cases to make them easier to manage and to get the most value out of them throughout their product’s lifecycle.

Lesson 10: Testing During the Sprint

Lesson 10 stresses the importance of fully testing user stories inside each Sprint. The lesson covers the underlying value behind this approach, as well as the common roadblocks teams encounter when they try it and how they can overcome them. Viewers learn how to plan appropriately for in-Sprint testing, work collaboratively as a team, and test as they go.

Lesson 11: Test Automation

Lesson 11 covers Test Automation, which has a big place in most Agile environments. This lesson covers why Test Automation is used, choosing what is automated, and when to use it. The lesson also covers the areas of Test Automation that can cause teams the most trouble, such as handling test data, applications that interact with hardware devices, and integrating with external services.

Lesson 12: Manual Testing

Lesson 12 covers manual testing, which is something every team has to handle to some degree. This lesson is about the reasons why some level of manual testing is still needed as part of overall Quality Assurance efforts. Viewers learn how to plan and execute manual testing in their Sprints. Finally, the lesson provides some tips on how to prepare to move towards more automation within the current manual testing approach.

Lesson 13: Regression Testing

Lesson 13 covers regression testing, which is an integral part of Quality Assurance. Before any product is released to users, it should be tested end-to-end to make sure everything is working as planned. But regression testing is time-consuming and complex. This lesson covers how viewers can incorporate some level of regression testing inside each sprint and how best to structure test plans for this. It also talks about using hardening sprints before releases to ensure they are ready for customers. Lastly, the lesson reviews how performance and security testing can be included as part of the regression testing methods.

Lesson 14: QA and Production Support

Lesson 14 on QA and Production touches on some of the common issues teams can experience while trying to address production issues and still maintaining their quality practices. Dealing with issues from production is something has all teams have to tackle, and they may not always approach it with the same discipline as they do with new development efforts. This lesson covers some tips for how to fully integrate quality assurance methods into production support activities.

 

 

About LiveLessons Video Training

The LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at: http://www.informit.com/livelessons

Table of contents

  1. Introduction
    1. Scrum Fundamentals and Advanced LiveLessons: Introduction
  2. Introduction
    1. Introduction to Scrum Fundamentals LiveLessons
  3. Lesson 1: History of Agile
    1. Learning objectives
    2. 1.1 Waterfall Approach
    3. 1.2 A More "Agile" Approach
    4. 1.3 The Agile Manifesto
  4. Lesson 2: Agile Concepts
    1. Learning objectives
    2. 2.1 Underlying Agile Concepts
    3. 2.2 Concepts versus Mechanisms
    4. 2.3 Agile Frameworks and Processes
  5. Lesson 3: Scrum Overview
    1. Learning objectives
    2. 3.1 Roles
    3. 3.2 Artifacts
    4. 3.3 Events
  6. Lesson 4: Getting a Scrum Project Started
    1. Learning objectives
    2. 4.1 Sprint Zero
    3. 4.2 Creating a Product Vision
    4. 4.3 Creating Your Initial Product Backlog
    5. 4.4 User Stories
    6. 4.5 Roles and Personas
    7. 4.6 Prioritizing your Product Backlog
    8. 4.7 Assembling the Scrum Team
    9. 4.8 Agile Estimation
    10. 4.9 Creating a Release Plan
  7. Lesson 5: Executing the Sprint
    1. Learning objectives
    2. 5.1 Holding the Sprint Planning Meeting
    3. 5.2 Working As a Scrum Team
    4. 5.3 Holding the Daily Scrum
    5. 5.4 Agile Engineering Practices
    6. 5.5 Quality Assurance in Agile
    7. 5.6 Grooming Your Product Backlog
  8. Lesson 6: Ending the Sprint
    1. Learning objectives
    2. 6.1 Holding the Sprint Review
    3. 6.2 Delivering a Product Increment
    4. 6.3 Holding the Sprint Retrospective
  9. Summary
    1. Summary of Scrum Fundamentals LiveLessons
  10. Introduction
    1. Advanced Scrum LiveLessons: Introduction
  11. Part I: Managing Requirements in Scrum
    1. Managing Requirements in Scrum
  12. Lesson 1: Principles of Requirements Management
    1. Learning Objectives
    2. 1.1 Requirements Management in Software Development
    3. 1.2 Issues with Traditional Requirements Management
    4. 1.3 Agile/Scrum Values and Principles around Requirements Management
  13. Lesson 2: User Stories
    1. Learning Objectives
    2. 2.1 User Story Format
    3. 2.2 Conditions of Satisfaction
    4. 2.3 The INVEST Principle
    5. 2.4 Other Types of Stories
    6. 2.5 User Stories Are a Tool
  14. Lesson 3: Gathering User Stories
    1. Learning Objectives
    2. 3.1 Holding Story Sessions
    3. 3.2 Slicing User Stories
    4. 3.3 Gathering Requirements as a Team
    5. 3.4 Demonstration: Recording User Stories
  15. Lesson 4: Managing the Product Backlog
    1. Learning Objectives
    2. 4.1 Product Backlog Overview
    3. 4.2 Prioritizing the Product Backlog
    4. 4.3 Gathering More Detail
    5. 4.4 Product Backlog Grooming
    6. 4.5 Role of the Product Owner
    7. 4.6 Demonstration:Managing the Product Backlog
  16. Lesson 5: Tests as Self Validating Requirements
    1. Learning Objectives
    2. 5.1 Requirements as Tests and Tests as Requirements
    3. 5.2 Writing Tests as Requirements
  17. Lesson 6: Documentation
    1. Learning Objectives
    2. 6.1 Input versus Output Documentation
    3. 6.2 Informal Input Documentation
    4. 6.3 Creating Output Documentation
    5. 6.4 Demonstration: Managing Documenation
  18. Part II: Quality Assurance in Scrum
    1. Quality Assurance in Scrum
  19. Lesson 7: Principles of Quality Assurance
    1. Learning Objectives
    2. 7.1 What is Quality Assurance?
    3. 7.2 Issues with Traditional Approaches to Quality Assurance
    4. 7.3 Agile/Scrum Values and Principles around Software Quality
  20. Lesson 8: Quality Elements in User Stories
    1. Learning Objectives
    2. 8.1 QA's Involvement with User Stories
    3. 8.2 Mapping User Stories to Test Cases
    4. 8.3 Tests as Requirements
  21. Lesson 9: Writing/Storing Test Cases
    1. Learning Objectives
    2. 9.1 Structuring Test Cases
    3. 9.2 Classifying Test Cases
    4. 9.3 Demonstration: Writing Test Cases
  22. Lesson 10: Testing During the Sprint
    1. Learning Objectives
    2. 10.1 Why We Test in the Sprint
    3. 10.2 Planning for Sprint Testing
    4. 10.3 Testing as You Go
    5. 10.4 Demonstration: Testing User Stories
  23. Lesson 11: Test Automation
    1. Learning Objectives
    2. 11.1 Why, What, and When to Automate
    3. 11.2 Dealing with Test Data, Hardware and External Integrations
    4. 11.3 Demonstration: Automating Tests
  24. Lesson 12: Manual Testing
    1. Learning Objectives
    2. 12.1 Why Do We Still Need Manual Testing?
    3. 12.2 Planning for Manual Testing
    4. 12.3 Moving Towards Automation
  25. Lesson 13: Regression Testing
    1. Learning Objectives
    2. 13.1 Regression Testing in the Sprint
    3. 13.2 Creating Regression Test Plans
    4. 13.3 Hardening Sprints
    5. 13.4 Other Types of Testing
  26. Lesson 14: QA and Production Support
    1. Learning Objectives
    2. 14.1 Quality Issues around Production Support
    3. 14.2 Integrating QA
  27. Summary
    1. Scrum Fundamentals and Advanced LiveLessons: Summary

Product information

  • Title: Scrum Fundamentals and Advanced
  • Author(s):
  • Release date: August 2015
  • Publisher(s): Pearson
  • ISBN: 0134000226