Sunday, April 20, 2008

MOSS 207 -- Site Collections

Today I am trying to have some of my thoughts on 'Good Practice' around the use of 'Site Collections' with MOSS 2007.  Though Every One has their own 'Best Practices' on this topic and I would like to post my thoughts on this most discussed topics at all the projects I have worked so far on MOSS 2007.

I would determine whether to use site collection or sub site for a purpose based on requirements, governance and the core-competencies in an organization.

I would recommend to use less Site Collections because this typically requires more Administrative & Custom Development efforts.

What is a SharePoint Site Collection?

A Site Collection, referring to SharePoint, has the following characteristics:

  • Is hierarchy of Sites
  • Contains one or more Sites. 
  • has a top-level Site that may have any number of sub-sites(Max 2000).  Each sub-site may have more sub-sites(Max 2000).
  • Can refer to a unique content database.
  • Can be configured to constrain the amount of data that can be stored(Site Quota).

The most of the SharePoint features are encapsulated/isolated within a Site Collection.

  • The Management of Site Collection level Content Types and Metadata; the key to building a taxonomy.
  • The Management of Site Collection level publishing images, master pages, page layouts and other publishing specific features.
  • The Management of Web Parts and Features.

Advantages of Using Site Collections
There are many advantages to using multiple Site Collections in an organization.  In fact, in most circumstances, I would recommend to use multiple Site Collections.  If we are referring to only the internal needs of an organization. In most situations, I would recommend spinning all Departments into their own Site Collection.  I recommend this because it’s rare that organization would prefer to share information across Departments. and If that is requirement then They can use common Site Collection which is available  at enterprise level or Division Level.

The Intranet is typically a place where departmental users work; i.e. get their job done.  This usually consists of individuals working with a myriad of documents through the work-in-progress (WIP) to publishing lifecycle.  Most often the information that is published to the Information Workers (employees) is controlled; information such as forms, policies, sales toolkits, and so on.  I contend this work needs to all be done in a Site Collection that is governed by a knowledge management team who is skilled in the architecture of information. I refer to this as the “Controlled Intranet”.  Does collaboration happen in this area?  Sure… everyday documents are worked on, submitted for review/approval and published.  The majority of our corporate IP is managed in this “Controlled Intranet”.  However, this information typically adheres to a strict corporate taxonomy and controlled flow.

There is a completely different need that organizations have.  The collaboration of Information Workers on topics such as technical and non-technical projects, social events such as the corporate Christmas Party, communities of practice, and so on.  This type of interaction (creative in nature) is what I typically refer to as collaboration and I recommend being managed in a completely unique Site Collection.  The primary reason for managing this in a unique Site Collection is based on governance. Guidelines for governing collaboration has to be different than that of the Controlled Intranet.

The Controlled Intranet
If goals are to create an environment that nurtures the sharing of knowledge and intellectual property (IP), there are two critical success factors that must be adhered to.

  1. We must make the addition of knowledge in the solution as simple as possible.  This is accomplished by:
    • Thoroughly understanding how our Information Workers perform their daily job duties.
    • Craft a solution that simplifies these duties by automating operational business processes.
    • Implement your Intranet in such a manner as to ease where this knowledge is stored.
  2. Provide a solution that makes locating information quick and simple so Information Workers can make better, informed business decisions.  This could be accomplished by:
    • Providing topical, functional and task-based site structures that aggregate knowledge in a manner making it easy to locate based on a need.
    • Architect knowledge in such a manner as to provide “very” relevant search results.

There are many other critical success factors.

The only way to successfully deliver a solution that adheres to these two critical success factors is to architect your corporate knowledge (information) in a manner that lends itself to aggregation and search.  And, the only way to do that is through a detailed and carefully thought-out taxonomy.  Simply tossing information into lists and libraries will only result in yet another repository that is similar to a file share.  For an organization to successfully implement a controlled environment that improves operational efficiencies requires governance.  The term governance itself implies rules, policies and best practices for the flow of information through an organization.

