|
IBM WCS(V7, FEP5)
|
Hybris(5.0)
|
Oracle ATG(10.2)
|
Development
Environment |
+1
Complexity
associated with development is very high, The system resources
required for running IBM RAD and associated WAS Runtime is highest
among the three, Organizations are often forced to use VDI which
slows down the developer productivity vastly. |
+3
Hybris probably
ranks no. 1 in this category, the best in terms of supportability
for lighter development environment, it can run in an eclipse
environment with tomcat container |
+2
ATG development
environment includes Eclipse, ATG Eclipse Plugin, JBoss |
JEE Environment |
+1
Works only on IBM
Websphere Application Servers |
+3
Hybris Server
(Flavor of Tomcat)
Spring Source TC
Server (Flavor of Tomcat)
Oracle Weblogic
IBM WebSphere |
+2
Oracle Weblogic
JBOSS
IBM WAS |
Total installer
size |
+1
4-10 GB when we
include WCS, RAD and WAS test environment |
+3
300 MB |
+2
710 MB |
Development
Database |
Apache Derby |
HSQLDB
database |
MySQL |
Production Database |
+2
Oracle
IBM DB2 |
+3
Oracle
MySQL
Microsoft SQL
Server |
+3
IBM DB2
Oracle
Microsoft SQL
Server |
OS Support |
+1
Windows
Linux Redhat
IBM AIX
Solaris |
+3
Many Flavors(Refer
Product documentation)
Windows
Linux
Mac OS
IBM AIX
Solaris |
+2
Windows
Linux
Mac OS
|
Framework
Versatility |
+3
Controller Layer
uses a modified version on Struts Framework, Services Layer uses
Apache Wink, rest of the framework is IBM custom and the
complexity associated with learning and extension of components is
probably highest of the three.
|
+3
Familiar and
Flexible programming model as it is based on Spring Framework.
Most probably
the purest implementation of Spring without too many custom
wrappers, so if you know Spring you already know how to code in
Hybris |
+1
ATG Custom IOC
Container is referred to as “ATG Nucleus“, they were probably
the first advocates of IOC containers even before Spring came to
lime light.
But things have
evolved over time and Spring IOC is far ahead of ATG custom IOC
framework. |
HTTP Session |
+3
Zero session
footprint, WCS does not use HTTPSession Object, instead the state
is maintained in DB tables.
Since the
states are saved in DB a node failure does not impact session
state and “full session failover” is supported OOB, this works
very nicely with both active active and active passive db
configuration.
This
architecture seems to be of significant advantage in very large
scale deployments and session management is natively supported in
WCS framework instead of depending on WAS |
+2
Depends on
JsessionID
Hybris refers to
session failover support as “Semi session failover”, so if a
node fails it can restore the guest session in a semi state like
Guest ID, Cart etc.. |
+1
Depends on
JsessionID and HttpSession features of underlying JEE server.
Out of the box,
nothing is persisted to the database until sign-in, but a
configuration is available to persist state to DB for anonymous
users. |
Caching |
+3
DynaCache for
caching within JVM and Advanced support for remote Cache by making
use of IBM WXS as a central Cache repository |
+2
Hybris Region Cache
custom caching framework, can be extended to custom caching
provider like EHCache.
Standard Spring
annotations are supported for caching objects.
Possibility to
plugin other commercial third party caching solutions like
Coherence,
Gigaspaces and Memcache |
+1
ATG supports custom Distributed
hybrid caching |
Clustering |
+2
All of the standard
WAS Clustering features, considering WAS is very matured as a JEE
server you can leverage all of the standard WAS clustering and
failover features |
+3
Since Hybris is
supported by various JEE container they cannot rely on container
clustering features, Hybris Cluster solution is independent of the
underlying JEE container.
Support for TCP or
UDP based clustering.
Another
important feature of Hybris cluster is Multi-Tenant Mode, this
gives the flexibility to use a different database prefix for
multiple application in the same JVM, WCS does not support this
feature and uses a common underlying DB for multi-site mode,
Multi-tenant mode could be an extremely useful feature when
you would like to run multiple sites on same instance
and scale out the database based on the db prefix |
+2
Depends on the
clustering support from underlying JEE engine. |
CSR Module |
+2
Referred to as
“Sales Center” is a Rich client application for
CSR
Sales center is a thick client application and needs to be installed on every CSR desktop, it uses the WCS back end shared by production environment. |
+3v
Referred to as
“Customer Service Cockpit” is a module to support call center operations like order management |
+2
ATG provides Service module for service center agents. Commerce service center app uses it's own database which is different from production customer facing site DB. |
Search Engine |
+2
WCS Search is based
on SOLR search engine.
Does not really
unleash all the power of SOLR and integration with any other
search engine is not supported OOB |
+3
SOLR search and
native support for Endeca Integration |
+2
ATG Search engine
or Endeca |
Print Module |
Not supported |
Hybris Print Module |
|
PIM |
+2
Limited PIM
features Supported by “Commerce Management Center” and
Commerce Accelerator |
+3
Support by Hybris
PIM module. Much more advanced PIM support as compared to other 3
products, this is good enough for medium scale retailers |
ATG does not
support a native PIM module
|
Business User Tool |
+2
WCS support
Commerce Management center which is supported on limited set of
browsers, it is a Flash based user interface.
WCS supports
authoring and production environment similar to ATG. |
+3
Hybris supports product cockpit tool which allows business users to manage product and catalog information. |
+3
Referred to as BCC
(Business Control Center) is a web based business user interface.
ATG supports
publishing and production server, publishing server is used by
business users for content creation, aggregation and version
management.
|
Data Access
Layer |
+3
EJB, BOD / DSL
(Similar to Ibatis and Hybernate data access API)
EJB specification
supported by WCS is quite outdated and BOD programming and WCS
query language used in BOD is pretty complex to learn and
implement.
But the good
news is we have the flexibility to easily create custom tables and
write custom optimized native SQL's as an alternate to EJB and DSL
components |
+1 In
Hybris you have to stop thinking in terms of tables, DAO's make
use of Hybris Type system for persistence and FlexibleSearch
engine for executing query. It takes time to get into the weeds of
these concepts and can be confusing as there is a complete shift
from normal database table and native SQL concepts.
Personally I
did not like the idea about inability to query database directly,
I think this can be a big limitation for ongoing production
support. |
+1
ATG Data Anywhere
architecture provides a “Repository API” abstraction on top of
multiple datasources like RDBMS, LDAP or File system. This is
another custom OR mapping style of data access which serves as an
alternative to EJB or plain JDBC. ATG boosts RQL (Repository Query
Laguage) for writing queries against unified repository.
I just feel
that it is easier to find good DBA's in the market to write
optimized SQL compared to learning and writing another non stadard
RQL language based queries. |
OMS |
+3
WCS does not have
any module for OMS, instead IBM sterling commerce is another IBM
offering which integrates well with WCS to provide end to end OMS
capabilities |
+3
Hybris Order
Management module can server as a full-fledged OMS |
+1
No native support for Order management system |
Unit Testing |
+1
WCS lacks
a concrete unit testing framework, most of the
components cannot be unit tested without the complex and heavy WCS
runtime support. |
+3
Hybris is leaps and
bounds ahead of others in this category, it inherits all of the
standard Spring unit testing support, there isn't a comparison to
the extent a component can be unit tested independent of JEE
container in Spring. |
+1
Similar to WCS and lacks a native support for unit testing. |
Deployment
Suitability |
+3
Very Large
retailers |
+2
Mid-sized
implementation |
+2
Mid to Large size
implementation |
Community Adoption |
+2
Although commercial
the documentation is very detailed and community driven, forums
are not so active
Software is not
free to download, you need a partner world account to
get your hands on WCS even for development and evaluation purpose |
+1
Closed community, I
think this will only hurt its adoption, documentation is not so
great.
For instance I can
google on IBM infocenter pages, but finding something out of
hybris is near impossible, you need to login to hybris wiki and
search for the details. |
+3
After Oracle
acquisition the software is free to download for learning and
evaluation purpose
Documentation is
pretty detailed and well structured
http://edelivery.oracle.com
|
Starter Stores |
+3
WCS provides nearly
a dozen of starter stores for B2B and B2C store models, I think
this is a great asset and let's development teams to get started
with a fully functional store in no time, of course you need to
use it as a base to perform your customization. |
+2
Hybris Accelerators
can be used to create custom stater stores for b2b and b2c store
model.
|
+2
ATG provides starter stores that share a common master catalog and store assets similar to WCS extended sites model, it also provides starter stores for independent B2C and B2B stores. |
Trends |
+2
Holding Fort. |
+3
Growing Strong |
+2
Catching up |