Preferred method of contact:

Agile Programming Professional

COURSE TYPE

Intermediate

Course Number

933

Duration

3 Days

PDF Add to WishList

Focusing on the techniques for implementing software with an Agile mindset, this course prepares programmers, developers, testers, and designers to immediately become productive members of an Agile team. In this training course, you will utilise test-first principles, design and create automated acceptance tests, apply SOLID design patterns to code, and integrate solutions through branching version control.

You Will Learn How To

  • Apply test-driven techniques for developing working code
  • Refactor code to exploit SOLID design principles and pattern technology
  • Use mocking libraries to isolate components for efficient testing
  • Remove dependencies between components with Dependency Injection Frameworks
  • Drive version control systems using an Agile branching and merging policy

Important Course Information

Requirements:

  • Prior to attending this course, attendees should have attended:
  • Experience in programming, preferably in a modern (object based or object oriented) programming language
  • A broad understanding of the software development lifecycle

Recommended Experience:

  • This is a course not just for programmers, but for testers (particularly automation testers), and software designers that then implement their designs.

Software:

  • For in-class examples we use the Microsoft toolkit: the C# programming language with Visual Studio, Microsoft's Team Foundation Server for tracking agile workflow, and the Git version control system for versioning and teaching branching and merging strategies.

Course Preparation:

  • Students will be emailed a short document to review before class. Understanding the content of this pre-course reading is required before class, so more in-class time can be devoted to the role of the programmer.

Exam Information:

  • ICAgile: To obtain the ICAgile Certified Professional in Agile Programming certificate, students will need to pass the Learning Tree exam. Once notification of passing the exam has been received, contact Learning Tree's customer service to request registration with ICAgile.
  • Scrum Alliance: This course qualifies for the 3-day technical portion of the Certified Scrum Developer. To obtain Scrum Education Units (SEUs), students will need to pass the Learning Tree exam. Once notification of passing the exam has been received, contact Learning Tree's customer service to request registration with Scrum Alliance.

Course Outline

  • Agile Software Development Introduction
  • Defining the developer role in an agile process
  • Identifying software development roles and activities
  • Supporting the requirements engineering process
  • Decomposing and estimating requirements
  • Using test automation to drive development
  • Applying SOLID design principles
  • Exploiting design patterns
  • Integrating systems
  • Branching and merging version controlled code
  • Managing defects efficiently
  • Supporting Agile Projects

Gathering software requirements

  • Eliciting requirements from users
  • Adopting Agile values and principles
  • Identifying user stories from stakeholder requirements

Planning Agile Projects

  • Prioritising and estimating work
  • Dividing features into tasks
  • Estimating stories and tasks

Tracking Team Progress

  • Tracking progress with burn down charts
  • Calculating velocity and adjusting to change
  • Monitoring work in progress with task boards
  • Test-Driven Development

Defining test levels

  • Acceptance, system, integration and unit testing
  • Employing both automated and manual testing
  • Specifying boundary conditions
  • Driving development through constant testing

Ensuring software meets requirements with user acceptance testing

  • Scripting user acceptance tests
  • Specifying acceptance criteria
  • Determining conditions of satisfaction
  • Automating the user story acceptance tests with Gherkin

Minimising bugs through automated programmer unit testing

  • Utilising tools for automated unit testing
  • Writing unit test code
  • Isolating classes for testing
  • Programming mock objects
  • Refactoring for improved design
  • Improving Code Quality

Applying SOLID design principles

  • Ensuring classes have a single responsibility
  • Maintaining extensibility through the open-closed principle
  • Using inheritance correctly
  • Inverting dependencies to obtain the correct interfaces
  • Injecting dependencies using injection frameworks

Short-circuiting design with patterns

  • Understanding the role of design patterns
  • Applying well-known patterns: Strategy and observer
  • Scaling Development

Protecting code with version control

  • Locking versus multiple checkout version control systems
  • Single store versus distributed version control
  • Employing GIT for distributed multiple checkout control
  • Pushing and pulling changes from central repositories

Applying multi-team agile versioning policy

  • Branching and merging code developed by multiple teams
  • Choosing agile branching and merging strategies
  • Continuous Improvement of Development

Monitoring development

  • Knowing what to track in development
  • Identifying common agile development pitfalls

Participating in retrospectives

  • The developer’s role in agile process improvement
  • Continuous improvement through learning