Collaboration
On the other side of the fence is an organizations pure collaboration needs.  I separate this completely because of the nature of work performed in these areas.  It is typically creative and less controlled.  Meaning, there may be little taxonomy design driving the storage of information and even less control of site structure.  I personally recommend you allow this type of environment to exist in your organization.  It is typically in this environment that most of your Information Worker's creativity occurs.

Collaboration can be delivered in one or more SharePoint Site Collections; based purely on how you wish to govern its use.  For example, you may choose to separate this at Department Level, Team Level or Project Level based on collaboration needs; this would depend on how you wish to govern the management and aggregation of project information.

It is also in the collaboration environments that you will find the greatest number of sites.  Make sure you set the appropriate expectations (communicate, communicate, and communicate):

  1. Information in these sites is less structured; which means you will typically see less relevant search results.
  2. This area can quickly grow to thousands of sites.  Don’t let 5,000, 10,000 or even 30,000 sites scare you; simply make sure you have the appropriate infrastructure to support it.
  3. Govern the amount of information that can be stored on each site; configure quotas.
  4. Govern the length of time a site may remain inactive.
  5. Provide a means of archival.

My Sites for Collaboration
One thing you may not realize is; each user’s My Site is in fact a unique Site Collection in-itself.  This means, you as the implementer/manager, can define governing policies, guidelines and best practices that dictate their use.  You can even define these governing rules for different roles in your organization.  Then, each user has a place they can be creative and build their own collaboration environment.

Do Collaboration Sites Ever Become Controlled?
Absolutely!  You may find that a team creates a secure collaboration environment to start a community of practice.  Over time, information may become key to driving success in the organization.  In such a situation, the team may ask to convert the site to a more structured environment so its content is available to everyone in the organization.

There are many ways of accomplishing this task.  The easiest is to leave the site intact, and move it through your internal architecture/design processes.  These processes will force some level of structure, including taxonomy; which will make the information available for aggregation and search (even constrained search).  You can then update your search configuration to include its content in a manner that best suits your organizational information needs.  Another approach would be to provide a controlled means of moving the site and content to the Controlled Intranet Site Collection.

Other Uses for Site Collections
Other uses for Site Collections are many.  e.g. if you are looking for a “pure” security boundary between a Public Internet Facing site and your Intranet, you can provision this with a separate web application/site collection (even separate hardware) to provide this security.  These are referred to as Zones MOSS 2007 supports the Intranet, Extranet and Internet facing zones quite well.

As you can see, there are many good reasons for using multiple Site Collections in environment.  One of the strongest IT cases for their use is the separation of Content Databases.  In the past, we have been limited with how our backup, restore and disaster recovery processes worked; without the purchase of a 3rd party utility.  MOSS 2007 natively supports a recycle bin; thus pushing the ability to restore a deleted document back into the hands of the document owner (without IT intervention).  In addition, Microsoft has recently released Data Protection Manager (DPM) services that provide us with a wealth of Content Database administration tools; including the ability to perform item-level restorations!  For more information about Data Protection Manager, please visit http://www.microsoft.com/systemcenter/dpm

Considerations for the use of Multiple Site Collections
There aren’t any “hard and fast” rules for the use of Site Collections.  However, when considering this during architecture and design efforts, ask the following questions to determine whether there is a need to use a unique Site Collection. 

  1. Information to be maintained will not be shared with other collections of information.  In the example where IT information rarely being aggregated and displayed elsewhere would lend itself to a unique Site Collection.
  2. Information SLA’s require availability that dramatically differs from that of other collections of information.  For example, the availability of customer order information could be dramatically different than that of collaboration site information.  In such a situation you may need to maintain a smaller Content Database for customer order information; thus easing the pains associated with data restores and disaster recovery operations.
  3. Governing policies, guidelines and best practices differ than that of other information collections.  For example, a collaboration environment may have unique policies for your site creation process, those who have the ability to administer sites and what customization is made available.
  4. Language requirements differ than that of other information collections.  An example of this would be for global deployments and you have multi-language requirements, (at a minimum) you will wish to use unique Site Collections.  Note – global (distributed) environments require considerable planning and design considerations and are outside the context of this article.  However, I thought I would mention it!
  5. Information has unique security requirements because of where it is hosted.  An example of this would be an Internet facing site should be separated for complete separation from internal corporate IP.

