Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Expo on Google News

SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
Xerox Uses Java Tool to Cut Development Time in Half
Xerox Uses Java Tool to Cut Development Time in Half

A global company in the document processing business, Xerox Corporation offers a wide array of products and consulting services including publishing systems, copiers, printers, scanners, fax machines and document management software along with related products and services.

Xerox started the office copying revolution with the introduction of its 914 copier in 1959. Today Xerox stands poised for the continued expansion of the global document processing market, already enormous at $200 billion a year and growing 10% a year. Including Fuji Xerox, whose results are not consolidated in accounting statements, Xerox worldwide revenues in 1996 were $25 billion, two thirds of which were generated outside the U.S.

In June 1996 Karen Mihara, development manager, and Jim Johnson, chief technologist at Xerox Corporation, faced a challenge. Their task: to migrate the Xerox PeopleNet, a client/server application that serves more than 33,000 U.S. employees, to the Web. Because Xerox PeopleNet is one of the company's most critical employee/management empowerment tools, the migration would have to be seamless. Employees use the application to access and update their personal information, reference policy and process manuals, review salary planning information, submit paperwork electronically and perform workflow processes.

"One of our goals in placing Xerox PeopleNet on our enterprise-wide intranet was to move to a more productive, object-oriented development environment," says Mihara. "We also wanted a Web-based application to ease deployment and support of Xerox's installed base of Windows, UNIX and Macintosh workstations."

But Mihara and Johnson didn't want to have to start from scratch. They especially wanted to make sure they could still use the existing Oracle databases that contained the proven data sources and business logic for the client/server application. It was crucial that the new Web-based application be able to work with Oracle database technology.

Making the Evaluation "It was also very important that we be able to easily migrate our developers from Microsoft's Visual Basic, which we'd used for the client/server application, to Java for the Web-based application," says Johnson.

Adds Mihara, "What we needed was a Java graphical development environment that closely mirrored Visual Basic and gave us some of the same advantages. Visual Basic was quick and easy for our developers to use for prototyping and debugging. We needed that same functionality in a development environment for the Web."

Part of the challenge for Mihara and Johnson in evaluating Java development tools was that at the time Java was just emerging as an industry standard. They were concerned about finding a stable development environment that supported Java's still evolving features.

Mihara and Johnson looked at several Java development tools until they found a solution that fit their needs.

"Of all the Java development environments we looked at, Symantec's Visual Café for Java was the most stable and feature-rich," says Johnson. Symantec also consistently puts out Visual Café releases and updates in sync with Java's. For developers, this was critical.

Migrating from Visual Basic to Java-Based Visual Café
Visual Café made the transition to Java very smooth for the Xerox developers. Visual Café allows developers to use a visual development process similar to Visual Basic and other Integrated Development Environments (IDEs). User interfaces can be designed by dragging-and-dropping graphical components from a palette and setting properties from a property editor.

Visual Café also has an Interaction Wizard that will generate code to connect events and methods between selected components. Visual Basic does not generate interaction between components.

In addition, Visual Café accommodates developers who don't want to use the Visual design (RAD) mode. Source code can be directly edited, compiled and debugged within Café.

Debugging
The features Johnson, Mihara and Xerox developers now depend on include a debugger and the software's ability to debug threads and third-party components.

Visual Café provides a comprehensive debugging environment that allows debugging of applets (in Java's Applet viewer, Netscape Navigator or Microsoft's Internet Explorer).

Says Johnson, "We have been able to debug third-party components, in-house- developed components, multithreaded applets, CORBA-based communications and multiple applets communicating via shared memory without any problems."

Creating In-House Components for Use as Standard Objects
Also, according to Mihara and Johnson, developers can now create their own components and then reuse them as standard objects across many different Java applets.

"In Visual Basic, if you wanted to reuse code between different programs, you had to copy the code over into the source code for each program," points out Mihara. "With this software you can set up components once, add them to the graphical tool palette and any developer can simply drag-and-drop the components into another applet.

"This also means that logic or components need only be written and tested once, which considerably shortens our testing cycle," Mihara continues.

