Friday, December 20, 2013

Dynamics CRM Customizations for Government Contractors

If your business focuses on government contracting, you can tailor Microsoft Dynamics CRM to help you manage your business development efforts.  Out of the box, Dynamics CRM is missing some of the data elements you will need to track opportunities, and the standard business processes will probably not match your requirements.

You may want to consider how you approach marketing and determine whether or not you want to use the Leads entity or purchase mailing lists for marketing purposes.  Our experience is that many traditional marketing approaches do not work well for government customers.  One reason is that government separates the people who need products and services from people who purchase them.

You can populate the Accounts entity with all the agencies and sub-agencies that you sell to.  Be sure to enter the data to reflect the hierarchical nature of government agencies, departments, branches and offices. This data is available from several sources for import if you would like to speed up the process.  You should be sure to enter the purchasing contacts as well as the actual customers for your company.

Opportunities requires the greatest number of additional fields such as contract type, contract vehicle, and provisions for the key dates in the proposal process such as sources sought, request for information, request for proposal, orals, and best and final offer.

If, like most government contractors, you join teams for contract pursuits, but sure to customize Dynamics CRM so that the teaming relationships are accurately reflected.

SharePoint is an excellent tool for managing the proposal documents.  Dynamics CRM has built-in integration with SharePoint, but you may want a more sophisticated approach to create document libraries and assign proposal roles.

InfoStrat's Dynamics CRM solution for government contractors provides these customizations and additional features to streamline the government contract sales process.

Friday, December 13, 2013

Microsoft Dynamics for Government Contractors

A recent article in the Washington Post told the story of the rise of Deltek, a company that pioneered research and accounting for government contractors.  According to the article, the company has virtually cornered the software market in government contractors because it is perceived as the only choice for companies that want to feel secure in compliance with government accounting rules.  Government auditors make contractors feel like they are taking a risk if they choose anything other than Deltek.

It turns out that there are alternatives to Deltek which may be better choices for many government contractors.  Microsoft and its implementation partners offer the Microsoft Dynamics family of products which can fulfill the needs of large and small government contractors.

McGladrey, for instance, offers Dynamics SL accounting software which has been tailored to the needs of government contractors.   Pleasant Valley Business Solutions has helped government contractors migrate from Deltek Costpoint to Dynamics NAV with its solution. For manufacturers,  To Increase and Dynamics AX provide a powerful alternative to Deltek.

When it comes to business development, InfoStrat has tailored Dynamics CRM to suit the needs of government contractors by adding workflows that reflect the stages of a government contract pursuit, and integrating with other Dynamics products. 

NEXT:  I will discuss Dynamics CRM customizations that most government contractors need. 


Wednesday, December 4, 2013

Microsoft Cloud, Hybrid and On Premise Options -- Update from the Field

InfoStrat has witnessed growing interest in cloud computing among its customers, but not as much movement as you might expect based on the amount of press received from cloud computing.  Our primary customers are public sector: federal government, state and local government, and education.  These are not usually the first to implement new technology, so they tend to lag behind trends.   Nonetheless, we are seeing solicitations which either call for cloud deployment or request bids for both cloud and on premise deployment.

Another barrier to cloud computing is that government agencies impose security standards for computing solutions, and cloud providers are scrambling to achieve certifications such as FISMA and FedRAMP which are needed by federal agencies. 

Our solutions are based on the Microsoft platform, especially SQL Server, Dynamics CRM, and SharePoint.  Most of our clients own traditional volume licenses for these Microsoft products, and Microsoft affords an unusual flexibility to combine on premise with cloud options. 

Microsoft Office 365 is picking up momentum among our government clients, especially for its email capabilities. 

Microsoft Azure allows our clients greater control over the cloud environment than is available with Office 365 or Dynamics CRM Online.  It provides cloud infrastructure and is a way to get to the cloud quickly but still have control to manage your servers as if they were virtual servers in your data center.  Recently one of our clients chose Azure for its SharePoint requirements because of this greater flexibility to configure and integrate.

We welcome the move to cloud computing because it allows us to provide the same level of performance to all our clients and be less dependent on the unique attributes (and sometimes politics) of their infrastructure. 

Monday, November 18, 2013

Notes on Upgrading from Microsoft Dynamics CRM 2011 to Dynamics CRM 2013


The following are notes on upgrading from Dynamics CRM 2011 to Dynamics CRM 2013 from InfoStrat’s Dynamics CRM lead Dmitri Riz.

In many ways, the upgrade to Dynamics CRM 2013 is less painful than the transition from version 3.0 to 4.0 or from 4.0 to Dynamics CRM 2011.  In general, if your site has been already upgraded to CRM 2011 Rollup Update 12 or later, you shouldn’t experience significant issues with updating to CRM 2013.

The upgrade process falls into following large categories:

     1.       Find incompatible/legacy code and update it
     2.       Upgrade to 2013 (if using on-premise)
     3.       Review and refactor the user interface (UI) to adopt the new form and navigation paradigm.

Dynamics CRM 2013 removes all support from legacy 4.0 features. All references to objects like crmForm or 2007 web service endpoints such as ‘…/mscrmservices/2007/crmservice.asmx’; ISV folder, CRM 4.0 plugins are all unsupported and should be replaced with updated objects.


Note: The Dynamics CRM 2013 Custom Code Validation Tool will likely generate many false positives, for example, if you are using jQuery or similar libraries.

On-premise upgrades can be done by installing CRM 2013 and following these steps:

-          Importing the Dynamics CRM 2011 solution or backing up the Dynamics CRM 2011 database, restoring it in a new location and importing new organization into a fresh CRM 2013 instance using deployment manager.

or
-          Dynamics CRM 2013 supports in-place upgrade which can convert existing Dynamics CRM 2011 server into 2013. This is not recommended for production environments, however.   If you choose to use the in-place upgrade, you must ensure that RU 14 or 15 are installed on your Dynamics CRM 2011 server first.

then
-          Testing the new organization to validate that all custom features and extensions are functioning properly


The user interface and navigation in Dynamics CRM 2013 have changed significantly.

The most visible changes are the dramatically reduced number of popups (new data and entity windows tend to load into the same page) and complete redesign of navigation options.

Your upgraded Dynamics CRM 2011 solution will benefit from a thorough review of both navigation options and form layout. Left-nav bars of Dynamics CRM 2011 are replaced by a collapsible top-of-the-page ribbon control in 2013. While it conserves a lot of usable space on the form, it may lead to negative effects on converted solutions, especially when Dynamics CRM 2011 solution has many deep hierarchies and customized navigation bars. In Dynamics CRM 2013, this navigation gets flattened, which leads to essentially a one-level layout with a potentially very long breadcrumb-style nav elements at the top of the page, which can be hard to visualize.

