wp technical advantages

15
ATG Technical Advantages KEY DIFFERENTIATORS IN THE WORLD’S LEADING E-COMMERCE PLATFORM January, 2009

Upload: igloo2003

Post on 22-Feb-2015

98 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: WP Technical Advantages

ATG Technical Advantages

KEY DIFFERENTIATORS IN THE WORLD’S LEADING E-COMMERCE PLATFORM

January, 2009

Page 2: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

2

Introduction

Every major software development project has its share of complexity and risk. Rolling out a new e-commerce application is especially challenging because of the many integration points and the need for customizations that give you a competitive advantage. You need a solution that is flexible and extensible.

When it comes to a decision about replatforming your e-commerce site, the normal risks are increased by the high stakes: it’s one of the most vital sites you operate, generating significant revenue directly and indirectly. You need to get this next decision right, and find a solution that will meet both your short-term needs and your unique and dynamic long-term needs without draining your resources – cash or personnel.

This paper provides insight into the internals of ATG’s leading e-commerce technology, compares the solution and approach with different e-commerce packages and self-developed approaches, and highlights the technical and economic advantages you gain when using ATG. It provides some insight into why the ATG Commerce Suite is future-proof and essentially the last e-commerce platform you will ever need.

There are several aspects that differentiate ATG from other options. One of the first things that immediately stands out is the extensive feature set that ships with the product. Consistently ranked by analysts as a leading e-commerce solution, the breadth of capabilities provides a strong foundation to building an impressive site. One of the features that differentiates ATG particularly well is the ability to provide a dynamic, personalized experience for each site visitor.

The platform is architected for building context-aware applications that deliver a personalized data-driven experience to users. The solution includes a profile management system, a content delivery engine and a unique adaptive scenario engine that provides a state machine, event handler, and a rules execution capability – all key elements of implementing context-aware applications.

That rich, personalized functionality is only available once the site is established, and building major sites can be challenging. Each enterprise has its own set of diverse business processes and data sources. e-Commerce sites are one of the few places within the enterprise where information from many different systems must be managed in a single place, something that can be extraordinarily complex and difficult to do well. ATG provides an unparalleled set of integration tools and technologies that make it easy to connect to any, and all, of the information sources and external systems, the way you want. The flexibility and ease with which you can integrate ATG and other systems are an example of a more general benefit: ATG’s architecture is designed to be extensible and customizable.

Unlike other systems that require you to adapt to their hard-coded model of what an e-commerce site should be, or self-coded solutions that force you to figure out yourself the best way to do everything, ATG provides a framework that is highly adaptable to your specific needs. ATG is designed to be completely extensible and customizable, with many of the “customizations” requiring only a simple configuration file update. Layered configuration files are used to extend the system, add attributes, and create new business objects, thus keeping customizations abstracted from core libraries. It’s straightforward to “inherit” functionality from a core component, and then simply extend it, or even replace it, as necessary at the component, service, or entire subsystem level. This significantly speeds development, simplifies testing, and greatly reduces the risks to getting your site live.

Page 3: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

3

Once running, ATG makes it easy to manage your site effectively. ATG’s intuitive Web-based tools enable business users to manage much more than the product catalog and site promotions. They also provide the ability to manage sophisticated personalization and segmentation rules and advanced merchandising used by the site to serve up dynamic content. You can also manage key aspects of site search, such as redirection and results ordering. The vast majority of the services and assets a business user can manage and create is controlled from ATG’s Business Control Center (BCC), lessening the burden on IT resources for these routine operations.

In addition to the tools used to manage the site, ATG’s architecture provides another key benefit for e-commerce: scalability. When you consider the online volume that ATG’s large customers serve – especially during peak demand – you immediately see that ATG’s products are engineered for the most demanding operations. ATG powers commerce sites with some of the highest page-views per hour, simultaneous users and sales per day; and some of the largest catalogs in use. Unlike most applications, ATG scales in a predictable, very nearly linear manner. At all levels, ATG delivers rock solid, stable performance while serving highly personalized content.

Each of these areas: rich features, personalized and data-driven content, ease of integration, adaptability to your site’s needs, business user empowerment, and scalability is supported by technology that makes it easy for you to gain the benefits quickly and cost-effectively.

