SAFe Agile Software Engineering

Home SAFe Agile Software Engineering

• Virtual Delivery of this Course is Available

What skills do you need to deliver high-quality, software-centric solutions faster and more predictably? In the Agile Software Engineering course, you’ll learn how modern practices including XP, behavior-driven development (BDD) and test-driven development (TDD) enable continuous value flow and built-in quality. This interactive, three-day course also gives you guidance and tools to work effectively in remote environments with distributed teams.

 

The Agile Software Engineering course will give you and your team the knowledge and tools to apply and build a test-first, technical infrastructure. You’ll learn how to detail, model, design, implement, verify and validate stories in a SAFe continuous delivery pipeline and how to use automated testing. And you’ll develop a foundational understanding of Lean, Agile and DevOps principles that you can apply in everyday practices.

Learning Topics - 24hrs

Session 1
INTRODUCING THE COURSE

 

» Define Agile software engineering

» Form your Agile software engineering team

Session 2
CONNECTING PRINCIPLES AND
PRACTICES TO BUILT-IN QUALITY

» Connect principles to practices

» Describe XP practices

» Explore key definitions

» Describe built-in quality

» Describe trade-offs

Session 3
ACCELERATING FLOW

 

» Outline the flow of value

» Validate the benefit hypothesis

Session 4
APPLYING INTENTIONAL ARCHITECTURE

» Apply systems thinking

» Explain the role of Agile architecture in supporting

Lean-Agile development

» Architect and design for testability

Session 5
THINKING TEST-FIRST

 

» Shift testing left

» Explain the Agile testing matrix

» Describe the role of Nonfunctional Requirements (NFRs)

» Build quality in throughout the pipeline

Session 6
DISCOVERING STORY DETAILS

 

» Examine story criteria

» Split stories to reduce the Minimum Marketable Feature (MMF)

» Create workflow or story maps

» Identify assumptions and risks

Session 7
CREATING A SHARED UNDERSTANDING WITH BEHAVIOR-DRIVEN DEVELOPMENT (BDD)

» Apply Behavior-Driven Development (BDD) for

shared understanding

» Specify desired behavior for domain terms

» Describe behavior for business rules and algorithms with tests

» Test the User Interface (UI)

» Apply test doubles to BDD

» Find existing tests impacted by new requirements

Session 8
COMMUNICATING WITH MODELS

 

» Explain the use of models

» Outline static models

» Demonstrate Class-Responsibility-Collaboration (CRC)

» Outline dynamic models

» Outline state models

Session 9
BUILDING SYSTEMS
WITH CODE QUALITY

» Identify code qualities

» Describe cohesion and coupling

» Describe other code qualities

» Explain the benefits of collective ownership

Session 10
BUILDING SYSTEMS
WITH DESIGN QUALITY

» Explore design trade-offs

» Explain interface-oriented design

» Apply quality decomposition practices

» Apply differentiation and synthesis

» Apply software design patterns

Session 11
IMPLEMENTING WITH QUALITY

 

» Design with tests

» Apply Test-Driven Development (TDD) practices

» Implement test doubles and test data

» Refactor to support new behavior of the code

» Practice emergent design

Session 12
COURSE REVIEW

 

» Summarize Agile software engineering

» Review your action plan for adopting ASE principles and practices

Session 13
BECOMING A CERTIFIED PROFESSIONAL

» Becoming a Certified SAFe Professional

Sign up for your Daugherty Learning Solutions course today!

Individual