Lessons learned: Legacy Software Replacement using Dynamics CRM


For the last four or so years, I have been involved in a legacy (existing) systems replacement project for a certifying board. The legacy  software managed a database of information collected about constituent training, examinations, certification, re-certification and licensure. It involved over 400 SQL tables created over the previous decade or so. 

The prior software platform was old and no longer supported the organizations needs. Due to the tightly integrated nature of the systems it was difficult to isolate the individual sub-systems to allow a phased rollout, although we were able isolate some of the functionality for phased approach.

The tool chosen to build the new system was Dynamics CRM to facilitate rapid application development. The client team was not familiar with the tool prior to this project. We were called in about 1-2 years to work embedded with the client team.   Our roles included requirements gathering, database design , development, Microsoft Dynamics CRM training and mentoring. The project started with Microsoft Dynamics CRM 4.0 and was later upgraded to Microsoft Dynamics CRM 2011 for later phases.  I am happy to say the project has gone live and the bulk of the work is complete.  It has been an interesting journey.

Some of the “Lessons learned” include:

1. It’s all about the data! Redesign of the database should consider not only good database normalization (design to minimize data duplication), how the development tools (Dynamics CRM) consume data (in CRM for charts and views),  AND to ensure it is possible to convert from the old data format to the new data format verifiably.

  • Expect that historical data will be flawed, especially data converted in previous upgrades.
  • Use existing utilities (SSIS, Scribe, etc.) to address data migration and synchronization.  Home grown solutions always take much more to do even if it doesn’t seem so at the beginning– scope creep is a given here!
  • Create data maps to help specify source and target fields to assist the conversion team. Be sure to keep them up to date as changes will inevitably happen.
  • Keeping the old and new databases synchronized as you implement can be problematic and more expensive that you might think. Bi-directional synchronization is even worse. Organize your development to minimize syncing as much as possible and wherever possible, group modules around defined interfaces.

2. Training the team in a new tool is fundamental. Train & mentor the entire team to ensure good use of the tool’s supported features.  You will burn more in lost productivity then you will spend in training to avoid it.

  • The solution architect must be an expert with the tool to help guide the team as there are many ways to apply the tool set. If your team is new to the development tool, consider hiring or contracting a solution architect experienced in the tools to be used.
  • Business Analysts and the Quality Assurance team need to understand customizations and processes that can be done using the tool or the solution architect will need to vet their recommendations to ensure efficient use of the tool. One side benefit is that the BA’s can create prototypes for review by end users before any code is written, reducing development changes later.
  • Developers also need to understand the tool to ensure that they don’t code solutions already support by the tool and to ensure they do not code is such a way that they might. Training in both customization and development using the tool is critical.

3. Agile implementation is great, but….the overall database design needs a longer term view to ensure individual modules will interface properly before each sprint is defined.

  • Organize your development to minimize sync’ing as much as possible.
  • Wherever possible, group modules around carefully defined database interfaces.

4. When upgrading to a new version of the tool during a long term project, isolate the tool upgrade to a dedicated sprint and do not add anything else to that sprint.  After the upgrade is tested and validated, then continue with other development.


Thanks for reading!

Stephen V Noe
Solution Architect


Posted in CRM 2011, CRM 4.0 | Leave a comment

Career Changes – Long time between posts

It’s been a while since I posted anything, so I thought I would share what I’ve been up to.  I have been functioning full time as a consultant which has impacted my training gigs, but is satisfying none the less.

Over the last 4 years, I have been involved as a consultant in a legacy software replacement project using Microsoft CRM as the ‘XRM’ (anything relationship management) platform. We started by providing Dynamics CRM subject matter expertise, business analysis and database design, added a senior developer, then assumed a project architect role over time. Over the project I worked to help train & mentor the team with CRM skills necessary to implement and support. 

This project was different from many implementation projects as our job was to help build the skills of the internal team and involve them in the entire process rather than do all the work and give them a complete system. The fact that it was legacy systems replacement meant that the existing data needed to be converted – it was critical to get buy in from all the team as in some cases, the data conversion to the new database was the most arduous part of the project.

There are many lessons learned, which I will share with you over time via my new blog, XRMarchitect.com.  Expect to see articles there soon.

Steve Noe


Posted in CRM | Leave a comment

eXtremeCRM 2013 in Anaheim

In early November, I had the pleasure of attending the eXtremeCRM 2013 conference in Anaheim, California, where I got to hob knob with some of the most impressive CRM visionaries and partners in the industry.

As part of the conference, I spent the first 2 days participating in the workshop-style “Executive Summit” which was designed to address key issues facing business owners and leaders today. It was enlightening to say the least.

After my 4 days in sunny California, I came back to Cary, NC with a new perspective and some fresh ideas on marketing (“neural selling” anyone?) and keeping my customers onboard, happy, and engaged. I would highly recommend looking for Mark Stuyt (Neural Selling) on the conference circuit – he brings a whole new way of thinking to the marketing table. Another great catch would be JC Quintana, author of the “call to arms” manifesto, CRM To The People. Both are very dynamic thinkers and speakers.

Posted in CRM | Leave a comment

February CRM Boot Camp Registration is closing

You still have a little time to register for the Dynamics CRM 2011 training event in Raleigh. Registration discounts end today, so if you wanted to get some of the best CRM training available on the east coast, today is the day! There are classes for users, customizers, and developers, so check it out here.

Contact Mary Bradley at 919-459-5803 or mary@bizitpro.com now to get your seat!

Steve Noe


Posted in CRM 2011, Customization, Extending, Training | Tagged | Leave a comment

CRM 2011 Training event registration closes Friday

If you are considering attending our winter training in Raleigh next month, be aware that you are running out of time. Early registration closes Friday, and the rates go up after that.

Contact Mary at mary@bizitpro.com / 919-459-5803 or register here to claim your seat!

Posted in CRM 2011, Training | Tagged | Leave a comment

Dynamics CRM 2011 UR12 partially released

Update Rollup 12 has been partially released, but not the server parts at this time. While many of us have been waiting for the functionality provided in UR12, I recommend that you hold off or at the very least, perform thorough testing before applying this rollup into production enviroments, even after the release of the missing bits.

In addition to the issues with CRM 4.0 jscript on new browsers, this is a major update to CRM and I would tread carefully and slowly to protect your users form potential issues.  Read all of the notices carefully before proceeding.

We are currently recommending that our clients install UR11 and hold for now unless there is a major need to move forward.


Steve Noe

Posted in CRM 2011, Updates | Tagged | Leave a comment

Dynamics CRM 2011 Polaris SDK now available

The latest release of the Microsoft Dynamics CRM Software Development Kit (5.0.13) is now available for download here. It is also available in the MSDN library here. It applies to the  upcoming CRM 2011 RU12 for On-Premise, as well as the CRM Online Microsoft Dynamics CRM December 2012 Service Update.

There is a lot included in this update and some reorganization of topics to make life easier. More details can be found on the CRM Team blog here.

Check it out!

Steve Noe
Dynamics CRM Solution Architect and Trainer

Posted in CRM 2011, Extending | Tagged | 1 Comment