Rich Feature Set

One important consideration to start with is the rich feature set that ships with the product “out of the box” (OOB). With years of e-commerce as the company’s sole focus, ATG R&D investments deliver an exceptional array of features needed by most sites. Figure 1 represents the major modules that collectively make up the ATG Commerce Suite. The platform foundation provides core functionality to all the higher-level modules, ensuring that key functions are available to every module. Each module implements a vital area needed to run the best e-commerce sites, and is tightly integrated with both the underlying core platform as well as the other modules. Inside any given area there is a wide assortment of detailed features relevant to that area. For example, the Commerce module contains a powerful pricing engine already capable of generating the correct price for a specific visitor in a given part of the overall site (such as a microsite vs. the general product pages), with all relevant coupons, sales, and other promotions. But ATG has anticipated that different businesses have special needs, perhaps based on geography, business line, or business model, so this engine is based on a “plug-in” architecture that allows the business to introduce customized pricing calculators in order to capture requirements unique to your enterprise. This is just one of the many vital functions in Commerce, which is a single module in the overall ATG Commerce Suite. Collectively, this represents hundreds of developer-years needed to obtain all the right capabilities, integrated across all your sites and channels, and tested over years of use in the most demanding sites. Instead of investing the enormous resources to code them yourself, or relying on other packages that lack the features, stability, and scalability that ATG provides OOB, you can focus on using these capabilities to get the perfect site for your business. Even better, these features are implemented in a way that is very friendly to developers, saving time and cost as you implement, extend, and upgrade your site.

Page 4: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

4

Figure Figure Figure Figure 1111

Personalized, Data-Driven Content

Originally consisting of static pages, the modern Web has moved far beyond this limited model to the point where any site that fails to provide dynamic content tailored an individual’s needs is at a severe disadvantage. A recent Internet Retailer survey on emerging technology showed that 94% of online retailers consider it vital to stay current with technology, and provide consumers a personalized shopping experience. ATG provides several technical elements that give you powerful tools to build the most sophisticated sites in the world – without enormous IT and business teams that would be required to hand-code this capability from scratch or force it into a package that lacks these important capabilities.

MANAGING DYNAMIC CONTENT

ATG is designed from the ground up to be a data-driven application. It ships with powerful integration tools (see “Ease of Integration” below) that connect you to any information you might need for your site. ATG also provides tools specifically designed to manage dynamic content in multi-channel environments, extending the integrated personalized content beyond the desktop and into channels such as the call center, e-mail, in-store kiosks, wireless devices, and others.

The core of the platform is the Dynamo Application Framework (DAF), which implements a component development model based on JavaBeans, JMS events and Repositories (discussed in the Data Anywhere Architecture, below). Developers assemble applications out of component beans (based on standard ATG classes or custom Java classes) by linking them together through configuration files in Nucleus, ATG’s open object framework. Page designers build the front-end interface for the application out of Java Server Pages (JSPs) that use ATG’s DSP tag library. The DSP tag library makes it possible to embed Nucleus components in JSPs, and use those components for rendering dynamic content.

DSP tags extend the Java Server Tag Library available to any JSP, augmenting them with powerful ATG platform functionality tailored to Web sites and e-commerce. With DSP tags, you can display the dynamic values of ATG components, display forms that connect to ATG component properties

Page 5: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

5

(so current property values can appear in input fields, and user-entered values can be automatically saved to components), and invoke servlet components to provide output as a dynamic element of a page, including HTML output.

The second major tool ATG offers to support data-driven content is actually a subset of the DSP tag library. The dsp:droplet tag is used to embed an ATG servlet bean into a JSP, making its content available in a configurable way. Called “droplets,” these beans make it much easier to manage the output of dynamic content. Droplets have the valuable capability (like any ATG component) to have their scope easily defined as global or limited to just a session or request. There are many different droplets already defined for a number of useful functions. For example, suppose you want to display a list from a data query at the time a JSP is to be rendered. You could certainly manually write code to display HTML at the beginning of the list, cycle through the list one element at a time, handle exceptions (like blank lists), and add extra HTML at the end of the list. Alternately, you could use the ForEach droplet and simply provide parameters to achieve the same goal. While a simple example, there are very powerful droplets that cover a great deal of situations common in online applications, including some that would be very complex to code individually.

