WEB APPLICATION DEVELOPMENT TOOLS
WEB APPLICATION DEVELOPMENT TOOLS<@VM>Any one of these 11 tools can help you build better applications
The road to a more active, useful Web site is paved with kits that provide easy database access and programming functions
By Amy Helen Johnson
Special to GCN
Back in the early days of the Internet boom, a government agency was in the vanguard if it put up a Web site full of single-spaced text files and a search function that allowed people to hunt down the exact wording, say, of Regulation 2795-A, Paragraph 4(d).
No more. Today, forward-thinking agencies conduct business over the Internet using Web sites that resemble dynamic, database-driven corporate information systems. Building these sites requires modern programming tools geared toward Web application development.
The programming tools featured all serve the professional software developer. Pure markup language tools, or Hypertext Markup Language editors, are not covered; GCN published a Buyers Guide on those tools in the March 29 issue. I also have not included Java programming-language tools in this report; they will be covered in the Oct. 4 issue.
Broadly defined, Web development tools are programming toolkits for building browser-accessible, multitiered applications running over an IP network. To paraphrase an old saying, there are two types of Web development software packages in the world.
The first is a traditional client-server software-development suite that has added Web capabilities.
The approach these tools take is that an Internet or intranet is another deployment platform; their roots are in software development. Familiar names such as Sybase Inc.'s Powerbuilder and Inprise Corp.'s Delphi fall into this category.
The second set emerged contemporaneously with the Web. These tools arrived in response to a need by site developers to move beyond static information display. They wanted to add more complex capabilities, involving database access and information processing, to their sites. Products such as Fusion from NetObjects Inc. and Drumbeat 2000 from Macromedia Inc. typify this approach.In concert
But there's always an exception to the two-types rule.
|Tips for buyers|
Look for ODBC support at the very least, but remember that native database drivers are better.
Realize that SQL support is a must; the various types are embedded, pass-through and stored procedures.
Make sure you are comfortable
with a product's procedural language and that it has rapid application development tools to speed development.
Generate standard HTML for the output screens, allowing the widest range of browsers to use the app.
Look for collaboration features if you work in a team.
Opt for a suite if you don't already have a development infrastructure.
Lotus Notes began as collaborative groupware and was neither a client-server application nor a Web site tool. As the word intranet crept into the developer lexicon, however, Lotus Development Corp. saw the wisdom of broadening Notes' appeal by incorporating browser-based client capabilities and access to non-Notes back ends. To help developers build these expanded Notes applications, Lotus delivered Domino Designer.
Database-driven code is the classic application of multitiered programming; without the ability to read and write data'to change the information stored in the database'all you're left with is a static lookup system. So a key factor in determining the appropriate Web application development tool is how easily it lets you access information stored in a database.
Database access boils down to drivers: native database drivers and connectivity standards such as Open Database Connectivity.
Native drivers are the better of the two. They are tailored to the parameters of the back end and usually execute more quickly than a generalized solution such as ODBC. But ODBC has the advantage of being generic, so the application won't notice if the back- end changes.
Another database capability to look for is a tool's support for the Structured Query Language. SQL is the lingua franca of database programming. In Web applications you want to be able to embed SQL statements, passing through to the database for processing, by either coding directly or using a wizard.
The other way to run SQL is to call stored procedures, which are precompiled SQL functions stored on and executed by the database.
Databases are only one tier of a multitier application. The database tier handles the activity on the database'reading, writing, updating and deleting data. Once you have that data, however, you want to process it.
There is a middle tier that acts on the data according to business rules. This logic tier can be written in Java, C++ and some scripting languages. Components and objects'COM, ActiveX, JavaBeans'also are ways to put programming functionality into your application. This tier runs on a machine separate from the database server, the application server.
The next tier in the application is the client tier. In the Web applications being discussed here, the client is always a browser. You want your Web development tool to be able to generate HTML for an end user's browser.
Identix's Revize is a client-server product in Java that lets developers manage their Web sites' modules from the control panel. It is priced at $895.
But there are two fiercely competitive browsers'Microsoft Internet Explorer and Netscape Navigator'that differ enough to cause trouble if you're not careful with your choice of HTML. Most tools take care of the compatibility problem by sticking to a subset of commands common to both browsers.
In addition to displaying the results of your database request and information processing, your Web application's end-user interface will need to include certain graphical elements such as navigation buttons and your agency's title. If your Web application uses more than one display page, you will use these elements over and over again. In this case, it is useful to have templates for the client-tier pages so you can add the specific results of the application's output.
Allaire's Cold Fusion Studio 4.0 integrates with databases and coding languages for developing team projects from multiple sites. It is priced at $395.
One of the most important characteristics of a Web development environment is rapid application development capabilities. These are features'such as visual editors, wizards and code repositories'that let you quickly prototype, build and refine your application. Because design and development are repetitive processes, RAD features greatly reduce the development cycle. All of the products in the accompanying chart have RAD capabilities.
The final thing to consider when choosing a Web application development tool is the need to coordinate programming work among several people. It is rare these days that an entire app is written by one person, so check for the ability to hook into a team programming infrastructure, whether it is bundled with the toolset or a third-party system.A bit more
Vendors sometimes offer expanded suites of development tools that go beyond the programming environment included in this guide. Such tools are designed to cover the app lifecycle. If you don't have a programming infrastructure in place, a suite will give you all the elements you need. Amy Helen Johnson, a free-lance writer in Seattle, covers information technology
|Company||Product||Application server||Platforms||Database connectivity||SQL support||Coding languages||Team features||Price|
|Cold Fusion Studio 4.0||Cold Fusion Server 4.0.1||Win 9x, NT 4.0 ||Oracle, Sybase, DB2, Informix, ODBC, OLE DB||Dynamic SQL, stored procedures||HTML, XML, Cold Fusion Markup Language||Source-code control, remote development, shared project management||$395; volume discount|
|Forte Software Inc.|
|Web Enterprise Designer||Forte WebEnterprise||NT 4.0, HP-UX, AIX, Solaris, VMS, OS/390||Oracle, Sybase, Informix,|
|Dynamic query wizard||HTML, Java||Integrated source repository with source-code control; hooks for third-party tools||$25,000 for starter pack, two developer licenses and app server; volume discount|
|Revize v2.1||Client-server product||Win9x, NT, Solaris, Unix||Built-in, JDBC||None||Java||Built-in password security; separate add, edit and publish permissions||$895|
Scotts Valley, Calif.
|Delphi 5||CGI, WinCGI, Netscape NSAPI, Microsoft ISAPI, Active Server Pages||Win9x, NT 4.0||InterBase, Oracle, Sybase, Informix, Microsoft SQL Server, DB2, Access, FoxPro, Paradox, dBASE, ODBC, OLE DB||Dynamic querywizard||HTML, XML, ActiveX||Source-code control, repository, remote development and debugging||$99 and up|
|Lotus Development Corp.|
|Visual Interdev 6.0||Microsoft Transaction Server, Active Server Pages||Win9x, NT 4.0||Oracle, SQL Server, Sybase, DB2, Informix, Access, FoxPro, dBase, dBase, Paradox, ODBC, OLE DB||Dynamic querywizard, stored procedures||HTML, XML, VBScript, Jscript||Shared master Web server||$549|
Redwood City, Calif.
|Fusion 4.0||Cold Fusion Server 4.0||Win9x, NT 4.0||ODBC||Dynamic query wizard, direct SQL coding||HTML, JavaBeans||NetObjects Authoring Server Suite sold separately||$299|
|Netscape Communications Corp.|
Mountain View, Calif.
|Vision Software Tools Inc.|
|Vision Jade Developer Studio||Vision Business Logic Server||Win9x, NT 4.0||Oracle, Sybase, SQL Server, Informix, XDA||Dynamic query builder||HTML, Java, JavaBeans||Team Development Manager sold separately||$2,995|