This week I'll be talking about RAD and the runtime analysis feature, the debug tool and reverse transformations.

Within RAD, the runtime analysis feature allows you to view the actual execution of the code, which may be different from the intended behavior. With profiling, you can analyze performance, method execution sequences, thread behaviors and code coverage. With the Runtime Analysis feature, you can do: - Performance Analysis: users can collect method level performance data and view it through statistical views or via the performance call graph - Memory Leak Analysis: users can find memory leaks within their Java code. The leaks can be viewed using the Object Reference Graph to better explore relationships of the object to other objects. - Line Level Code Coverage: shows what code has been executed down to the line level. - Thread Analysis: within a view, thread-view of the behavior code is shown.

All runtime analysis instrumentation is specified via profile configurations (done through a wizard).

RAD provides a comprehensive debug tool. It is a Java and mixed language debugger - Seamless integration when debugging application that calls other languages from Java and vice versa.

It provides Advanced debug support for Websphere Application Server, including EJBs, JSP pages, and servlets. It controls debugging at a higher level and provides the user the ability to stop on entry to every object loaded by the JVM or server. The XSLT debugger enables you to detect and diagnose errors in XSLT Transformations and it displays variables in a logical manner, allowing the user to examine variables more easily.

In addition, RAD provides reverse transformations. It allows teams to work on both the design and the implementation and to reconcile any differences between the two. So for example,let’s say we have an architecture team and an implementation team that are divided, either by geography or because one team is subcontracting to the other, or even by corporate culture. The architecture team completes its version 1.0 of the system, and transforms the model to code.

The implementation team picks up the code and begins to work. The architecture team continues to work on the design, and after some time creates a v1.1 of the architecture. This architecture is forward transformed and integrated with the work done by the implementation team.

So far, so good?

Now, the implementation team introduces a significant deviation from the architecture developed by the architecture team. Here is where the reverse transformation or code-to-model transformation can be used. The implementation team performs the code-to-model transform. The architecture team can then compare/merge this model with the architecture model they are working with. Some changes could be accepted and others could be rejected. Once the reconciliation has occurred, a code-to-model transformation could be performed to conform the implementation with the newest architecture.

When the architectural deviation is introduced, a dialogue would need to take place between the architecture and implementation teams so that both teams could better understand why the deviation was introduced. The forward transformation that occurs after the reconciliation probably would not delete code elements if those code elements were not the product of forward transformation in the first place. The deletion of the code elements would often be done manually.

This demo shows a transfer scenario involving a Web application deployed on an IBM® Websphere® Application Server. It takes a look at parking debug sessions and how to transfer debug sessions through Sametime.

It is all about smart software development tools to help create a smarter planet.

Do you need to learn Enterprise JavaBeans real quickly? This is a really cool Enterprise JavaBeans with Rational Application Developer for WebSphere course. This 9-part video demonstration will show you how to use Enterprise JavaBeans to create a simple blog web application. Starting from a fresh installation of Rational Application Developer, the course will take you step by step through how to create a local WebSphere instance and how to create and write an Enterprise JavaBean. Then you will learn how to create an Apache Derby database, and how to take advantage of the Java Persistence API for database storage. Finally, It will show you how to create a web project which uses the Enterprise JavaBean you created earlier. Then the video course will run the web application and you will see the JavaBean in action with the final blog web application.

Here are the nine parts. Sit back and enjoy viewing this educational video course!