Continuing my previous post which detailed on what Rational Tools are available to build and construct, here is the list of the Tools from Rational used for Software Testing.

Testing tools enable running quality assurance on software products, testing for code consistency, quality, functionality and performance.

  • IBM Rational Manual Tester: A manual test authoring and execution solution employing principles of automation, organization and reuse to innovate a commonly used testing practice.
  • IBM Rational Functional Tester: An advanced, automated functional and regression testing tool for testers and GUI developers who need fine-grained control and flexibility for their testing of Java, .NET and Web-based applications.
  • IBM Rational Performance Tester: A performance test creation, execution and analysis tool for teams validating the scalability and reliability of their Web-based applications before deployment.
  • IBM Rational PurifyPlus allows developers to create faster, more reliable J2EE and J2SE code. It provides host-based memory profiling, performance profiling, and code coverage analysis.
  • IBM Rational Test RealTime provides host-based memory profiling, performance profiling, and code coverage analysis for the J2SE/J2ME developer, plus adds runtime tracing, and does so for cross-platform development efforts. Rational Test RealTime also has an integration with JUnit to extend the value of the Java industry's popular unit testing tool to the J2ME and embedded marketplace.

I have always found it difficult to keep track of the RAD tools and where are they supposed to be used. Today, I am listing down the RAD Tool options for Design and construction phase.

Design and construction tools
IBM Rational provides tools for architecture, design modeling, construction, model-driven development, architected rapid application development (RAD), component testing and runtime analysis activities. These tools help developers maximize their productivity when building business applications, software products and systems, and embedded systems and devices.
  • IBM Rational Software Architect: A design and construction tool for software architects and senior developers creating applications for the Java platform or in C++ that leverages model-driven development with the UML and unifies all aspects of software application architecture
  • IBM Rational Software Modeler: A UML-based visual modeling and design tool for architects, system analysts, and designers that need to ensure that their specifications, architecture, and designs are clearly defined and communicated with their stakeholders
  • IBM Rational Web Developer for WebSphere Software: Build, test and deploy Web, Web services and Java applications with an IDE that is easy to learn and use.
  • IBM Rational Application Developer for WebSphere Software: Quickly design, develop, analyze, test, profile and deploy Web, Web services, Java, J2EE and Portal applications with a comprehensive IDE.
  • IBM Rational Rose Technical Developer: Supports the most advanced modeling constructs, including model execution and fully executable code generation, resulting in the highest levels of productivity.

Hopefully, it helps in selecting the right tools for the right work.

Google has launched the GWT (Google Web Toolkit ). It's a Java software framework for developing AJAX applications. With it, you can write your applications in Java, and use the Google Web Toolkit Compiler to convert that code into browser-compliant Javascript and HTML. With the Web Took Kit, you can write an entire application without ever using Javascript.
Sounds too good !

As an application developer, you have all the liberty to log anything. But are there any guidelines on what is the bare minimum an application should log?

Things like Method entry/exit, method parameters, info logging in the algorithm, exception logs, Transaction time period and so on.

One can log anything, but any guidelines/experience which says the application should log minimum of these things.

Join the debate here

When configuring WPS for personalization, there are 3 options:

Simple filtering A site displays content based on predefined groups of site visitors. For example, if a site visitor is in the Human Resources department, the site provides access to URLs containing Human Resources policy manuals.

Rules engines
In a rules based system, the site owner defines a set of business rules which determine what category of content is shown when a certain profile type visits the site. An example would be: Display all four wheel drive SUVs to visitors in the northeast in the 21 to 35 age group.
This approach has the advantage of driving the site's behavior with the business objectives of the site owner. The site owner is usually the owner of a marketing campaign or some other business manager.

Collaborative filtering
A site visitor rates a selection of products, explicitly or implicitly. Those ratings are compared with the ratings offered by other visitors. Software algorithms detect similarities. For example, a visitor receives book recommendations based on the similar purchases of others.

The XFire team has released version 1.1, an open source Java SOAP framework with support for Web services standards, Spring, JBI and pluggable bindings.

New features in this release include:

MTOM attachment support
WS-Security support
Improved WSDL code generator

Sometime, I had talked about the WebSphere's Dyna cache feature here. There is a new article that details about to design your application to make use of the WAS Dyna cache feature from day one. Check out the article here.

Adobe labs has released an Ajax framework. The framework gives javascript libraries that will help you get started on building Ajax enabled application. Examples of how to use the Spry libraries are also provided. Check out the framework here.

For any new technology, the first thing is to build a HelloWorld kind of Application. I found a good tuturial on helping you build your first Ajax application here.
Guideline Effect on functionality Effect on performance
Remove Show tools icon from the toolbar Prevents users from displaying icons on pages and portlets used to arrange or remove content on the
High impact on pathlength required to generate the page
Remove enrollment icon from the toolbar Prevents new visitors to the site from creating a new account for themselves. High impact on pathlength required to generate the page
Remove self care icon from the toolbar Prevents users from updating account information. High impact on pathlength required to generate the page
Remove AdminLinkBarInclude.jsp Removes context-sensitive links that allow authorized users to create a new page, edit the current
page, or assign permissions to the current page.
High impact on pathlength required to generate the page
Remove <portal:favoritesLoop/> and supporting code Removes the ability for users to bookmark pages in the portal for quick retrievability High impact on pathlength required to generate the page
Shrink lines of text to remove white space With some editors, white space might be used to aid in readability during theme development Low impact on bandwidth required to transmit the page.
Change all HTML comments to JSP comments None Low impact on bandwidth required to transmit the page.

WebSphere Portal supports the use of tags from the JSP Standard Tag Library (JSTL). Portal themes, skins, and screens can retrieve translated text by using the fmt tags from the JSP Standard Tag Library (JSTL). This method is preferred over using the tag from the engine tag library, which is deprecated. The following tags from the JSTL tag library are used to retrieve translated text:

&ltfmt:setBundle/> - specifies the resource bundle to use.
&ltfmt:message/> - specifies the key to retrieve from the bundle and writes the value to output.

The underlying getLocales() method of the HTTPServletRequest is overwritten to return the language preference in the user profile, if available.

Support for the JSTL tag library is provided by WebSphere Portal. To use the JSTL tags, the following directive must be provided in the JSP.

<%@ taglib uri="" prefix="fmt" %>

The following example shows how the HTML help link in the toolbar can be created using the JSTL tags for the link text.

<%-- help button --%>
&lttd class="wpsToolBar" valign="middle" align="" nowrap="nowrap">
&lta class="wpsToolBarLink" href='/InfoCenter/help/index.html' target="...
&ltfmt:setBundle baseName="nls.engine">
&ltfmt:message key=""/>


Test this code by changing your language preference in the portal user profile and logging back in to the portal.

Learn how to exploit WebSphere® Portal V5.1 key capabilities in an IP-TV (Television over Internet Protocol) environment. You see how to configure a portal for heterogeneous Digital Television (DTV) services to enable a central "home dashboard" for communication and entertainment on a TV. Check out the article here.