Show complete outline
Show Less

Convenient Ways to Attend This Instructor-Led Course

Hassle-Free Enrolment: No advance payment required to reserve your seat.
Tuition Fee due 30 days after you attend your course.

In the Classroom

Live, Online

Private Team Training

In the Classroom — OR — Live, Online

Tuition Fee — Standard: £1695  

14 - 16 Mar (3 Days)
9:00 AM - 4:30 PM GMT
London / Online (AnyWare) London / Online (AnyWare) Reserve Your Seat

How would you like to attend?

Live, Online
In-Class

18 - 20 Jul (3 Days)
9:00 AM - 4:30 PM BST
London / Online (AnyWare) London / Online (AnyWare) Reserve Your Seat

How would you like to attend?

Live, Online
In-Class

AFTERNOON START: Attend these live courses online via Anyware

29 Nov - 1 Dec (3 Days)
2:00 PM - 9:30 PM GMT
New York / Online (AnyWare) New York / Online (AnyWare) Reserve Your Seat

How would you like to attend?

Live, Online
In-Class

21 - 23 Mar (3 Days)
1:00 PM - 8:30 PM GMT
Alexandria, VA / Online (AnyWare) Alexandria, VA / Online (AnyWare) Reserve Your Seat

How would you like to attend?

Live, Online
In-Class

18 - 20 Apr (3 Days)
2:00 PM - 9:30 PM BST
Herndon, VA / Online (AnyWare) Herndon, VA / Online (AnyWare) Reserve Your Seat

How would you like to attend?

Live, Online
In-Class

29 - 31 Aug (3 Days)
2:00 PM - 9:30 PM BST
Alexandria, VA / Online (AnyWare) Alexandria, VA / Online (AnyWare) Reserve Your Seat

How would you like to attend?

Live, Online
In-Class

3 - 5 Oct (3 Days)
2:00 PM - 9:30 PM BST
Herndon, VA / Online (AnyWare) Herndon, VA / Online (AnyWare) Reserve Your Seat

How would you like to attend?

Live, Online
In-Class

Guaranteed to Run

Show all dates
Show fewer dates

Private Team Training

Enroling at least 3 people in this course? Consider bringing this (or any course that can be custom designed) to your preferred location as a private team training.

For details, call 0800 282 353 or Click here »

Tuition Fee

Standard

In Classroom or
Online

Standard

£1695

Private Team Training

Contact Us »

Course Tuition Fee Includes:

After-Course Instructor Coaching
When you return to work, you are entitled to schedule a free coaching session with your instructor for help and guidance as you apply your new skills.

Free Course Exam
You can take your Learning Tree course exam on the last day of your course or online at any time after class and receive a Certificate of Achievement with the designation "Awarded with Distinction."

Prev
Next

Training Hours

Standard class hours:
9:00 a.m. - 4:30 p.m.

Last day class hours:
9:00 a.m. - 3:30 p.m.

Free Course Exam – Last Day:
3:30 p.m. - 4:30 p.m.

Each class day:
Informal discussion with instructor about your projects or areas of special interest:
4:30 p.m. - 5:30 p.m.

AFTERNOON START class hours:
2:00 p.m. - 9:30 p.m.


Last day class hours:
2:00 p.m. - 8:30 p.m.


Free Course Exam – Last Day:
8:30 p.m. - 9:30 p.m.


Each class day:
Informal discussion with instructor about your projects or areas of special interest
9:30 p.m. - 10:30 p.m.

Enhance Your Credentials with Professional Certification

Learning Tree's comprehensive training and exam preparation guarantees that you will gain the knowledge and confidence to achieve professional certification and advance your career.

This Course is approved for ICAgile credits. Read more ...

Earn 17 PDUs


PMI, the Registered Education Provider logo, PMP, CAPM, PMI-ACP,
and PMBOK are marks of the Project Management Institute, Inc.

This course is approved by PMI® for 17 professional development units (PDUs). For more on the Project Management Institute and a full list of courses approved for PDUs.

Technical : 17 PDUs

Read more ...

This course qualifies for Scrum Alliance SEUs.

“With AnyWare it was easy to converse with the instructor and the other participants”.

- J. Causey, Medical Network Consultant
State Compensation Insurance

Prev
Next
Chat Now

Please Choose a Language

Canada - English

Canada - Français