Spend some time redesigning and organizing site hierarchy, paying attention to simplifying the layout and making sure your users can navigate through parent-child chains easily.

After upgrade, all your forms will function. Microsoft didn’t change FormXml definitions.

However, for some of the entities you will get a few additional forms. In the screenshot below, Information form comes from the Dynamics CRM 2011 solution, while the Case form is an OOB new process-driven Case UX form.

You can use both forms, or merge them. If during the upgrade issues are detected, they will be added to Conflicts tab at the bottom of the upgraded form.
 
 

Since Dynamics CRM 2013 introduced the auto-save feature, and it is turned on by default, determine if it might lead to potential issues, especially if you are using plugins triggered by an Update message. If a plugin is prone to consume significant resources, or if it introduces long-running operations (such as invoking transactions in remote systems), it might reduce overall system performance and introduce adverse effects if it is invoked often as a result of auto-save operation.

Finally, custom JS code might need to be reviewed and adjusted. One of the major enhancements in 2013 is an introduction to asynchronous data saving, auto-saves and reduction in the number of popups and screen reloads. A couple of scenarios below illustrate potential issues with legacy custom code:

-          Custom JS code executes during page load and loads certain resources. In Dynamics CRM 2011 each form save triggered complete window reload. In Dynamics CRM 2013 it doesn’t happen anymore. Even after first save on a New record, the window doesn’t reload. Load event however will still be triggered, which may lead to legacy Dynamics CRM 2011 JS code loading same resources multiple times.

-          In Dynamics CRM 2013, an entity form can be displayed within the main CRM window, or can be displayed in a popup form. If you load custom code that manipulates DOM (which technically is unsupported, but in practice might be unavoidable for complex scenarios), for example, to replace certain screen element (such as text box) with a generated on the fly HTML (e.g. graphical button displayed an image from JPG web resource), you will notice that relative URLs are different between inline and popped forms and your DOM code needs to be modified.

After ensuring that converted site runs correctly and looks good, take a look at such new Dynamics CRM  2013 features as quick create forms, entity preview options, Bing maps integration and business rules. Some of these new options may replace or enhance pre-existing customizations.
 
Upgrading to Dynamics CRM 2013 provides an opportunity to streamline the user experience and add the new features that may have been lingering in your user request backlog. 

Monday, November 4, 2013

Microsoft Grants Manager Plus

The latest version of Microsoft Grants Manager Plus contains new features and enhancements based on feedback from users as well as software updates from Microsoft . This is a summary of what is new as of November 2013.

 Integration with Microsoft Dynamics AX
Most grant management solutions require integration with a financial management system.  Grants Manager Plus includes integration with Microsoft Dynamics AX to offer a more complete solution for the entire grant lifecycle.

Grants Manager includes sample code to integrate with Microsoft Dynamics AX.  This integration allows authorization  of funding sources and processing of payment requests from Grants Manager Plus.

New Program Data Elements
The data model for grant programs has been expanded to include new program classification elements (Budget Activities, Program Attributes, Program Skills).

Automated Financial Rollups
New reporting includes financial summaries on grant and program levels.

Multi-Browser Support
Grants Manager Plus is compatible with the latest web browsers, including Internet Explorer, Chrome, Safari and Firefox.

New Utilities
New tools are provided for building surveys and data migration.

New Charts and Dashboards
The dashboards and charts in Grants Manager Plus have been refreshed, including inline charts. 

Automated Financial Rollups
Financial summary information is provided on the  Grant/Application and Program levels.

New Grant Features
Many new data elements and features have been added, including:
  • Advanced budget setup and management, including support for budget categories, forecasted cash needs etc.
  • Payment request / disbursement management
  • Additional federal data tracking (compensated officers, etc.)
  • Support for grant amendments
  • Support for grant closeout process
Many more new features have been added, making the solution more attractive to grantor organizations.  The latest Microsoft Dynamics CRM product pricing means the software cost for running the solution is also lower than ever.

 

Thursday, September 19, 2013

Upgrade to Dynamics 2011 or 2013?

As we mark the countdown to the next version of Microsoft Dynamics CRM, many questions arise around what will happen next. 

When can I upgrade? Will the new version be available at the same time for online and on premise customers?
What if I'm on Dynamics CRM Online?  Will I be forced to upgrade?  Can I schedule the upgrade?
If I'm still on Dynamics CRM 4.0, should I upgrade to 2011 and then to 2013 or go straight to 2013? 

Here is an excellent blog post on the subject from Intergen. 

Microsoft has tried to make the upgrade as painless as possible while packing in as much new innovation as possible.  

You cannot get the most out of the new version without considering how new features impact your users and by providing training to help people discover new features and take advantage of them.



Thursday, September 5, 2013

Why Microsoft Should Buy Netflix

With the retirement of Steve Ballmer and the acquisition of Nokia, Microsoft has shown just how serious it is about the vision of becoming a devices and services company.  The question is how Microsoft can close the gap with Google and Apple to become a contender in the mobile and tablet market.

One way would be to give Microsoft device users free legal access to entertainment content.  Imagine if Microsoft purchased Netflix and gave its device subscribers access to the Netflix content library.  Based on my informal survey at the lunch table, this would be enough to get many people to give up their iPhones and Androids and give Windows Phone a chance.

Tuesday, August 20, 2013

Customization Makes Software Users Happier

Most of our clients are looking for off-the-shelf software to fulfill their needs for line of business solutions.   Their requests for proposals typically contain a long list of desired features, and we are asked to characterize whether the feature is "out of the box" or requires customization or custom programming.   Proposals are scored higher if they have more features listed as "out of the box" and as few as possible requiring custom development.

I understand the motivation for this approach.   Custom development has fallen out of favor, and more "out of the box" features reduces time, cost, and risk for an implementation.  This approach is not sophisticated enough to lead to the best choice, however.

Many features required in a line of business solution are inherently "custom" because organizations follow business rules and workflows that are quite specific for their industry and niche.  Companies strive to differentiate themselves from one another, and therefore one size cannot fit all.   Government agencies must conform to laws and regulations that are almost always more complex than an outsider would expect. 

If you count all features as equal when scoring a proposal, you cannot capture the cost or effort required for customizations because the number of features that are separately enumerated is arbitrary to begin with. 

