Theory Center

eBUSINESS SMART COMPONENTS:

A family of Enterprise JavaBeans for e-business applications

Introduction

THE RAPID GROWTH OF THE INTERNET HAS BEEN THE CATALYST FOR A NEW FOCUS ON INFORMATION TECHNOLOGY AS A STRATEGIC PART OF TODAY’S BUSINESS. THIS STRATEGY IS KNOWN AS eBUSINESS. THE NEW BREED OF ENTERPRISE APPLICATIONS REQUIRED TO ENABLE eBUSINESS MUST HAVE A LOW COST OF OWNERSHIP AND TAKE LESS TIME TO BUILD WITHOUT COMPROMISING SCALABILITY OR RELIABILITY. THE FASTEST AND MOST RELIABLE WAY TO BUILD SCALABLE eBUSINESS APPLICATIONS IS BY COMBINING PACKAGES OF PREBUILT AND PRETESTED BUSINESS FUNCTIONS KNOWN AS COMPONENTS. THE NEW ENTERPRISE JAVABEANS™ COMPONENT MODEL MAKES IT POSSIBLE TO DEVELOP STANDARDS-BASED eBUSINESS APPLICATIONS USING COMPONENTS. THIS PAPER DESCRIBES THEORY CENTER’S eBUSINESS SMART™ COMPONENTS, A FAMILY OF ENTERPRISE JAVABEANS FOR eBUSINESS APPLICATIONS.

Developing eBusiness Applications with
Enterprise JavaBeans

Application Server and Enterprise JavaBeans (EJB) technologies present a tremendous opportunity for enterprise information systems. Businesses can gain competitive advantages by rapidly deploying applications that address today’s sophisticated requirements of integration, networking and scalability. However, building these systems from the ground, without using specialized tools and prebuilt components, demands a great effort and expense.

A software development team building an eBusiness application using EJBs faces challenges that are compound by the increasingly short delivery times. To be successful a development team must be able to perform the following tasks seamlessly in record time frames:

- Master changing and complex technologies

- Model the business process accurately using object-oriented methodologies

- Design an application architecture that takes advantage of the infrastructure

- Implement, test, and deploy all business functions as Enterprise JavaBeans

Developers can take advantage of application server features and advanced tools to accelerate development but regardless of infrastructure and tools, they still must build all the business objects that make up their application. This task involves a tremendous amount of risk and effort.

In the process of planning eBusiness applications, corporations are faced with a build or buy decision. Building an application of this kind from the ground would consume considerable time and resources. On the other hand, an off-the-shelf application does not meet the company’s unique needs. The best solution is to use components. Components are packages of pre-built business functions that jump-start the development of an eBusiness application. Components allow developers to customize and snap together enterprise applications quickly, while tailoring them to specific business needs. The result is a complete solution that takes advantage of EJB technology without its time-consuming complexities.

The Theory Center provides a complete family of EJB components for eBusiness. Developers using the eBusiness Smart™ Component family do not need to start from scratch or master EJB complexities; by using eBSC developers can build eBusiness applications customized for their company’s unique business needs in record time frames.

e Business Smart™ Components

The Theory Center’s eBusiness Smart Components (eBSC) are a family of server-side components and development tools. eBSCs are prebuilt, reusable business logic that can be customized and snapped together to form a new eBusiness application. eBSCs provide 50% to 70% of the common business functions, allowing developers to focus their efforts on the functionality that represents your corporation’s competitive advantage. This approach radically improves development schedules and maintenance cost for enterprise applications.

eBusiness Smart Components can interact with each other as well as interact with other EJBs outside the component family. They have been modeled, designed, built, and tested by Theory Center to work together as a family and in combination with 3rd party and customer-built EJBs. Applications built using eBSC take the maximum advantage of EJB and Application Server technology.

Easy to Use and Customize

eBusiness Smart Components are designed with usability in mind. Their ease of use allows developers to rapidly customize components and snap together applications with minimal training. Components are easily customizable and can be extended to make new components specific to a particular business. eBusiness Smart Components include customization tools that integrate with leading modeling tools and Java IDEs. To customize or extend a component, developers simply customize its associated object model, and Theory’s automated tools generate the customized code.

Business Modeling with UML

eBusiness Smart Components make it easy to model an application. Using industry-standard Unified Modeling Language (UML), analysts can graphically model the company’s business process, selecting eBSCs from a repository. Once the UML diagram is drawn, all components and all object relationships are automatically generated using The Theory Center’s Smart Generator. The Smart Generator is a tool that transforms a UML representation of your business process into EJB components. All the source code, object definitions, object relationships, documentation, and EJB-required files are automatically created by the Smart Generator. Adding a relationship between two objects is as easy as drawing a line between them. Using visual modeling and roundtrip engineering, changes to the business model can be rapidly translated into changes in the application, greatly reducing maintenance cost and boosting application reliability.

