Course Badge
Back to results
Agile Engineering Practices - 3 day Badge

Agile Engineering Practices - 3 day

Taught by: Naveen Kumar Singh
All courses on the Certified Scrum Developer® track are taught by Registered Education Providers. For more information on the curriculum for the CSD credential, visit https://www.scrumalliance.org/get-certified/developer-track/certified-scrum-developer.
Naveen Kumar Singh Trainer Photo
Back to results
05 - 07 February, 2021 |
 10:00 AM IST |
 8 hrs/day

Course details


About the trainer


Location

person icon

In-Person

location pin icon

399, Jalvayu Vihar Kammanahalli, HRBR Layout Bangalore, 560043, IN

Certified Scrum Developer training program introduces Agile Values & Principles, Scrum Framework, Acceptance Test Driven Development, Behavior Driven Development, Test Driven Development, Refactoring, Emergent Design, Agile Architecture, Collaboration, and refactoring techniques to the audience and follows a life cycle approach where participants get to learn how to practice these in real-life projects. Participants learn to implement TDD on a project developing in either java, .net, ruby, python or C++ framework. The workshop also covers how to effectively work on legacy code and break dependencies. The expected business outcome is readable, maintainable code going forward as well as reduction defects. 

Key Learning Activities

Hands-on activities (60-70%) and discussion on mentioned topics (30-40%). Hands-on activities include writing unit tests, code, writing examples, and some group creativity activities.

Prerequisites

Laptops/Desktops with required software and internet connection. The software will be provided by the facilitator.

Tools

Java/.Net, Cucumber/SpecFlow/Behave, Selenium, Jenkins, GIT, Junit/Nunit/Pytest/ Gtest, etc. 

Day 1: Agile Requirements and Acceptance Test Driven Development

Specification by Examples Workshop

  • Challenges in Collaboration between Business and Development Team
  • How to write better Specification
  • Why Examples needed for specification 
  • Writing Examples in Gherkin

 ATDD and BDD workshop

  • Principles of Acceptance Test-Driven Development
  • Consequences of ATDD on the Sprint Planning and Sprint Review
  • Principles of Behavior Driven Development
  • Practicing BDD with Cucumber/Behave/SpecFlow: installation, writing features, testing and reporting
  • Role of Product Owner and crew when writing scenarios acceptance

Day 2: Test-Driven Development and Agile Design

 Test-Driven Development

  • Test-Driven Development (TDD) approach and its benefits
  • Improving the quality and design of the code by TDD
  • Different types of tests: unit, integration, functional

 Unit testing with Unit Testing Framework

  • Understand the life cycle of a test in the Unit Testing framework
  • Respect for the principle of isolation and control of test results
  • The mocks or simulate how the code Device code tested
  • Use of simulation frameworks

 Organization of test activities

  • The methodology of correcting a Bug
  • Automate the execution of Unit Test
  • Generating reports
  • Integration with Build Tool and IDE

 Design Frameworks

  • Definition and principles of frameworks
  • Emergent Design 
  • Principle of scalability and implementation

 Refactoring

  • The consequence of technical debt and the risk of "breaking" the code
  • Where? When? How refactoring?
  • 3 stages of refactoring
  • Support of TDD and ATDD during refactoring
  • Best practices and limitations
  • Working with legacy code

 Day 3: Continuous Integration and Agile Testing

 Introduction to Continuous Integration

  • Principles, environment, and infrastructure
  • Branching strategies and patterns for continuous integration.
  • Solutions for Continuous Integration: Hudson, Jenkins, Cruise Control, Bamboo, TeamCity, Apache Continuum

 Introduction to Jenkins

  • Dashboard and health projects
  • Architecture and extension principle
  • Installation, configuration, and use of Jenkins
  • Automated Builds with Jenkins
  • Automation Testing with JUnit (TDD) and Cucumber (BDD/ATDD)

 Agile Testing

  • Importance of Agile testing
  • Ensure better quality product sprint by sprint
  • Test Automation Frameworks
  • Test quadrants and test pyramids

 Other topics

  • Continuous Delivery and Deployment - Why and How? 
  • DevOps Introduction
  • ALM tools for Development Team such as Azure DevOps or Jira

Development team members including developers, testers, architects, leads and scrum masters.

Reviews

rating icon showing 0.00 stars. No ratings yet TrustPilot logo
This course does not have any reviews yet.

More courses by Naveen

This trainer has no other upcoming courses of this type.