PERSONALIZED CONTENT

Personalized content – tailored to be relevant and compelling for a visitor – is usually based on the concept of segments, or groups of individuals that share some meaningful common characteristic(s). Similarly, you must be able to identify similar kinds of content that appeal to a given segment. Finally, you must be able to dynamically pull the correct content that will be interesting to a given site visitor (based on their segment).

ATG’s Adaptive Scenario Engine greatly simplifies all of these functions, in a unique way that eliminates the need to develop custom code, even for sophisticated personalization. This important tool consists of two major components: the Personalization and the Scenario servers. Together, they allow you to specify characteristics that determine what segments site visitors should belong to as well as what groups different content items should belong to. ATG’s Targeting rules enable you to define the circumstances in which certain content will (or will not) be displayed to certain people. You can use a variety of information and actions to establish segments and trigger content targeters and rely on these to correctly manage personalization in real-time as the visitor moves through your site. Note that personalization does not require log in. Anonymous visitors, typically the vast majority of your site visitors, can just as easily be served personalized content – a significant difference from other platforms.

For example, consider an online sporting goods store. They may put a segmentation rule in place to detect search terms, or (if the user logs in) certain past purchase behavior, in order place a customer into a segment that will automatically serve content more likely to interest that user. A “FishingEnthusiast” segment could be set for all visitors searching on “fishing” or similar terms, or return customers that bought a fishing rod or tackle within the last few months. As soon as one of those events is registered, the visitor becomes part of the FishingEnthusiast segment, and portions of the refreshed page (following search or login) would automatically show fishing items and promotions.

It is important to note that ATG personalization capabilities offer significant value beyond just identification of user segments to provide targeted content. While this is a common way to personalize the visitor’s experience, the Adaptive Scenario Engine can alter site output based on many different things. For example, you can detect the device type to show different pages to a user on a mobile device than those shown to a desktop browser. You can also use other parameters

Page 6: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

6

such as language selection, locale, currency, a user’s organizational role, etc. Literally any type of information known about a site visitor can be used to change the site’s content and behavior.

Personalization capabilities are incorporated at a low level to be an intrinsic part of all ATG applications, and a powerful tool for any ATG-based site. It also permits the rules to operate efficiently, allowing you to enjoy the benefits of personalization without sacrificing page responsiveness (a common problem for those packages that attempt this at all) or devoting enormous numbers of developers to managing this function.

SCENARIOS

The Adaptive Scenario Engine also manages the creation and operation of “scenarios,” or event-driven campaigns designed to manage interactions with site visitors over time. This is useful in personalization and also for the general operation of a site. Scenarios are implemented as a server task that listens for “event” messages that could be of interest, and then takes action when a relevant message is received. The events of interest and actions to be taken are defined in scenarios you create using a graphical editor. Each scenario is essentially a sequence that all site visitors can “flow through” in response to their actions and/or changes in the site. The example in Figure 2 below illustrates a scenario that provides a one-time promotion to newly registered users at a bike store. Young people will get 25 percent off BMX bikes if they visit any bike-related pages in the store; female users will get 20 percent off their order if they view any clothing items.

Figure Figure Figure Figure 2222

The Scenario Engine provides tremendous flexibility to deliver the right content and implement complex, time-based workflows using a very simple interface. Marketing and merchandising programs that would typically have to be hand-coded to specification can be set up in minutes. This gives you business capabilities that you might not otherwise be able to get online, and certainly gives you a significant time-to-market advantage in responding to market changes and implementing new programs.

Ease of integration

A modern e-commerce site must integrate with numerous, potentially dozens, of data sources and external systems. Information about customers, products, orders, inventory, pricing, business content, shipping costs, and many other elements must be available for display and processing. External systems like order management, fulfillment, warehouse / inventory management, payment processing, shipping, financial, CRM, and other systems must exchange instructions and information regularly. This is a classic challenge for IT: getting the right information and commands flowing between diverse systems in a reliable and scalable fashion is often very difficult, and a large number of solutions exist in the market to alleviate this problem. ATG provides a number of other simple, yet very powerful, ways to connect your e-commerce site to data sources and independent systems, principally through the Data Anywhere framework.