ebusiness.ShoppingAdvisor UML model

Component Packages

The eBusiness Smart Component family is structured as packages. Each package contains a set of components that plays a specific role in assembling an enterprise application. At the lowest level is the Smart Foundation™ package. This package provides an interface to the Application Server and enhances EJBs with Theory’s Business Smart design patterns. It allows all eBusiness Smart Components to take advantage of both EJB technology and our implementation of industry-standard design patterns.

For commonly used business functions, The Theory Center provides the Axiom™ component package. This collection of components is designed to provide common business functionality that is used across applications. These components are typically lightweight and can be combined to create new powerful, industry-specific application components.

The Theory Center provides industry specific component packages for financial services, telecommunications, and Internet retail. Today the JumpStart product includes component packages required to build e-business applications, with an emphasis on Internet e-commerce and customer self-service.

JumpStart Component Packages

Package – description | Sample Components | Type
Axiom Components to solve common business problems in transactional and data-driven applications | Address | Belonging
AlphaNumericSequencer | Entity EJB
Person | Entity EJB
Workflow | Entity EJB
ebusiness.customer Customer interaction and profile management package. Can be seamlessly mapped to your existing customer database. | Customer | Entity EJB
CustomerManager | SessionEJB
ebusiness.item Flexible management and access to catalogs of products and services, with dynamic policy-based pricing | ItemCatalog | Entity EJB
ItemPriceCalculationPolicy | Business Policy
ebusiness.shoppingAdvisor Personalizes customer’s shopping experience. Suggests products and services based on customer profiles and buying patterns. Learns customer profiles. Allows for accurate targeting of offerings to consumers. | ShoppingAdvisor | Session EJB
CustomerProfile | Entity EJB
ebusiness.order Online order entry, order management, and shopping cart functionality | Order | Entity EJB
OrderManager | SessionEJB
ebusiness.session Complete online user session management, including guest, authenticated login and multiple login functions. Sessions are stored transactionally for trouble-free web interaction | EbusinessSessionManager | SessionEJB
EbusinessSession | Entity EJB
ebusiness. Troubleticket Complete customer support system. Includes ticket entry and response management, with robust transactional workflow | TroubleTicket | Entity EJB
TroubleTicketWorkflow | Entity EJB
TroubleTicketManager | SessionEJB
ebusiness.inventory Distributed interface to your existing inventory system. Interfaces with legacy apps and existing databases | InventoryManager | SessionEJB
Warehouse | Entity EJB
InventoryRecord | Entity EJB
ebusiness.invoicing Distributed interface to your existing invoicing/billing system. Interfaces with legacy apps and existing databases | InvoiceManager | SessionEJB
Invoice | Entity EJB
ebusiness.shipping Distributed interface to your existing shipping/order fulfillment system. Interfaces with legacy apps and existing databases | ShippingManager | SessionEJB
ShippingMethod | Entity EJB
PackingList | Belonging

Design Patterns

eBusiness Smart Components interact with each other using industry standard Design Patterns to solve a wide range of business problems. The use of proven design patterns results in a better business model, lowered cost of development and maintenance, and faster time-to-market.

Industry Standard Design Patterns | Business Smart Component examples | Description | Benefits
Strategy, Policy, and Chain of Responsibility Patterns Individual Instance Method analysis pattern | BusinessPolicy | BusinessPolicy is a set of Behavioral patterns. It lets you interchange business policies. BusinessPolicy pattern works with organizational business hierarchies to manage the company’s business policies. | Provides pluggable methods that can be changed at development time or at runtime Allows for fast adaptation of new/customized business policies with minimum cost. These new business policies can be tailored for specific clients or organizations.
Command and Action Patterns | Task | A Behavioral pattern that encapsulates a business process that provides isolation between business logic and business objects. | Allows the separation of business logic from business objects. Results in lower maintenance costs.
Iterator and Cursor Patterns | RemoteIterator, Iterator | A Behavioral pattern that provides (remote and local) ways to access elements of an aggregate objects sequentially, without exposing their underlying representation. The iteration API is based on the industry standard JDK. | Provides a complete set of powerful and flexible APIs to access large business relationships. Allows for better performance tuning.
Abstract Factory Pattern | SmartHome, BelongingHome | A Creational pattern that provides an interface for creating families of related or dependent objects without specifying their concrete classes. | Provides a consistent programming model for creation of objects. Results in lower maintenance costs.
Aggregation with Life Cycle Pattern | Singleton and collection aggregation of business objects by value, and by reference. | A combination of Creational and Behavioral patterns that provide flexible ways to control the life cycle of aggregate objects directly from its owner. | Provides a complete set of powerful and flexible APIs to maximize programming efficiency. Results in a better business model design and lower application development costs
Proxy Pattern | SmartHandle, Collection of remote objects. | A Structural pattern that provides a surrogate or placeholder for another object to control access to it. Allows for lazy evaluation of large collections of remote objects. | Allows for a natural modeling of business relationships without compromising performance