Finally, clients often enjoy features that have been customized just for them.  They feel more ownership of a solution when they are consulted on requirements, and when the user experience is tailored to their needs.  

The real question is not how to avoid or minimize customization, but rather how can you find a system that supports customizations as painlessly as possible.

Thursday, August 15, 2013

Shop for Fit and Not for Function

In fashion, the way your clothes fit is more important than whether they are the latest style.   If they are too long, too short, too tight or too loose, you can't achieve the comfort and style you seek. 

So it is with enterprise software.  When we see a request for proposals, it usually contains hundreds of detailed specifications for features, but only a cursory list of requirements for compatibility with enterprise architecture and integration with other systems.

This feature-centric approach leads to poor software choices and increases the long term expense of integration and support.  If your organization has adopted standard software services for all departments, you should not keep re-purchasing the same features every time any department needs a new point solution.   Your organization can save money by standardizing on a database, reporting tools, email, and other shared services.  

The way a solution fits with the rest of your architecture may be more important than many of the features that are enumerated in a typical purchase request. 




Wednesday, August 14, 2013

Standardize the Platform, Not the Solution -- Assimilation is Futile

Many organizations are plagued by incompatible software solutions that proliferate in multiple departments.  These solutions are expensive to support because they may require different skills from developers and system administrators. The quality of data also suffers because records are updated in one department and not another. The result is a search for a single system that will rule them all.

If this sounds familiar, it is because the desire for a monolithic and comprehensive software solution is timeless and universal.    The problem is that this quest is futile, and has been shown repeatedly to fail by large and small organizations.

Politics is usually the reason that a universal solution fails, not technology.   Individual departments know their data much better than anyone else, and are justifiably reluctant to give up control.

Change is also the archenemy of the monolithic solution.  It takes time to document and implement requirements, and these business needs are subject to change.  A fast cycle for implementing changes is a valuable asset for any organization.

Does the quixotic nature of universal solutions mean that no standardization can succeed?  No, it turns out that some standards can help you save time in procurement, development, testing and training.  The most important standard is to set a technology platform to encourage compatible solutions for your departments.

The best items to standardize are:
  1. The database. The database is the heart of most solutions. Supporting multiple databases will drive up software and integration costs.  
  2. Workflow engine. If an enterprise can standardize on workflows across departments, many headaches are eliminated.
  3. Services layer for user interfaces. Multiple interfaces are required, especially for mobile apps, so a standardized approach will save time. The Model View Controller (MVC) architecture decouples the user interface from the data and business rules for better performance and flexibility.
This standardized approach will require less expensive integration efforts, allowing more resources to be spent on customizing the workflows and user experience for your unique business needs.

Monday, July 29, 2013

Portal Options for Microsoft Grants Manager

Microsoft Grants Manager provides a comprehensive solution for grantor organizations to track the full lifecycle of a grant.  Most grantees publish grant opportunities on a website and accept online grant applications. The website or portal may be used to report application status, payment requests, and post-award reporting.  Because you cannot control which browser is used by grant applicants, it is desirable to choose tools which are browser neutral, and avoid requiring software downloads.

In a Grants Manager implementation, you have several options for a public facing portal:

1. The most common scenario is to add pages to your existing website, using your content management system such as SharePoint.  These pages connect to Dynamics CRM with web services.   The web page developer codes in the integration between the web pages and the Dynamics CRM used by Grants Manager.

2.  If you need to allow for offline users, you could accept applications using document formats such as Word, Excel, or Adobe PDF.  Fillable PDF files may be processed to extract the information entered by users and create record in Dynamics CRM.  InfoStrat has developed a utility to help with this integration. You could allow the application forms to be uploaded to the website or emailed to an alias which would trigger the processing of the files. 

3.  Microsoft Azure offers a flexible cloud environment which may be used to host the grants portal.  It offers excellent scalability and performance which exceeds that of most websites hosted on premise at grantor offices.

4.  Third party companies offer portals geared specifically toward Dynamics CRM, such as InfoStrat PortVue.

Here are some of the features you may want to include in your grants portal:
  • Show the impact of grants with articles, graphs, photos and maps
  • Publish grant opportunities to the public
  • Allow registration through self-service forms
  • Provide grant application forms
  • Show status of grant applications and grants
  • Review grant applications (particularly for outside reviewers)
  • Accept post-award status reports
  • Enter grantee payment requests
The sample Grants Manager portal includes most of these features and is a good starting point for exploring your requirements.



Wednesday, July 3, 2013

Constraints are Killers for IT Projects

After working on information technology projects for many years, I'm here to declare what may be obvious -- it's not the technology that's the problem, it's the constraints.

Software and hardware technology keeps improving, and offers many innovations that can dramatically change how government and business work.  But the constraints remain intractable.

Project management literature is rich in discussions on working with constraints, such as the tradeoffs between schedule, cost, and scope.  The implicit assumption is that all the parties working on a project are rational players and motivated to achieve the stated project goal.  I have experienced other constraints that are not usually discussed and which are even more hazardous to the health of a project:

1. Communications constraints.  A great way to make a project fail is to isolate the project team from stakeholders and prevent communication with people who are most knowledgeable about system requirements.

2. Political constraints.  This is a huge category, but encompasses the extra time and grief of dealing with competing groups within an organization who assert power over a project.  The project team cannot tell whose decisions are final or whose priorities really are most important.

3. Hostile players.  Surprising often, some project participants openly or secretly want your project to fail.  Deflecting their sabotage or co-opting them into the success of the project is time consuming and emotionally draining.

4. Pennywise pound-foolishness.  Sometimes artificial constraints compel projects to spend much more than necessary to solve simple problems.   I have witnessed organizations that spend $1000,000 on costly software optimizations rather than spend $1,000 on a memory upgrade to achieve the same performance improvement more quickly and with less risk. This can happen when different groups manage infrastructure and cannot work together, or when government standards prevent software or hardware upgrades.

5. Project management navel gazing. Ironically, project management itself can create problems which project management activities become a distraction from the real project goals.  Obsession with documentation artifacts at the expense of project progress doesn't usually turn out well.  Many failed projects are well documented.

6. Fragmented, competing project teams.  A final, avoidable constraint is to divide a project team and encourage fighting among the members.  The classic approach in government contracts is to carve the project into pieces and hand each piece to a different contractor.  Without a stake in the overall success of a project, these sub-teams are tempted to avoid responsibility and quick to assign blame to competing contractors.