Page 7: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

7

DATA ANYWHERE ARCHITDATA ANYWHERE ARCHITDATA ANYWHERE ARCHITDATA ANYWHERE ARCHITECTUREECTUREECTUREECTURE

ATG uses a data abstraction layer known as the Data Anywhere Architecture (DAA) that provides a number of important functions, including:

� Decoupling the application from data sourcesDecoupling the application from data sourcesDecoupling the application from data sourcesDecoupling the application from data sources by providing an object relational mapping mechanism that makes information in external systems available as object properties for use in the ATG application. Development and operation is insulated from schema details and a single interface is used to access and manage data needed by application components. Data objects are described in terms of properties or attributes as defined by the application requirements. These properties are easily mapped via XML descriptors to one or several traditional content sources such as a SQL Database or LDAP directories. Data Anywhere objects support complex data types, inheritance, and sophisticated relationships between such objects. Fine-grained security/access control and query functionality is native to the Data Anywhere Architecture.

� Establishing a data model for hierarchies of persistent data Establishing a data model for hierarchies of persistent data Establishing a data model for hierarchies of persistent data Establishing a data model for hierarchies of persistent data independent of the data sources. e-Commerce sites function on data that has a meaningful structure, even though the native data sources may not actually store information in a manner that is useful for the application. ATG’s DAA possesses an intrinsic ability to map data from its current location(s) into a hierarchy that makes sense for the online site. Some hierarchies, such as Catalog � Category � Product � SKU, are provided by default, but this is easily configurable to whatever definition makes sense for the customer site.

� Providing a sophisticated implementation, optimized for eProviding a sophisticated implementation, optimized for eProviding a sophisticated implementation, optimized for eProviding a sophisticated implementation, optimized for e----commerce.commerce.commerce.commerce. Managing the information used by the commerce application is very important for performance and functionality. e-Commerce applications are highly dependent on the speed at which data is accessed. Scalability cannot be achieved unless this is managed very effectively. ATG’s DAA provides a set of features that automatically manage this for the application, including multiple caching models, distributed locking, and support for “policies” such as lazy loading of data, that are critical to performance.

REPOSITORIES

The core of the ATG Data Anywhere Architecture is the Repository API. Through the Repository API, you can employ a single approach to accessing disparate data types such as SQL databases and LDAP directories. By abstracting the interface to data, ATG applications are independent from the different data sources they rely on. Powerful configuration capabilities allow repositories to connect to, and easily switch among, different data sources without the need to write (or rewrite) data access code, reducing costs and risks and speeding time to market. Configuration is provided by XML files that specify the data architecture, and the system generates the data model dynamically at run time. Data is obtained directly by referring to objects, or by executing an abstract Relational Query Language query against any repository. Repositories provide an ability to control transaction scope using the same modes (required, supports, never) used by Enterprise Java Beans (EJBs) without the overhead and complexity needed for that method. Repository security controls permit fine-grained access at the data type, data object, and even individual property level.

THE INTEGRATION REPOSITORY

The Integration Repository is a special, general purpose repository used to connect to a variety of systems not accessible via the more common repositories listed in the preceding section. Instead of a dedicated data connector such as a SQL or LDAP adapter, the Integration Repository is loaded with

Page 8: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

8

commands for the specific remote system, storing data in a local SQL repository between remote procedure calls used to exchange information with the target system. Figure 3 shows how the Integration Repository is used in an ATG application.

Developers use the same RQL and RQL droplets to interact with the Integration Repository, maintaining consistency with the rest of the data access model. This minimizes (and isolates) the code needed to adapt to a foreign system and implement the specific rules for schedule, exception handling, and other elements that would typically require very intense development and testing to build for the many external systems commonly interfacing with an e-commerce site.

Figure Figure Figure Figure 3333

WEB SERVICES AND WEB SERVICES AND WEB SERVICES AND WEB SERVICES AND OTHER INTEGRATION MEOTHER INTEGRATION MEOTHER INTEGRATION MEOTHER INTEGRATION METHODSTHODSTHODSTHODS

