I am WAY behind on my posts with a backlog that includes a MEF Module Loader, MEF Validation sample, MEF container refactoring, PDC, Kaizenconf thoughts, etc. Those have to wait though so I can announce this.
patterns & practices just shipped new SharePoint application guidance.
Here's the summary:
This guidance helps architects and developers design, build, test, deploy and upgrade SharePoint intranet applications. A reference implementation that is named the Contoso Training Management application demonstrates solutions to common architectural, development, and application lifecycle management challenges.
This was one of the last projects Blaine and I got off the ground leaving p&p. When we first set out to build the guidance we decided very early we did not want this to be a "Why you should use SharePoint" type of deliverable. Instead we set out to illustrate how one would develop an application that is a good fit for using SharePoint as a platform.
In this case the app we chose was an internal training management syystem. In doing the guidance, the team took a holistic view of all the different aspects of developing with SharePoint and provided guidance on each as it relates to building this particular application.
Within the guidance you'll learn the following:
- First and foremost you'll find a reference application that you can install in your sites to see the actual app running!
- Architectural decisions about patterns, feature factoring, and packaging.
- Design tradeoffs for common decisions many developers encounter, such as when to use SharePoint lists or a database to store information.
- Implementation examples that are demonstrated in the Training Management application and in the QuickStarts.
- How to design for testability, create unit tests, and run continuous integration. Yes it is possible!
- How to set up different environments including the development, build, test, staging, and production environments.
- How to manage the application life cycle through development, test, deployment, and upgrading.
- Team-based intranet application development.
When you design a SharePoint app, there's a host of challenges you have to deal with including setting up your environment, working with a sea of technologies, and a shift in development processes. This guidance provides a set of tools to help you to navigate to shore.
I want to thank everyone on the team who made this happen in p&p including (but not limited to) Blaine, and Francis. Additionally a rich set of partners provided their deep experience to ensure the guidance we delivered met real world expectations.
Go get it here.
Great job p&p!