11.1. EDH Application

Among computer scientists, CERN is more often remembered as the birthplace of the World Wide Web (Tim Berners-Lee and Robert Cailliau) than an organization that has been awarded several Nobel Prizes in physics. In this context, it is important to remember that the World Wide Web was developed to meet the needs of CERN physicists, collaborating and exchanging information in a global physics community. Similarly, an organization-wide e-business system at CERN must be available and must meet the requirements of the physicists and engineers working or collaborating with CERN, whether they are on the CERN site in Geneva or working from their home institutes in California, Moscow, or Delhi. Currently, CERN collaborates with more than 500 such institutes around the world.

CERN's internal e-business application is known as EDH (electronic document handling). EDH currently has more than 5,000 active users, with more than 1,000 users a day. An electronic document is processed every 20 seconds. The system is multilingual, uses a Java servlet architecture for its Web tier, and runs Oracle Workflow as the routing engine. Oracle Workflow enables information to be routed according to a set of business rules.

CERN uses EDH to

  • Purchase any of 16,000 standardized items from the CERN Stores Catalog

  • Create purchase requisitions that are processed and transmitted to any of CERN's 20,000 suppliers or any new supplier in the world

  • Create requests to import or export goods

  • Create requests to attend a course from CERN's on-site training catalogue

  • Create requests to attend external training, conferences, or other events

  • Create requests for vacation time

  • Create requests for overtime compensation

  • Create requests for additional human resources for a project or activity

These tasks, using EDH, generate about 100,000 electronic forms a year. Paper forms are no longer used for any of these tasks. Other smaller, low-volume procedures are also under consideration for integration into EDH.

EDH understands the structure, roles, and responsibilities of the organization and can employ this knowledge to accelerate procedures even further. For example, EDH never sends a document to someone who is absent. If a document is not signed within a given timeframe, it is automatically routed to a deputy or someone else with equivalent responsibilities in that domain. Oracle Workflow also offers tools to show and edit the workflow graphically, thereby fostering streamlining and standardization of procedures across the organization. In addition, Oracle Workflow supports both synchronous and asynchronous processes, and enables post-notification by allowing functions to be executed. The net result is that the average processing time of an e-document takes less than a few hours, compared with days, if not weeks, for the previous paper process.

11.1.1. Why Move to J2EE Technologies?

Using servlets with JDBC, access to a database can easily serve dynamic content. But this approach lacks scalability if the Web applications become more complex or the client base grows. A key performance measure for the Web is the speed with which content is served to users. Caching is one of the key strategies to improve performance. Oracle addresses this problem with its Web cache to improve the application server performance, and a database cache to improve the performance in the database tier. In addition, the Internet calls for rapidly changing user interfaces, making it important to clearly separate the business logic tier from the presentation tier.

More particularly, our goal is to decrease the complexity of application development by using the system-level services of the Enterprise JavaBeans container, including security, resource pooling, persistence, concurrency, and transactional integrity. By acquiring off-the-shelf components, the sheer amount of code developed in-house is reduced, at the same time increasing internal reusability within the confines of a standardized component model. Use of frameworks enables developers to productively build application components out of smart, reusable parts. Oracle offers a comprehensive component framework and tool set for writing server-side business applications. Called Oracle Business Components for Java, the framework significantly simplifies the construction of Java- and XML-based application components.

The J2EE platform thus emerges as an industry standard, and many vendors provide solutions in the area of UML tools, integrated development environments (IDEs), EJB application servers, monitoring tools, and so on. By using the best products that come out of this competitive environment, and by adhering to standard, well-documented J2EE technologies, the goal of CERN is to reduce the learning curve for its new team members, allowing them to quickly integrate into their projects. Because CERN is partly a training facility, it has a particularly large turnover of temporary student programmers who work on an application for only a short time.

11.1.2. Why Use EJB?

Although the EDH application has existed since 1990, a complete rewrite using Java technology was begun in 1998, with the relatively new EJB specification in mind. At the time, few commercial application servers implemented the EJB specification, and those that did were thought to be insufficiently scaleable for the relatively large user population at CERN. To ensure forward compatibility, CERN implemented a component architecture closely following the EJB specification, with the intention of migrating to fully compatible EJB components once commercial implementations of the technology matured. The EDH development team believes this maturation is now taking place.

11.1.3. Why Choose Oracle J2EE Products?

Given the existing business relationship between CERN and Oracle, it seemed logical to start the J2EE journey at Oracle. Although the multivendor support is a major argument in favor of J2EE, Oracle's offering is a compelling choice, because Oracle offers products for all J2EE tiers.

Oracle9i offers a unified Java-XML-SQL environment for both the Oracle9i database and Oracle9i Application Server (Oracle9iAS). From native data storage (such as XML documents) to standards-based data access (such as JDBC) to common APIs for complex application processing (such as messaging, queuing, transactions, multimedia and file management, online analytical processing, and data warehousing), the three languages can be used in combination to write applications. This approach ensures that applications rich in these languages will never suffer from interlanguage incompatibilities, and it allows Oracle to ensure optimal performance and scalability.

Furthermore, Oracle is uniquely positioned to distribute the logical tiers of a distributed application over different physical tiers, depending on the operational requirements. Oracle9iAS and Oracle9i database have a complete implementation of the J2EE enterprise APIs, including servlet, EJB, JSP, XML, JMS, and JNDI. Oracle9iAS builds on Apache's extensible architecture by adding modules to extend the core functionality. Oracle9iAS Web Cache provides cacheability rules for both static and dynamic content created by J2EE components. Oracle9iAS intelligently distributes loads across multiple servers and provides no single point of failure using its sophisticated listener-dispatcher architecture, Web cache load balancing, and architecture of Oracle HTTP Server. In particular, all logical tiers can be collapsed into the Oracle9i database featuring EJB 1.1 support and an integrated servlet engine. Because the EJBs reside inside the database in this scenario, access to the database can be highly optimized. In multitier configurations, EJBs run in Oracle9iAS. Servlets running in the Oracle Enterprise Java Engine have direct in-memory access to EJBs and benefit from a shorter-path JDBC driver. Another boost in performance can be expected from the ability to compile the final production code into native code that gets linked dynamically with the database.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset