As the computer industry as a whole is evolving 64-bit to the de facto standard, even for client systems, we seem to be at a cross roads with this next wave of Microsoft Office products where we still need to choose between 64-bit or 32-bit.
One important thing to be aware of is that running 64-bit AND 32-bit versions of Microsoft Office on the same operating system is not supported. Here are some links that provide information about the 64-bit version of Office 2010 as well as information about compatibility in general.
Microsoft TechNet: 64-bit editions of Office 2010
Microsoft TechNet: Application compatibility assessment and remediation for Office 2010
Reference
Microsoft (2010). 64-bit editions of Office 2010. Retrieved June 25, 2010 from http://technet.microsoft.com/en-us/library/ee681792.aspx.
Microsoft (2010). Application compatibility assessment and remediation for Office 2010. Retrieved June 25, 2010 from http://technet.microsoft.com/en-us/library/ff394407.aspx.
Friday, June 25, 2010
Microsoft Office 2010: About 64-bit
Thursday, June 17, 2010
SharePoint 3.0: Command for Forcing Hotfix Installation
psconfig.exe –cmd upgrade –inplace b2b –force
Reference
Microsoft (2010). Command-line reference for the SharePoint Products and Technologies Configuration Wizard (Office SharePoint Server). Retrieved June 17, 2010 from http://technet.microsoft.com/en-us/library/cc263093(office.12).aspx.
Monday, June 14, 2010
Links: Microsoft Licensing Information for SharePoint 2010
http://sharepoint.microsoft.com/en-us/buy/Pages/Licensing-Details.aspx
Microsoft SQL Server 2008 Licensing
http://www.microsoft.com/sqlserver/2008/en/us/licensing.aspx
Microsoft Windows Server 2008 Licensing
http://www.microsoft.com/windowsserver2008/en/us/licensing-R2.aspx
Wednesday, June 02, 2010
SharePoint 4.0: Attach Content Database to Web Application
Here are the steps:
1. Attach the content datbase to the SQL Server instance. If moving a content database in from a different farm, then this may require doing a SQL Server database restore. Be sure that the MDF and LDF files are created in a location which is consistent with your other content datbases.
2. Open PowerShell. With the security context of an administrator account having shell access, open PowerShell on a SharePoint 2010 server.
Start > Administrative Tools > SharePoint 2010 Management Shell
3. Test the content database.
Type the following command:
Test-SPContentDatabase -Name %ContentDbName% -WebApplication %WebApplicationName%
4. Attach the content database to SharePoint Web Application.
Type the following command:
Mount-SPContentDatabase -Name %ContentDbName% -WebApplication %WebApplicationName%
5. Verify the attached content database. Navigate to SharePoint Central Administration > Application Management > Manage Content Databases. Verify the database name, database status, and current number of site collections. If necessary, adjust the Site Collection Level Warning and Maximum Number of Site Collections settings appropriately.
Reference
Microsoft Technet (2010). Add a content database (SharePoint Server 2010). Retrieved June 2, 2010, from http://technet.microsoft.com/en-us/library/cc825314.aspx.
Tuesday, June 01, 2010
Three Nice Enhancements to the Send To Functionality of SharePoint in 2010
2. Turn on or off manual submission from the Send To menu. For each configured Send To connection, you can check a box to either enable or disable this location from appearing in the context menu of a document.
3. Sent To action. Last but not least, for each configured connection, you can configure the Send To action to be copy, move, or move and replace with link. If you can remember in 2007, this was a mighty gap that required some workflow trickery to make it practical. Now we have some out of box comfort.
Monday, May 24, 2010
Thoughtful Quote
- Peter Drucker, 1978
Friday, May 21, 2010
How Communication Gaps Can be Viewed as Opportunity for Business Analyst Function
One thing I ponder about from time to time is the impact that words have on work, people, and communications in general. Words are very significant in my profession. Words appear everywhere. In Web portals, they are used to instruct people how to use the Web site or how to perform a function. In presentations, words are used to concisely deliver a big message, one little message at a time. A funny thing about words is how they conjure up different emotions and different meanings to different people.
So, how does all of this relate back to the theme of this blog? Well, UX topics aside, there are some interesting behavioral patterns that I recently noticed, because I had been fixated on words. Recently, I happened to be observing a debate between colleagues, regarding the best way to configure a feature of a new Learning Management System (LMS). For background, this LMS Web application is intended to deliver courses and track professional development information for employees. It happens to be a third party product.
During the course of debates I realized that there is a distinct difference between the way that the software developer interpreted the name of a software feature versus the way that a business stakeholder interpreted it, in the context of them working together on the system implementation. Both individuals were working together, exploring how the third party application works, and trying to figure out the best way to leverage the product in order to meet the business requirements.
During this adventure, the two individuals came across a product feature called "curriculum." Here is the behavior that I noticed:
The software developer evaluated and experimented with the "curriculum" feature and tried to figure out different ways to use the feature in order to meet the business requirements.
The business stakeholder, performing the same experiment, forcefully attempted to make the software behave as they understand the word "curriculum" to mean in normal business context.
The two individuals then reached a disagreement when the software developer offered various options for how the feature could be used, while the business stakeholder argued that "no, a curriculum means this and so it must only be used like this." Not only did the two disagree on what the word means in general business context, but both also disagreed on the appropriate way to approach the software configuration task.
Do you see the distinction?
The software developer views the "curriculum" not for what the label means, but for what the actual program capability is and how it interacts with other related capabilities in the system. On the other hand, the business stakeholder had a fixed idea because of the label.
What is the point of all of this? Business analysis. A business analyst function is extremely important on a Web application project. Whether this function is performed by a dedicated expert, absorbed and performed by the project manager (or other resource), there needs to be a person who can understand the business requirements while also understanding the developers' way of thinking so that these two perspectives can be united and a common goal can be met.
Thursday, May 13, 2010
SharePoint 4.0: Formula for Estimating Content Database Size
((D × V) × S) + (10 KB × (L + (V × D))) = C
C = Database Size in KB
D = # Documents * 3
L = # List Items
S = Average size of documents in KB
V = Average # Versions in a Document Library (Greater than 0)
Reference
Microsoft (2010). Storage and SQL Server capacity planning and configuration. Retrieved May 13, 2010 from http://technet.microsoft.com/en-us/library/cc298801(office.14).aspx.
Wednesday, May 12, 2010
Links: MSDN Ramp Up Track, SharePoint for Developers
Microsoft has a Ramp Up program on MSDN, to help facilitate learning and professional development, http://msdn.microsoft.com/en-us/rampup/default.aspx. There are some interesting tracks, including the following ones related to SharePoint:
MSDN Ramp Up Track, SharePoint for Developers Part 1
http://msdn.microsoft.com/en-us/rampup/dd221355.aspx
- Introduction to Web Parts
- Data Lists for Developers
- Programming Event Handlers
- Workflow in SharePoint
- Silverlight and SharePoint
MSDN Ramp Up Track, SharePoint for Developers Part 2
http://msdn.microsoft.com/en-us/rampup/dd320759.aspx
- Page Navigation – Integrate navigation into your SharePoint application
- Page Branding – Brand a SharePoint site to look like your existing web application
- Web Services – Access list data using built-in web services
- Custom Content Types – Implement behaviors from different document types
- User Management – Manage web site users without code
Links: Microsoft SharePoint 2010 Launch Event

