dev212 sharepoint 2010 records management development
DESCRIPTION
A presentation by John Holliday, President of SharePoint Architects, Inc. at the 2011 European Best Practices Conference in London, April, 2011 on best practices for developing Records Management solutions on the SharePoint platform.TRANSCRIPT
BEST PRACTICES CONFERENCE SHAREPOINT
Clarity. Direction. Confidence.
SHAREPOINT 2010 RECORDS MANAGEMENT
DEVELOPMENTJohn F. Holliday
SharePoint Architects, Inc.
www.SharePointArchitects.us
BEST PRACTICES CONFERENCE SHAREPOINT
About Me• Books
• Professional SharePoint 2007 Development• Professional SharePoint 2007 Records
Management Development
• Activities/Projects• SharePoint Server MVP, Developer, Consultant• CAML.NET Framework/CAML.NET IntelliSense• SharePoint Developer Network (@SPDEVNET)• SharePoint Heroes (sharepointheroes.com)
BEST PRACTICES CONFERENCE SHAREPOINT
Agenda
• Evolution of Records Management Development in SharePoint
• Understand key RM features• Explore RM-Focused Solution Strategies• Integrating Managed Metadata Services• Enabling PowerShell Admin/Deployment
BEST PRACTICES CONFERENCE SHAREPOINT
Key Challenges for RM in MOSS
• Declaring Records• How to identify documents as records
• Protecting Records• How to control what happens to “records”
• Developing File Plans• How to identify records• How to specify record lifecycles
• Technology agnostic?
BEST PRACTICES CONFERENCE SHAREPOINT
Key Features for RM in 2010
• Document ID Service• Content Type Syndication• Managed Metadata and Keywords• Content Organizer for Routing• “In Place” Record Declaration• Multi-Stage Retention Policies
BEST PRACTICES CONFERENCE SHAREPOINT
Document Identifiers: Main Points
Every document can have a unique ID• Ability to reference documents by ID• Ability to move docs without breaking links• Scoped to Site Collection (DOCID feature)
• Adds “Document ID” field to documents• Need to checkout/checkin existing docs to get an ID
Example DOCID reference:http://<site collection url>/_layouts/DocIdRedir.aspx?ID=<doc id>
BEST PRACTICES CONFERENCE SHAREPOINT
Using Document IDs for Records Management
• Must ensure DOCID feature is activated everywhere records are referenced• Content Type Hub Site• Collaboration Sites• Records Center Sites
BEST PRACTICES CONFERENCE SHAREPOINT
Content Type Syndication: Main Points
• Available throughout the Farm• Can be used for content organizer rules• Can specify “publishing” rules
• Steps:• Provision a site to be an Enterprise Metadata Hub Site
• Best Practice: Use a dedicated site collection.
• Assign the site collection to the MMS• All content types created in the hub are now available for use in
other site collections
BEST PRACTICES CONFERENCE SHAREPOINT
Managed Metadata: Main Points
• Support for multiple languages• Can set default values for terms• Can add synonyms for terms• Can create reusable term sets
BEST PRACTICES CONFERENCE SHAREPOINT
Content Organizer: Main Points• Metadata-driven Routing
• Automatically handles incoming records (no need for custom router)
• Target destination determined from metadata(configured using rules)
• Support for file plan hierarchy• Can target subfolders of destination library• Automatically applies policies associated with target
location
BEST PRACTICES CONFERENCE SHAREPOINT
Content Organizer: Value Proposition
• Advantages• More control over document routing• No need for custom routers• Still supports custom routers• New “Rule Manager” user group
• Disadvantages• Rules must be managed – requires skill• Rules must be updated if content types change
BEST PRACTICES CONFERENCE SHAREPOINT
Content Organizer: Observations
• Dealing with the Classification Issue• Records Managers like Taxonomies• End Users like Folksonomies
• Managed Metadata to the rescue
• Building a “record declaration pipeline”• “Funnel” documents towards proper declaration using
“progressive classification”
BEST PRACTICES CONFERENCE SHAREPOINT
“Progressive Classification”• CONTOSO Healthcare
• Incoming patient interviews with embedded images• High volume requires preliminary classification by a human• Easy to misclassify => needs review by certified radiologist
before final declaration as official record
• Solution• Interviews sent to drop-off library in dedicated non-
records center site with preliminary CO rules driven by managed metadata
• Pre-classified interviews routed to specialized Records Centers with CO rules driven by approval workflow.
BEST PRACTICES CONFERENCE SHAREPOINT
Email Records Management
• Designed for Exchange 2010• Integrated Email Archiving• Integrated Email Retention• Integrated Email Discovery
• Can use Content Organizer for Email• Avoid inconsistency/complexity• Avoid bottlenecks/bandwidth issues
• Recommended only for Records Center
BEST PRACTICES CONFERENCE SHAREPOINT
Enabling Email Processing• From PowerShell
• Enable-SPFeature –id EmailRouting –url “<site url>”
• Creates a separate list to receive emails• Assigns a unique email address• Creates a built-in content type for emails
• “E-mail Submission”• Pre-defined fields common to emails
BEST PRACTICES CONFERENCE SHAREPOINT
Multi-Stage Retention• Missing from SP2007
• Enables modeling of real-world scenarios• Stages are “activated” based on conditions• Stages can recur automatically until the
‘next’ stage is activated
• Example:• Perform annual review of invoices (recurring),
then purge after 3 years
BEST PRACTICES CONFERENCE SHAREPOINT
Multi-Stage Retention: Main Points
• Define retention based on any date field• Stages activated by event triggers• Stages support limited recurrence• Support for custom formulas & actions
BEST PRACTICES CONFERENCE SHAREPOINT
Multi-Stage Retention: How it Works
• Basic Architecture• What happens when a document ‘expires’?• When does SharePoint check for expiration?
Get-SPTimerJob ExpirationProcessing | Start-SPTimerJob
• Alternatives?• Workflow to monitor document lifecycle?• Timer job to check document lifecycle?
• => SharePoint is more efficient
BEST PRACTICES CONFERENCE SHAREPOINT
Legal Holds: Main Points• Tied to Search
• New “Search and Add Holds” Page• Use search criteria to locate documents• Use search results to perform actions
• Examples:• copy to a new location• mark as read only
• Can be applied to any type of content• Can have multiple holds for a site
• Use Excel to get holds report
BEST PRACTICES CONFERENCE SHAREPOINT
Building Records Management Solutions
BEST PRACTICES CONFERENCE SHAREPOINT
Two Solution Strategies
• In-Place• Documents are declared as records in place.• Documents are “locked down”.
• Repository-Based• Documents are moved to a central repository.• Document metadata is evaluated.• Documents are routed to library/folder.• Information policy (retention) is applied.
BEST PRACTICES CONFERENCE SHAREPOINT
In-Place Record Declaration: Main Points
• Ability to declare (not manage) a record without having to move it to a records center• Can apply protections (lock down)• Can apply custom processing (workflow)
• Some limitations:• Cannot take advantage of features only found in the
Records Center site:• Cannot assign in-place records to file plan folders• Cannot inherit rules + permissions based on
file plan folder
BEST PRACTICES CONFERENCE SHAREPOINT
Pros/Cons of In-Place Approach• Pro
• Lower cost (Records Center not required)• Easier to configure (feature activation)• Can apply records-only retention
• Con• Cannot apply location-based rules• Harder to administer
• Records are interspersed with non-records
BEST PRACTICES CONFERENCE SHAREPOINT
Pros/Cons of Repository Approach• Pro
• Easier to administer• Records can be segregated• Records can be moved to cheaper storage
• Supports complex file plans• Location-based policies can be inherited• Metadata-driven rules for routing
• Con• Harder to configure
BEST PRACTICES CONFERENCE SHAREPOINT
Hybrid Solution Strategy
• Maintain distinction between “record declaration” and “records management”• Custom event handler when records are
declared/undeclared• => Start “classification” workflow when declared• => Move to repository when approved
• Leave hyperlink in its place
BEST PRACTICES CONFERENCE SHAREPOINT
IRecordDeclarationHandlerpublic class RecordDeclarationHandler : IRecordDeclarationHandler { // Records the record declaration event to an external database. RecordOperationResult
IRecordDeclarationHandler.OnDeclare(SPListItem item) { HandleDeclaration(item, true); // continue with default processing return RecordOperationResult.ContinueRecordProcessing; }
}
BEST PRACTICES CONFERENCE SHAREPOINT
Registering the Record Handlerusing Microsoft.Office.RecordsManagement.RecordsRepository;
public static void RegisterDeclarationHandler(this SPSite site, Type handler)
{Records.RegisterCustomCodeForRecordDeclaration(
site,handler.Assembly.FullName,
Handler.FullName);
}
….
SPSite site = new SPSite(“…”);
site.RegisterDeclarationHandler(typeof(myHandler));
BEST PRACTICES CONFERENCE SHAREPOINT
DEMOIn-Place Record Auditing
BEST PRACTICES CONFERENCE SHAREPOINT
RM-Focused Solution Strategies
BEST PRACTICES CONFERENCE SHAREPOINT
RM-Focused Solutions: Rule #1
Avoid Semantic Disconnect with RM Pros
• Must understand their language:• “File Plan”• “Retention Schedule”• “Classification”• “Record Series”
BEST PRACTICES CONFERENCE SHAREPOINT
RM-Focused Solutions: Rule #2
Target RM-Specific Document Lifecycles and Administration Requirements
• Must consider long-term evolution• Separate web application for records
• Content isolation
• Separate site collections for primary classifications• Quotas; document volume; security
• Separate document libraries for record series• Managed metadata
BEST PRACTICES CONFERENCE SHAREPOINT
RM-Focused Solutions: Rule #3
Incorporate Managed Metadata into Overall Development Plan
• Maintain consistency between MMS taxonomy and Content Organizer rules• Important for Records Managers, who are fixated on
classification terms• Important for traceability (“management evidence”)
long after the records have been routed
BEST PRACTICES CONFERENCE SHAREPOINT
Empowering Administrators
Want to empower Admins to operate at a higher level than raw configuration steps.
Records Manager: “I need a place for a new primary classification, with 10 record series and about 2 dozen terms.”
Admin: “Do you want a new site collection?”
Records Manager: “Huh?”
BEST PRACTICES CONFERENCE SHAREPOINT
Taking Advantage of PowerShell
• High-Level CmdLets for RM Deployment• New-RMApplication “Contoso Healthcare”• New-RMClassification “Corporate Files”• New-RMRecordSeries “Meeting Minutes”
–Classification “Corporate Files”
• Easy to Incorporate MMS Policy• Custom CmdLets create matching MMS terms
BEST PRACTICES CONFERENCE SHAREPOINT
Configuring the Records Center
BEST PRACTICES CONFERENCE SHAREPOINT
Records Management Setup
Basic Steps:1. Create a Specialized Web Application
2. Create Site Collections (1 RC per Classification)
3. Create Columns (add custom metadata)
4. Create (and syndicate) Content Types
5. Create Libraries and Folders (1 DL per Series)
6. Create Information Policies (Retention)
7. Create Content Organizer Rules
BEST PRACTICES CONFERENCE SHAREPOINT
Records Management Web Application
Key Points:• Create a separate web app just for RM.
• Can assign a unique application pool.• Enables process-level tracking of users/processes.• Enables common URL for multiple records centers.• Can fine-tune bandwidth specific to RM.
BEST PRACTICES CONFERENCE SHAREPOINT
DEMO
PowerShell: New-RMApplication
BEST PRACTICES CONFERENCE SHAREPOINT
“Primary Classification” = “Records Center”
1. Create a Separate Records Center Site Collection for each Primary Classification
2. Associate each Records Center with its own content database
• Easier to archive by primary classification• Restrict maximum number of sites to 1
“Case Files” “Organizational Files” “Program Files” “Administrative Files”
BEST PRACTICES CONFERENCE SHAREPOINT
DEMO
PowerShell: New-RMClassification
BEST PRACTICES CONFERENCE SHAREPOINT
“Record Series” = “Document Library”
1. Create a Document Library for each Record Series within a Classification
• Hierarchy of folders/sub-folders as needed
2. Create a Matching Content Type for each Record Series
• Serves as the primary mechanism for capturing critical metadata• Required for setting up CO rules
BEST PRACTICES CONFERENCE SHAREPOINT
DEMO
PowerShell: New-RMRecordSeries
BEST PRACTICES CONFERENCE SHAREPOINT
SummaryNew features in SharePoint 2010 further enhance the RM story by making it easier to organize content and manage metadata.
The convergence of traditional RM with emerging ECM technologies requires an RM-focused solution development strategy.
In-Place records management means richer and more intuitive UX for records managers and end users, but increases the need for sound information architecture.
BEST PRACTICES CONFERENCE SHAREPOINT
Clarity. Direction. Confidence.
FOR MORE INFOVisit my blog: www.JohnHolliday.net
Upcoming Book: “Managing Official Records Using SharePoint 2010: A Guide for Developers and Administrators”