ECM Presentation at SharePoint Conference in Las Vegas

Enterprise Content Management (ECM) has been a buzzword floating in the enterprise. Yet its promise of integrating proven methods and tools to capture, manage and deliver relevant information to an organization has yet to be realised.

Microsoft unveiled SharePoint 2010 at the SharePoint Conference 2009 in Las Vegas and its enhanced ECM capabilities look very promising.

People First, Process Second, Tool Third

Ryan Duguid, Senior Product Manager in the Microsoft Office Business Platform Marketing Group, gave a presentation showcasing how the promise of ECM can be effectively delivered by SharePoint 2010.

The session kicked off with Ryan analysing a wide array of typical information workers that would have varying content management needs ranging from legal compliance, understanding business value to providing organizational transparency. He described that existing ECM tools are either antiquated or too complex for everyone in an organization to embrace.

An interesting statistic he raised is that "over 50-60% of ECM implementations fail", caused by focusing too much on the technology. Organisations undervalue the relevance of understanding the pain points of their users and identifying key business needs prior to deploying an ECM solution.

Why SharePoint 2010?

Empowering users is what sets SharePoint apart from other ECM platforms. Its ease of use and tight integration with existing Microsoft toolsets like Windows and Office provides a low barrier to entry that can engage users to participate in ECM.

In addition, in this climate of tight corporate budgets, SharePoint is cost effective considering that it is an enterprise platform that can deliver solutions above and beyond ECM.

Lastly, its seamless integration with complementing SharePoint tools like social computing, business intelligence and search can be compelling for enterprises to invest in the platform.

We're in Vegas But We Still Can't Achieve ECM Nirvana Magically

Before jumping on the ECM bandwagon, Ryan stressed that proper planning is key to success. Identifying both organizational and user requirements is paramount in defining an ECM roadmap.

Next, engaging the users throughout the implementation can support the definition of information architecture, content taxonomy and compliance requirements. In addition, a relevant adoption plan needs to be in place to appropriately train users to show how organizational ECM strategies and toolsets work together.

Lastly, business metrics should be defined to quantify the return of investment (ROI) of an ECM solution.


ECM in SharePoint 2010 is to remove barriers

Key SharePoint 2010 ECM Features

Ryan demonstrated the key SharePoint 2010 features namely:

 

Based on an article originally written by Meetdux

SPC09 and MSS 2010

So that's it – it is over – finished.

I have had a very busy time here. I have been on the go from 0600 hrs to midnight and beyond just about every night.

It is not just the sessions that you are here for but also the networking. It is about meeting people and companies who you would never have the chance of meeting anywhere else.

This conference has all been about MSS 2010 and what will be in it.

I think we were all disappointed that the beta was not released at the conference. However, it is better to get it right than to try and release half a product.

The big bets from Microsoft seem to be Social Networking and Taxonomy and search.

It looks as if social networking is coming to the Enterprise and you will be able to find experts in your company you never knew existed. You will be able to collaborate and interact with your work colleagues like you have never have done before. It remains to be seen whether companies will embrace Social Networking. The plumbing and features will be there in MSS 2010.

Microsoft have done a lot of work in the Taxonomy arena. Taxonomies can now be global across the whole of the enterprise. There is auto prompting for tags after you type in the first couple of letters. There is a new column type for metadata. The taxonomy import method is strangely via an Excel spread sheet not an XML file. No prizes for suspecting someone will put on codeplex before too long a routine to convert XML to MSS 2010 Excel Taxonomy format. It remains to be seen how many levels of nesting the MSS 2010 Taxonomy will support. Unconfirmed reports are that at the moment it may only be 4 which is not enough for IPSV.

There are, of course, lots more features announced at the conference. The most significant one for me was the support for pages which will be XHTML compliant and WCAG 2.0 "AA" compliant.

Please note that it is WCAG 2.0 not W3C "AA" compliant. The WCAG 2.0 standard is still a draft after 6 years ! It remains to be seen whether the UK public sector will embrace WCAG 2.0 or will doggedly stick to requesting W3C "AA" compliancy.

So 7,500 people have now got the knowledge to be able, in one way or another, to elucidate about MSS 2010 or even be able to create MSS 2010 sites. But we are at least 6 months away from the release of MSS 2010. The official line from Microsoft is "It will be released in the first half of calendar year 2010" so it could be as late as 30th June next year. However, Visual Studio 2010 will be released on the 22nd March 2010 and that contains an awful lot of SharePoint features so my guess is that MSS 2010 will ship around that time if all goes well. Microsoft are not going to make the same mistake as they did with MOSS 2007 and rush it out before it is ready. It remains to be seen if there will be a dip in sales of MOSS 2007 like there was with MCMS 2002 in anticipation of the release of MSS 2010. There are a host of improvements with MSS 2010 which get over a lot of the limitations of MOSS 2007.

