Presentation is loading. Please wait.

Presentation is loading. Please wait.

® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan

Similar presentations


Presentation on theme: "® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan"— Presentation transcript:

1 ® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan (kathy@ca.ibm.com)

2 IBM Software Group | Rational software Agenda  Profiling Enhancements  New native platforms for Rational Agent Controller since RAD 7.5  Single RAC version supporting both RAD 7.5.x and RAD 8.0  Easy remote profiling configuration  Complicated and version dependent environment variables are a thing of the past  Memory Analysis  Instance data for objects on the heap can be investigated –Inspect/save data  Code Coverage  Dynamic Instrumentation  Integrated out of the box WAS capability  Rational Team Concert Integration

3 IBM Software Group | Rational software 3 What is Profile on Server?  Profile on Sever is an integration of the profiling capability in RAD with Server Tooling for WebSphere Application Servers (WAS) profiling.  Similar to Run and Debug on Server.  Requires an Agent Controller (AC) running on the target machine.  Users start the profile action from a web resources or a server instance in Server Views.

4 IBM Software Group | Rational software 4 Agent Controller  A daemon process that enables client applications to launch host processes and interact with agents that coexist within host processes.  An Agent Controller is required to be running on the target machine being profiled  Integrated Agent Controller (IAC) is embedded in RAD for local use case.  No additional installation,  Automatically enabled.  Start and stop on demand.  Standalone Rational Agent Controller ( RAC) is required for remote profiling.  Requires additional installation on target WAS machine.

5 IBM Software Group | Rational software  Expanded platforms supported by RAC from 2 to 14 since RAD 7.5 GA!  Windows – 32 & 64 bit  Linux – 32 & 64 bit  z/OS – 31 & 64 bit  Linux on System z – 31 & 64 bit  AIX – 32 & 64 bit  Solaris SPARC – 32 & 64 bit  Solaris x86 – 32 & 64 bit  RAC 8.3 releases coincidentally with RAD 8.0.  RAC 8.3 supported for use with RAD 7.5.x  RAD 8.0 supported with RAC 8.3+  Single RAC version to support both RAD 8.0 and RAD 7.5.x IBM Rational Agent Controller (RAC)

6 IBM Software Group | Rational software Profiling on different versions of WAS WAS versionJRE shippedJava Profiler Available 6.0.x1.4.2‘Java Profiling – pre JRE 1.5’ 6.1.x1.5‘Java Profiling – pre JRE 1.5’ ‘Java Profiling – JRE 1.5 or newer’ 7.0.x6‘Java Profiling – JRE 1.5 or newer’ 8.06‘Java Profiling – JRE 1.5 or newer’ Pre JRE 1.5 – JVMPI Profiler JRE 1.5 or newer – JVMTI Profiler

7 IBM Software Group | Rational software New in RAD v8 – Easy profiling setup  Big win for usability!  Environment variable configuration no longer required  Local profile on server:  JVMPI (Java Profiling – pre JRE 1.5; WAS 6.0, 6.1) –Requires write access to WAS_ROOT\java\jre\bin folder –Available in RAD 8.0 and also RAD 7.5.5.2  JVMTI (Java Profiling – JRE 1.5 or newer; WAS 6.1+) –Available since RAD 7.5.3  Remote profile on server:  Requires: RAC 8.3 installed on remote machine, RAD 8.0 or later  Remote JVMPI still requires env. vars (“Java Profiling – pre JRE 1.5”)

8 IBM Software Group | Rational software New in RAD v8 – Easy profiling setup – Smart detection if older RAC is used in remote cases

9 IBM Software Group | Rational software Demo

10 IBM Software Group | Rational software Memory Analysis  Memory Analysis is a profiling analysis type for Java 1.5+ which displays collected data about Objects during application execution  Instance data collection is a new option that can be enabled during Profiling. It provides the ability to inspect the composition of Objects, including obtaining the live Object values, member names and instance size during the profile session.  The data that has been collected can be exported

11 IBM Software Group | Rational software Select Memory Analysis Option

12 IBM Software Group | Rational software Enable Instance Data Collection

13 IBM Software Group | Rational software Inspect Collected Object Data

14 IBM Software Group | Rational software Export Collected Object Data The data, such as in the example below, can be exported and used for comparison. … Value 1 Key 1 Value 2 Key 2 …

15 IBM Software Group | Rational software 15

