UPDATE: If you missed the webcast, you can watch the recording via the details link below.
Team development for Dynamics CRM 2011 customizations is a topic I get into often with customers and partners. The best, most comprehensive session I have seen on team development with Dynamics CRM 2011 was delivered by Shan McArthur (blog, twitter) at eXtreme CRM (Las Vegas) this year. My biggest frustration about his session was that only the people at eXtreme CRM could benefit from knowledge he was sharing. Good news! Shan’s delivering an updated and extended (2 hour) session on this topic for the XRM Virtual User Group on 11/29/2012 (sorry for the short notice). Details here:
This is a MUST SEE webcast in my opinion. Watching it just may improve your life as a Dynamics CRM developer.
NOTE: The “Register for Event” button will be disabled unless you are signed in to the site. Have no fear, there is also a “Attend Live Meeting Here” link on the page in the event you are undecided about becoming a member. If you aren’t a member, you should be (it’s free).
In the latest release of the Dynamics CRM 2011 SDK, a new tool was introduced which creates new options for how teams can source control their non-code customizations. The tool is called SolutionPackager. I encourage you to read the following SDK documentation:
Solution Tools for Team Development
As the documentation states:
“The tool identifies individual components in the compressed solution file and extracts them out to individual files. The tool can also re-create a solution file by packing the files that had been previously extracted. This enables multiple people to work independently on a single solution and extract their changes into a common location. Because each component in the solution file is broken into multiple files, it becomes possible to merge customizations without overwriting prior changes. A secondary use of the SolutionPackager tool is that it can be invoked from an automated build process to generate a compressed solution file from previously extracted component files without needing an active Microsoft Dynamics CRM server.”
I recommend you thoroughly read through the SDK documentation before continuing. I will not explain SolutionPackager in great detail since the documentation does a good job of that already.
Since SolutionPackager is a cmd line based tool, it can be used to integrate with any source control system. However, most Visual Studio developers probably want to integrate SolutionPackager into Visual Studio. Furthermore, most probably want to integrate it with the Developer Toolkit for 2011. The video below walks you through a sample I built which demonstrates how to do just that. You can download my completed sample here.
Details are on my team’s blog:
“Microsoft Visual Studio 2010 introduces a whole host of new design and modeling tools to help enterprises and teams build software. UML Diagrams and the Layer Diagram can be used to plan and design the assets your team will produce, and communicate effectively about those designs during the entire development lifecycle. The Architecture Explorer and Graphs help you investigate and better understand the assets you have to enable more effective planning and decision making. Visual Studio also advances developer productivity with new tools for application debugging to collect more detailed diagnostic data during a test run leading to higher quality bugs that provide more insight to the developers on what actually went wrong when the bug occurred. We’ll show how Test Impact Analysis helps developers test the right automated tests from within Visual Studio, while testers know what the right set of tests to prioritize and run is given recent changes introduced by the development team. Finally, experience how the ALM tools in Team Foundation Server 2010 support agile project management and improve quality assurance efforts by facilitating great collaborations between developers and testers.”
For those of you who haven’t heard of it, the Microsoft Security Development Lifecycle (SDL) is “A Microsoft-wide initiative and a mandatory policy since 2004, the SDL introduces security and privacy early and throughout the development process. Combining a holistic and practical approach, the SDL is risk-based with the goal of protecting end-users by reducing the number and severity of vulnerabilities in code.”
As a company, Microsoft has received lots of recognition for SDL. Customers often ask “How does Microsoft build software?” That’s not an easy question to answer, because different teams used different processes depending on size, preference, etc. On thing that’s consistent though is that every team uses SDL. So can you!
“The Microsoft SDL – Developer Starter Kit offers content, labs, and training to help you establish a standardized approach to rolling out the Microsoft Security Development Lifecycle (SDL) in your organization—or enrich your existing development practices.”
Seriously, why wouldn’t you take the time to review this? Are you using Team Foundation Server? Amongst tons of other great resources from the link above, you will find SDL Process Templates for VSTS. No excuses. Like Nike says, “Just Do It!”