Monday, October 27, 2014

Adobe Experience Manager - Is it really a "one size fits all" solution?

Adobe Experience Manager has been the leader among CMS tools for a considerable period of time. Even Gartner has tagged this product as the numero uno tool in the WCM domain. A sleek user interface, along with the capability to leverage the best of Web development architecture through the usage of OSGi, Felix and Jackrabbit, in-line content authoring by business users, etc. have been some of the prime reasons for this tool to reach the top of the list. However, the aggressive marketing strategy and presence of the Adobe brand name have indeed been strong influential factors for this tool to reach the top rung.

In spite of having the capability to cater to nearly 90% of the use cases in terms of content delivery, user management, workflows, etc., there are scenarios wherein this magical tool from Adobe fails to fit the requirements –

  • It is not robust enough to accommodate transactional based applications
  • Apache Sling maps URLs 1:1 to content repository paths, this behaviour is hard to change and request parameters can be hacked
  •  Current e-commerce integration/connectors are not perfect, and there are various data syncing issues between AEM and e-commerce systems (promotion components, real-time updates, etc.)
  • Although complementary solutions like SiteCatalyst, Test &Target and Audience Manager are highly sophisticated products, these can be used only if the customer is agreeing to purchase the license for the same
  • For scenarios, where there is need for some integration with pure J2EE applications like Spring, Hibernate, etc. the integration mechanism is not clearly defined. The prime reason being Apache Sling is convention driven and it is not JEE Servlet, despite being a great web framework unfortunately Sling is not used outside of Adobe AEM
  • Lack of appropriate resources who are well aware of Correct implementation method for AEM, can land up in scenarios involving repository being vulnerable to security flaws, business logic being presented in the presentation layer
  • For migrating applications hosted on Microsoft technology to AEM, there can be possible situations wherein functionalities may have to be compromised, since the relatively new AEM platform may not be able to support all features provided by the Microsoft platform
  • For integration of various external dependencies, if the required dependency doesn’t have the necessary Maven compatible jars, the dependency will not get resolved and the AEM development team will have to come up with work around leading to possible compromise in the quality of the deliverables

So next time, do carry out your fitment analysis judiciously to understand whether this highly expensive tool is the best fit for the targeted application, or is it just going to burn a hole into your pocket without much value addition