eBusiness Smart Components
Usage Scenario

eBusiness Smart Components can be used to build enterprise-class eBusiness applications. The following business scenario is a great example of how the eBSCs can help a company gain competitive edge and reduce overhead by bringing its services to customers using the web.

Beans & Co. Scenario

Beans & Company is a regional powerhouse in the beans market. To provide faster and more flexible services to its customers and at the same time to expand its customer base, Beans & Company has decided to launch an on-line marketplace. To reach these goals, they need to streamline their operations and quickly reach a worldwide audience. They must build a new application that can support thousands of web users and integrate seamlessly with the company’s existing logistics and accounting systems. The application must be built and deployed in weeks, not months. Beans & Co. has leading technology and a skilled technical staff, but the timing restrictions rule out building a new application from the ground up. On the other hand, since the bean market is very specialized, and the company’s product catalogs so diverse, they have not been able to find a shrink-wrapped offering that suitably met their business needs. They must leverage their capabilities across all of their business units to accomplish this task.

The solution lies in a middle-ground approach, using pre-built eBusiness Smart Components. eBSCs can be easily combined and customized to develop the new Internet application, joining all of their disparate systems. These components allow the company to quickly jump from zero to having a significant portion of the application developed.

The new application is deployed in an enterprise-class application server and provides both an HTML and a Java front-end. The Application Server has an Enterprise JavaBeans container in which the eBusiness Smart Components run. The components can access the existing shipping, inventory, and billing systems. They are even able to leverage their extensive customer database and product catalogs.

Using Enterprise JavaBeans technology and pre-built eBusiness Smart Components, the company is able to roll out its new online store in a fraction of the time. The eBusiness Smart Components are customized to the company’s business process and workflow, and tied to their existing systems. Using visual modeling tools, the company rapidly adds new functionality without causing disruptions to the system. Beans & Co. easily outpaces the competition by bringing new products and services to the market faster.

Summary

The Theory Center's eBusiness Smart Components are software building blocks for eBusiness. This family of Enterprise Java Beans helps you to bring new business services to your customers quickly and easily. They allow you to focus your programming resources on your unique competitive requirements. Using novel design patterns, we have modeled, designed, built, and tested our reusable server-side components to seamlessly work in conjunction with your commercial EJB Application Server.

Features | Specifications
Enterprise JavaBeans built from the ground up. | 100 % Pure Java
Plug and play components that allow you to use our out-of-the-box solution or plug your legacy applications in | BSCs are Enterprise JavaBeans 1.0
Easy-to-use component APIs, including collections with local and remote iterators | Support for Java 1.1 (Java 2 forthcoming)
Fully customizable and extensible using technologies like pluggable methods and dynamic runtime configuration | Support for the advanced Java 2 Collections API
Implemented using well-established design and analysis patterns for ease of use and re-use | Support for Enterprise Java APIs including EJB, RMI, JNDI, JTS, and JDBC
eBSCs work with other EJBs, including third-party and custom-built components | Support for modeling using UML, with roundtrip engineering from Rational Rose
High-performance features such as pass-by-value (PBV) | eBSCs can be invoked from Java Clients, Java Servlets, Java Server Pages (JSP/JHTML), CORBA Clients and Servers, ActiveX/COM, and other clients
eBSCs work with leading EJB Application Servers and leading databases (Oracle, Sybase, DB2, Cloudscape, etc.) | Support for BEA WebLogic, Gemstone/J, SilverStream, Persistence PowerTier, IBM WebSphere, and Netscape Application Servers
You don't need to be an EJB expert to use them! |

TheoryCenter, Business Smart and eBusiness Smart Components are trademarks of The Theory Center, Inc. Enterprise JavaBeans is a trademark of Sun Microsystems, Inc. All other trademarks are the property of their respective owners. ©1999 The Theory Center, Inc. All rights reserved 6/99

TheoryCenter

1 Winthrop Square

Boston MA 02110

Tel 1.888.Theory1

Fax 617.262.0703

info@theorycenter.com

www.theorycenter.com