Microsoft SharePoint 2010 Launch Event
http://sharepoint.microsoft.com/2010launch/en-us/Pages/home.aspx
Webcast
May 12, 2010
11:00 AM EDT
Keynote to be delivered by Stephen Elop.
Tuesday, May 11, 2010
Links: SQL Server Reporting Services (SSRS) SDK for PHP
Interoperability Bridges and Labs Center
http://www.interoperabilitybridges.com
SQL Server Reporting Services (SSRS) SDK for PHP
http://www.interoperabilitybridges.com/projects/sql-server-reporting-services-sdk-for-php
SQL Server Reporting Services (SSRS) SDK for PHP on Codeplex
http://ssrsphp.codeplex.com/
Reference
Microsoft (2010). SQL Server Reporting Services SDK for PHP. Retrieved May 11, 2010 from http://www.interoperabilitybridges.com/projects/sql-server-reporting-services-sdk-for-php.
SharePoint 3.0: Setting Default Expires Date on Announcements
When using the out of box Annoucements web part in SharePoint 3.0, items do not have a default value. For practical purposes, when using the web part in sites, it usually makes sense to limit the number of announcements that display in the view that is positioned on the Web page.
So, in order to limit the items in a view, it makes sense to use sorting on a field such as Expires in conjunction with an item limit on the view. And, if you are going to sort (on Expires), you need to make sure that all items have a value to be sorted on. Otherwise, those items lacking the Expires won't appear.
Solution:
An easy way to ensure that all items have an Expires date is to set the default value of the column. To do this, navigate to the Announcements list, to Settings, List Settings. In the "Additional Column Settings" area, set the "Default Value" to a "Calculated Value" of =[TODAY]+60. This will default the Expires date to be sixty days from when the announcement item is cerated.
Thursday, April 29, 2010
User Experience (UX) in Web Portals
User Experience tends to be one of the facets of information system design that draws quite a bit of controversy because it is very subjective. Combining information architecture concepts, system capabilities, features, security models, business requirements, functional requirements, standards, and policies to develop a design will get you most of the way there. However, there are still some very volatile aspects to the design process; these include emotion and perception.
The measure of user experience of a system is highly subjective. People's attitudes, situations, level of knowledge, and other factors produce an emotional response every time the person uses the system. Although I have lots of past experiences, projects, and communications to draw from for guidance on how best address matters related to UX debates; I've decided that I really need to collect some factual information to keep in the toolbox. I think that behavior studies, polls, statistics, and other sources of research are required to build a solid fact base to support decision making. It is simply not good enough to speculate how people think and how people will respond to a particular system design.
I plan to invest some time in this topic and then reflect on my findings in subsequent posts.
Tuesday, April 27, 2010
Sample Sizing Estimate for SharePoint Server 2010 Search Environment
Below is a sample search storage estimate for environment with 500GB content databases. This was calculated by adding up the sum of MDF files. There are so many considerations for storage, and this is just a rough sketch of the storage aspects related to the Search Service Application. This does not consider base installation overhead nor does it factor in other SharePoint Service Applications (SSA), Office integrations, User Profiles, Usage Database, PowerPivot, etc..
1.
ContentDBSum = Measure the size on disk of MDF files. For this example, 500 GB.
2.
IndexTotalIndexSize = ContentDBSum * .035 or 17.5 GB
QueryComponentIndexSize = TotalIndexSize / Number of Index Partitions
StorageQueryComponentIndexSize * 3 single query component with space for index merging
QueryComponentIndexSize * 4 single query component with space for index repartioning or 70 GB
3.
TotalPropertyDBSize = ContentDBSum *.015 or 8 GB
TotalPropertyDBLogSize = ContentDBSum *.0031 or 2 GB
4.
TempDBSize = TempDBSizeContentDBSum * .00034 or 1 GB
5.
TotalCrawlDBSize = ContentDBSum *.046 or 23 GB
TotalCrawlDBLogSize = ContentDBSum *.011 or 6 GB
ContentDBSum *.011 = TempDBSize = 6 GB
6.
SearchAdminDBSize = # items in index * .3 or override as 5 GB
In this case, I don't know how many items there will be in the index so I am going to allocate 5GB.
7.
Backup Size = basically, add all of the database sizes together.
Reference
Microsoft Technet (2010). Performance and capacity test results and recommendations. Retrieved April 27, 2010 from http://technet.microsoft.com/en-us/library/ff608068(office.14).aspx.
Monday, April 26, 2010
Links: Planning SharePoint Server 2010 Search
http://www.microsoft.com/downloads/details.aspx?familyid=D7C0091E-5766-496D-A5FE-94BEA52C4B15&displaylang=en
(2 of 4) Microsoft: Search Environment Planning for Microsoft SharePoint Server 2010
http://www.microsoft.com/downloads/details.aspx?familyid=5655EACA-22DF-4089-BCD3-38A1F5318140&displaylang=en
(3 of 4) Microsoft: Search Architectures for Microsoft SharePoint Server 2010
http://www.microsoft.com/downloads/details.aspx?familyid=22FFC029-2C08-457D-8311-CA457C6D160E&displaylang=en
(4 of 4) Microsoft: Design Search Architectures for Microsoft SharePoint Server 2010
http://www.microsoft.com/downloads/details.aspx?familyid=5A3CA177-FB9A-4901-9797-0C384277DB7C&displaylang=en
Friday, April 23, 2010
Windows Server 2008 R2 Data Center VS Enterprise
Role: No difference
Core Installation Features: No difference
Features: No difference
Technical Specifications: See Below
Datacenter
· hot add processors
· hot replace memory
· hot replace processors
· Virtual image use rights = Unlimted
· X64 sockets = 64
Enterprise
· No - hot add processors
· No - hot replace memory
· No - hot replace processors
· Virtual image use rights = Host plus 4VM
· X64 sockets = 8
Reference
Windows Server 2008 R2: Overview of Editions
http://www.microsoft.com/windowsserver2008/en/us/r2-editions-overview.aspx
Friday, April 09, 2010
Inconsistency in Information Management System Governance, Projects is Kryponite
Consistency is important because it level sets the way that people approach information management projects, including SharePoint projects. If some projects were to take a fly by the seat of your pants approach, disregarding governance concepts, it is bad because the resulting deliverables will be inconsistent from what the guiding principles that the governance model is supporting. What is worse is the sloppy result is the one that is achieved first, since it takes less time to do things when you circumvent processes.
Meanwhile, you might have some projects following the rules and progressing a bit slowly while the wild wild west ones are moving fast and crossing the finish line earlier. By the time the "good" project finishes, the wild wild west has already become the de facto standard. A precedent is set and now all of those "unnecessary" rules are perceived as pockets of resistance and momentum builds in avoiding the rules rather than following them. This is a vicious cycle and requires quite a lot of effort to reverse the damage. It is much easier if the executive sponsors can support the governance concepts, then promote and mandate accordingly.
The benefits of the formal approach to projects and adherence to information management governance is obvious to anybody who has experienced a complete project life cycle and then stuck around long enough to observe the after effects. This topic is very much philosophical; do you want to manage projects short-sighted to get the project completed or do you want to manage projects for the greater good, long term to support the guiding principles of the governance model?
I will draw an analogy. You live in the mountains and have a wood stove. You can spend cheap money buying an axe, then hurry to chop wood with it to meet an immediate need of filling the stove once. Or, you can invest more money on a chainsaw and then be able to provide wood for the stove, more efficiently, every time you need it moving forward. It is called return on investment. Sustainable efficiency and the ability to produce higher quality deliverables (which are easier to maintain) is the result of following a slow and steady approach to information management projects; taking the time to remain aligned with the principles of the governance plan.
Monday, March 22, 2010
Documenting Your SharePoint Server Search Design Specifications
When I document search specifications, I do it in a Word document and capture detailed information in a similar format to how the actual configuration screens appear. Here are some samples:

Crawl Rules



SharePoint 3.0: How to Create an Anonymous Discussion Area in an Existing Web Application
Description:
You want to create a discussion board area that is anonymous, so that people can post messages without requiring to authentication and without tracking their identities in discussion posts.
Solution:
Here are steps to create an anonymous, stand alone dicussion area:
Step 1. Enable Anonymous Access on Existing Web Application
Central Administration > Application Management > Application Security > Authentication Providers
Click "Default"Anonymous Access > Check "Enable anonymous access" > Click "OK"
Note the description of the setting you are enabling: "You can enable anonymous access for sites on this server or disallow anonymous access for all sites. Enabling anonymous access allows site administrators to turn anonymous access on. Disabling anonymous access blocks anonymous users in the web.config file for this zone."
Tom Daddario adds "Make sure your intended Web Application is selected before modifying any configuration settings."
Step 2. Create a site collection
Central Administration > Application Management > Create Site CollectionProvide Title, URL, Template, and Site Collection Adminstrators, click "OK"
Step 3. Enable Anonymous Access on Site Collection
Site Actions > Site Settings > Advanced PermissionsPermissions for Site > Settings > Anonymous AccessAnonymous Access > Select "Entire Web site" > Click "OK"
Step 4. Create Discussion Board
Click "View All Site Content"Click "Create"Communications > Click "Discussion Board"Provide Name > click "OK
Step 5. Modify Anonymous Permissions on Discussion Boards
Discussion Board > Setting > Click "Discussion Board Settings"Click "Permissions for this Discussion Board"Actions > Click "Edit Permissions" (click "OK" to message)Settings > Click "Anonymous Access"Anonymous Access > Anonymous users can: > Select "Add Items, Edit Items, and View Items" > Click "OK"
Friday, February 26, 2010
Links: PowerPivot videos on Microsoft Technet...
PowerPivot videos on Microsoft Technet...
PowerPivot Part 1 - Loading Data
http://edge.technet.com/Media/PowerPivot-part-1-Loading-Data/
PowerPivot Part 2 - Preparing data
http://edge.technet.com/Media/PowerPivot-part-2-Preparing-data/
PowerPivot Part 3 - Analysis
http://edge.technet.com/Media/PowerPivot-part-3-Analysis/
PowerPivot Part 4 - Sharing in SharePoint 2010
http://edge.technet.com/Media/PowerPivot-part-4-Sharing-in-SharePoint-2010/
PowerPivot Part 5 - Management
http://edge.technet.com/Media/PowerPivot-part-5-Management/
Wednesday, February 24, 2010
Use Case Points for Project Estimating
Due to the rapid development nature of SharePoint, I think Use Case Points may be an efficient estimating tool for large SharePoint projects which are being formally managed. Such projects typically have an upfront investment in business analysis and likely have documented outputs including use cases. Use cases can be written like a sequential script of steps and exceptions to explain various ways that the system will be used. I think use cases themselves provide a great deal of value on a portal or search project because they provide greater visibility and detail about the requirements of the solution.
So, taking an artifact (use cases) that might already exist for a SharePoint project, you can simply use this information and apply the Use Case Points technique to gain other insights about time and cost estimates for the project.
Reference
Clemmons, R. (2006). Project Estimation With Use Case Points. Retrieved February 24, 2010 from http://www.stsc.hill.af.mil/crosstalk/2006/02/0602Clemmons.pdf
Cohn, M. (2005). Estimating With Use Case Points. Retrieved February 24, 2010 from http://www.methodsandtools.com/archive/archive.php?id=25.
Koirala, S. (2004). How to Prepare Quotation Using Use Case Points. Retrieved February 24, 2010 from http://www.codeproject.com/KB/architecture/usecasepoints.aspx.
Thursday, February 18, 2010
Ten Reasons Why I Love VMWare for SQL Server
Sometimes it seems as if there is a "do not virtualize SQL Server" echo in the SharePoint community, at conferences, and events. For many practical reasons, I reject this sentiment and believe that SQL should be one of the first roles to virtualize.Here's ten quick reasons:
1. Storage - SAN storage, local drives or ISCSI drives. Storage can grow as requirements change.
2. Performance - Yes, SQL Server requires a lot of resources, but if you use resource governor in SQL Server 2008 and later you can control a lot of the spikes. In a virtualized environment, the pool of shared resources provides good spillover coverage for member servers.
3. HA - VMotion. Enough said. Sure, you can still leverage SQL native HA features such as clustering, replication, log shipping...but hardware failures occurring at a local site can be covered seamlessly with VMotion and require far less configuration at the DBMS level.
4. VMWare Snapshots - Right-click and snapshot before making configuration changes. Big sigh of relief for QA processes.
5. VMware Templates - Build an operating system, template it, re-use it over and over again.
6. SAN Snapshots - Many of the current storage arrays, such as Dell EquaLogic, ship with snapshot capabilities.
7. Centralized Management - Yeah, I like being able to access the whole farm from one console and monitor what is going on, quickly remote into systems.
8. Disaster Recovery - Advanced features to help facilitate remote site recovery. Several more layers of data and configuration protection than physical environments.
9. Physical to Virtual - Drivers aren't an issue, capture and protect important systems that happen to be running on legacy hardware.
10. Little Conveniences - How about an ISO drive where you can store and back up all of your ISO images for operating systems, software applications, etc.
Wednesday, February 17, 2010
Program Evaluation and Review Technique (PERT)
Whatever the case, the majority of the time it is the company's processes and resources that define how long something takes.
This week, I've been using the Program Evaluation and Review Technique (PERT) to estimate the duration of an extranet portal project. Fortunately, I have a very good sense for the company's processes so I can factor these things in fairly accurately. Still, I really like to include PERT calcualtions in my project plan because it allows me to factor in optimism and pessimism and come up with an accurate duration.
With PERT you calculate a weighted average by doing this:
Optimistic Time + (4 * Most Likely Time) + Pessimistic Time / 6 (Schwalbe, 2009)
So, if I wanted to estimate the time it takes to spin up some virtual machines and configure a SharePoint 2010 Farm completely from scratch, I might do something like this:
3 workdays + (4 * 5 workdays) + 10 wordays / 6
Result = 7.5 workdays
Reference
Schwalbe, K. (2009). Information Technology Project Management (6th Edition). Boston: Course Technology.
Issue: Windows Server 2008, JavaScript Blocked on Internet Explorer
On a Windows Server 2008 system, JavaScript is being blocked in Internet Explorer.
Solution:1. Open Server Manager
- Start > Control Panel
- Programs > Turn Windows features on or off
- Server Manager
- Put the cursor on the root node called, "Server Manager"