MSS 2010 is a more mature product that MOSS 2007. Its limits have been greatly improved over MOSS 2007 in terms of the size of farms and the limit on things like document libraries and lists. Document Libraries can contain 10's of millions of documents and lists can go above the 2,000 list items that there was in MOSS 2007. Although there things in place to throttle back Lists that grow to over 2,000 or 5,000 or whatever the system administrators set the limit to.


Post written by Nigel Price. Published: 23-Oct-2009 15:42 | 5 Comments |

Day 4 – Upgrading 2007 code to 2010

Two ways of upgrading Code

Upgrading Existing VSeWSS Projects

Upgrading custom code for SharePoint

    Common upgrade issues

    Solution and Feature Upgrading

Upgrade tool for VSeWSS

  • VS.NET 2010 Templates that allow for importing of existing VSeWSS projetcs
  • Converts projects to visual Studio 2010 format

Refactoring Solutions

Whilst VSeWSS had 1:1 feature:artefact - VS 2010 is more flexible

Feature Designer

    Allows the user to Add / remove SharePoint Artefacts

Upgrade issues

STP Files

    STP files for sites are no more

        Need to create a V3 site - fix it - save as WSP file

UI Changes

    CSS

        Almost everything has changed in SharePoint CSS

        Any customisations that depend on V3 CSS such as master pages will need to be redesigned to work correctly in V4.

        Pages in MSS 2010 - Fully XHTML Compliant WCAG 2.0 AA compliant level

    Custom Actions

  • No more toolbars in V4 UI Mode
  • Toolbar Actions are moved
  • Actions with code behind

    Backward compatible UI

        MSS 2010 Versioning Controls Allows for rendering of version specific content

Large List Query Throttling

    This will bite you !!

    Need to surface these sorts of issues in Development

  • Test as a non-admin user
  • Use realistic data volumes in development and test servers
  • Catch exception don't give back to user.
  • Create index on column you are using in CAML query.

Deprecated APIs

    MOSS code that runs within IIS will work without recompilation

    MOSS 2007 code that runs within the Timer service will need to be compiled

    Code that runs outside of IIS (that utilises the OM) will need to be recompiled or use bindingRedirects

    Numerous API's have been deprecated

        Recompile your app for V4 and you will get warnings

    Path to SharePoint Root needs to be upgraded was 12 Hive now 14 Hive (or SharePoint Root)

        

Deployment Path Issues – need to check these

Solution Upgrade Improvements

BindingRedirect in manifest.XML

    Redirect existing code to upgraded assemblies

Support for versioned feature upgrades

Feature Upgrade Query Object Model – features can have versions

    So can do upgrade programmatically

Feature Versioning, Feature Upgrading. ActivationDependency - MinimumVersion Attribute.


Post written by Nigel Price. Published: 23-Oct-2009 02:15 | 0 Comments |

Day 4 – Deep Dive into User Profiles and User Profile Data

User Profile Store is Person Centric store

Accessed by :- Central Admin -> Service Apps -> User Profile Service

Synchronisation is same as 2007

SubTypes are a type of user eg Contractors

Can add properties to the Sub Type eg Contractor has an end date

Uses Taxonomic properties and privacy

New Entity - Organizations

Can create ad-hoc objects (eg ad-hoc teams)

    Can add leaders and members of organisation

Profile Store Architecture

WFEs talk to App Server & Database

    To SQL for collegues, social tags, personalisation site etc

    To the service for light user profiles, mid tier cache, account name, display name, email, profile, url, title – cache will store 500K users.

A Number of New Databases

User profile DB

Contains the Profile and activity Feed

Social Data DB

Contains :-

  • Tags, Keywords, comments, bookmark, ratings
  • Mainly stores GUID or the note or ratings, URI, Profile ID, Timestamp
  • Term values for use on the newsfeed and Tags & Notes Page

Sync DB

ldap directory sync supports Sun, IBM Tivoli and Novell directories

Profile Synchronisation Tips

User Profile sync is a service and need to be explicitly started.

Write down the connection plan

    Connections, filters, properties mappings

    NB - 2007 connection, filter, property mappings will not migrate

    2010 has strongly typed property mappings

    Fewer connections the better, recommend single connection for a forest

