SUCCESSFULLY MANAGING large application development projects requires keeping a team of developers in lockstep while harnessing their varied skill sets, including Web, Java, and database expertise. The latest release in IBM's WebSphere Studio line of development tools, WebSphere Studio Application Developer 4.0, aims to simplify this process.
Building on IBM's Studio Workbench, Application Developer offers a well-tuned IDE (integrated development environment) for building, testing, and deploying J2EE (Java 2 Enterprise Edition) applications and enabling Web services deployment in compliance with standards for SOAP (Simple Object Access Protocol), UDDI (Universal Description, Discovery, and Integration), and WSDL (Web Services Development Language).
With a multitude of well-developed wizards, Application Developer provides tools that run the development gamut, from server-side database integration to client-side Web page image processing. It also offers strong testing facilities and good application performance profiling and analysis. Basic provisions for team development help make Application Developer worthy of consideration for companies looking to improve productivity in small and midsize e-business application development projects. But if you're looking for a breadth of platform options, integration capabilities, or support for large teams, consider products such as Borland's Enterprise Studio for Java.
Application Developer comes ready to deploy only to the WebSphere Application Server and Apache Tomcat. Further, it is a Windows-only tool, and it lacks some of the scope already available to developers in VisualAge for Java Enterprise Edition.
Out of the box, Application Developer provides everything necessary to get started with EJB (Enterprise JavaBeans) and Web services development, including an embedded application server, WebSphere Developer Edition, for deployment testing. Almost every tool in this kit offers a wizard-driven interface displaying dynamic, context-relevant information that streamlines the task at hand and helps minimize manual coding errors. Application Developer can also read from and publish to UDDI (Universal Description, Discovery, and Integration) servers, generating all requisite WSDL (Web Services Description Language).
Although this package does not implement WSIL (Web Services Inspection Language), used for direct services discovery, it does provide other useful capabilities such as the straightforward building of services from SQL queries and DB2 stored procedures. We found the database modeling and XML tools to be among the stronger features of this package.
The database wizard made quick work of mapping relational database tables to EJB components, with real-time connections to databases for easy table importing. And the Visual XML environment offered impressive capabilities for building and modifying our XML resources. From creating schemas and mapping XSLTs (Extensible Stylesheet Language Transformations), to wizardry for migrating SQL queries to XML, the upshot was a noticeable shortcut to development.
From back end to front, Application Developer rounds out its capabilities with a strong Web page construction platform. In addition to standard HTML items and style sheets, we were able to quickly build data-driven JSPs (JavaServer Pages) and Web services interfaces with drag-and-drop ease. There's even an image editor for creating line art and manipulating graphics. Although the capabilities are not going to inspire graphic artists to throw out Adobe Photoshop, at the very least this tool provides an additional resource for making last-minute design tweaks.
Application Developer shines in support of productivity and efficiency through its multipaned, roles-based project views, giving Java developers access to pertinent data -- such as source code, database tables, and EJBs --while focusing Web developers on components relevant to their design efforts. Application Developer maintains harmony by managing all elements in a common data store and then automatically updating resources and links through all tiers as necessary.
This package provides some good, basic team-based development tools supporting CVS (Concurrent Versions System), the open-source version control system, as well as Rational ClearCase LT, suitable for small project workgroups.
When it came to testing and debugging, we found Application Developer offered robust support. We were able to test our enterprise bean interfaces using the included Web-based EJB test client, and the unit-test environment enabled localized testing of our servlets, JSPs, and HTML files.
The debug facilities offer all the traditional accoutrements: breakpoints, variable examination, and interaction with running processes, for example. Application Developer also provides for live server-side and remote code debugging, a plus for distributed environments.
The profiling and analysis tools allow developers to sneak a peek at running applications, view thread interactions, and glean performance metrics that can help to isolate performance problems and optimize application throughput.
In our initial testing of Version 4.0, we found several anomalies, such as difficulties with WSDL and conflicts with Microsoft .Net SOAP messages. In the interim, IBM has since released Version 4.0.2, which addresses many of the issues and adds support for Windows XP.
Although developers may already find many features of Application Developer in existing toolkits, this IDE streamlines many aspects of J2EE and Web services development, promising time-saving efficiencies in smaller development projects.