Data Anywhere objects may also map to RPC-like mechanisms such as Web services or API calls instead of, or in addition to, the traditional data sources mentioned above. ATG provides a generous set of Web Services OOB that external applications can call to gain access to Repository data, components, and processes. ATG also provides mechanisms to generate new Web Service calls to expose custom classes in an application. ATG applications support other standard network and messaging connectivity, including, but not limited to JMS, IIOP, RMI, SOAP, CORBA, various Enterprise Service Bus products, and the like. Virtually all ATG services are componentized, allowing ATG to either provide or proxy key functions as required. Most of the interfaces that drive external component behavior are public and may therefore be swapped, in whole or in part, with extended or customized components.

Adaptability for Any Requirement

If all sites had similar requirements for look and feel, customer interaction, site logic, fulfillment, and other necessities, it might be possible to meet all the needs with a monolithic “Software as a Service” provider. In reality, each enterprise has its own unique requirements as well as a need to differentiate in a crowd of Internet content clamoring for attention. This places demands on each

Page 9: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

9

site that require substantial customization to achieve, even when the base solution has a strong feature set supporting the most common functionality. The heart of ATG’s technology advantage lies in its adaptability to your specific requirements.

MODULAR, LAYERED PLAMODULAR, LAYERED PLAMODULAR, LAYERED PLAMODULAR, LAYERED PLATFORM ARCHITECTURETFORM ARCHITECTURETFORM ARCHITECTURETFORM ARCHITECTURE

One reason that ATG is so easy to work with is its fundamental architecture. Built up from the Java Enterprise Edition (Java EE) foundation, ATG provides a modular application framework that adds incremental layers of functionality. Figure 4 below illustrates this concept: The base layer of services (beyond those provided as part of application server and Java EE container) are provided by the Dynamo Application Framework (DAF), including a component model, a data-access model, a message-based event-model, and a UI/form development model. ATG’s Adaptive Scenario Engine is the next layer, drawing on DAF to provide a collection of technologies that enable Web-based applications to learn and store user behavior, and use that knowledge to present personalized content and a compelling and relevant Web experience. Above that, functional modules such as ATG’s Commerce, Merchandising and Search applications provide higher level services needed for your site. This approach makes the most commonly needed capabilities available at lower levels in the stack to provide them to any other module that needs to consume that service. The framework provides the benefits of tight integration, with every module drawing upon common resources and operating in a unified environment, while simultaneously permitting the flexibility to use as many of the ATG modules (or third-party applications) to build your site as you want.

Figure Figure Figure Figure 4444

This concept of modularity and flexibility permeates further than just the large modules. Components inside each layer or major application module are also designed the same way, where each is essentially its own provider in the framework’s “service oriented architecture.” Each component offers a discrete unit of functionality for use anywhere in the application by other ATG components or for use by your developers to obtain desired functionality. This approach promotes reusability and extensibility and makes it easier to develop and test applications, modules and individual components. These advantages translate to important benefits to you, including faster development, lower risk and cost, and an ability to concentrate your effort on creating a unique competitive advantage with your site instead of just trying to get it running and stable under load.

Page 10: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

10

ATG NUCLEUS ATG NUCLEUS ATG NUCLEUS ATG NUCLEUS –––– DEPENDENCY INJECTIO DEPENDENCY INJECTIO DEPENDENCY INJECTIO DEPENDENCY INJECTION AND MOREN AND MOREN AND MOREN AND MORE

Most new developers learn to write EJBs to run their application, but experienced Java EE architects often avoid EJBs because of their complexity and overhead. Development is considerably simpler using JavaBeans, as long as you have a container to easily create, initialize, manage, and connect them. ATG Nucleus, the component container in the ATG platform, provides a framework that does just that: it enables ATG applications to enjoy the simplicity and efficiency associated with JavaBeans while still providing an enterprise-class environment for development, testing, and operation. Nucleus was one of the first packages to use dependency injection, now a very popular design pattern seen in frameworks such as the open source Spring project and Google’s Guice. ATG selected this pattern because it is well-suited as a mechanism for efficiently building enterprise-class e-commerce sites.