I recently met with some of our consultants to discuss their career goals and how we can seek opportunities for growth.  One of them said he was tired of working on projects that were constrained in terms of time, technology, cost or resources. Ah, the nirvana of the project without constraints.

Constraints play positive effects as well by sharpening priorities and helping the project team work together to achieve a challenging goals.  It's hard for me to imagine a successful project without a schedule constraint, for instance.  

Sadly, there is no such thing as a project without constraints.  If you can reduce the unnecessary constraints and work as a team to manage the unavoidable constraints, you are more likely to succeed.



Thursday, June 20, 2013

Choosing a Deployment Model for Microsoft Dynamics CRM


Microsoft offers customers three primary choices on how to deploy Microsoft Dynamics CRM: cloud, hosted, and on premise.  Here are some of the key differences among these choices which may help you decide which is best for your solution. 

Dynamics CRM Online

Cloud-hosted Dynamics CRM is the fastest path to deployment, and undoubtedly the least expensive for a small number of users.     You can have CRM Online up and running in the time it takes to sign up and enter your credit card payment information, and you don't have to purchase any server hardware or server software.

For most customers, Microsoft CRM Online costs $65/user/month.  Microsoft has non-profit pricing which is even lower for qualified organizations. This subscription fee covers both the hosting and the associated software licenses.   This deployment model is rapid -- Microsoft manages the infrastructure and you don't need to install anything on your servers.  It is flexible and quite scalable, so you can add (or subtract) users as your needs change.    If you deploy with Dynamics CRM Online, you will automatically receive all software updates which will be installed by Microsoft.

One of the advantages of cloud deployment is that you can quickly scale up and scale down as needed.  You can purchase additional storage for Dynamics CRM Online at $9.99 per gigabyte per month, so you should estimate the storage you will need to get an accurate cost estimate.

CRM Online has a strong track record of reliability and availability, and offers a service level agreement to back it up.

CRM Online does have some constraints in terms of what code you are allowed to run on the server and how you handle reporting, so hosted or on premise deployment may be more suitable for complex solutions.

Hosted Deployment

The second option is hosted deployment.  Many companies will host your solution for you on their server facilities. Hosting may be shared (with other organizations) or dedicated (you have the server to yourself).   Microsoft offers Service Provider (SPLA) licensing for its products which allows the license to be bundled into your monthly hosting bill.    If you choose dedicated hosting, you may use your own licenses purchased in the same way as for on premise deployment.

Hosted deployment can be tailored to your unique requirements in ways that are not available with Dynamics CRM Online.  Hosting companies can provide dedicated or shared servers, and they allow you to load software for integration and other purposes that is not allowed by CRM Online. 

Some government agencies require security settings and certifications that are not available for CRM Online but are offered by hosting companies. 

With hosted deployment, you can control how updates are handled rather than have them automatically applied by Microsoft.

On Premise Deployment

The third and most common option is on premise deployment -- installing the software at your own facility on hardware that you provide.  Microsoft offers software maintenance under a program called Software Assurance that includes updates to the products you purchase.  Your organization must manage the servers and is responsible for backups and installing updates. 

With on premise deployment you can achieve the highest performance possible for local users and are not dependent on the speed or reliability of your Internet connection.  You can also change the hardware or configuration whenever you would like.

On premise deployment requires server hardware, so it is the slowest of the three deployment options to get up and running if you have to order new gear.   You will also be responsible for maintaining and upgrading your servers. 

Microsoft licensing is more flexible for on premise (or hosted) deployment than for cloud deployment.  In addition to the full user CAL, Microsoft offers two special CALs with limited functionality.   First is the Employee Self-Service CAL, with a limited API and limited read/write access using an interface other than the standard Dynamics CRM interface such as a form on a web page. The second is the Limited CAL, with full read access and limited write access using the Dynamics CRM interface.  There are additive CALs which allow you to step up from a limited to a less limited CAL.

Like hosted deployment, on premise deployment allows you to control how updates are handled rather than have them automatically applied by Microsoft. You may want to test new versions of Dynamics CRM on your solution before the updates are applied and users are affected.

 Hybrid deployment models are also possible in which on premise, cloud and hosted components exist together.

Wednesday, May 15, 2013

InfoStrat Cost Calculator for Dynamics CRM Implementations

InfoStrat has created a calculator to help customers explore costs for licensing, hosting, and professional services relating to Dynamics CRM projects.   This calculator is based on many assumptions (list price for software, nominal blended rates for services) and is missing some cost items (data migration, hardware, and integration) but is a starting point for understanding the total cost of initial implementation and total cost of ownership.

The tool will be refined based on user feedback.  It is no substitute for talking to an experienced implementation team and getting the actual prices based on your Microsoft volume licensing agreement and professional services provide.

We hope you enjoy.

Wednesday, May 8, 2013

Usage Scenarios for Microsoft Grants Manager

Government agencies have diverse requirements when it comes to automating grants management.  I have been helping customers evaluate Microsoft Grants Manager and it turns out that each agency has a unique approach which requires some customization in order to optimally match their business rules.  One size definitely does not fit all when it comes to grants.

Federal agencies are the largest grantors, and rarely receive grants except perhaps from other federal agencies.  These agencies are bound by guidelines established by the Office of Management and Budget and are striving for more consistent approaches to grants such as accepting applications via the grants.gov portal.    Many of their grants are formula grants rather than competitive grants, and the formulas themselves may be quite complicated.    Typically the grant managers are scattered among offices within an agency rather than centralized, although some are consolidating.  The volume of applications and dollar value of federal grants ranges widely, but is often quite high. Most federal grantors have automated their processes but are relying on custom built solutions that may be based on outdated technology which is difficult to update as business rules change.

Local governments, on the other hand, are primarily grant recipients rather than grantors.    They are focused on applying for grants and managing the grant activities, including reporting to state or federal grantor agencies.  The most common scenario is to use Excel spreadsheets and email to manage grant information, along with the agency's accounting software.      The scattered nature of data means it is difficult to do reporting and combine data from multiple departments or agencies.   

State governments fall between the extremes of federal and local government in terms of grants.   They are both grantees and grantors. Most states have automated their grants processes, at least in larger agencies.

Microsoft Grants Manager allows each customer to tailor the solution to their requirements.  For instance, many agencies have a simple proposal review process and don't need the full sophistication of the review wizard and review group functionality in Grants Manager.   They can replace that function with a workflow that matches their process.  Specialized groups can use only a portion of the solution as needed and hide extraneous forms and reports from their menus.  Many of the customizations can be performed without programming by system administrators.