Disadvantages of Using Site Collections
So, I spent all that time describing the advantages of using site collections; what are the disadvantages?  Once you become familiar with SharePoint, you will quickly learn that virtually every aspect has been designed with the Site Collection in mind.  Meaning, virtually everything is bound to a single Site Collection.  To give you some examples of this:

  1. All out-of-the-box Web Parts understand and work well within the boundaries of a Site Collection.  None of them, including the significantly used Content Query Web Part, will cross Site Collection boundaries.  Thus, the aggregation of information across Site Collection boundaries is not possible using out-of-the-box Web Parts.
    • You need to consider this when determining how you will split your information across Site Collections.  Any situation that requires you to aggregate and display information across Site Collection boundaries will require a custom development effort or the purchase of a 3rd party Web Part.
  2. You will also find that the use of Content Types and Metadata is specific to a Site Collection.  Thus, if you architect a taxonomic structure that will be used in more than one Site Collection, you will have to duplicate your efforts; there is no means today of centralizing this taxonomic structure across Site Collection boundaries.
  3. Your branding and content publishing customization efforts will also have to be duplicated.  Currently, all master pages, page layouts, and CSS files, common publishing images and reusable content is bound to a Site Collection.

It is important for me to note here; if you build your custom Web Parts, applications, and branding using the preferred “solution/feature” package approach, these can be easily deployed across a farm containing many Site Collections.  This means thought, design and discipline needs to be exercised when developing custom solutions for SharePoint.

Planning for Site Collections
The Microsoft TechNet site does contain a fairly significant amount of Office SharePoint Server 2007 planning guidelines and worksheets; and I do recommend you read it!  However, you may find it difficult to locate a single place that contains a “here is the information I need to gather for planning Site Collections”.  It may be there, but I haven’t found it; at least not in one succinct document.  At a minimum, I recommend you collect and plan for the following:

  • Name of the Site Collection.
  • Purpose of the Site Collection.
  • Site Collection administrators.
  • Who has access (visability) to the Site Collection.
  • Initial template to be used for Site Collection creation.
  • What customization efforts will be required; i.e. navigation, branding, master pages, page layouts, CSS, etc.
  • How search will be configured; content sources, scopes, keywords, best bets, etc.
  • Governing policies for a site creation process.
  • Governing policies for site administration (who and how they will be educated).
  • Governing policies for overall purpose and usage.
  • Business Intelligence needs; i.e. data connections, Excel services configuration…
  • Document Management needs; document management lifecycle, publication model (WCM, PDF, ect.).
  • Records Management needs.
  • Forms Management needs; InfoPath, ASP.NET forms, Forms Services configuration, etc.
  • Information flow; workflow…

This is not an exhaustive list, but should help you get well on your way…

Conclusion
In my opinion, the appropriate use of SharePoint Site Collections can be determined entirely based on requirements and governing rules, policies and best practices.  Of course, you then need to focus on the appropriate infrastructure and IT operations to support those needs.  However, allow your requirements and design to drive the initial decisions, document governing rules for their use and reap the benefits of your success!

Wednesday, April 9, 2008

SharePoint protocol documentation released...

SharePoint Protocol Documentation Released.......

They are split into two groups Front End and Back End. Front end protocols are all the ones that typically talk to a front end web server and the back end ones are mostly how the front end server talks to other servers such as SQL Server.

Get them here: SharePoint Products and Technologies Protocols

Monday, April 7, 2008

Displaying a list on another site (in the same site collection)

A pretty common request is the ability to display content from one site on another site.  For example, you might have a blog sub site, and want to show those posts on the home page of the parent site.

