Woolworths of South Africa, the 315-store chain at the heart of Woolworths Holdings, employs 250 developers, who for the past five years have learned to use Microsoft's Visual Studio .Net tools. His enterprise IT staff uses Sybase Inc.'s Java application server and Java portal. To build a data-flow monitoring and alerting system, he needed to allow developers to work in Visual Studio's Visual C++ and Active Server Pages .Net, but then recast the application to work with the Java application server and portal. An impossible order? Not so, says Roets. On the one hand, his shop is an early user of Oracle Tools for Microsoft .Net, announced last week, which allows Visual Studio developers to build applications that work with the Oracle database, even though it has been a Java-oriented database in the past.
On the other hand, he's employed a .Net-to-Java byte-code translator from Mainsoft Corp., called Visual MainWin, that lets his Microsoft Visual Studio-oriented developers produce applications that can run in the Java environment.
Mainsoft is one of the first third-party software vendors to capitalize on the similarity between Microsoft's .Net intermediate byte code and Java's intermediate byte code. Java source code is precompiled into a byte code that can then be sent across the network to run in a Java Virtual Machine on a given server or PC. Microsoft's C# and Visual Basic .Net languages are likewise precompiled from source code to a shared byte code that can be moved over a network and run in the Common Language Runtime. Visual MainWin translates the .Net byte code into Java byte code. "We use Mainsoft to bridge these two cultures. I want to use Sybase's Java 2 Enterprise Edition capabilities, but I've got Microsoft developers," says Roets. And he's glad Woolworths of South Africa developers are Microsoft-oriented. With no appreciable Java experience in house, he "saves 85% of the prospective development time" of a Java development project if he can proceed in a .Net language.
"Visual Studio is a very productive environment," he says. Last July, Woolworths considered buying a commercial systems-management package, such as Computer Associates CA-Unicenter or BMC Software's Patrol, but decided instead to develop its own application in-house called "Data Flow Review." "Unicenter brings in so much other stuff. It was more than we needed," Roets says.
The development goal was to produce a monitoring and management system that would let the Woolworths service-management team spot and resolve data-flow issues for the South African store chain and the larger, franchisee-owned stores located elsewhere in Africa, the Middle East, and Australia. That meant having the capability to follow data flows across 200 applications running on 4,000 servers, including PeopleSoft enterprise-resource-planning applications, relying on Microsoft's SQL Server database and back-office accounting applications working with Oracle, Roets says.
The new Data Flow Review system went into production in November, monitoring the exchanges of data going on through the Sybase application servers around the company. With the new system, Woolworths can monitor stock throughout its chain and franchisee stores and know when to replenish goods from its distribution centers. "It's mission critical," Roets says.
In addition to adopting Mainsoft's translation tool, he's glad to see Microsoft and Oracle working more closely together. "It's very wise of them to cooperate like this," says Roets, an early adopter of Oracle Tools for Visual Studio .Net. Once Woolworths can monitor data flows through both vendors' systems, it's likely to make greater use of both their databases. "In this case, they don't compete," he says.
That's not necessarily how Microsoft or Oracle might see it. But to Roets, it's simply a practical question. "How can I protect the Microsoft knowledge that we have and still use those Java 2EE components?"
From his perspective, straddling two worlds just got a little easier.