Yes EPM (Enterprise Project Management) is an Enterprise application and it needs to be treated as such with Enterprise Resources J Oxford English Dictionary’s definition of Enterprise is a project or undertaking, especially a bold one.
I often compare an EPM deployment to other enterprise application such as SAP in the ERP space or Siebel in the CRM space. Companies typically never roll out these applications in a Production environment overnight. Companies get experts involved to help them define the best Architecture based on their functional and technical requirements. Companies also put in place multiple environments (typically three: development, Integration, Production); process are put in place to define the usage of each and how changes are applied from one to the other. Server and desktop deployment procedures are documented and reviewed. An Operation Guide specific to the company’s environment and architecture is written. A Disaster Recovery Guide is written to address any platform un-planned downtime. Last but not least company resources are trained on the new solutions & technologies deployed so that they are autonomous and can do basic troubleshooting.
Quite often I visit customers that deploy EPM like a desktop product and treat it as such. Yes it is very easy to install EPM with couple clicks on server in a Pilot or Production environment (my record is 30min for EPM 2007 with the all pre-requisites pre-installed), however the project does not end after PWA pages gets displayed and the OLAP cubes gets refreshed.
From experience all Enterprise EPM deployment requires the following Enterprise Resources:
¾ Architecture study: don’t just read our prescriptive guidance on TechNet to define the physical architecture that fits your functional and technical requirements. It’s a good start but not enough from experience. Get a skilled external EPM Architect to assist you in this study. He will bring experience from other architecture recommendation and deep product knowledge to make the best architecture recommendation for today’s volumes and usage but also taking into consideration future changes in usage/volume/product.
¾ Deployment Guide: the deployment procedures for both the servers and the desktop needs to be documented in detail with you company’s specific architecture and constraints.
¾ Operation Guide: there is no reason why every EPM deployment should not have one. Areas it should contain for instance: maintenance plans for IIS, SQL, performance counters to track… Again getting an EPM expert to help you write one is the safest route in the long term.
¾ Disaster Recovery Plan: even if you have a single server deployment you should have one. In case of a hardware/software failure or both an administrator should know what to do anytime of the day, any day of the week without calling Microsoft/a Partner … For large deployment with high availability including Network Load Balancing, and Clustering technologies it’s a must!
¾ Multiple Environments: very often customer plan for one environment (their Production environment) during a deployment. They then start customizations and start applying them directly in Production without any prior validation on a separate environment (Integration for instance). If customizations are perfect and bug free then everyone is happy but if it’s not the case the production environment goes down and the EPM users might not be happy! Similarly changes in architecture for instance SAN disk changes should be validated prior on a separate environment and should not be rolled out in production unless it has been validated (+ it should not be rolled out during working hours!).
¾ Optimum SAN configuration: too often SQL data is either not stored on a SAN or worst stored on a SAN but not optimized. Get a specialist to review your setup and ensure you have the best configuration.
¾ Skilled Employee: for instance since EPM and SharePoint data are all stored in a MS SQL database it’s key to understand well SQL 2000/2005. Database administrators should be able to put together a maintenance plan, optimize disk configuration, understand SQL performance counters and do basic troubleshooting using the SQL Server Profiler or SQLIO. Also administrators of the solutions should be knowledgeable of Windows 2003, Internet Information Services (IIS), .NET 2.0/3.0, Terminal Server/Citrix if used, and last but not least they should all have a basic understanding of the EPM solution, it is architecture and each component (services, databases …). If a company does not have these skills or want to refresh them, get an expert to train your employees or send them to training events.