As a SharePoint consultant, I am often asked (or tasked with) how to document a SharePoint environment. In this blog post, I’ll share thoughts on what elements of your SharePoint environment should be documented and share some tips on how to do so.
There are three main areas that I’ll focus on documenting:
- Farm Configuration
- Application Architecture
- Customizations
1. Farm Configuration
For each server in the SharePoint farm configuration, identify the role of the server (web server, database server), the configuration such as processors, name, IP Address, dependencies to other servers in the farm and in the organization at large, for example SMTP and Active Directory.
You should also note the services running on each server such as Search Services and Excel Calculation Services. In addition, identify the service accounts being used. Understand where they are used and what they are used for. On each server, you can identify what services are running and what accounts they are using in the Control Panel.
For each web server running IIS, you should document the Application Pools & associated Web Applications.
A technical diagram is a good way to document the configuration of an environment. Microsoft has some examples that are specific to SharePoint that you can find here: http://technet.microsoft.com/en-us/library/cc263199.aspx
You can also include this same information as part of a server list that contains your startup/shutdown procedures, service level agreements, etc.
If you have multiple environments for production, testing and staging (development) you should document the configuration for each as outlined above.
2. Application Architecture
Creating a site map is the best way to document and understand SharePoint’s architecture as an application. A good site map is a visual representation of the hierarchy of your site and it should show the site collections, sites and sub-sites for each web application in your environment. Site maps are typically created with diagram software such as Microsoft Visio.
Documentation of your sites should include the site name, site URL, its purpose, a site owner and whether or not it uses a template or a theme. Microsoft provides a “Site Planning Data Worksheet” that is helpful as a starting point for you to populate.
You should also document the security and search configuration for each site. Microsoft provides some helpful resources on planning site permissions which may also assist you in documenting them. Review the site planning worksheet and the worksheet for permission levels and groups.
Scheduled tasks such as back ups, search crawls, Active Directory profile import and timer jobs defined in Central Administration should be documented well. Document all the details of how your SharePoint environment is backed up. Know that there are two back ups for SharePoint: one for the farm itself and one for the SQL Server databases. Make sure that your documentation includes where the back up files are located, where the log files are located and when they are scheduled to run.
3. Customizations
One of the most important areas to document is what has been customized about your SharePoint site(s). It is extremely important information for ensuring a successful migration to a new version and in order to test and validate a service pack’s success.
You should document 3rd party web parts, custom web parts, branding such as style sheets, custom pages, integrations with line of business systems, and workflows. For custom web parts, it is important to document both web parts that are created from scratch by developers as well as out of the box SharePoint web parts that have been customized.
In closing, it is important to keep this documentation up to date by reviewing it frequently and adding to it as things change in your environment. Remember that the goal of documenting a system’s configuration is to serve as a reference guide for system administrators and to be able to bring new staff up to date.