Thursday, May 2, 2013

Microsoft Dynamics CRM and Geographic Information Systems (GIS)

Maps are a great complement to CRM systems, and can help you visualize data in exciting new ways.  Over the years, InfoStrat has integrated Microsoft Dynamics CRM with GIS including ArcGIS (ESRI) and Bing Maps (Microsoft).

One of our first GIS integrations was to show cases from constituent management on a map using "pushpins."  This solution allows users to see a map of open cases and filter by search criteria.

Field inspection is a great scenario for mapping.    Inspections use maps to navigate to inspection sites, and can present inspection results in maps.

Mashups of data from multiple sources, including CRM, can be useful.   This visualizations can include business graphs integrated with maps.

Interactive video conferencing often uses maps to communicate critical information.   The virtual meeting experience can be enhanced with Microsoft Kinect as a 3D controller.

Modern GIS data and images may be used for scientific and historical research.

The extensibility of Dynamics CRM makes it possible for developers to include maps in the Dynamics CRM user interface and also to make CRM data available as a web service for consumption by GIS.  By default, Dynamics CRM includes Bing Maps integration, but administrators can disable the Bing Maps or replace them with ESRI ArcGIS, Google Maps or others.

Monday, April 29, 2013

The Secrets of IT Project Success -- Willpower

Stories of failed information technology (IT) projects are legion, and the poor success rates have been documented in many studies.  To some extent, the larger the project and the more time and money spent, the more elusive the success.

I have been mulling over the reasons for project success based on my experience participating in projects and reading about the industry.  Of course there are many reasons for success and failure, but I think the most important one is the willpower of the stakeholders and key project participants.

Nearly all IT projects are challenging, and could easily be considered failures or the project team doesn't adapt to changes in requirements, technology, and other factors.    

The assumption that requirements are finite and stable is unrealistic.  Rigid requirements can lead to project failure, or a product that technically meets the requirements but doesn't actually work.   It's easy to point blame to all the participants in the project, from flawed management vision to weak requirements to sloppy coding and testing.

What stands out to me in successful projects is the sheer willpower along with optimism to ship a working solution, and the willingness to face up to all the problems that are encountered along the way.  This courage is not common, and some projects and organizations prevent individuals from taking personal stakes in the outcome and putting their willpower to work.

Wednesday, April 17, 2013

Don't Call People Resources

I know that in project management, people are considered resources in the same way that raw materials are considered resources, but for software development projects I have found it counterproductive to treat people like so many interchangeable parts.

The success of a software project hinges on the interactions among many people, including the client, subject matter experts, project managers, testers, trainers and developers.  In addition to their experience and expertise, these people bring with them their personalities and communications styles. 

Because software development is more a team exercise, like filming a movie, than an individual exercise, like writing a book, the overall team dynamic is just as important as individual qualifications.   It is quite possible to put together a team of people with excellent resumes who will be quite ineffective when forced to work with one another.

I have run into clients who focus excessively on comparing resumes as if they provide an indication of future success.   Some of the best resumes I have seen belong to work avoiders who spend more time finding others to blame than accepting responsibility and getting things done.  Job hoppers have more interesting resumes than steady performers that stay with companies and projects for the long haul.

So many project methodologies are now used that you need to ensure everyone is on the same page.   Approaches and activities that work in one methodology are disastrous for others.  Excessive love of methodology and documentation over working software is ever more pernicious.

Experience of people who have worked as a team is a great asset for a software project.   Knowing the strengths and weaknesses of team members helps project managers and technical leads assign tasks to the right people, and to know how those people should be managed.   Some need close attention with frequent interaction, and others need time alone to do their work.  Some people will thrive in the intense pressure of a war room environment, while others will crumble.

So even if you call them resources on your project plan, don't treat people like resources if you want your project to succeed.

Thursday, March 7, 2013

Estimating the Cost of Dynamics CRM Implementations: Part 8 -- Future Enhancements

This is the latest installment of ruminations on cost estimating for Dynamics CRM projects. Now that your xRM solution is in place and you have determined what kind of support you need to keep it alive, is that all there is?

For some customers, maintenance is the last item that requires professional services.   But building a software solution isn't usually like building a stone obelisk and placing it in the middle of your piazza.  For most people, it's more like planting a garden, and will require not only tending but will evolve over time based on which plants thrive.

The future may bring changes that require modifications to the solution.  Government agencies must ensure that their policies and procedures are consistent with laws and regulations which are constantly changing.   This regulatory compliance is not optional.

What if you come up with an improved business process and want to reflect it in your CRM solution?   Such changes could affect the data model, automated workflows and reports.  

In order to control the cost and disruptions of change, you may want to set up a release schedule to set expectations of users who request enhancements.    Over the course of an implementation you may move to less frequent releases. 

Don't forget that changes require notifications to users and sometimes refresher training.   A mechanism to solicit user feedback can identify ways to improve and boost user satisfaction at the same time. 

See our Dynamics CRM implementation cost calculator

Tuesday, February 26, 2013

Estimating the Cost of Dynamics CRM Implementations: Part 7 -- Support

This week we examine alternatives and costs for supporting your Dynamics CRM (xRM) implementation. In the long run, it is not unusual for the support to end up costing more than the implementation itself, but cutting corners on support can put user satisfaction and adoption at risk.

The first step is to determine what support arrangement you have with Microsoft?   Who is authorized to create Microsoft support incidents?   Does your organization have assigned Microsoft technical support managers? Microsoft can help with product questions and issues that arise from software updates.   In most cases, they will not be familiar with your specific implementation. 

Next, do you have a help desk or do you need to hire an outside company to provide help desk services?   Do you need coverage during business hours or 24 hours x 7 days a week?  Will your users call your help desk to report their initial issue?

How will you handle enhancements to your solution? Do you intend to publish new versions on a periodic basis?   At what interval (weekly, monthly, quarterly or other)?  If so, how large a team is required for these iterations?   Will the team that did your implementation be available?

For how long a period do you want to budget?  You can expect the level of enhancements to drop after the first year unless new business requirements are introduced.

See our Dynamics CRM implementation cost calculator


Saturday, February 23, 2013

Estimating the Cost of Dynamics CRM Implementations: Part 6 -- Training

No software implementation is successful without adoption, and most enterprise solutions require training in order to be adopted.    Training is often shortchanged in Dynamics CRM and xRM implementations. 

