This is a series of 9 articles. Click here for the full TOC
This article to continue the application lifecycle management talk on SharePoint.
Microsoft published a document called Team-Based Development in Microsoft Office SharePoint Server 2007 and ALM Resource Center | SharePoint 2010. While this is a good starting place, many additional details of team-based development for SharePoint at your company must be decided; that is the goal is to develop guidelines for the following aspects in order to define all the required development processes:
The development environments that are used for SharePoint custom application development should allow the complete set of resources that developers will need to create these new applications. These development environments should be autonomous and should allow the developer to work independently on his/her component without interfering with other developers. The unit testing should also be conducted within the developer's individual environment.
The delivery strategy for design decisions is "schedule driven." That is, when making decisions such as the level of detail to which Features should be implemented, and even which Features should be implemented, the guiding criterion should be the ability to complete the Feature/detail in the allotted schedule.
This means in [Your Company], resources are fixed (since the team is fixed) and features come from internal customers (the business). Thus, the only thing that is adjustable is schedule. So Given a fixed resources, we will choose feature, and adjust schedule as necessary.
Naturally the design team will make sensible exceptions to this when appropriate. But as a general rule, Features or details that can't pass this criterion should be phased into a later delivery. Details of this process are given below.
The primary goal when designing "how to implement requirements" is to use "out-of-box" (OOB) functionality whenever possible and to consider custom development only when necessary and justified. That said, OOB functions usually entail some level of effort that's often overlooked in planning. Several examples may help to illustrate degrees of "out-of-box."
We will use the process of moving between Development, Test, UAT and Production (DTUP) environments. Developers use virtualized servers (virtual PCs) on their individual workstations to develop and unit test for SharePoint. The following diagram shows relationships among the workstations, servers and farms that will be used to manage code development and deployment from end to end.
The following namespaces are recommended.
for example: Contoso.Intranet.EmployeePortal.Web Components that are used across other web namespaces, such as GlobalMethods.
Read Next: Informational Operational and Administrational Policies