Directory Permissions

    Need "directory get changes " (dir sync) rights for the AD credentials to read the change log and perform incremental sync

    Need write permissio0ns for export to directory

User profile sync can write back to AD (2 way sync) in SharePoint 2010

    Get started with user-only option for the first full sync, run incremental with users and groups

    After first full sync, run incremental not full

    LDAP and BCS users only (no groups)

BCS

    No export no new records (rows)

    Check your BCS models using the new external lists

 


Post written by Nigel Price. Published: 23-Oct-2009 02:06 | 0 Comments |

Day 4 – Upgrading a MOSS 2007 Site

Need to be MOSS 2007 SP2 before can start the upgrade

Run Pre-Upgrade Checker from the SP2 DVD

Reconsider that some Custom Solutions now OOTB

    Ratings, Content Organizer, Video

    Address Unsupported Changes

    Javascripts - Lazy Load now OOTB

Verify all custom solutions will deploy & work in MSS 2010

Upgrading to MOSS 2007 WCM

Migrating to MSS 2010

    All content will migrate over

No changes required to site content or branding

MOSS 2007 style UI retained

    Existing Pages and Master pages

So can migrate publishing sites across and they will look the same as they did before. But do not make use of MSS 2010 improvements.

Adding New MSS 2010 Visuals / UI

Steps to upgrade to MSS 2010 Visuals / UI :-

  • Flip Switch for SharePoint 2010 Visuals in site setting.
  • Content Master Needs Attention
  • App Pages Updated to 4.0

Update Content Master Page

  • Remove 2007 Controls – site actions Menu, Page editing ToolBar
  • Add Server Ribbon

Powershell to add content DB

Mount-SPContentDatabase –name WSS_Content_AWT –WebApplcation http://adventureworks

Under Site Settings site collection administrator – upgrade UI.

Change Master Page in site settings FROM v4.master

In Sharepoint Designer :- file -> Add item –Pages -> New Master Page

In all file view - get V3 master

Remove @register for site actions and console (last two @Registers)

WCMActions

Console

Page Editting Toolbar

Get V4 Ribbon from V4 – add to your master before id=container

Get MUI selector @Register directive from V4

Placeholder Breadcrumb now with V4 ribbon

Get v4.developer dashboard and add into your master.

Need to switch it on !

Use to PowerShell to switch on.

So what is new in MSS 2010 WCM

  • Server Ribbon
  • Publishing Process
  • Once-Click Page Authoring
  • Content Organizer
  • Social Feedback with Ratings
  • Multilingual
  • Digital Media
  • Cross Browser Rich Text Editing with valid markup
    • No more 3rd part Rich Text Editor controls
  • Rating and Tagging
  • Enterprise enforced taxonomies
  • Dynamic Rollup Filtering
  • Improved Content Query Web Part
  • Site Based workflows
  • Silverlight
  • Video Streaming
  • Social, Taxonomy & Rich Media
  • Ratings
  • Assign page a score of 1-5
  • Metadata
  • Taxonomy v Folksonomy
  • Tagging and Keywords
  • Included OOTB
    • Sliverlight Web Part
    • Video Streaming
    • Site Asset Library
    • Digital Asset Manager

Content Query Improvements

Dynamic Filters based on Page fields

Data view fields

  • No longer need to specify CommonViewFields
  • Style Sheet contains field "slots"
  • CQWP Editor Part displays enumeration of available field slots in selected template
  • Can pass in a semicolon delimited list of field names that are passed into the style sheet

 


Post written by Nigel Price. Published: 23-Oct-2009 01:58 | 0 Comments |

Day 3 - Building High Scale, High Availability Websites in SharePoint 2010

Need to decide what is "High" – sometimes need to trade between scale and availability – is sometimes a judgement call

Speed of response is critical to website success – Amazon found that a 100ms increase in page response time led to a 1% drop in sales

Toolkit

Browser Test Tools

  • Fiddler
  • IE Developer Toolbar
  • YSlow

Load Test Tools

  • TinyGet
  • Visual Studio Test Edition
  • HP LoadRunner (aka Mercury)

External Tools

  • SaaS load testers (eg Keynote)

What Impacts Performance ?

The Workload on the servers