In WSS V3, this is easy to do with SharePoint Designer.

Open SharePoint Site in SharePoint Designer and open the page in Edit mode with Designer........

Inside SharePoint Designer, in the design view of the page, click where you want the list to go, and then select "Insert Data View" from the Data View menu:

image                         image    

In the Data Source Library Task Pane, select "Connect to another library...", since we want to display a list that is not in the site where we are currently loggedin Click Connect to another library option from the bottom of Data Source Library Task Pane.

Click Add, then choose a display name and type in the URL of the site where the list is:

image

Click OK in both dialogs, and then expand the new Library until you reach the list you want to display on the page. Now right click on the list & Select Show Data. Data Source Details Task Pane shows the columns from the selected list. Insert the items by selecting Multiple Item View from the insert menu:

image

You can change the layout of the dataview webpart Properties.This is almost similar how we modify view of other SharePoint WebParts.

Monday, March 3, 2008

Silverligt Blue Print for SharePoint

Integrate Silverlight with SharePoint? Check out the brand new Silverlight Blueprint for SharePoint site: http://www.ssblueprints.net/sharepoint/ !

Sunday, February 10, 2008

Configuring BLOB Caching for SharePoint Web Application

BLOB Caching is a feature that isn't well known in SharePoint but serializes large objects to disk on the Web Front Ends to avoid database round-tripping. BLOB Caching would prove beneficial for those who work with large file sizes as this improves page delivery time as cache stores files on front-end server and reduces database traffic. You need to enable BLOB Caching you need to edit your web.config file and changes will be applied to all site collections within the web application.

BLOB is Binary Large Object. here are the steps......

Open web.config file of your Web Application.

You can locate web.config file's location from IIS Manager.

