Solutions Architecture

Dynamics CRM for Hotel Reservation & Hospitality Management

During past few days I was thinking whether CRM implementation could be possible for hotel reservation and hospitality management, because tourism is one of the profitable industries especially in Asia. I googled and saw some considerable amount of investment on CRM as a Hotel Reservation Management used for improving Hospitality Relationships.
According to my understanding MS Dynamics CRM 2011 will be an ideal platform for building such a system with all the features and enhancements in the context of RM. In this industry it can also be used to do Marketing Campaigns, Event Organizing and Management, etc.


Can Agile practice used for managing CRM Projects?

Well I think yes. Agile practices can be used manage CRM projects. I’m not talking about out of the box CRM solutions, but long running enterprise level projects. First let’s take a quick look at what Agile practice is.

By definition it is a software development method which is incremental and iterative where the end user requirements and the software solution evolve through the process of development with well organized self motivated and highly capable teams. There are different methodologies in Agile, such as Extreme Programming or XP, Scrum, etc. I have experience on both these methods. My intension on this article it not to provide detail discussion on these but how we could use these to manage CRM projects.

As a development platform, CRM has a greater flexibility and we can do many things with it. In the context of XRM, it says “One platform many applications”. So we need to be very careful here, that client may get overwhelmed with the features offered in CRM.

First and foremost thing before we think of using Agile, we must ensure that both parties, i.e. the end user and of course the development team understands what Agile is. It is not just reading couple of blogs or books. But what I feel is some if we are planning to introduce Agile, the relevant parties should be given training by an Agile Expert.

For example if your team is used to do planned or waterfall development, then they should be taken out from the mind set of the waterfall model. They must be trained to think in terms of Agile. If you miss this part then you’ll be in big trouble, because the Agile process will not succeed if the team is thinking in waterfall model, they will try to implement the water fall model in the short two to four weeks sprints.
In technical terms the team has to be well equipped with all the necessary knowledge to complete the sprint. Also one thing to mention, if a team member says a task can be completed, let’s say in 8 hours, then it shouldn’t take more than that. It could be 10 hours, but if it is taking more than that there is either some technical issues that needs some expert involvement or issues with team members performance. (more…)

Why you need a CRM Solution

Following are some tips to consider before choosing a CRM solution. That is when you are planning to go for a CRM solution you must consider these or include them in your check list.

1. Leads or prospects providing their details to you via the web site and not hearing back from you. There could be many registrations, but you can’t keep track of them or follow them up. This is one reason that you should think of selecting a CRM solution, because in CRM you have a better opportunity to keep a track of these new businesses.
2. If you are keep on getting messages and complaints from your customers, that their queries or issues are not getting resolved quickly. I’m sure no business owner wants end up with unhappy customers, because the customers are the most valuable part of your business and to better serve them you need give priority for their queries. CRM is an ideal tool to handle these queries and issues.
3. If your sales team does not have any visibility over their activities, will lead your sales campaigns in disaster. You don’t want to end up with campaigns with 0 results. With CRM your sales team has the ability to organize and manage your sale campaigns more productively and with positive results.
4. If your existing sales processes and business processes are not properly managed then as managers you will have difficulties in improving these processes. With CRM you have a greater view and control over these processes, especially with sales and services.
5. If all the customer details are scattered everywhere in several databases or may be in spread sheets, it will be quite hard for you employees to keep a track of these legacy data. Your employees will have to spend more time on colleting related data from here and there and putting them together. CRM is there for you to properly organize data to one single source where your team can quickly access them.
6. If your management and the sales team have a lesser visibility over the sales pipeline, I think CRM provides all the necessary reporting capabilities to gather these information to better improve your business.

These are some tips, but there could be many reasons why you should go for CRM solutions. This new technology, the CRM platform is out there for you to mold into your needs. But I strongly advice, before your investment its really important that you should identify why you need CRM.

Successful implementation of Test Automation with Test Driven Development

In today’s world of software development there are may methods and tools involved in implementing test automation. My main intention of writing this blog post is to share my personal experience of implementing test automation.

  • If any of the employees of      the company are not familiar with the test automation we shouldn’t be      trying test automation with major development projects or ongoing      projects.  Initially the employees,      specially the QA Engineers should be given considerable amount of      training. Of course developers have to be trained as well. If the QA      engineers are not familiar with the development tools(for example C#.NET,      Java, VB.NET), then it would be wise to assign couple of developers      together with the QA team to guide or help them.
  • If you are planning to use      SCRUM project management and Test Driven Development then Test Automation      is for you. Actually test automation is there to be implemented with these      Software Development practices. Test Driven Development is, in simpler      terms, where you write the test cases first and then develop the      requirements.  In order to do this      the User Stories(or what ever the means of gathered user requirements)      should be equipped with quality test data.       And when there are no quality test data attached with the user      stories development team will be forced to do the development of the user      requirement and not the test scenarios which will take out the development      team from Test Driven Development. My point here is to implement test      automation, the quality of the user stories are vital. If there are some      test data which are duplicated in several scenarios, then the automated      test scripts will result in bogus outputs. So for the automated test      scripts to be successful the quality of the user story, satisfactory      conditions and the test data is highly important. I’m not saying here is      that everything should be 100% perfect, but it has to have some level of      quality .
  • This has to be written as a      separate test frame work, I’m saying it because if we try to do the      development of the test cases and the system development altogether at      once the development process will end up consuming more time than      expected.  If you are planning to      implement test automation it should be planned properly and it should also      be developed separately so the different projects of the entire company      can utilize this with ease. For example we were involved in developing MS      Dynamics CRM solution.  So for some      of the user stories, it took only matter of hours to implement the user      requirement, but to do the automated test implementation the developers      has to spend hours and even days to write the test case and scripts,      because one simple functionality involved many other scenarios to become      true.  If all the generic      functionality would have been written in first place then then this      unnecessary time wastage would have been eliminated. Therefore this has to      be designed and developed separately as a mini project and get all the      generic components build and tested. You may not be able to use it with      your ongoing projects, but that is Ok, I’m sure that any project lead,      program manager, architect, etc  out      there don’t want their projects to run away from the planned cost and time      lines.

If you can get the test automation implementation properly planned then, yes, it can benefit you a lot.