Reducing the Workload on the Servers

  • Follow best practice for scalability of SharePoint Farms
  • Switch off unused services in SharePoint and Windows
  • Separate Authoring Farm from Production Farm
  • Set Content Databases on production to be Read-Only
  • Use SQL Mirroring to synchronise between the Author and Production Farm (MSS 2010 feature)
  • Can switch off services very easily on MSS 2010
  • Dont mix secure and insecure content
    • Caching efficiencies
  • Apply standard .NET best practices
    • Exception handling
    • Defensively code your applications
    • Do not catch exceptions you cannot handle
    • Fail Early
    • Clean up in Finaly {} blocks
    • Understand how .NET manages objects
  • Managed Code best practises
    • Be careful of what is going on under the hood
    • List.items.count will hydrate every item in the list - use SPLIST.ItemCount
    • Properly dispose of objects
    • Aggregation / Rollup
    • Use out of the box controls
    • Use SPLinq
      • Less efficient but safer
    • Never iterate through collections of strongly typed objects
  • Deployment techniques
    • Deploy via Features and Solutions
    • Keep Files uncustomized (safe mode parser is very expensive)
  • Output caching – use anonymous profile
  • BLOB caching
  • Offload work to other servers
    • SSL - Resource intensive Can be dealt with by the firewall or dedicated hardware
  • Use 2010 Custom Service Apps
    • Allows you to Offload expensive workloads to other servers
  • In MSS 2010 use the developer dashboard – tells you where time is being spent loading the page
  • For SQL: scale UP to 8 procs, scale OUT after 8 procs
    • Don't skimp on DB Server memory. Recommend 8G small, 16G medium, 32G large
  • In MSS 2010 use resource throttling

Reducing the page payload

  • Minimise Viewstate – must be as small as possible
  • Use Valid XHTML – no INLINE STYLE
  • Lazy Load JavaScript Files - remove them on the production farm f possible
  • Use IIS Compression
  • Payload could be 50% Images
  • In web.config -> compilation -> debug =false could save up to 20% of payload.

Reducing the number of requests

  • Consolidate files together during the build
    • Minimize the number of js and css files you are deploying – either manually or in MSBuild scripts
  • Use content delivery methods
    • Use css sprites – something that allows you consolidate into one image many images and use css to display the correct image - Use the Aptimize product to do this
  • Use Content Delivery Networks (CDNs) – if site needs to go worldwide
    • Content Delivery Networks cache content around the world
    • Eg Host streaming media – Smooth HD from Microsoft and Akamai
    • Host standard frameworks – JQuery and AJAX
    • Host Complete Sites - uses Akamai or similar

High Availability

Farm topology

  • Apply general availability best practise
  • Move other services off your web front end servers
  • Consider the usage profile

2010 improvements

  • Sandboxed solutions
    • Allow system admin control over resourecs used by custom code
    • Small performance hit for running in a separate thread
  • Health Analyser and server monitoring – catch issues earlier
  • Patch Management

 

 

 

 

 

 

 


Post written by Nigel Price. Published: 22-Oct-2009 15:53 | 0 Comments |

Day 3 – Deploying a 2010 Extranet

Design Considerations

  • Account Management
  • Network Access and Entry Points
  • Single Sign on
  • Information Disclosure
    • Cached files
  • AntiVirus
    • Client
    • Server
  • Rich Client Experience
  • Remote Employees
  • Cross Company Collaboration
  • Eg Shared project
  • Short or Long Term

SharePoint Zones

Web Apps and Multiple Authentication Needs

http://contosp - Employees

http://extranet.contoso.com – remote employees

http://Sharepoint - Internet

Now in MSS 2010 we have Host Named Site Collections

http://Portal.contoso.com

http://HRWeb.contoso

 

Authentication Scenarios

SP 2010 new Multi-Authentication Model allows 1 zone to have multiple authentication models to access same resource.

Remote Employees - https://extranet.contoso.com – Extranet Zone FBA Claims

Employees – http://contoso – Intranet zone – Windows Claims

When upgrading from MOSS 2007 Configure / Upgrade FBA Sites

Setup FBA-Claims (improved flow)

    Create Authentication provider

    Create or configure existing web app to use that authentication provider

Add Membership / role provider

 

Setting up Access to SharePoint

  • Leverage existing servers without replication without DMZ without additional Servers.
  • Wizard driven configuration to publish sites and apply polices
  • Spec of servers and paths to male available, supporting AAM
  • Dynamic rewriting of web content, including internal addresses and links.

 

Addressing Access Security

  • Single point of control for access policies.
  • Overlay granular access control to specific sites and features.
  • Access control based on user identity, role & endpoint security

Authenticating External Users

  • Leverage, Internal, External and / or virtually segmented directories.
  • Easily overlay authentication options
  • Eliminates additional authentication

