Reviews : Java Books : Web Development with JavaServer Pages :


Title: Web Development with JavaServer Pages
ISBN: 1884777996
US Price: $35.96
Publication Date: April 2001
Pages: 584
© 2001 Manning Publications Co.

Web Development with JavaServer Pages

Achieving division of labor

An important side effect of this decoupling of presentation and implementation through JSP is that it promotes a clear division of labor in the development and maintenance of web applications for dynamic content generation. It is the rare individual indeed who possesses outstanding skills in both programming and artistic design. Although many companies try, rarely are they fortunate enough to find a first class web designer who also possesses strong Java development skills or the corollary, a true Java guru with strong graphics and layout skills.

As a result, most web application development teams are cross-functional in nature, representing multiple specialties. Designers, graphic artists, and HTML codgers are responsible for the presentation. Java programmers and system architects are responsible for the implementation. Large corporate teams may also include editors, marketing consultants, database administrators, network engineers, and system administrators. All of the team members have important contributions to make to the focus, design, and content of the web application, but when it comes time for actual implementation, efficiency will be a direct result of the extent to which the participants are able to work independently. When a clear division of labor can be put in place, such that the need to coordinate work between team members is minimized, work on multiple parts of the implementation can be carried out simultaneously. Studies have repeatedly shown that communication is the major bottle-neck in team productivity; if communication needs can be reduced during the critical implementation phase, the productivity rewards can be great.

Similarly, when changes to the application are required after initial development, the fewer team members that need to be involved in order to effect that change, the more quickly the modification can be put in place. For example, an important concern for an on-line service provider is the usability of their web site: Is content easy to find? Are services easy to use? Usability, then, is critical to customer satisfaction and retention. In the interest of usability, the presentation aspects of a web application may undergo almost constant review and revision. The implementation of the business and programming logic behind the application, however, tends to evolve much more slowly.

If the team members responsible for these two elements of the application can work independently, then, both the initial development and later refinements can be carried out more efficiently. As described above, JSP's support for component-centric design promotes the establishment of clear interfaces for accessing the functionality of server-side objects implemented as JavaBeans. The HTML-like tags provided by JavaServer Pages for accessing JavaBeans can then take advantage of these interfaces to achieve (and enforce) separation of presentation and implementation.

In practical terms, this means that page designers can focus on HTML and application engineers can focus on Java. The team as a whole develops the requirements that drive the web application's design. The programmers then translate these requirements into a set of properties and behaviors to be implemented as Java-Beans. These properties and behaviors then provide the foundation for dynamic content generation to be leveraged by the presentation team via JavaServer Pages. And, once this foundation is established, both teams can work independently to refine their contributions to the application- e. g., enhancing the look and feel of the application, or increasing its run-time efficiency- without negatively impacting the performance of the other team.

Stop by next week for the next installment!

How to Add Java Applets to Your Site

New on the Java Boutique:

New Review:

Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling API boasts simplicity, ease-of-integration, a well-rounded feature set, and it's free!

New Applet:

Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA sequences into three useful formats.

Elsewhere on internet.com:

WebDeveloper Java
Lots of Java information on webdeveloper.com

WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.

ScriptSearch Java
Hundreds of free Java code files to download.

jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.