Sunday, February 27, 2011
I'm reading: Considerations for selecting a technology stack for your BI SolutionTweet this !
Once you have your functional requirements ready, and your BA's would head to you with some powerpoint slides having some fancy graphics of some complex graphs and visualizations, you can consider it as a sign that you would be hit with the question of which technology are we going to use to develop such visually appealing solution. Selecting the right technology stack is a part of every solution development, and it is almost given that SQL Server 2008 R2 and Sharepoint 2010 are NOT always the right answer. There are certain factors that one needs to consider, especially if you are acting as the technical architect for the project. Cost is one of the most important parameter, and till it gets figured out, there is no point in even selecting a technology stack. Apart from this, a list of few such considerations in my viewpoint as listed below:
1) Analytical Visualizations: List down all the type of visualizations required by your solution. Many a times, Business Analysts just get carried away by visualizations, though what they need to analyze is very simple. So get this sorted out first. A very basic example is "Tree Map". PPS 2010 and SSRS 2008 R2 still does not have this visualization. If the limitations of visualizations are too much with PPS and SSRS for your requirements, you might want to use some another reporting solution and continue with SSIS, SSAS and DB Engine with SQL Server 2008 R2.
2) Technology Integration: Mostly whatever you develop out of any technology, it needs to be deployed on a collaborative platform like Sharepoint. If the technology / component cannot integrate on your collaboration platform, it is useless. Most organizations like security configuration using ADFS 2.0 for single sign-on and say that some third-party tool that you selected is not known to be good with claims based authentication. If you select it, you would sign a contract to get yourself roasted.
3) Time to Market: PPS 2010 might be able to cater all your requirements. But ramping up a team having trained skills in development using PPS 2010 can be a challenge. And if you plan to go to market with your solution in a very aggressive timeline, skills like MDX, PPS, etc can be hard to find. And provided you already have skilled resources, it would definitely need time to design - develop - test and - deploy the solution that you would develop from scratch. You might want to use off-the-shelf ready tools / components for a part of your solution.
4) Ease of deployment: Most IT enables services providers and consumers have their own infrastructure where they host their IT solutions and services. This infra can be as huge as few datacenters in different cities, and hardware like SAN, RAID, Load balancers and Clusters. The technology you select should be able to fit in this topology as well as have the potential to exploit the capacity of the existing infra.
5) Performance: Almost every solution provider or consumer would have got burnt little or more with performance challenges. This factor is on the cards for almost every technology stack, before it even gets nominated for evaluation. So the technology that you plan to consider should already have some benchmarked performance results or you should consider creating some POCs to extract some form of performance results to compare against standard benchmarks.
6) User Training: You might want to select a tool that is too rich in feature set and visually appealing, for ex Tableau. But your user base are power users who just wants ready dashboards without any efforts, and they would discuss the results of this dashboards on a collaborative medium like Sharepoint. Though you have the best tool and it might pass all of the above criteria, it might not pass this parameter.
In summary, while selecting the technology stack for your solution, ensure that you go through a rigorous analysis from all aspects, not just feature set.