Automated User Provisioning

  • Synchronisation of identities, passwords and entitlements across a wide range of systems
  • Automated user account provisioning to SharePoint, exchange and third party applications.
  • Automated digital certificate and smart card provisioning

 

 

 


Post written by Nigel Price. Published: 22-Oct-2009 15:34 | 0 Comments |

Day 3 – Capacity Planning

Scalability

  • Scale out SQL, APP Tier and WFE
  • Server counts can get larger
  • New Concept – server grouping

 

Flexibility

  • Multiple instances of the same service
  • Federation – cross farm federation

 

SharePoint 2010 performance challenges

  • WFE and App Servers have more work
  • SQL Servers have more work
  • The client needs more power

 

Improvements

Latency Improvements

  • Lighter and Faster Pages
  • Early Rendering
  • WAN Optimized
  • Better First and Second Browse (PLT1 & PLT2)
  • Focused on Popular Scenarios
  • IE8 and similar new browser are better for WAAN
  • Dependant on Content and Customizations

File Open and Save Using 2010 Office Application

Incremental File Open / Save

  • New Protocol (Cobalt)
  • Save is done in the background

Data Scale Improvements

  • 100 million Items per Search ndex
  • Tens of Millions of documents and Items in a single list
  • View/ Query 5000 items at a time
  • Many recommendations stay the same

 

Throughput & Reliable Improvements

  • Optimized key scenaros – reduce transactions costs
  • Protecting the farm from Spikes

 

Large Lists Improvements

  • Growing Lists to Tens of Million Items requires protecting the farms for excessive operations
  • Performant operations operate the same
  • Risky operations are throttled top protect the server

 

Throttling

  • The server informs clients on its health condition
  • The 2010 clients tune down the sync frequency (Backoff) when server in stress / overload
  • The server starts throttling "low priority" requests once under stress, and becomes more aggressive just before going down
  • Can switch on IIS Throttling

Capacity Management

  • The logging database
  • One stop shop for Health and Usage Data
  • Data providers gather across boxes
  • Extensible framework
    • Potential custom providers
    • Potential Data Warehouse

 

Capacity Guidance

  • Small Farms – 5000 users (~5 Requests Per Second) 50 – 100 GB of data
  • Medium Farm    - 10- 50K users (~50RPS) 1-2 TB data
  • Large Farm – 500K users (~500 RPS) – 10-20TB data.

 

Early Guidance

  • 64 bit only
  • Enabling 2010 features will require for power
  • Dedicated SQL power to logging DB and Web Analytics

Recommended Hardware Requirements

  • WFE and apps - 8GB+ 2 dual core processors
  • SQL 16GB + 2 dual core processors

Summary

MSS 2010 is

  • Bigger, Richer scalable and flexible
  • Faster, and more reliable
  • Easier to Diagnose

 

 

 


Post written by Nigel Price. Published: 22-Oct-2009 15:27 | 0 Comments |

Day 3 at SPC09 - Enterprise Content Types and Taxonomy

Content Type Syndication

    Aim - Up to date and consistent schemas across the Enterprise

    Syndicated Content Types can have a single policy ie from now on blog posting must expire after 18 months across whole enterprise

Publishing content Types

    Content Types are published from a normal site content type gallery

    Maximum of 1 hub per metadata shared application service

It is not a requirement that a metadata service syndicates a content type

Managing published content types

From the hub

Commands available :-

  • Publish
  • Unpublish
  • Republish
  • Roll up errors from consuming site collections

 

On the consumer side

Commands available :-

  • Extend a published content type
  • Derive from a published content type
  • Vew import errors
  • Refresh all content types consumed from the hub

Metadata driven scenarios

Within the Web Browser

List items can be tagged by using the "Edit Properties" UI

When editing properties of a document – you have managed keywords which will be validated when entered. If start with a couple of characters then get suggested list of terms.

Also have a taxonomy picker if open taxonomy then can add new items, f closed have to pick one.

Have keywords also in backstage on Office 2010 application like word, excel etc

Managed Metadata Column Type

  • Managed Metadata
  • Managed Keywords
  • New Column Type

Term Store Management Tool

Service Management

With this tool you can access all available terms stores from one location

Security Groups – so is security trimmed

Term Sets

Many groups per term store – used as a security boundary

Many term sets per group

  • 1000 total per term set
  • 30K terms per term set

Can merge terms using "Merge Tems" command

Can import terms from an excel spreadsheet.

 


Post written by Nigel Price. Published: 22-Oct-2009 15:20 | 9 Comments |