New rapid application development tools are making Web development easier
- By S. Michael Gallagher
- Nov 17, 2004
Rapid application development in the 1990s was, generally speaking, a contradiction in terms.
Available tools usually tied de- velopers to a specific platform for deployment. Distributing and managing versions of an application was a time-consuming chore, as was keeping groups of developers in sync on a project.
Easy-to-use tools typically couldn't scale well, or they required a steep learning curve. When widely deployed as desktop clients, they required additional network and server infrastructure. And it was difficult or impossible to move the applications to new platforms such as the Web.
While Web-based applications solved the problem of how to get applications to users and centrally maintain them, they presented new technical challenges for the tools needed to build and deploy them. Often, RAD applications had to be totally rewritten with another technology, such as Java or C++, before they could be put to high-volume use'and that was anything but rapid.
The whole reason for RAD is to escape the long cycle of traditional application development: gathering requirements, designing and building an application, and then delivering it to the end user. That cyclic approach, said Jeff Walker, founder of RAD tool vendor Tenfold Corp., is self-defeating.
'The whole notion of requirements is a flawed process,' he said. 'I've never seen people come up with requirements that actually meet what people want. People don't know what they want until you show them what you're giving them. If you spend a year determining crappy requirements, you've wasted a year.'Faster turnaround
RAD tools let developers come back quickly to users with a working application based on their requests, so they can quickly change their minds.
'If you have the ability to change the app in a couple of days and go back to them, after few times around the loop, you get an application that's suitable,' Walker said.
Fortunately, a new class of RAD tools is making Web development easier and giving developers real enterprise-strength results. The main differences among the latest generation of RAD tools is how much of the programming code that forms an application they hide, and what form the applications take when they're deployed.
While simplified products can make a wider range of people productive as 'developers,' there's often a trade-off in terms of how far the applications they create can be customized and where they can be run.
Vendors have tried to minimize that trade-off. Walker said the company's EnterpriseTenfold can produce in two weeks applications that might take a year in other environments'and 'the second week is showing it to people.' He likens the development architecture for the product to that of Microsoft Excel: The applications themselves are like spreadsheets, descriptions of applications that run on top of Tenfold's runtime engine, which in turn runs on most versions of Unix and Windows, and wires into Oracle, IBM, Sybase, and MySQL databases.
Tenfold's approach might not fit the architectural standards of some organizations, however, since it's based on a proprietary run time.
But tools such as Macromedia Inc.'s ColdFusion and Novell Inc.'s Extend let people with general IT skills create browser-based applications and even Web services, and deploy them on Java 2 Enterprise Edition application server'without ever having to write a line of Java code.Visual tools
For example, Novell's Extend product'acquired by the company when it purchased Java application vendor SilverStream Software Inc. two years ago'lets users visually connect data to create back-end services out of existing applications and data sources.
That even includes mainframe terminal applications. The services can then be wired with a visual tool into a portlet'a Web application within a Web site'or used to integrate the data source with other applications.
'Most guys who run mainframes don't have the skill set for the Web,' said Clive Bearman, Novell's product marketing manager for Extend. 'That's not the era they were in. JSP [Java ServerPages] folks don't understand back-end systems, and Web portal people are generally just IT administration guys. Ex- tend tries to take the best from each of those areas, so anyone can use the tool. It's designed for an IT generalist to use.'
The South Carolina Department of Health and Human Services uses Extend to make its Web-service enabled applications, many of them mainframe-based and proprietary, available via a portal. The agency's development team can al- so create new Web service applications that leverage Java, Lightweight Directory Access Protocol, Extensible Markup Language and other open standards'all of which would have required considerably more in the way of development resources.
There's a way for organizations with existing development expertise to leverage the RAD approach as well. ColdFusion allows the mixing of Java with its tag-based application description language, as does Extend.
Also, organizations with developers who know (or want to learn) high-level programming and scripting languages can also turn to visual development tools from companies such as Oracle Corp.Follow the script
Oracle's JDeveloper goes beyond Java and incorporates PHP script language and Oracle's PL/SQL language, as well as the Oracle Application Framework, a collection of server-side libraries that take care of most of the housekeeping re-quired for J2EE applications.
'It allows developers to focus on application flow rather than J2EE plumbing,' said Rob Cheng, Oracle's product marketing director for application server software.
'And the code that gets generated is pure J2EE code,' he said, meaning that applications built with JDeveloper can run on any J2EE server, including those from Sun Microsystems Inc., BEA Systems Inc. of San Jose, Calif., and IBM Corp.
The Administrative Information Systems Department at Lawrence Livermore National Laboratory in Livermore, Calif., took advantage of the OAF development frameworks included in Oracle JDeveloper to help make developers more productive while building the Lab's Enterprise Reporting Workbench.
An Oracle spokesperson said the Enterprise Reporting Workbench is aimed at meeting the needs of the diverse scientific research programs at the Livermore labs. It is being deployed on Oracle 10g Application Server. The new system will go into production next year and will serve a community of 300 users.S. Michael Gallagher, a Maryland network manager, writes about computer technology.