One of the benefits of a dependency injection mechanism is that the application essentially assembles itself at runtime, based on the dependencies discovered as each object is created from its base class and its initialization parameters. For example, Figure 5 shows two different versions of application A that requires B and C to run: in the first case, C has all the necessary functionality, while in the second case C now also requires D to run. Switching from case 1 to case 2 with Nucleus (once module D is developed and tested) requires nothing more than a single line in module C’s initialization file to indicate a dependency on D. Nucleus will discover all dependencies, load, and initialize all modules in the correct order.

Nucleus has some additional features not found in all dependency injection frameworks that are very useful in e-commerce application development. Nucleus organizes components into a hierarchy, and assigns a name to each component, based on its position in the hierarchy. For example, a component named /services/logs/FileLogger represents a component called FileLogger, contained by the container component called logs, which is itself contained by the container component called services. The hierarchy can be used to put layers of functionality that allow you to alter the behavior of the same classes in a given application by using different configurations in the various layers that make up the hierarchy. For example, you can create a high level /mysite directory for a main site, then add layers for additional countries that this site supports, such as /mysite/de for Germany and /mysite/ca for Canada. The pricing engine used in Canada may be the default, while the German pricing engine could have a different initialization file that would cause Nucleus to load different parameters – or even a completely different class to implement custom pricing in that market.

Layering has an additional benefit beyond implementation. It permits ATG applications to have a cleaner structure than they otherwise would be able to attain, with each level of extension and

Figure Figure Figure Figure 5555

Page 11: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

11

customization in its own area of the overall hierarchy. This makes it easier to maintain the application, even when new developers have to modify older code. But its greatest benefit by far is that it ensures the customizations from the base ATG code are very easy to identify and manage during upgrades. Upgrading to a new platform version, or replacing any major section of code, is a risky and arduous undertaking for other development environments. A properly written ATG application can dramatically simplify these tasks.

Another vital role Nucleus plays is setting object scope. This is made extremely easy by using a parameter in the component’s initialization file to determine if the object’s scope will be global or limited to a particular session or even a specific request. This provides a simple method to manage object scope that enables you to get the precise behavior you want in your application.

Nucleus makes it easy to create applications with loosely coupled, modular components that lend themselves to unit testing and easy integration, maintenance and upgradability. This significantly reduces development cost, time and complexity and reduces risks during implementation or upgrade.

CUSTOMIZABLE AT THE CUSTOMIZABLE AT THE CUSTOMIZABLE AT THE CUSTOMIZABLE AT THE LEAST INTRUSIVE LEVELEAST INTRUSIVE LEVELEAST INTRUSIVE LEVELEAST INTRUSIVE LEVELLLL

Since there is always a degree of customization to establish the appropriate business logic during a site’s implementation and ongoing operations, ATG’s design supports many layers of configuration, enabling an organization to tailor functionality at the most appropriate level. ATG’s platform is designed to make this as easy as possible by offering layers of configurability across a range of business operation and development activity. Some desired behavior can simply be managed by the appropriate use of dynamic data-driven pages and business tools. On the other end of the spectrum are changes that require completely custom components with new implementation classes. Table 1 describes the spectrum of methods that can be used in an ATG site to enable each type of modification to be performed using the simplest mechanism that can properly manage that change:

Type of Change

Description

Little to no customization actually required

It is important to recognize that many changes a merchant may want to implement on a site require little or no customization at all. For example, closeness qualifiers can automatically detect when a customer has almost fulfilled the requirements for a promotion, and trigger a message to inform the customer and motivate them to add more to items to a cart. Inventory status can automatically adjust product search rankings and display to encourage purchase of high-inventory items and deemphasize or offer substitutes for items with limited or no availability. There are many other cases, but the common theme is that there is already a basic capability that can be used to adapt automatically to the behavior needed in a given site.

Routine business changes

Routine changes to business logic occur for many reasons. New promotions and initiatives, seasonal product changes, and other routine alterations require modifications to the site’s behavior. ATG provides a Web-based business console (the ATG Business Control Center, or BCC) with easy-to-use controls that permit non-technical users to implement most changes that the business requires without any IT assistance. This removes entire categories of

Page 12: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

12

customization that should not require any IT support to fulfill.

