Agile + DevOps West 2023 Pre-conference Training : Agile Programming—ICAgile Certification (ICP-PRG)
Sunday, June 4, 2023 - 8:30am to Monday, June 5, 2023 - 5:00pm

Agile Programming—ICAgile Certification (ICP-PRG)

  • Learn practical agile development techniques through hands-on exercises
  • Understand how to develop better code with less effort and fewer defects
  • Experience practical development approaches that will help your project attain enduring quality
  • Practice automating tests, refactoring, handling and legacy code
  • Get hands-on with TDD, BDD, collaborative development, and the build process
Many organizations are transforming to an agile culture to accelerate software development and delivery. This course engages attendees in software development techniques that are best applied to align with agile values and principles.
After an initial introduction to agile values and principles, one might wonder how work is meant to reflect the meaning of ambiguous phrases in the Agile Manifesto such as "working software is the primary measure of progress" or "simplicity—the art of maximizing the amount of work not done—is essential." How exactly are developers supposed to carry out programming in this new world?
This interactive workshop engages participants in pragmatic hands-on exercises to reinforce and practice what they learn. Participants walk away with experience in some of the most effective techniques used today and leave better equipped to develop software more effectively and efficiently.
Who Should Attend
Developers, software developers in test, architects, and technical leads who have a basic understanding of good programming practices and want to take their analysis, design and programming skills to a new level.
Laptop Required
This class involves hands-on activities using sample software to better facilitate learning. Each student should bring a laptop with a remote desktop protocol (RDP) client preinstalled. Connection specifics and credentials will be supplied during class. Please verify permissions with your IT Admin before class. If you or your Admin have questions about the specific applications involved, contact our Client Support team.

ICAgile Certification
Successful attendees are awarded the ICAgile Certified Professional: Agile Programming (ICP-PRG). Additionally, the certified professionals will be listed on the ICAgile website, indicating their designation. Coveros recommends Agile Fundamentals—ICAgile Certified Professional (ICP) for those seeking ICAgile certifications.The ICAgile certification fee is included with your registration for your convenience.


Course Outline
Agile recap
Automated tests
    Types of tests to automate
    Fixture setup
    Coding tests by intention
    Verifying results
    Completeness conditions
    Avoiding duplication
    Listening to your tests
    Testing the tests
    Refactoring tests
    Test speed
    Test execution time
    Use test doubles
    Dependency injection
    Clean programming
    Common code smells
    Principles of refactoring
    Common refactorings
    Refactoring tools
    Approaching legacy code
    Retrofitting tests on legacy code
    Collective accountability
    Collective ownership
    Basics of pairing
    Types of pairing
    Build tools
The build process
    Build tools
    Version control
    Continuous integration
Class Daily Schedule
/Registration 7:30 - 8:30 a.m.
Morning Session 8:30 a.m. - 12:00 p.m.
Lunch 12:00 - 1:00 p.m.
Afternoon Session 1:00 - 5:00 p.m.
Times represent the typical daily schedule. Please confirm your schedule at registration.
Training Course Fee Includes
• ICAgile Certification fee
• Digital course materials
• Continental breakfasts and refreshment breaks
• Lunches
• Letter of completion
Susan Harrington

Susan J. Harrington brings more than 25 years of software development experience serving as a consultant and mentor to clients including the Federal Reserve Bank, Sprint, Bell Atlantic (Verizon), Direct Energy, and MetaSolv Software (Oracle).  When she has not been on a client site, Susan has been in the classroom training students on a wide array of topics. Her courseware repertoire includes full stack software development using Java, object-oriented analysis and design, test driven development, web development, requirements gathering, design patterns, architectural patterns, and agile software development.