For the Xerox PeopleNet Web project, developers relied heavily on components because of their inherent reusability and the ability to drive implementation and development standards. Visual Café has the very useful feature of being able to "import" custom components onto a development palette.

Mihara and Johnson's team developed two basic types of components: (1) a wrapper component of third-party or standard Java graphical or functional components, and (2) custom graphical components.

The wrapper components were implemented to enforce look and feel, or standardize operational behavior by restricting properties or methods behaviors. A big benefit of these types of components included simplifying the development environment so junior developers could come quickly up to speed.

Examples of wrapper-type components were a table component (the base component was KL Group's LiveTable component and a CORBA server connection class). The connection class, which interfaces to an Oracle database via Persistence Software's PowerTier product, was implemented in such a way that the CORBA connection could be shared among the various applets a user would request during a session. The connection class was implemented through the use of a common class that utilized static variables. A simple method from that class, setObjectServer(), is found in Listing 1.

Functionally, the establishment of a method like setObjectServer() has several advantages. First, it allows a standard simple interface for developers to establish CORBA connections. Second, it saves on client and server resources as each applet can share a single CORBA connection and limit the times the CORBA connection is initiated.

The components developed for Xerox PeopleNet Web fell primarily into the user interface realm of the product. The lightweight components do not use operating system "peers," and therefore provide a common look across all platforms. This is important in this case because Xerox has a heterogeneous desktop environment and a very large user base to support (more than 36,000 users). Examples of these types of components include a standard applet header, text label, custom buttons and tab control.

Easing the Learning Curve
For Johnson, the object orientation of Visual Café decreased the learning curve for his developers. "You drag-and-drop the GUI component you want, use a wizard to connect the component's interactions to other objects and the software generates all of the Java code. You can then look at the code that was generated and learn Java that way," Johnson says. "In fact, not one of our developers has any formal training with Visual Café or Java. They've been able to learn at a pace that is good for them as well as for our schedule. And we didn't have to hire any new employees or bring in new consultants."

Mihara said she likes what she hasn't heard about using the software from the developers. "With Visual Basic, the applications tended to be very difficult to debug. Its close ties to the Windows operating system made the applications behave differently, depending on the Windows version and the other applications that were installed. Things were unpredictable," she says. "But I haven't heard any of our developers voice these complaints about Java and Visual Café. When you run Java applets in Visual Café, they're consistent. It's a much more stable and consistent development environment."

Johnson calculates that using the tool has cut development time in half - or more. "Because we used Visual Café, it took dramatically less time for us to develop Xerox PeopleNet," he says.

"It's a good investment," he continues. "Just think about how much you pay your developers for their time to see what Java and Visual Café can save your company."

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

Latest Cloud Developer Stories
Swisscom, the Swiss telecom, is going into the cloud business. Its subsidiary Swisscom IT Services AG has signed up with Red Hat as a Certified Cloud Provider and launched a public cloud Infrastructure-as-a-Service (IaaS) cloud targeting enterprise-class customers primarily in ...
Apache Deltacloud, the Red Hat-contributed ReSTful API that abstracts differences between clouds so services on any cloud can be managed – provided of course there’s a driver – has graduated from the Apache Foundation’s incubator and is now a full-fledged Top-Level Project (TLP)....
In a surprise move on Tuesday, January 10, Oracle wheeled out its Big Data Appliance. That’s the one it said in October would be ready sometime in the first half. Only nobody believed it meant early in the first half. Heck, it’s not even clear anybody thought Oracle could make ...
Rackspace Hosting, the service leader in cloud computing, on Thursday announced its acquisition of SharePoint911, an industry leader in SharePoint consulting, training, and "JumpStart" services within SharePoint. The unification of both companies provides capabilities to deliver ...
CloudLinux, Inc., on Thursday released CafeFS 3, a virtualized file system for shared hosters that cages each customer within its own virtualized file system. CageFS becomes part of CloudLinux OS at no additional charge. CloudLinux OS, the only commercially-supported Linux OS m...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE

Breaking Cloud Computing News
As client demand for engagements increases, Revel Consulting (www.revelconsulting.com), a Kirkland, ...