Borland: MDA, UML, XML Web Services, Linux
Tim Anderson quizzes Borlandís Chief Executive Officer Dale Fuller and its Chief Technology Officer Blake Stone
MDA and modeling futures
Tim: Whatís your high-level view of MDA? To some people itís the future of software development, a higher level of abstraction, platform independence, model driven design. Others consider it a false trail, that itís too difficult to make it work properly and there are other ways in which software tools will develop to make development easier.
Blake: If you expect too much of it, itís going to fail. If what if you expect from model-driven development, from model-driven architectures, is a general-purpose solution for any computing problem that eliminates the need for code, it will fail. Absolutely it will fail.
But if what you expect is that weíre going to build another layer of abstraction, like we always do for solving problems, that lets you build a lot of applications that are designed for collecting and retrieving structured information with relationships, we can make that easier. It will work hand-in-hand with everything weíve done before. It wonít replace object-orientation. It will be a layer of reusable technology that works with an object-oriented backing to fill in the areas that it doesnít address.
Thatís what ECO is, our Enterprise Core Objects product. A product for the Dot Net platform that allows us to take a model that describes business objects and relationships and constraints and very rapidly get a working system, and then fill in the details and polish it with a traditional programming language.
The historical analogy is that if you look at the way people are wired, people both draw pictures and write with symbols to communicate. There hasnít been a point in thousands of years where we completely abandoned one for the other. Why do we believe that now suddenly people are going to abandon one form of communication? Because really thatís all this is.
How many decades have we had the promise: just describe the problem and the code will be generated, you can get rid of all those dirty developers? Decade after decade after decade we hear that promise. The latest round of CASE didnít really deliver on its promise, MDA wonít deliver on that promise. But if you have the right expectations it can be very powerful.
Tim: Talking about modelling, Borland presents a somewhat confusing range of modelling products, from ModelMaker to Bold, ECO and the Together range. Is the intention to bring all these ďTogetherĒ?
Blake: Absolutely. The intention is to bring all of these to Together. The ModelMaker product is a historical product prior to our acquisition [of TogetherSoft] that solved a problem for a lot of our Delphi developers, a lot like our partnership with Rational, which gave a solution with its own limitations for our Java developers. We identified Together as a vastly superior solution.
Weíre in the process of rolling Together out. Youíll see that Together and Eco as new products are not confusing at all. ECO is a runtime technology, itís an architecture that you can reuse to solve problems, and all of the design work for ECO is done in Together. Together has specific functionality to support ECO designs, so weíve tailored the technology for ECO, but itís very much a Together-based technology.
Tim: Will Together get OCL (Object Constraint Language) support?
Blake: Together doesnít have a lot of explicit support for OCL today, but it is one of the areas that they are planning additional work in. Theyíre working with the OMG on next-generation specifications of OCL. To be honest, UML specifies all kinds of little edge characteristics, and while we do support the set of diagrams, we focus on the core of things that customers derive the most value from.
We arenít focused on solving UML problems for our customers. Weíre focused on solving business problems. And if UML is a tool to that end, great.
XML Web Services vs CORBA and RMI
Tim: XML Web services are evolving, and getting security, guaranteed delivery, transaction support. What are the implications for other technologies like CORBA and RMI (Java Remote Method Invocation)?
Blake? Well, what are the implications of Java for C++? It doesnít seem to have completely destroyed the market. There are always needs for these technologies. If you look at web services, they are a very powerful tool and a great concept, but they arenít fully baked yet. They have applications today, and with a little more architectural work, theyíll have applications tomorrow. But ask a business how interested they are in taking their existing back-end systems and breaking them all open again and re-engineering them to take advantage of web services. The answer is, ďare you kidding?Ē If youíve got something in production, the last thing you want to do is ever touch it again, if you can avoid it.
So weíll find that thereís a very long life for CORBA. And while people arenít focused on the CORBA infrastructure any more, the IIOP [Internet Inter-Orb Protocol] transport continues to live on. Not only is it the underpinnings for CORBA, it is the underpinnings for J2EE. RMI over IIOP uses the same transport so our VisiBroker technology allows us to build things like Janeva, which works over the same IIOP transport. You donít see it much, itís beneath the surface, but it is there serving your needs.
Dale: The other thing is the overhead associated with web services. It is going to create such a bottleneck in speed and performance. Back up 20 years and we used to think IIOP was really a pig it was so slow. Now people are saying, thatís really fast, thatís 10 times faster than web services.
Although the security issue is a big issue today, and IIOP really solves that problem, thereís going to be speed and performance as well. Now, IBM and Microsoft are standardising web services, which we applaud because those two guys were the guys who had to come together. That bottleneck, speed and performance, I believe each one of those guys is going to solve it on their own platform and it wonít transport. The speed will be painful going across, which is why you need to be all IBM, or all Microsoft, to not have that problem. And is a business problem, if you happen to have both IBM and Microsoft platforms. Thereís room for someone like a Borland, who might create something.
Blake: I have yet to hear one of our telecommunications or networking partners saying, ďWeíre going to jettison our IIOP-based infrastructure for web services.Ē I donít think I will hear it in the near future. The Ciscos of the world, the large Telcos we work with, they still see it as a strategic technology, and build their business around IIOP.
Tim: Surely thereís a lot of people building web services onto their existing infrastructure?
Blake: Yes, they are layers above.
Kylix and Linux
Tim: Clearly Borland is disappointed with the performance of Kylix, the RAD tool for Linux, yet Linux is still a growing platform. So where is Linux development going?
Dale: We made a bet on Linux development. We knew that Linux was going to be an explosive technology and become one of the major platforms out there. What we didnít know, was whether development was going to be happening on the Linux platform. Three years on, looking backwards, we see that software development in the masses is not happening on the Linux platform. The Linux Platform has become the runtime deployment vehicle by which I can take my Java, my C++, and I get it out there. I can put an app server on it and boom, it runs. Itís a pizza box sitting on the shelves and it just runs. Itís bullet proof and works very well.
Thatís whatís happened out in the market place. Weíve been disappointed with the RAD aspect of development on the Linux environment. Itís just not happened, itís a deployment vehicle.
Now there are going to be guys coming after me with knives and swords because I said that, because there are developers. And rightly so, thereís some good development going on, thereís some exciting things happening. However, itís not happening in the RAD environment. Itís happening in the C++ world, thatís why weíve come out with our C++ products on there, itís happening in the Java world. We think we have that market pretty much surrounded in that aspect. But the two people that bought Kylix, weíre taking care of those guys.
Blake: You exaggerate!
Dale: I do exaggerate, thatís right.
Note: After this interview, Borland made a point of stating that Kylix has not been discontinued. It is under review; however there will not be a new version in 2004.
Copyright Tim Anderson 16th November 2003. All rights reserved.