16 IBM Software Group | Rational software Code Coverage  Provides detailed information on what code paths have been encountered during program execution  Powerful tool to help determine xUnit test coverage, potential dead code  Command line and Ant capability for build integration  JUnit, code coverage data collection and html report generation

17 IBM Software Group | Rational software Code Coverage for Web Applications (RAD 8.0)  Server integration  Easier to configure a server to collect statistics.  Default filter set for server – focus on your code.  Refresh Interval  Get updates to coverage statistics as you interact with the Web application.  Configurable  Module Detection  Automatically determines if different module projects have been deployed to server.  Dynamically configures server to collect coverage statistics in run and debug mode.

18 IBM Software Group | Rational software Code Coverage for Web Applications (RAD 8.0)  Advantages for user  Simplifies the server integration and configuration  Results integrated into RAD workbench  Can use existing tools to analyze statistics on a project (example: reporting)

19 IBM Software Group | Rational software 19

20 IBM Software Group | Rational software Code Coverage + RTC - metrics help identify shortfalls Process feedback The project lead will see that the code coverage results are at expected levels and resolves the defect Work item resolved Developer checks code into a build and resolves defect when he sees the code coverage results for the build Problem determination Developer reviews build results and imports the code coverage results directly into the source code to see what source is missed during the test runs New tests added New tests are added to cover the code that has not been covered by previous tests. Runs tests locally to ensure improved coverage Development A defect is opened against the build that had the noticeable code coverage level drop Process feedback Project lead notices a drop in code coverage from previous build Rational Application Developer + Rational Team Concert

21 IBM Software Group | Rational software Code Coverage Integration with RTC (RAD 8.0)  Build system integration  Installable RTC Build System extension  “Rational Application Developer Code Coverage tools for Rational Team Concert Builds”  Separate offering that needs to be installed  Creates code coverage statistics for BVT tests  Data grouped with build results … Build Machine 1 Build Machine 2 Build Engine Code Coverage Extension Code Coverage Extension

22 IBM Software Group | Rational software Code Coverage Integration with RTC (RAD 8.0)  Client side  RTC Build details viewer extension – RAD and Web browser  Show summary of code coverage statistics  Additional Code Coverage tab to show detailed coverage statistics report  Integrated work item search and creation  Import to local workspace for rich viewing in navigator and source views

23 IBM Software Group | Rational software  Advantages for user  Provides a quick way to see the change in coverage as a project is modified  Provides simple tasks to create and manage work items related to coverage results  Can use existing tools to analyze statistics on a project (example: reporting) Code Coverage Integration with RTC (RAD 8.0)

24 IBM Software Group | Rational software 24

25 IBM Software Group | Rational software Code Coverage with Dynamic Instrumentation (RAD 8.0)  Old: Static instrumentation (RAD 7.5.x)  Modifies bytecode of a.class files  Occurs before the application is executed  Instrumented all.class files in project  New: Dynamic instrumentation (RAD8.x)  Modified the bytecode in-memory  Occurs when the class is loaded by the JVM  Only the classes that are loaded are instrumented  Scenarios  Only dynamic instrumentation now available in the RAD workbench  Static and dynamic instrumentation options are available in Ant and command line environments.

26 IBM Software Group | Rational software Code Coverage with Dynamic Instrumentation (RAD 8.0)  Advantages for user  Only need to maintain one set of class files  Can limit data collection with instrumentation filters

27 IBM Software Group | Rational software Backup

28 IBM Software Group | Rational software Choosing the right RAC releases Windows and Linux – Profiling on JRE 1.4, 1.5 and 1.6 (WAS v6.0.x, v6.1.x, v7.0.x & v8) Use RAC v8.3 (can also use RAC v8.2.x) AIX, z/OS, Solaris SPARC, Solaris x86 and Linux 390 – Profiling on 1.5 and 1.6 (WAS v6.1.x, v7.0.x & v8) Use RAC v8.3 (can also use RAC v8.2.x) – Profiling on 1.4 (WAS v6.0.x) Use RAC v7.x (can also use RAC v8.0 or v8.1.x for AIX which has same content as RAC v7.x) Bitness of RAC has to match the bitness of WAS server being profiled Consult the Available RAC releases document for the RAC version to use http://www-01.ibm.com/support/docview.wss?uid=swg27013420

29 IBM Software Group | Rational software Launch profile on server

30 IBM Software Group | Rational software Launch profile on server

31 IBM Software Group | Rational software Selecting different profiler

32 IBM Software Group | Rational software Profiling view


Download ppt "® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan"

Similar presentations


Ads by Google