Complex business scenarios

Some business requirements require more complex functionality than the options available in the BCC. For example, the business may decide to introduce a new promotional discount to customers that make a purchase within 30 days of registering on a site, or change site workflow rules to conform to business process changes. These types of changes are either more complex, or have a time-based state associated with them that make them much more difficult to “code into” a site. This is where ATG’s Adaptive Scenario Engine provides tremendous flexibility. Operable by a technically-capable user (in IT or in the business), this tool enables creation of complex workflows using an intuitive graphical interface. Scenarios are customer processes triggered by events (order placed, e-mail link clicked, time interval elapsed, etc) that continue through a sequence of subsequent actions, decision points, and additional events to watch for that collectively fulfill the desired business logic. In any other package, or in a self-developed site, these scenarios would require substantial custom coding and a site update. With ATG, they can be assembled in a graphical editor and deployed without pushing any code to the production site.

Component property configurations

Many site customizations can be configured by changing the default behavior of the components that ship with ATG’s platform. In some cases, this requires only a parameter change, such as specifying the list of states where sales tax must be collected, or adjusting the number of days that cookies persist. In other cases, different or additional components must be called to provide the desired behavior, such as adding a servlet pipeline to accommodate different context on a shared site. As described above, ATG’s Nucleus container creates and initializes all components in an ATG application, referring to a text “properties” file for component startup values, as well as a listing of other objects that must be loaded to support the component being instantiated. This simple mechanism provides a powerful ability to alter both default values used by any component (ATG or custom) as well as modify the dependencies to alter component behavior.

Component extension

ATG provides a great many components, with meaningful configurability right out of the box that may be enough for a given application. However, it is not uncommon to have business requirements that go beyond the range of behavior available in the components that are shipped, requiring extension of a class. For example, if a customer order has new fields that must be processed, the order object is extended to include these values and any methods needed to handle the new information. In this case, a standard Java component change is in order, and Nucleus makes this easy to manage by searching for components in a hierarchical name space, relying on its layering mechanism that allows lower level component property files to automatically override higher level ones, including those shipped by ATG. This means component extensions can be managed in layers from the base classes shipping with the product through any number of modifications needed in a site.

Component replacement

In other cases it may be necessary to completely substitute custom functionality for an existing ATG module. One example might be credit card processing. ATG ships with integration to CyberSource®, a popular payment service. If a customer uses some other means to validate addresses, detect fraud, and

Page 13: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

13

process credit card payments, it may make more sense to implement a new class for their specific needs rather than extending the existing class. This is greatly simplified by the nature of Nucleus as a dependency injection framework: you can get whatever component you need by simply changing the path / name currently being called to provide the target functionality and update it to the custom module. Nucleus will automatically load the new module in lieu of the default code, along with any dependent modules, as seamlessly as if this was shipped from ATG. Since these services are loaded by name, it is usually unnecessary to change anything in the rest of the application to make use of the replaced service. The modular nature of the ATG framework easily accommodates this development flexibility and greatly simplifies development, testing and deployment, unlike many other packages where this would be difficult to accomplish if it was even possible. It also means your modifications are separate from the original (untouched) functionality, making it much easier to upgrade your site in the future.

Table Table Table Table 1111

Empowering Business Users

One of the most compelling benefits ATG offers customers is the ability to put site control in the hands of the business, and reduce the corresponding burden from the IT team. A key design goal underlying all ATG innovation is to separate development activity from routine business operations so that each group is able to focus on the things most important to them. ATG does this by providing straightforward tools for business users to control commerce operations they should affect, and by ensuring that features presented through these tools are “safe” and easy to use.

ATG’s Business Control Center (BCC) provides a single, browser-based interface that business personnel use to create and edit many of the elements required to set up and maintain an ATG-based Web site. The activities you can perform in the BCC fall into two general areas:

� ATG Content Administration activitiesATG Content Administration activitiesATG Content Administration activitiesATG Content Administration activities. The ATG Business Control Center is the primary interface for performing ATG Content Administration tasks, including the creation, modification, or deployment of Web site content, such as catalog attributes.