Enable and configure the disk-based cache(BLOB)

    • In the web.config file, find the following line:
    <BlobCache location="C:\blobCache" path="\.(gif|jpg|png|css|js)$" maxSize="10" enabled="false"/>



                  change enabled parameter, from       "false" to "true"




    • To change the size of the cache, type a new number for maxSize



    .                   The size is expressed in gigabytes (GB), and 10 GB is the default.




  •                 If the directory that is specified in the location parameter does not have enough space to accommodate the cache size, you can type a new directory


  •                   for the location. 

    • To add new file types to the BLOB cache, type the file type next to the other file types. Separate each file type with a pipe (|) character as shown in the file.




  • Save the file, and close the file




  • There is no need to reset the iis after doing this.


  • Saturday, February 9, 2008

    Knowledge Management 2.0 With MOSS 2007

    Knowledge management is the name of a concept in which an enterprise consciously and comprehensively gathers, organizes, shares, and analyzes its knowledge in terms of resources, documents, and people skills.

    During mid 90's, it was believed that few enterprises actually had a comprehensive knowledge management practice operation. Advances in technology and the way we access and share information have changed that; many enterprises now have some kind of knowledge management framework in place.

    Knowledge management involves data mining and some method of operation to push information to users. There are various solutions offering to help an enterprise inventory and access knowledge resources.Basically Knowledge Management solutions have ability to organize and locate relevant content and expertise required to address specific business tasks and projects.  I believe that MOSS 2007 has most of the Knowledge Management abilities. and their are some Scanners available which has capability of one touch scanning to SharePoint. if you look at the four processes of Knowledge Management you will find that MOSS 2007 can become best fit for Knowledge Management.

    1. Gathering
    2. Organizing
    3. Refining 
    4. Disseminating

    MOSS has great capabilities in Organizing, Refining & Disseminating Content and it has partial Gathering capability which can be completed using One Touch Scanners and some custom coding using C# or VB.net over SharePoint Object Model.

    Knowledge Management plan generally involves a survey of corporate goals and a close examination of the tools, both traditional and technical, that are required for addressing the needs of the company. The challenge is to select or build software that fits the context of the overall plan and encourage employees to share information. MOSS 2007 is flexible enough to give such capabilities.

    Friday, January 18, 2008

    What is SharePoint

     

    I was reading few Articles from SharePoint Expert's and I am still trying to get to somewhat near to that level where I can be called as SharePoint Expert. Many Times I get inspired from such Experts to write an article. I was reading few article and really this question comes to my mind straight away. Here I am trying to put some of my thoughts on SharePoint.

    I would say SharePoint is a Platform or a Framework which you can use the way you need to or even use it in multiple way once configured properly. but here are few options for SharePoint's usage few of them Requires some additional servers to complete the role but I would still say SharePoint can be molded for that role.

    • Internet Portal
    • Enterprise Search Portal
    • Collaboration Tool
    • Business Intelligence tool
    • Forms Server
    • Extranet Tool
    • Enterprise Content Management Tool
    • Web Content Management Tool
    • Enterprise Project Management Tool
    • Business Process Management Tool
    • Document Management Tool
    • Unified Messaging Gateway
    • E-Commerce Application

    and many more roles can be added and we will see those being added to the list. I have seen few people who believes that SharePoint is just a ECM tool and you can not do anything else but ECM with SharePoint and I just ignore their thoughts as I know that they are the people who never understood SharePoint properly.

    I would say SharePoint is a business productivity platform.  You simply need to understand what needs to be done so that you can implement that way.

    Wednesday, January 16, 2008

    Installing MOSS 2007 on Server 2008 & SQL 2008

    Since Last 3 Days I was trying to install MOSS 2007 on Server 2008. for testing purpose I selected to Use Microsoft Virtual PC and tried to Create new Virtual PC on my laptop which is running Vista Business.

    I Created new Virtual PC and Installed Server 2008 Standard Edition over there. Second Step After Server Installation was to Install IIS on the server so I proceeded & Installed IIS over there. Third Step was to install SQL 2008 I installed current CTP version of SQL 2008. Till SQL installation everything went perfect and as expected and I thought that now it will be smooth ride for me to install SharePoint 2007 as I have done many installations of SharePoint 2007 during last few months. but I was proved wrong immediately the moment I clicked setup from my MOSS install files. What I get was following Screens.

    image

    It was asking for installation with SP1 and I knew that there is no Installation with SP1 Available. still I went to Microsoft.com and tried my luck but search result was as expected I got Separate SP1 Installation Package and MOSS installation after that I was discussing this issue with few of my friends and We found an option while Discussing and the option was to try to Extract SP1 files both WSS3.0 SP1 & Office Servers Pack SP1 to \updates folder of MOSS installation files. and then try to Install on Server 2008. It worked like anything so I decided to write this article on my live space so that my other friends gets benefited.

    After Installation using SQL 2008 instead of SQL 2005 was nothing different it was all same and I was able to do that without any issues.

    I hope that Microsoft will come up with MOSS installation with SP1 soon so that people don't need to do manual extraction of .exe and merge them with MOSS install files but till then You have to use the method to extract the install files. If you have ISO image of SP1 then you might not need to Extract the files from exe as ISO image contains all the files in Extracted mode only.

     

    Hope this information Helps....

    Hiran Salvi

    Gradual Upgrade - SharePoint 2003 to Moss 2007 takes a lot of disk space

    I have completed few upgrades during last year from SharePoint 2003 to MOSS 2007 and those who know SharePoint will always agree on doing upgrade using Gradual Upgrade as primary choice as it is the most safe method for executing upgrade but on the other side this method consumes lots of Disk Space on SQL Server when the upgrade is running. There is no proper documentation which guides us on this. I am stating even though there is documentation on technet itself about this that this requires about 2 to 2.5 times of the size you are upgrading but never ever in my up gradation projects I was ever near to this thing I had found SQL server using much more space then mentioned on Technet. I have always found about 6-7 times of Space being utilized by SQL Server while upgrade is running and once upgrade is done completely then the temp db gets deleted automatically so space gets freed up but one needs to have provision for the space when you start upgrade.

    Hope this helps...

    Hiran Salvi