You should include training in your project plan, and start work on training materials as soon as use cases are created for the solution.     Analysis, development, testing, and training all should be tightly connected so you end up training to the requirements and usage scenarios you have identified.

Several options are available for training on CRM, including:
  1. Custom hands-on classroom training in a lab environment, tailored to your specific implementation. This is the most intensive and expensive option, but is appropriate in many cases, especially for critical and complex solutions.
  2. Standard CRM classroom training.  Microsoft authorizes training centers around the world to deliver the standard approved training for its products. 
  3. Video training.  The content may be similar to classroom training and even allow exercises and interaction.   One advantage is that it can be done at any time, and the cost does not increase based on the number of users or times that the training is used.
  4. Commercial training materials.  Microsoft and third parties publish training materials such as books and videos which are a great way to learn Dynamics CRM.
  5. Train-the-trainer. If you hire a professional services firm to develop your solution, you may want to have them train your training and support staff. Many organizations have professional trainers on a fulltime or part-time basis.
  6. Hybrid training.  A combination of these training approaches may be best for your organization.
  7. Free training videos.  Microsoft and its partners have published hundreds of free training videos on Dynamics CRM that are available on YouTube and microsoft.com. These are great for getting a quick response to a specific "how do I" question.
In terms of cost, classroom training at a training center is several hundred dollars per person per day (often about $500).  In person custom training is sometimes charged based on the number of students or at a flat rate of $2,000-3,000 per day including materials.    Online training materials and training subscriptions are often less than $100 per person. 

Remember that the generic training materials are less expensive, but not tailored to your solution or implementation.    In general, these materials are good for IT professional rather than end users. 

A good place to start for online resources is http://crm.dynamics.com/en-us/support-overview

You need to understand your users in order to choose the correct training approach.    Is traditional classroom training effective?   How much time can users spend in training with their other job responsibilities?   Will they be overloaded with information in a multi-day training session?

In addition to end user training, you will want to provide training for system administrators and other IT professionals.   You may also want to train developers for maintenance tasks and enhancements to the system.   You may need to customize some materials so they related to your particular implementation, but advanced admin training materials are readily available.

Generic product training is most appropriate for IT staff.   End users are usually better off with training geared toward their particular implementation, including forms, reports, and workflows that are unique to their organization.

Don't wait until the end of your implementation to begin training.  User acceptance testing is a great time for initial training of a subset of users.     An incremental rollout or a pilot is also a great chance to refine your training approach before it is too late.

Refresher training is a good item to include in your budget.   It can help renew enthusiasm for the system and improve user satisfaction. 

See our Dynamics CRM implementation cost calculator

Wednesday, February 13, 2013

Three Letters that Cost Government Millions

Federal, state and local governments waste millions or perhaps billions of dollars by making requests for proposals too vague, and hedging their bets with language which forces contractors to pad their estimates in order to reduce the risk of misunderstanding requirements and scope creep.

Just three letters -- "etc" -- account for significant waste.  We often see "etc." added to the end of a long list of requirements as if to protect the writer of the solicitation from an inadvertent omission. Other phrases are sometimes used in place of "etc." such as "including but not limited to."

Bidders have two options in handling ambiguous requests.   One is to bid low, hoping either that the unknown requirements will not be large and sink their project or planning to use change orders to cover the revelation of the unknown with additional funding.  The other option is to bid high, conservatively adding time and dollars to a bid to cover even what has not been revealed.

Neither approach is in the interest of the government customer.   A simple search for "etc" in a solicitation before it is published could save millions in tax dollars.

Monday, February 11, 2013

Estimating the Cost of Dynamics CRM Implementations: Part 5 -- Installation

How much time should you budget for installing and configuring Dynamics CRM?  

If you choose a cloud or hosted deployment, the installation will be done for you.     The only thing you will need to do that resembles installation is to install your customizations and set up your users.

For on premise installation, the cost can vary significantly.    We have spent from one day to two weeks or more, depending on the number of environments to be installed and the state of network and SQL Server infrastructure. One of the factors that causes delays is when many people are involved in managing different servers and networks. In a large enterprise, you can end up bouncing among people who have various permissions, trying to find the right person to do the right installation task.

If you are in a virtualized environment, you can save time by using standard server images and copying them for multiple Dynamics CRM environments. 

We have employed a technique which radically decreases the time for installation. You assemble all the people who have access permissions and knowledge of your networks and servers which are involved in the Dynamics CRM implementation in a conference room, along with food and drinks to sustain them through the installation. Next, you perform the installation, knowing that you can call on the right person who has the power to finish a task.  This approach cut the installation down from days to a couple of hours for us. 

See our Dynamics CRM implementation cost calculator

Friday, February 8, 2013

Estimating the Cost of Dynamics CRM Implementations: Part 4 -- Integration

If you have been following this series, part four takes us from the relatively clear formulae of software licensing and the function-driven, gap analysis of customization, into the wilds of software integration.   The cost of integration cannot be derived from the number of users or even the complexity of the xRM solution.  It can only be determined with a thorough understanding of the systems to be integrated and the nature of the integration that is required.

We often encounter implementation solicitations that include integration requirements.  Usually, there is a line in the long list of requirements that says something like "integrate with our accounting, timesheets, federal systems, etc." We always say that the price of an unspecified feature cannot be specified.  In order words, without a detailed definition of how two systems will be integrated, an estimate of scope is useless. That little et cetera often found in requirements is of course the worst three letters you could include in a fixed price RFP.

When forced to bid on integration without specifications, conservative companies will bid high to cover the risk inherent in the ambiguity.   More aggressive companies will bid low and place a bet on a combination of optimism and use of change orders once the deal is done.

Here are some of the details that can help derive a better estimate for integration:

  1. Provide documentation for the systems to be integrated, including the data models and options for integration such as web services.
  2. Define functional requirements for the integration.   Spell out how the scenario would work, where the data would be entered, how it is processed in each system, and where it ends up.
  3. Choose the direction of the integration (one-way or two-way).   Which is the authoritative system in the event of a conflict?
  4. Spell out any tools that you would prefer for data integration.   Do you own middleware or enterprise application integration software that would help.

If you are starting from scratch with an xRM application, you may want to hold off on including the integration requirements if they are subject to change based on how the xRM solution itself is developed.    You may even save money by having one vendor implement the solution and another perform the integration.

Dynamics CRM provides a modern, web services interface to allow integration.    You may want to assign the integration task to developers who are proficient in the other system with which you are integrating, especially if it uses a less open and modern architecture.

See our Dynamics CRM implementation cost calculator

