500 likes | 516 Views
A detailed comparison of IBM Rational App Developer V6/V7 and WebSphere Studio App Developer V5.x, highlighting new features, enhancements, tools, and capabilities. Explore innovations such as UML 2 modeling, unit testing, code review, and more.
E N D
IBM Rational Application Developer V6 & V7 vs. WebSphere Studio Application Developer V5.xWhat’s NewBill.Hahn@us.ibm.com (http://JavaSOA.com)
SDO Folio Alloc Graph EJB WS WS 6 Mkt Sim Portal Design Fina Dash UML 1 UML 2 Code Prof Dyna E2E V6 Highlights - Areas of Innovation - Enhancements and New Capabilities • Lifecycle Integrations (Enhanced Rational/WebSphere Eclipse based Integrations) • Requirements Explorer View • Model Explorer View • ClearCase Views for managing changing artifacts • ClearQuest Views for managing collaborative activities • Testing Tools Views • RAD Construction Tooling Enhancements • JSF, SDO, Web Services, etc. • J2EE 1.4/1.3/1.2 • Portal/Portlet Integration • Crystal Reports • Enhanced Unit/Component Testing • Code Review and Runtime Analysis for Profiling • Built-in Coder-friendly UML Visualizations for Class/Sequence diagrams • And much more… • New UML2 Engine • New code base • End-2-End UML2 modeling • Easier GUI development • Transformations between models and generating Java/C/C++ code • Testing Tools Enhancements (Manual, Functional and Performance Testing)
WebSphere Studio Eclipse Integration Integration across/within tools(i.e. change requests) Integration across/within tools(i.e. change requests) V5.x IBM Rational Tools by Discipline BI Modeler RequisitePro XDE & Studio XDE & Studio XDE & Studio Studio & ClearCase ClearCase & ClearQuest ClearQuest & Project Console
V6 Lifecycle Tools by Discipline (RAD & RSA) RAD + BI Modeler RAD RAD or RSA RAD RAD RAD RAD Project Console & ClearQuest
Developer Analyst Tester Architect Visually Construct, Hand Code and Generate Applications Model Application Components, Services and Data Design, Create, Execute and Report Tests Model, Simulate and Monitor Business Processes • Follow a common process • Track project status • Manage requirements • Manage Change and assets • Manage Quality Project Mgr IBM's Eclipse Software Development Platform Rational Team Unifying Platform Existing Tools In WSAD V5.x and RAD V6 UML 2-way Modeling J2EE, Web Services, JSF, etc. Unit Testing, etc. Automated J2EE Packaging
Developer Analyst Tester Architect Visually Construct, Hand Code and Generate Applications Model Application Components, Services and Data Design, Create, Execute and Report Tests Model, Simulate and Monitor Business Processes • Follow a common process • Track project status • Manage requirements • Manage Change and assets • Manage Quality Project Mgr IBM's Eclipse Software Development Platform Rational Team Unifying Platform New V6 Integrated Views/Perspectives Process Modeler RequisitePro Explorer Views Functional, Manual, Performance, Analysis ClearCase Explorer Views ClearQuest Explorer Views
The IBM Software Development PlatformA team based approach supporting all development imperatives Analyst Architect Developer Tester Deployment Manager Rapidly Construct, IntegrateAnd Generate Applications Design, Create, Execute And Report Tests Model, Simulate, Assemble,and Monitor Business Processes Model Application Components, Services And Data Provision, Configure, Tune And Troubleshoot Applications • Follow A Common Process • Manage And Measure Projects And Portfolios • Communicate Requirements • Manage Change And Assets • Manage Quality Project Manager • Align Investments With Business Objectives • Analyze And Monitor Project Portfolios Executive
Rational Functional Tester for Java & Web WebSphere Business Integration Modeler & Monitor Rational PurifyPlus The IBM Software Development PlatformPrior to the V6 announcement Analyst Architect Developer Tester Deployment Manager WebSphere Studio Family Tivoli Monitoring Rational Rose XDE family Rational Rose XDE Developer for Java Rational Robot Rational RoseXDE Developer for Visual Studio Tivoli Configuration Manager Rational Performance Tester Rational Rose XDE Modeler Rational Team Unifying Platform Project Manager Executive
The IBM Software Development PlatformV6 - What’s new & enhanced Analyst Architect Developer Tester Deployment Manager Rational Functional & ManualTester Rational Application Developer Tivoli Configuration Manager WebSphere Business Integration Modeler & Monitor • Rational Software Modeler Rational Software Architect Rational Performance Tester TivoliMonitoring Rational Web Developer CustomerExtensions 3rd PartyISV Tools ECLIPSE Rational Team Unifying Platform Project Manager Rational Portfolio Manager Executive
UML Language Transforms • Structural Review & Control • C/C++ Development Tools Design and construction tools Rational Software Architect Rational Application Developer • UML 2.0 Pattern/Transform Authoring • Reusable Asset Browser Rational Software Modeler Rational Web Developer • J2EE/EJB & Portal Development • Component Testing • Code Review & Runtime Analysis • UML Visual Editors • Configuration Management Eclipse • Web Development • Web Services Development • Rich Client Development • XML & Database Tools • 4GL Development
IBM Rational Web Developer for WebSphere Software Follow on to WebSphere Studio Site DeveloperNew Rapid Application Development capabilities focused on ease of use Web UI construction • Visual site layout tools • Drag-and-drop web client construction supporting range of web client technologies: • HTML, JSP, Servlet • Struts, JSF and SDO IBM Rational Web Developer Rich Client UI construction • Visual Editor for Java for rich client composition • Supports Swing, AWT, SWT widgets Web UI construction Data tools Web Services Tools • Create/manipulate services • WSDL visual editor • UDDI Registry browser Rich Client UI construction Database tools • Explore and design database schema • SQL Query Builder • Stored procedure builder Enterprise Generation Language XML Tools • XML and XSD tooling support Web Services Tools EGL • Simplified 4GL for Web Application Development • Text User Interface Programs Support (3270, Curses) • VisualAge Generator -> EGL Migration Tool • Java Runtime Targets Eclipse Java Development Tools • J2SE development tools • Code completion, search, refactoring • Extensible Team APIs to support CM integration (CVS, ClearCase, and many others) • Plug-in Development Environment for extensibility XML Tools Eclipse Java Development Tools
IBM Rational Application Developerfor WebSphere Software Component/Unit Test • JUnit-based testing of Java components, EJBs and Web Services • Test prioritization recommendation based on code analysis • Automated test case generation through usage of test patterns • Datapool editor for data-driven testing • Optimized unit testing through a set of metrics in the test creation wizard • Test creation wizard offers a set of test patterns to automatically generate test Follow on to WebSphere Studio Application Developer IBM Rational Application Developer J2EE/EJB Tooling • J2EE construction tools • Supports WebSphere and WebLogic • Supports J2EE 1.2, 1.3, 1.4 • Rapid Deployment for WAS v6 • Integrated WAS test environments • O/R mapping Component/Unit Test J2EE/EJB Tooling Portal/Portlet Design Tools Code Analysis Tools • Both static source code analysis and dynamic runtime analysis • Source code analysis for rule violation detection: Globalization, J2EE/J2SE Best Practices, Private API Usage, Performance • Sequence diagram runtime trace with performance, thread and code coverage annotation • Advanced memory leak detection • Remote data collection across multiple servers • User-defined run-time probes • Interactive reports and metrics Portal/Portlet Design Tools • Visual Portal site and page layout tools • Visual Portlet layout and preview • Integrated Portal test environment Code Analysis Tools UML Visual Editors UML Visual Editors • Class diagrams for Java/EJB structure • Sequence diagrams for method body visualization • IDEF1X/IE diagrams for Database and XML schema • Dynamic topic diagrams • Javadoc integration • Visual refactoring IBM Rational Web Developer for WebSphere Software RUP Configuration for J2EE ClearCase LT
V6 Highlights Continued • Eclipse 3.0 support • Improved Welcome Experience • Extensive collection of samples, tutorials, overviews, tours, enhanced doc. • SDO mediator/tools * • J2EE 1.4 (updates to standards) * • JSF, WDO/SDO, page designer enhancements • For point/click Web User Interface development • Web Diagram Editor support for JSF • Visual Editor for Java Enhancement • SWT support • Latest WDDI, WS-I Web Services standards * • Fewer server restarts, server configuration synch, etc. ** indicates WebSphere Application Server v6 dependency
V6 Highlights Continued - Eclipse V3 enhancements • More responsive User Interface • From enhanced concurrency support and asynchronous task management • New look and feel • Based on user feedback • Reduced User Interface complexity through progressive disclosure • Capabilities support enables a tool to filter the views, wizards, actions, etc available initially available to use • At trigger points more advanced function is revealed • Users can adjust the amount of initial functionTeams can share preference settings • Expanded user settings/preferences support with multiple scopes • Many V2.x partner tools will work with V3 • High degree of binary compatibility between V2.x Eclipse plug-ins and Eclipse V3-based products • Please consult your vendor to determine the status of the tools you use
Confident Usage • developerWorks Rational • Rational University • Redbooks • Process education • RUP Configurations • Best Practices • 3rd party books Developing skills and expertise Day to Day • Show me • Improved Search (product and web) • Context Sensitive Help • RUP Advisor • Cheat Sheets • Sample / Tutorial Galleries • Help System Becoming Productive Initial / Early • Welcome Experience • Product Tour • Mini videos • OOB Tutorials • OOB Samples • Info for returning users • Links to web content • Links to formal education Quick Successes V6 Focusing on Ease of Learning – Roadmap Time White Papers White Papers Web based training Formal Classroom education Skill and Experience Information designed to take the user from early successes….then helping them become productive…..and then helping them develop appropriate skills and expertise
V6 Focusing on Ease of Learning – Tutorial Gallery Watch and Learn : Learn how to perform certain tasks by playing these short video recordings. Play and Learn : Learn by watching viewlets. These viewlets guide you through a simulation of tasks without interacting with the product resources. Do and Learn : Learn by going through the hands-on tutorial where you can work with the product and develop applications.
V6 Focusing on Ease of Learning – Samples Gallery Showcase Samples : Complete solution which you can deploy and run which demonstrates the best practices for application development. Application Samples : Working applications which shows the usage of different tools and their interactions with the product and may require configuration to run on your system. Technology Samples : Code-centric samples that focus on a single tool or API in the product. Ideal for leveraging technology specific code snippets.
V6 Page Designer – New Look, JSF/SDO Enhancements Simplified Navigator hides the complexity of J2EE Construct pages by dragging and dropping rich web components from a customizable Palette Construct pages by dragging and dropping rich web components from a customizable Palette The Data View lets you configure and drag and drop data to automatically create a data bound UI WDO accesses and updates data without writing any code! Page templates separate out common page elements in a single template file The Quick Edit View allows scripting of client or server side events in Java or Java Script. Code assist writes the code for you! Property views allow easy customization of the selected component • Web Application Development is Drag and Drop Simple! • Instant binding of UI to Data • Quick Server-side event scripting (with Java Server Faces) • Rapid UI Creation • Simple Data Access with WDO/SDO
V6 Web Services Tools – Improvements • J2EE 1.4 (Web services are part of J2EE standard) • Usability improvements in Web services wizards and WSDL editor • Focus on authoring of WS-I compliant Web services • New WSDL wizard to create basic WSDL files that comply to WS-I rules • Automatic TCP/IP Monitor configuration from wizards. • Enhanced samples and tutorials in Samples Gallery & Tutorial Gallery • Support for updated WS-I Basic Profile and latest UDDI release
V6 IBM Rational Application Developer for WebSphere Software • All IBM Rational Web Developer for WebSphere Software enhancements • WebSphere Rapid Deploy * • Annotated EJB development • Code Quality Assurance • Code review • Component Unit Test Automation • Enhanced Runtime Analysis • UML 2 Visual Modeling and Design • Portal Development • EJB session façade generation * • Crystal Reports integration • Clear Case integration and enhancements • RUP process guidance * indicates WebSphere Application Server v6 dependency
RAD V6 J2EE 1.4/1.3/1.2 (WebSphere 5.0/5.1/6.0) • Web Services and XML support • Standards / Portability - XML Schema definitions for all deployment descriptors • JAX-P 1.2 - New properties for XML parsers • JAX-R - XML registry API • JAX-RPC - APIs for representing WSDL-based services as RPCs in Java (&vice-versa) • JSR 109 - Web services programming and deployment model • SAAJ 1.1 - SOAP Attachments API for Java • Other • Servlet 2.4 • JSP 2.0 • Extensible deployment descriptors • Request/response listeners • Expression Language • Simple Tag Extension • JDBC 3.0 • Meta data and cursor support • Messaging • EJB 2.1 • Typed message beans (used for any inbound JCA including pluggable JMS provider) • Timer service • Web service end-point support
Changes in Server Support in RAD v6 • Existing support still in RAD v6.0 • WAS J2EE extensions available in the deployment descriptor • WAS v5.0/v5.1/V6.0 support • No longer in v6.0: • All WAS v4.0 support removed • Can still build J2EE 1.2 applications, export, and deploy manually • Supported Servers in RAD v6.0 • WebSphere (Express, Base) Application Server v5.0, v5.1 Test Environments and remote server • WebSphere (Express, Base, & ND) Application Server v6.0 Test Environment & server • WebSphere Portal v5.0, v5.1 • Apache Tomcat v3.2, v4.0, v4.1, v5.0 • HTTP servers
RAD support of WebSphere v6 • Don’t keep server configuration within the workspace • Use server’s admin console to do all configuration • Applications are published using WebSphere Rapid Deploy • All communication with the server is done via JMX • Local and remote servers work identically from within the tools • V6 server stays running at all times • Never need to restart server unless switching between Run/Debug/Profiling modes • No RAC or additional installation required for remote support – works with any WAS v6 server, any location • Test Environment is an exact WebSphere server • Works on all platforms
RAD support of WebSphere v6 • Usage model changes/enhanced • Every EAR you deploy remains deployed in server unless you uninstall it from server • Use WAS 6 server profiles if you need different server configurations • Use WAS profile creation tool to create new profile • Associate new profilewith RAD server
V6 “WebSphere Rapid Deploy” (WRD) • To simplify the development experience for WebSphere applications by: • Increase the seamlessness of the iterative Build/Test cycle • Reduce or eliminate server restarts • During initial artifact creation (i.e. create Java, EJBs, Web Services, etc.) • During iterative build scenarios (i.e. coding the logic in Java, etc.) • To simplify the deployment experience for WebSphere applications by: • Automating the process of installing an application on WebSphere • Reducing the amount of information that must be configured manually on WAS (i.e. Datasources, etc.) • Automating the process of activating incremental changes to an application on a running server (i.e. Add/Change code/configuration of an application)
Dynamic Development (Avoiding the “RESTART” Situations) • Two main stages in dynamic development • Creating New Artifacts • Changing Existing Artifacts
Code Quality Assurance • Analyze Project/Workspace to find problems of various types: • Globalization • J2EE Best Practices • J2SE Best Practices • Private API Usage • Performance • Naming Conventions • Produce interactive reports with violations and metrics • Provides explanations, examples, and quick fixes for problems • Allow users to create, enable and disable validation rules • Allow users to create their own rules based on rule templates • Complete Code Review (200+ rules) • Quick Code Review (34 rules)
Code Review Details View • Details panel • Content depends on RuleMatch selected in the Navigation Panel • Basic Details based on HTML templates • Custom Details consist of SWT widgets • Explanation describes: • Mechanics of anti-pattern • How to avoid • Shows one or more examples of a problem • Fix section is present if interactive Quick Fix is available Example 1: String + operator Example 2: Tangle
Topic Diagram Sequence Diagram Database Diagram Class Diagram UML 2 Diagram Editing – Visually Browse/Edit • Visual UML diagrams • UML class diagrams for Java, EJB • IDEF1X, and IE editing for data objects • Edit/refactor through diagrams • Browse, Navigate and Query through diagrams • Topic diagrams for automatic diagram creation • UML 2.0 interaction diagrams forvisualizing method bodies • Develop using Sequence Diagrams • Easier to understand existing code • Javadoc integration for diagrams • Improved printing support • Usability and workflow improvements • Assisted diagramming • Browse diagrams • In-diagram editing • Diagram Explorer • Low overhead way of adopting UMLand visual development
Component Test Automation • Java class, EJB and Web Services (incl. .NET) components testing • Based on the JUnit framework • Provide testing guidance • What to test first based on static metrics • Automated test case generation • Based on test patterns • Data driven testing • Automated regression testing • Integrated with Code Coverage • Change management support through integration with ClearCase & ClearQuest • Implementation of the OMG Testing Profile
Annotated source shows lines hit/missed Coverage Navigator shows outline view Code Coverage
Trace Data Monitor Trace Data Server 1 Server 2 Agent Controller Agent Controller EJBs Servlet Runtime Analysis • Built-in tools helps developer isolate and fix performance problems • Advanced sequence diagrams • Performance CallGraph • Line Level Code Coverage • Advanced Memory Leak Analysis • Dynamic User Defined Probes • Thread Analysis • Profiling tools can seamlessly trace across multiple servers
Specify an analysis threshold. Select 2 heapdumps
Sequence Diagram is correlated to threads view Time window Vertical bars show lock interactions between threads Focus bar Thread Analysis
1st Class Support for Portal App Development Integrated Portal Test Environment for WP 5.0.2.2 and 5.1 (when available) • Visual Portlet & Portal Site • Development • JSF, Struts • Enterprise Application Integration • Portal page Layout • Themes and Skins Import & Deploy Wizard
Construct pages by dragging and dropping rich web components from a customizable Palette Visual Portlet Development The Data View lets you configure and drag and drop data to automatically create a data bound UI SDO accesses and updates data without writing any code! The Quick Edit View allows scripting of client or server side events in Java or Java Script. Code assist writes the code for you! Add Click-2-Action and People Awareness capability by dragging and dropping these components • Design, Deploy, Debug, Test and Preview Portlets • Portlet project wizard to create basic portlets, JSF portlets, and Struts portlets • Web services client Portlet • Portlet project support for the IBM portlet API and the JSR 168 portlet API • Business Portlet Development with WPAI (5.1)–SAP, Seibel portlets • Testing and debugging of portlets within the workbench using the WebSphere Portal Test Environment or a remote server • Click-to-Action
Drag and Drop a Page, Portlet, Label, Row or Column to Layout your Portal Page Visual Portal Development Visual Theme and Skin Editing Visualize and Customize Portal page • Design, Deploy, Debug and Test Portal Applications • Import/Deployment wizards for Portal Page • Built-in Portal Test Environment for WP 5.0.2.2 and WP 5.1 (post v6) • WYSIWYG Portal Designer for designing portal page (layout, navigation links) • Visual Themes and Skins development
Read/Update RDBMS Data Mediator Service JDBC RDBMS JDO DOM SAX XML Data Mediator Service <XML> JAXB JAX-RPC Client SDO DataGraph Web Services Data Mediator Service SOAP JCA Data Mediator Service JCA Query data sources, create data graphs containing data objects, apply changes back to the data source Emerging Standard Service Data Objects (SDO): Unified Access to Heterogeneous Data Sources • Provides a common programming interface to access data from multiple heterogeneous sources • Supports both staticand dynamic data APIs • Supports disconnected operation • Decouples application code from data access code • Designed for use with tools to increase programmer productivity Service Data Objects (SDO) is a specification created by IBM & BEA,submitted to JCP as JSR 235 in December 2003. Expert Group Formation Stage, not part of J2EE yet
EJB session façade generation • Create session façade bean • From CMP mapping • Encapsulates the data and logic properties of one or more CMP entity beans • Also creates corresponding SDO • Result is a session bean instance that references the SDO Session Facade RDBMS Data Mediator Service JDBC SDO DataGraph RDBMS JDO Query data sources, create data graphs containing data objects, apply changes back to the data source
Crystal Reports • Crystal Reports • Reporting standard for J2EE today • Independent reporting standard across development, deployment and database architectures
ClearCase SCM Adapter Enhancements • Full Dynamic View support • File system notification • Improved compare/merge support • Integrated with Eclipse compare/merge framework • Improved Disconnected Mode • Manual Disconnect • Workspace / view management • Support for workspace switching • Setup & Getting Started • Best practices and online help improvements
Resources • http://ibm.com/developer(IBM developerWorks for technologies and/or products) • Java, J2EE, Web Services and other technology zones are on the left hand side • WebSphere Zone: http://ibm.com/developer/websphere • Rational Zone: http://ibm.com/developer/rational • Free Education Portal: http://ibm.com/developer/training • http://www.redbooks.ibm.com(How-To Step-by-step Practical Implementation Books) • Java/J2SE/J2EE Tutorials: Java Tutorial Online , J2EE Tutorial Online , J2EE Tutorial BOOK • http://JavaSOA.com(a.k.a. JavaDevTools.com, RationalCentral.com, WebSphereCentral.com)(Tutorials, Links, Presentations, White Papers, Articles, etc.)