Agile Boot Camp - Part 1
Location: Austin Texas - Venue TBD, From Jan-14-2009 To Jan-16-2009
Contact Talisha Loa
Link to Event
Part 1 Agile Boot Camp Topics: object oriented programming SOLID principles design patterns dependency injection team design on whiteboard IDE tools and quickly navigating a codebase test driven development mocking pair programming refactoring pain driven development domain driven design ORM contributing to open source projects harnessing the community for extreme growth and continuous learning foundations of Agile
You’ve learned the .NET Framework – now learn the principles and tools to use it effectively. This intermediate curriculum will lead developers to work-changing techniques and create momentum towards continuous improvement in an ever-changing field. With a focus on object orientation and software engineering practices refined in real projects, students will discover principles and patterns to manage software complexity. By the end of the course students will have eliminated a reliance on leaky-abstraction APIs by • understanding software design concepts and principles • understanding and practicing test-driven development • practicing working in an effective team • implementing designs using object oriented techniques and design patterns • understanding object-relational mapping • drive future growth through exposure to advanced topics
Day 1
getting started • lab 1: check out the project and run a unit test • module: Intro • module: TDD basics • lab 2: writing your first failing unit test • lab 3: writing the code that makes it pass • demo: working with resharper
LUNCH
object oriented programming • module: SOLID • lab 4: interfaces, facade • lab 5a: strategy pattern • lab 5b: command pattern • extra curricular lab: playing with structuremap Day 2
team design & advanced tdd • quick mini-lab involving structuremap • module: dependency injection / ioc • lab6: configuring structuremap • demo: testing with mock objects • lab7: rhino mocks • team design on whiteboard LUNCH
refactoring & pair programming • lab8: more tests, enumeration base class, specification pattern, .net 3.5 feature in the code • module: refactoring • demo: refactoring legacy code • lab 9: pair tasks involving refactoring • extra curricular: student-driven discussion and demo Day 3 • lab 10: “refactor this” challenge • module: DDD basics, terminology • lab 11: repositories, using provided nhibernate stuff (HSB, DTB, etc.), specification pattern • module: foundations of Agile LUNCH • module: nhibernate • demo: querying nhibernate • lab 12: downloading source, creating patch for open source project • student-driven discussion, demos