Thursday, February 7, 2013

Estimating the Cost of a Dynamics CRM Implementation: Part 3 -- Customizations

In the last installment of our saga, we looked at the Microsoft licensing cost for a Dynamics CRM solution.    Now let's take a look at the cost of customizations and software development.  This is significantly more complex than deriving the licensing costs, and is derived based on functional requirements for the specific solution.

The least expensive solutions usually are for the most common CRM scenarios, such as sales force automation, customer service, and marketing (or outreach).   These scenarios match the out-of-the-box functionality of Dynamics CRM well to begin with.   You are likely to require some additional data elements and reports, and nearly certain to need some workflows to match your business processes, but will not need too many new fields or entities.

The most expensive xRM solutions are those that do not match the out-of-the-box entities, forms and reports, and which require integration with other systems.   At the extreme end of customization, the cost will approach that of pure custom development.

Here are some of the key items to count and characterize:

1. Identify all the data elements you need to track, and map them to the Dynamics CRM data model.   This exercise will show which attributes you need to add to existing entities and which new custom entities you will need to create.

2. Examine the user interface and determine whether you need customizations to the look and feel.   If you want distinct forms for each user role, for instance, the cost of the implementation (and subsequent maintenance) will increase.

3.  Enumerate and specify all the reports you will need.    Try to categorize them by complexity to simplify estimation.     We usually break them into simple (lists), moderate (some aggregation) and complex (multi-entity and more complicated calculations). Every Dynamics CRM implementation we have done requires some custom reports.   Be sure to take a look at Advanced Find to see if it can satisfy any of your reporting requirements.

4.  Determine which dashboards you will need.    Dashboards combine business graphs with views into records.    Dynamics CRM comes with standard dashboards for sales, marketing and customer service, but these may not make sense for xRM solutions. 

5. Specify the workflows that will be created.  Again, categorize them into groups based on the complexity of the workflows.    If your workflow has a large number of exceptions you may want to reconsider whether it should be automated at all.

Armed with these lists and specifications, you can approach a Dynamics CRM expert and get a realistic idea of the cost.  If you are familiar with Dynamics CRM yourself, you can use these metrics to create your own estimate.   For instance, you may want to plan four hours for a simple report and twenty hours to create a complex report.

See our Dynamics CRM implementation cost calculator

Tuesday, February 5, 2013

Estimating the Cost of a Microsoft Dynamics CRM Implementation -- Part 2: Software Licensing

The cost of a Microsoft Dynamics CRM implementation includes software licensing, internal costs of the time of your staff, and sometimes hardware and professional services from Dynamics CRM specialists. 

To determine the cost of the software licensing, you must determine the deployment mode and choose which type of licenses you will need. You can start here: http://www.microsoft.com/en-us/dynamics/crm-purchase-support.aspx  The comprehensive source is here: http://crmpublish.blob.core.windows.net/docs/Pricing_Licensing_Guide.pdf   Keep on reading if you would like a briefer introduction to your options.  

Your reseller is best source for software pricing, and can create a quote based on your volume license agreement.  If your organization has an enterprise agreement for Microsoft products, it will offer the best prices.  

Counting Your Users and Servers

Dynamics CRM is licensed based on named users, so the first step in calculating costs is to count your users.      First, count internal users that are within your organization.   The most common licensing approach is based on named users.   For instance, if your department has 500 people and all of them will be using Dynamics CRM, you would buy 500 client access licenses (CALs).  

Microsoft also offers device CALs, so two or more people who are non-concurrently sharing a workstation could use just one CAL.    This makes sense if you have shift workers or call centers that operate around the clock.

Will external users need to access information from your CRM implementation?   An external connector is available for on-premise deployments to cover these licenses.

Next, count how many Dynamics CRM servers you will need.    How many servers are needed to support the size of your solution?   How many environments will you need, such as development, test, staging and production?    Three or four environments are typical for enterprise solutions.

Microsoft offers two server licenses.   The standard server license is called Microsoft Dynamics CRM Server.    If you have five or fewer users, you can pay less for a server version called Microsoft Dynamics CRM Workgroup Server. If your needs grow, the workgroup server may be upgraded to accommodate more than five users.

Choosing the Deployment Model

One of the advantages of Dynamics CRM is that you may deploy your solution on premise at your office, in the cloud, or at a hosting facility.     Your choice of deployment options will affect the licensing cost.

Dynamics CRM Online

Cloud-hosted Dynamics CRM is the easiest deployment model to price.     For most customers, Microsoft CRM Online costs $65/user/month.  This fee covers both the hosting and the associated software licenses.   This deployment model is rapid -- Microsoft manages the infrastructure and you don't need to install anything on your servers.  It is flexible and quite scalable, so you can add (or subtract) users as your needs change.     In the short run it is also the least expensive option because it doesn't require any hardware acquisition.  If you deploy with Dynamics CRM Online, you will automatically receive all software updates which will be installed by Microsoft.

You can purchase additional storage for Dynamics CRM Online, so you should estimate the storage you will need to get an accurate cost estimate.

For Dynamics CRM Online, you don't need to worry about servers, so the licensing and hosting cost will be driven by the number of users. 

Hosted Deployment

The second option is hosted deployment.  Many companies will host your solution for you on their server facilities. Hosting may be shared (with other organizations) or dedicated (you have the server to yourself).   Microsoft offers Service Provider (SPLA) licensing for its products which allows the license to be bundled into your monthly hosting bill.    If you choose dedicated hosting, you may use your own licenses purchased in the same way as for on premise deployment.

On Premise Deployment

The third and most common option is on premise deployment --the most complicated licensing scenario.    This means that you will install the software at your own facility on hardware that you provide.  Microsoft offers software maintenance under a program called Software Assurance that includes updates to the products you purchase.  Your organization must manage the servers and is responsible for backups and installing updates. 

In addition to the full user CAL, Microsoft offers two special CALs with limited functionality.   First is the Employee Self-Service CAL, with a limited API and limited read/write access using an interface other than the standard Dynamics CRM interface such as a form on a web page. The second is the Limited CAL, with full read access and limited write access using the Dynamics CRM interface.  There are additive CALs which allow you to step up from a limited to a less limited CAL. 

Summary

Here is a summary of the calculations to determine your licensing cost. 

Dynamics CRM Online cost = ($44/user/mo. x number of users) + ($9.99/gig/additional storage  x storage needed) x number of months

Hosted CRM licensing cost = monthly hosting x number of users x number of months