2. Turn Off the Internet Explorer Enhanced Security Configuration for Administrators and Users.
Wednesday, February 10, 2010
FAST and Windows: A Blessing for Innovation
I can sort of understand the negative reactions to this announcement and the notion that customers may turn to other search platforms to maintain their Linux/Unix operating standards. However, I believe that this is a truly good decision by Microsoft, which will result in a higher quality product.
The reality is; in order to push innovation of the search platform forward beyond its current boundaries of functionality and performance, it is an inherihent requirement that the low level levels of the architecture be tightly bonded with the operating system. By not making this long term decision, a forced common denomintor is then imposed on the platform at higher levels of the architecture, ultimately inhibiting the product. Multiple OS support for installations actually sets the platform back. We've seen this as recent as 5.3 when we are required to install FAST ESP as a 32 bit application along with Java runtime 32 bit. This is a 64 bit world now, get with the program.
My sense is that the product roadmap will offer great improvements in the document processor and query processor pipelines, linguistics, user experience, etc. These improvements are required to allow search to become the leading functional component for indexing, transforming, and presenting not only content but navigation, functional components, and structures on Web sites. The relationship that search platforms will have with tomorrow's Web applciations, is comparable to the relationship that relational databases have with yesterday's Web sites. This innovation simply cannot afford to be spread thin.
Tuesday, February 09, 2010
Links: Windows PowerShell compiled Help for SharePoint Server 2010
I am relieved that Microsoft has published PowerShell help files for SharePoint. The help files will certainly come in handy. These are available for download:
Windows PowerShell compiled Help for SharePoint Server 2010
http://www.microsoft.com/downloads/details.aspx?FamilyID=045f7af5-b226-4a05-8ace-4e17cfdef856&displaylang=en
This site contains separate help file (.chm) downloads for:
· Access Services
· ECM
· Excel Services
· InfoPath
· PerformancePoint
· Search
· Secure Store
· SharePoint Foundation Search
· SharePoint Products
· State Service
· User Profile
· Visio Services
· Web Analytics
· Word Services
Monday, February 01, 2010
Strange Computer Virus
DISCLAIMER:
The purpose of this post is for informational purposes only and to share some steps performed on an infected system to fix a computer virus, related to symptoms described in the Problem section of this post. I don't know the name of the virus at this time. And, please don't go and modify the registry unless you know what you are doing.
Description:
System virus, automatically redirects internet explorer to a site that requests purchase of an anti-virus product. Task manager becomes blocked and inaccessible.
Solution:
Part I
* Boot the infected system and at the BIOS Press [F8] (Prior to Windows Displaying)
* Select “Safe Mode”
* Log in with the local administrator account
* Start, Run, Type MSCONFIG, and click OK
* Open Windows Explorer, and invoke the file property view and select “show hide files..”
* Look for a strange file type without much detail pointing directly to a user profile, sub to the application directory. Eg. “Document and Settings” > “User Profile”…..”
* Deselect the file and write the file name down. This will prevent it from launching during start up.
* Reboot into Safe Mode again.
* Log in as the local Administrator account.
* Browse to: “Document and Settings” > “User Profile”….. abs search for file name written down in the previous step.
Part II
* On a separate computer, download ATF-Cleaner
http://www.atribune.org/index.php?option=com_content&task=view&id=25&Itemid=25
* Copy ATF-Cleaner.exe to a USB drive so that you can move it onto the infected system
* Copy ATF-Cleaner.exe to the desktop of the infected system
* Double-click and run ATF-Cleaner.exe
* Click “Select and Delete All”
* Now review search results and delete directory where file is contained.
* Open Regedit – and Export a copy of the registry
* Select Edit > Find and Search for file.
* Delete file reference key
* Reboot
* Login in Windows in normal mode and test
Thursday, January 07, 2010
Governance Concepts, Strategy, and Authority
Information Management is a concept that may apply across an entire enterprise; same with corporate polices and procedures. However, the SharePoint platform may only be responsible for organizing a sub-set of an organization's information and therefore the scope of this is smaller. Additionally, SharePoint is technical in nature and so the emphasis on Information Technology audience is greater. For these reasons, it makes little sense to try to encapsulate all of the governance topics for an organization's information management needs, within a SharePoint governance plan. Instead, topics should be divided and organized appropriately.
For example, if you were on a whiteboard brainstorming and creating idea clouds for the purpose of outlining your governance topics, you might start to group topics like this:
Information Management Statement of Governance
- Overview
- Roles and responsibilties
- Decision making processes
- Explanation of information architecture
- How taxonomies are developed and integrated
- References to file naming conventions
- References to policies and procedures
SharePoint Governance
- Overview
- Roles and responsibilities
- Operating processes
- Explanation of the applied use of SharePoint with respect to Information Management
- References to SLA
- References to policies and procedures
Policies and Procedures
- Information Security policies
- System Use policies
- Support policies
- Request processes
- Project processes
Thinking about these concepts right is a prerequisite to creating governance documents and perhaps even beginning to model any new, collaborative solutions. Authority needs to be defined and delegated up front. Without a central managing body having necessary authority, the decision making process will be a constant road block.
Consider this classic scenario; a hypothetical Information Technology department owns and manages technology systems for an organization. They don't happen to possess authority to own or commence initiatives around analysis, design, and integration of information architecture policies and processes. This department decides to deploy SharePoint as a technology offering. A likely, potential result of this is that the deployment becomes a commodity service. The odds that this platform will do much to improve information management practices throughout the organization, are thin. The initiative was not started by the body which governs information architecture practices for the company.
Now consider a variation. Consider that this hypothetical business unit now has the authority to work with other business units collectively, and facilitate a company wide initiative to analyze, interpret, and parse the information management requirements of the company, the teams, and the individuals. They also have authority to facilitate the creation and management of information management policies and procedures. Finally, they retain the authority to own and manage technology systems. This scenario has a much greater potential to produce a full bodied SharePoint deployment, adding lots of value throughout the business by integrating information management capabilities. In this scenario, the technology can actually be used to mandate how documents are organized, where they are stored, and how they are tagged.
Having said this, a commodity service may be the right next step for an organization, who is to say. But evolution of processes tell us that one day, silos of information will want to be joined. Progression is a natural thing and it should be embraced. SharePoint as a commodity service is not the end game, it is a starting point. Strategy is recognizing progression paths and figuring out how to make it happen. There will be people fighting the progression and arguing the direction is wrong, that they have different ideas. There will be resistance. Strategy demands authority. Governance provides it. The right combination of these pieces can act as one hell of a steam roller.
Outline for Disaster Recovery Plan Document
The reason I like this outline is because I know it works. Unlike many other plans on the Web, I think this outline provides more complete coverage of the business and technical aspects of disaster recovery. Many of the plans I have seen are merely explanations of the SharePoint product features and limitations, or advertisements for third party products. Detailing what SharePoint's strengths and weaknesses are with regards to backup and restore will not do you an ounce of good in the event you need to perform a recovery of some sort. Additionally, no matter what tools you have for backing up and restoring, you still need a good plan to address the process. Different tools only change the content of the backup and recovery procedure section of the plan, they don't change the structure of the document or eliminate the need for any of the sections of the document.
The audience for this document can include the tactical team members who execute the plan, but also the business stakeholders, sponsors, and business process owners who are affected by the availability and recovery policies and procedures. Everybody should be involved with contributing to and reviewing the plan. This review process is very healthy because it resets expectations and keeps everybody on the same page.
SharePoint Disaster Recovery Plan Outline
I. Overview
a. Explanation of the document
b. Explanation of when to use the plan
II. Business Profile
a. Application or system owners, points of contact
b. Application or system summary
c. Related business processes
d. Usage information
e. Availability requirements (link to SLA)
f. Recovery requirements (link to SLA)
III. Technical Profile
a. Hardware inventory
b. Software inventory
c. Related systems
d. Vendor contact information (contact, support agreement information, etc.)
IV. Failure Scenarios
Matrix listing all failure scenarios with description of each scenario
V. Backup Procedures
Instructions for each method of back up used to support every possible recovery scenario
VI. Recovery Procedures
Instructions for recovering from each failure scenario
VII. Verification Procedures
a. Functional testing
b. Security testing
c. Performance testing
d. Checklists
VII. Appendix
a. Glossary
b. Links to policies, procedures
VIII. References
Interesting Change Affecting Microsoft Office 2003 and 2007
Monday, December 28, 2009
Governance: Capability Driven, Not Platform Driven
I have mixed emotions about some of the messaging in the community. I think the topic of governance has become so SharePoint-centered that the original intent of governance becomes lost. Taking a few steps back, I thought I might weigh-in on the subject.
When push comes to shove, SharePoint is simply a platform, a means to an end. It is a tool to facilitate a capability. If that capability happens to be information management, then SharePoint is providing the technical functionality required to make managing information better.
My take on governance planning is that an organization should first address the capability (e.g. information management) as a whole, and then develop a plan for it. Once that overarching effort is in motion, it should branch off into defining the policies, processes, and measures specifically addressing SharePoint.
The flaw I see in creating a governance plan starting with SharePoint platform is that too many questions and risks about the overall initiative of providing that information management capability exist. This flaw may be a symptom or an indicator of larger ailments in the organization such as a lack of clarity or a lack of sponsorship (or a lack of clarity within its sponsorship). The way I see it, if an executive management team is willing to embrace the idea of using the SharePoint platform, then it ought to be willing to accept and embrace the larger initiatives at hand; which is where governance should originate.
In conclusion, I think that in order to maintain long term credibility with the subject of governance planning, we in the SharePoint community should share more ideas about how to integrate SharePoint governance into existing corporate governance as well as how to properly originate governance where it does not already exist. And, in order to do this I think it requires stepping out of the world of SharePoint and taking a wholistic view of the organization and understanding the fundamental policies and processes at play, as well as understanding what is the underlying intent and purpose for which SharePoint is being deployed.
Friday, December 18, 2009
My Favorite Windows 7 Feature
For this reason, my favorite Windows 7 feature is the ability to right click on an open application and then click a shortcut to open another instance of that application.
2009 SQL Server Magazine Best SharePoint Product
2009 SQL Server Magazine Best SharePoint Product
Editor's Best
Gold: ControlPoint for SharePoint, Axceler, www.axceler.com
Silver: Professional Archive Manager, Metalogix, www.metalogix.net
Bronze: NearPoint for SharePoint, Mimosa Systems, www.mimosasystems.com
Community Choice
Gold: Site Administrator for SharePoint, Quest Software, http://www.quest.com/
Silver: Colligo Contributor Pro, Colligo Networks, http://www.colligo.com/
Bronze: CorasWorks Workplace Sutie 10, CorasWorks, http://www.corasworks.com/
References:
2009 SQL Server Magazine (2008, December). 2009 SQL Server Magazine Editor's Best and Community Choice Awards. SQL Server Magazine, pp. 12-19.
Thursday, December 17, 2009
Error: SQL Server Maintenance Plan, Database Backup Job
When executing a SQL Server maintenance plan, having a database backup job, an error occurs. The issue is that the SQL Server Agent service account does not have access to the backup folder. This happens more frequently on backup folders which exist on a separate server, such as a backup server.
1. First, navigate to SQL Server Management Studio > Maintenance Plans > Right click on maintenance plan > View History.
You might see something like this in the history:
"Action: Execute maintenance plan (full backup of all SQL databases). ErrorMessage: Execution failed: See the maintenance plan and SQL Server Agent job history for details. Additional Information: Job 'Backup SQL' failed. (SqlManagerUI)"
2. Next, navigate to the history log for the SQL Server Agent job:
SQL Server Management Studio > SQL Server Agent > Jobs > Right click on job > View History > Highlight the error > Click Export > Export a log file > Open the log file in a text editor
...and you might see entries like this:
"Reason for failure: " failed with the following error: "Cannot open backup device 'backup device name'. "
"Error information: Operating system error 5(Access is denied.)."
Solution:
The solution to this is to configure the appropriate access for the SQL Server Agent service account on the folder security access control list and the folder sharing access control list.
However, the catch here is that you may need to add the service account directly to the access control list, as opposed to an AD group in which the user account belongs. In fact, I tested this by doing the steps below.
1. Deleted the maintenance plan and created it again.
2. Added the backup folder location, and clicked Next.
This brought up an error:
"Maintenance Plan Wizard: The Database Engine service could not resolve the specified folder location. Either the location does not exist, or the current login account does not have access to it. Verify that the folder exists, and that the login account has permissions on it."
3. Added the SQL Server Agent service account directly to the backup folder's access control lists for folder security and folder sharing. After doing this, the creation of the maintenance plan was successful.
Saturday, December 05, 2009
I Respectfully Disagree
As I looked through the PowerPoint for some insight to use in my paper, I started finding statements such as:
"ROI from IT: There is none. There never will be." (Keen, 2004)
"ROMI not ROI: Return on Minimized Investment" (Keen, 2004)
"80% of IT costs are hidden below the surface - and a navigation threat" (Keen, 2004)
The more slides I viewed, the more I realized that I completely disagree with the intent of the message; essentially to encourage CIOs to view IT as a business liability which needs to be tightly controlled and driven primarily by its cost drivers.
I disagree because I think a better approach for CIOs to take is to understand the purpose of the technologies their teams are evaluating, understand the costs and benefits, and choose projects which support the objectives of the organization. Managing cost should be part of the decision making process, but it should not be the primary driver. When cost is measured, all aspects of cost should be included. And, the financial benefits of the project should also be measured and included.
The objective of Information Technology is to facilitate two very important capabilities for today's businesses:
1. Revenue generation
2. Business productivity (process efficiency)
Most leaders in the IT space generally understand the financial benefits of the IT projects they choose to pursue, but perhaps the IT industry as a whole generally does not place enough emphasis on methodologies and practices for measuring and translating these back to the financial statement. This would require more focus, analysis, calculation, and validation.
To be clear, I am not saying that all IT projects are sensible and they should be done blindly. However, what I am saying is that it is incorrect to characterize IT as a business function that shows no return on investment.
If you deploy a technology that allows people to attend meetings over the Web instead of traveling to another location, then your costs are those which are required to implement and maintain the technology while your savings are those which you do not spend to travel? Both sides of equation need to be considered, not just cost.
I also disagree with the claim that 80% of IT costs are hidden. I believe that if budgeting is done properly, most IT costs are completely visible and manageable. There are always some unforeseen costs with IT, but by learning from past experiences, it becomes possible to anticipate these variations.
In summary, I disagree with the PowerPoint. Information Technology can have a positive ROI, and costs can be manageable and predictable. I think the real problem is some organizations just don't know how to measure these things effectively.
References:
Keen, P. (2004). The IT Leadership Financial Conversation. Retrieved December 5, 2009 from www.peterkeen.com/presentations/IT%20Risk%20Management.ppt.
Friday, November 20, 2009
Windows Server 2008: Active Directory Protection From Accidental Deletion
When you create an Organizational Unit (OU) or security group in Active Directory, there is checkbox titled, "Protect container from accidental deletion." If you create the object with this check box marked, then you have to follow special steps if you would like to delete that OU in the future.
If you attempt to delete the object while it is protected, then you will receive the error, "Active Directory Domain Services. You do not have sufficient privileges to delete object, or this object is protected from accidental deletion."
Solution:
1. Open Active Directory Users and Computers.
2. Select the root domain, "company.domain.com."
3. From the menu bar, select "View" and "Advanced Features."
4. Navigate to the OU you would like to delete.
5. Right-click, properties.
6. Select the "Object" tab.
7. Uncheck the option, "Protect object from accidental deletion."
8. Now the object is no longer protected. You can proceed with deleting the object.
Thursday, November 19, 2009
SharePoint 3.0: Allowing SharePoint RSS Viewer Web Part to Read SharePoint RSS Feeds
Description:
SharePoint RSS Viewer Web Part does not display RSS feed from SharePoint list or library.
After configuring a SharePoint RSS Viewer Web Part to display an RSS feed from a SharePoint RSS list, you receive the error, "The RSS webpart does not support authenticated feeds."
Solution:
Configure anonymous access on the list which is serving the RSS feed.
1.
Enable anonymous access for the Web Application containing the list which is serving the RSS feed.
- Central Administration > Application Management > Application Security > Authentication Providers > Edit Authentication
- Edit Authentication > Anonymous Access: Check "Enable anonymous access"
- Edit Authentication > Click "Save"
2.
Enable anonymous access for the site collection containing the list which is serving the RSS feed.
- Site Collection > Site Actions > Site Settings Site Collection Settings > Advanced Permissions
- Advanced Permissions > Settings > Anonymous Access
- Change Anonymous Access Settings > Anonymous Access: Select "Lists and Libraries"
3.
Enable anonymous access for the list which is serving the RSS feed.
- List > Settings > Permissions for this List > Settings > Anonymous Access
- Assign the "Read" or "View Only" permission level to the Anonymous User
References:
Holmes, T. (2008). Enabling Anonymous Access in SharePoint 2007. Retrieved November 19, 2009 from http://blog.tylerholmes.com/2008/01/enabling-anonymous-access-in-sharepoint.html.
Monday, October 26, 2009
Back from SharePoint Conference 2009
There were many highlights of the conference. The cocktail reception, the keynote, the sessions, the Huey Lewis & the News concert, catching up with old friends and meeting new ones.
The bottom line is SharePoint 2010 delivers!! It is going to be an awesome, next three years working with this generation of products and technologies. Things are moving full steam ahead.
I especially enjoyed the governance planning session by my friends, Susan Hanley and Scott Jamison.
Friday's full day workshop on SharePoint Server 2010 Installation and Upgrade Training by Shane Young and Todd Klindt from SharePoint911 was fantastic and informative. It was more fun than hanging out at House of Blues Foundation Room until 3:00am...almost.
Most of all I love the fact that I won all of my gambling money back at the craps table after I checked out on Saturday morning, as I was killing some time before the cab ride to the airport. I hit three point numbers and several hard ways. Folks were happy to be winning and I received an applause for the good shooting.
Thursday, September 17, 2009
Links: CommonCraft: SharePoint in Plain English
View Here:
http://www.commoncraft.com/custom-video-sharepoint-plain-english
Download Here:
http://download.microsoft.com/download/A/5/6/A56BB856-74F5-4A6B-887B-876BAE88116F/SharePoint%20in%20Plain%20English.zip
Sunday, August 30, 2009
Migrating Internet Explorer Favorites and RSS Feeds
With Windows 7 releasing soon, it will be time to think about migrating user profile settings to a new operating system build.
Aside from file folders, and desktop files, you may have a bit of time invested in the Internet Explorer favorites and feeds. Even if it only saves a couple minutes of searching in the end, I thought it would be worthwhile to post locations of these items on a source Vista build.
Favorites:
C: (Operating System) \Documents and Settings\UserProfileName\Favorites
RSS Feeds:
C: (Operating System) \Documents and Settings\UserProfileName\AppData\Local\Microsoft\Feeds
Friday, August 21, 2009
SharePoint 3.0: Clarifying Check Out Status on Multiple Document Upload
I found a post on TechArchive.net, "Re: disabling check out on document library upload," in which the author was observing that multiple document uploads were resulting in status of "checked out" after uploading. The author cited a post of mine, "SharePoint V3: Achieving Checked-In Status When Uploading Mulitple Documents," and explained that the post didn't solve the issue.
So, I am posting the two possible reasons why, after uploading multiple documents to a document library, the uploaded documents have the status of "checked out."
1. Require check out is configured on the library
I did a test, configuring six document libraries, and then performed a multiple document upload. Here are the results:
a.
Document library configurations resulting in "checked out" status when multiple documents are uploaded:
Require Check out + No Versioning
Require Check out + Major Versioning
Require Check out + Major and Minor Versioning
b.
Document library configurations resulting in "checked in" status when multiple documents are uploaded:
No Require Checkout + No Versioning
No Require Check out + Major Versioning
No Require Check out + Major and Minor Versioning
2. The document library is configured with a required field. When the document upload completes, the field is not populated and the status for each of the uploaded documents is set to "checked out."
Monday, August 17, 2009
SharePoint 3.0: Custom Permission Levels
As an added benefit of sticking with the out of box, you can leverage many of the Web based training tutorials and end user, computer based training modules, that are available on the Web with since most of these instructional resources are based on out of box configurations.
Having said that, circumstances and business requirements can require something different than the out of box permission levels. For example, you might want to lock out SharePoint Designer from some users by configuring a permission level that excludes the "Use Remote Interfaces" permission. Or, you might want to prevent content contributors from being able to delete by excluding the "Delete Items" permission. In most cases, having thirty three distinct permissions allows enough flexibility to accommodate.
When I need to utilize custom permission levels, I put a good amount of effort into planning for these and ensure to be consistent with their names, descriptions, and definitions. Below is a sample matrix that I used for planning four custom permission levels, instead of using those which are out of box.
Friday, August 14, 2009
Publishing SharePoint Web Applications in ISA Server
This article assumes SharePoint Web applications are configured with NTLM Authentication, that multiple Web applications are being published outside a company's firewall, and ISA Server is being used as a firewall. The scenario described also assumes that a one set of Windows credentials has access to multiple SharePoint Web applications.
Description:
It is common for a SharePoint environment to include multiple Web Applications. Since each Web Application requires its own IIS Web site and may have its own IP address and host header, having mutliple Web applications does create some complexity and therefore requires some consideration.
It gets a bit more complicated when multiple Web applications need to be made accessible outside of a company's local network, such as an extranet or public internet scenario. In this case, firewall rules and NAT must be configured for each Web application to protect the organization and the application being published.
Then comes the user experience. Inside the network, client computers often times belong to the same domain as the SharePoint servers, or at least a trusted domain. Furthermore, the domain URLs are considered either "Local Intranet" or "Trusted" by the users' internet browser. In this environment, a user can navigate from Web application to Web application without receiving an authentication prompt. Life is good on the local network.
This all changes when Web applications are published outside the company's firewall. First, client computers accessing the sites no longer belong to the same domain as the SharePoint servers. Second, the users' browsers aren't configured to automatically log users into the Web applications. The challenge this creates for the user is if a contiguous user experience requires accessing multiple Web applications, the user is going to receive an authentication prompt for each application.
Solution:
ISA Server allows Rules to share Listeners. What this means is that you can create one Listener and add multiple Web applications to that Listener. Then, you can create a Rule for each unique Web application, associating these Rules with the Listener.
The result of this is that users can access multiple, externally facing SharePoint Web applications, without requiring to authenticate to each one.
Monday, August 10, 2009
MSDN: Enterprise Search URL Syntax Reference
For example, search queries may be submitted implicitly throughout the user experience as a user is navigating a SharePoint Web site. Hyperlinks (dynamic or static) containing search query parameters do all of the work.
The MSDN article, "Enterprise Search URL Syntax Reference, http://msdn.microsoft.com/en-us/library/aa637082.aspx," explains the proper format for submitting keywords, scope, view, and start page information through the query string.
Thursday, August 06, 2009
Microsoft's Position on Changing SharePoint Databases
The article, "Support for changes to the databases that are used by Office server products and by Windows SharePoint Services (http://support.microsoft.com/default.aspx?scid=kb;EN-US;841057 )" includes a list of unsupported database changes, shown below:
" Examples of such database changes include, but are not limited to, the following:
- Adding database triggers
- Adding new indexes or changing existing indexes within tables
- Adding, changing, or deleting any primary or foreign key relationships
- Changing or deleting existing stored procedures
- Adding new stored procedures
- Adding, changing, or deleting any data in any table of any of the databases for the products that are listed in the "Applies to" section unless Microsoft protocol documentation is followed exactly
- Adding, changing, or deleting any columns in any table of any of the databases for the products that are listed in the "Applies to" section
- Making any modification to the database schema
- Adding tables to any of the databases for the products that are listed in the "Applies to" section Changing the database collation "
This subject comes up rather frequently during discussions and as a proponent of SQL Server in general and especially its Business Intelligence features such as Reporting Services for extending the capabilities of SharePoint solutions, I feel compelled to chime in.
I completely understand Microsoft's position. How could a software company possibly support custom, schema changes or functional modifications to their application? They cannot. Nor can Microsoft really ensure their software will function (optimally) with any type of foreign database object running on the live databses, even a view.
However, accepting Microsoft's position doesn't change two things:
1. SharePoint information is business intelligence information and often times needs to extract, transform, load, and display in other places than its native content database.
2. Where there's a will there's a way.
Exploring some scenarios...
If you need to add custom functionality to your SharePoint environment, then you might build your own custom database with triggers, functions, sprocs and all, and then use a programmatic methods to move the data you need out of the SharePoint content databases and into your custom database. Then, use Web Parts to deliver the data and functionality from the custom database throughout the SharePoint Web sites. This does not overstep any of the guidelines listed in the article.
Secondly, T-SQL queries are some times necessary for reports when using the Object Model as an XML data source reaches limitations. If you need to integrate SharePoint data with other systems or for reports you can:
1. Create a database snapshot of the SharePoint content datbase (if you have SQL 2005 / 2008 Enterprise Edition)
2. Use programmatic methods to move the data from the SharePoint content database into an intermediary database for abstraction purposes.
3. Move data into an existing data mart or data warehouse during regular intervals.
Any of these three approaches allows you to leverage Views. The benefits of compiling T-SQL queries as Views is that you can secure them, you can use them as data sources in SQL Reporting Services reports, and you can store them on the database where they are accessible, reusable, they get backed up with database backups, you can optimize query performance with Indexes, and querying Views performs better because you are not storing queries nor are you filtering or transforming data in the Web tier.
Events / Conferences / User Groups
- AIIM Conference
- Boston Area SharePoint User Group
- Boston Azure User Group
- Collaborate
- DevConnections
- DevIntersection
- Enterprise Search Summit
- Microsoft Build
- Microsoft SharePoint Conference
- Microsoft TechEd
- New England ASP.NET Professionals User Group
- New England Oracle Applications User Group
- Oracle Applications User Group (OAUG)
- Oracle OpenWorld
- PeopleSoft Government Contractor Special Interest Group
- PeopleSoft Southern New England Users Group
- Quest International Users Group
- SharePoint Saturday
- SPTechCon
- SQL PASS
- SQL Saturday
- Startup Weekend


