SharePoint has made developing in an agile environment notoriously difficult. Specifically, test-driven and behavior-driven development have been avoided due to the complexity of the API and the environmental requirements. Yet, numerous paths exist for SharePoint developers to pursue in order to apply these high value practices to their projects. In this session, we'll discuss how Microsoft's Fakes framework will enable your team to begin unit testing. However, we'll spend most of our time going over architectural patterns that separate your business logic from SharePoint APIs, making it much easier to unit test your code, and enable your team to become test- and behavior-driven. We'll conclude with some common agile practices that are still relevant to SharePoint developers to keep their velocity high.