On Premise licensing cost = (servers x server license) + (users x CAL price for each CAL type needed) + optional external connector

Extras

You may also need licenses for related products such as Windows Server, SQL Server, and Microsoft Office. 

See our Dynamics CRM implementation cost calculator







Monday, February 4, 2013

Estimating the Cost of a Dynamics CRM Implementation -- Part 1

One of the questions I am asked most frequently by clients is to estimate the cost of a software implementation project.   My most common answer, "it depends," is not satisfying for them or for me, so I am going to explore this topic in depth and offer an approach for estimating implementations of Dynamics CRM, especially the xRM approach which involves using CRM as a development platform for a line of business solution.

There are several approaches to project estimation which can produce results with a high degree of accuracy.  In all these approaches, the traditional trade-off triangle among time, cost, and features still applies.    If you want more features, the cost will increase. 

You can start with the easier items to estimate, the hardware and software.  For hardware, many organizations use standard server configurations, so costs are easy to determine.     Don't forget to include all the environments that will be needed.   Enterprise solutions usually call for development, test, and production environments (and sometimes a staging environment).  Software licensing is driven by the number of server and user licenses which are required for your solution.   Microsoft offers external connector licenses for users outside your domain in lieu of user licenses.

If you choose cloud or hosted as your deployment model, the hardware and software licensing is usually included in your monthly hosting fees.    

After you nail down the hardware and software, the more challenging part is estimating the cost of professional services.

Approach One: Find a Similar Project

If a similar solution has already been implemented, this can be the shortest path to an estimate.  For instance, my company InfoStrat implemented a Dynamics CRM solution called Stimulus360 for about 19 clients, so by the time the third or fourth client approached us, we had a pretty solid idea of the cost elements and the variables in order to estimate the project.  The question to ask is whether your requirements will be different from other clients.     Ideally, you could examine the features of the solution and map them to your requirements, highlighting gaps where new features would be needed.

Approach Two:  Function Point Analysis

A second approach, and perhaps the most classical approach for custom application development, is function point analysis.  Detailed requirements are written down, and software developers group them by complexity and ascribe a level of effort for each function. The rub is that these requirements need to be quite detailed indeed.    A requirement such as "can integrate with other systems" or "must be user friendly" had no place in function point analysis. At a minimum, you would need to define every data element to be tracked, every form definition, every report, every workflow, and every business rule. Most clients are not willing to provide functional requirements in such detail.

Approach Three: Define the Time and Team

Another approach is to nail down the schedule and define the cost, with the only variable being the functionality to be delivered.  For instance, if you have a firm ship date and a team of a project manager, and analyst, two developers and a tester, you can easily calculate the cost.  Then the functionality will be determined during the course of the project through prioritization. One or more iterations may be created in order to seek feedback on the design and solidify the requirements.

Approach Four: A la Carte

If you cannot specify the requirements and are not willing to define the schedule and budget, you can tackle an estimate by defining each of the cost areas, with greater or lesser confidence depending on the area and the assumptions.   

Here are the key areas we look at for estimating services costs. Note that hourly rates differ depending on the role and qualifications of team members.

  1. Requirements Analysis.  How many people need to be interviewed?   How much time will creating functional requirements take?
  2. Design.  What design documents need to be created?  Do you need graphic design for a web site or will you using an existing style?
  3. Implementation.  The level of effort for building out the solution cannot be estimated before requirements have been compiled. 
  4. Testing. Who will test the system?    What types of testing will be performed?
  5. Project Management.   Who will manage the project?   How often will status meetings be held?
  6. Training.    What approach will be taken for training?   Train-the-trainer? Classroom training? Training videos?  How many sessions will be held?  Will training be conducted in-person or online? Do system administrators need training?  
  7. Support.   Who will handle post-implementation issues?  Will there be a help desk?     What hours of business will be included?
Within these broad approaches to estimating, there are many variables which affect the cost of a project.    Hourly rates of all the team members make an obvious difference, but other factors can be just as important.    How much support do your users need to be successful?    Is onsite support needed?  How will the solution evolve after it goes into production?    Will enhancements be needed? What will the release schedule for new versions be?

These are some of the considerations that determine the cost of an xRM implementation. By spelling out as many of these factors as possible in a solicitation, more accurate estimates are possible.

See our Dynamics CRM implementation cost calculator

Thursday, January 31, 2013

Saving Money with Microsoft Dynamics CRM -- the xRM Approach Part 1

We are putting the final touches on a white paper about using Dynamics CRM  to develop line of business solutions (Microsoft calls this xRM), so here is a preview of the highlights.

Budgets are tight for government at all levels, and agencies are forced to do more with less.    This is nearly always true but has become more acute since the 2008 economic slowdown and more recently with failure to pass federal budgets and resolve the federal debt.  

Information Technology (IT) is part of the problem, because government processes are so specialized that commercial software geared to other industries such as manufacturing or retail simply won't cut it for government.    The most common approach for these solutions has been custom software development -- the IT equivalent of tailor-made suits.  

My company InfoStrat has been in the custom development business for 26 years, but about five years ago we found a new alternative that makes sense for many government solutions.   Instead of custom development, we use Microsoft CRM as the baseline for a solution and then use a combination of off-the-shelf features, configuration, customization and integration to make the solution meet government functional requirements.  

One of the biggest drivers of costs in building any complex business application is the requirements analysis phase. This phase documents the business requirements including the data fields to be captured, the presentation of these data elements in forms, the associated workflows, and the reports for the proposed system.

Requirements analysis involves numerous meetings and iterations between the IT staff and the business users as they attempt to document every detail of features needed in the system to meet their information management needs. The task can be daunting because there are many decisions to be made and tradeoffs to consider. It is a major challenge for the end user of the system to envision every minute detail about every possible usage scenario of the new system A custom development approach essentially begins with a blank sheet of paper as the paradigm, and requires features to be defined from the ground up.

The xRM approach starts with pre-built off-the-shelf component parts and tools, so the requirements analysis phase becomes more of a “gap analysis” type of approach where only the missing functionality needs to be identified and described in detail.

The initial step in an xRM project is called the “Fit-Gap” phase which involves reviewing all of the functionality that comes “out of the box” and determining if it fits the business requirements already and, if not, identifying where the gap is, and describing the nature of the work (configuration or customization) that is required.  It is also much easier for customers to envision how the new system will look because they will be looking at Dynamics CRM “out of the box” as the baseline for the purpose of discussing needs and requirements for the new system.

Next -- saving on configuration instead of programming