� ATG Personalization activities.ATG Personalization activities.ATG Personalization activities.ATG Personalization activities. You use the ATG Business Control Center to create and manage the components that are responsible for delivering personalized Web site content (content that changes dynamically for each site visitor). These components include user profiles, organizations, roles, user segments, content targeters, and content groups.

The ATG Business Control Center is also used as the starting point for launching several ATG applications, including ATG Merchandising, ATG Outreach, and ATG Service applications. Some more advanced capabilities, like scenarios, are managed using the ATG Control Center (ACC), a desktop client that requires additional levels of access to use on the site. These functions can be managed by business users along with BCC functions, but require a more technically capable operator to manage them properly.

Business tools in the BCC and, in some organizations, the ACC, represent a substantial savings in IT time and effort. Consider a simple example of changing promotions in response to sales volume and market conditions. In some packages and many self-developed sites, a major promotion change is requested by the business and implemented by IT during a change management cycle. Instead of being able to respond quickly and efficiently to the market, business functions must

Page 14: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

14

follow the tempo of deliberate code changes that should not be needed for this simple activity, and IT resources are spent on basic operations instead of technically challenging work. Moving control to the right group enhances business agility and removes low-value-add work from IT. ATG already offers substantial tools for business users, and continues to migrate functions of increasing technical sophistication into this framework.

Scalability for the Most Demanding Sites

ATG powers some of the largest commerce sites in the world, including sites with more than a million page-views per hour; up to several hundred thousand simultaneous users; over half a million sales per day; as well as catalogs over 10 million SKUs. Ensuring rock solid stability even at the peak demand for sites like these is made possible by a deliberate design. In addition to a general design consideration of the performance impact of every feature designed into the platform, ATG focused on potential performance bottlenecks such as database access, session management, and Web server limitations. ATG provides many features to avoid these constraints:

� Built-in database connection pooling and advanced caching, including four different cache modes

� Load management using supported application servers, and high performance connection modules

� Caching for dynamic and personalized content that may be retained for a session, or persistently across sessions.

� Lazy loading of data that may not be required for a given session

� Full support for horizontal and vertical scaling

� Page rendering of late aggregated, compiled, and reusable page fragments

The application is tested for performance as new features are added to ensure scalability. In addition to module testing, periodic commerce scalability testing shows nearly linear performance with additional processors, an impressive result that provides you a predictable path to support your growing business.

Through careful design, and attention to any issues that impact performance, ATG ensures the platform is ready for service in the most demanding environments.

Page 15: WP Technical Advantages

ATG Technical Advantages | AN ATG WHITEPAPER

15

Conclusion

ATG came from a background of building scalable, dynamic, personalized e-commerce sites, with substantial investment in providing you the best platform for e-commerce. Other packages may do some of what you need, but making a compelling site that is unique to you will not be easy, may not perform well, and almost certainly won’t offer many of the most compelling benefits ATG provides. Self-developed sites can also be used, but they will either require compromise on functionality or enormous investments in development staff and time because of the effort to offer and maintain a competitive online presence that can react quickly to business requirements. This is likely to also have a high opportunity cost since it will severely limit your ability to devote development resources to strategic projects that create competitive advantage for you business.

With ATG, you get a platform that does much of what you need right out of the box, and provides strong tools to build a unique advantage for your business. Designed for and proven in the most active sites in the world, ATG delivers rich, dynamic, and personalized sites that will increase your business results with higher conversion rates, increase average order value, and improved loyalty and repeat business. ATG puts the power of routine operations in the hands of the business community, and frees developers to focus on building a unique online presence and working on other high value projects.

About ATGAbout ATGAbout ATGAbout ATG A trusted, global specialist in e-commerce, ATG has spent the last decade focused on helping the world's premier brands maximize the success of their online businesses. The ATG Commerce application suite is the top-rated platform by industry analysts for powering highly personalized, efficient and effective e-commerce sites. The company's platform-neutral e-commerce optimization services can be easily added to any Web site to increase conversions and reduce abandonment. These services include ATG Recommendations and eStara Connections. For more information, please visit http://www.atg.com. ©2009 Art Technology Group, Inc. ATG, Art Technology Group and the ATG logo are registered trademarks of Art Technology Group. All other trademarks are the property of their respective holders.