Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Software Development Conference 2007 Vývoj pomocí IBM Rational Software Vítek Linduška Software Development Conference 2007 IBM Rational Software Architect – A Complete Development Tool IBM Rational Software Architect IBM Rational Application Developer for WebSphere IBM Rational Web Developer IBM Rational Software Modeler For software architects and senior developers developing applications for the Java platform or in C++. Rational Software Architect unifies UML modeling, Java structural analysis, Web Services, Java/J2EE, Data, XML, Web development, and process guidance. Rational Application Developer is for web, Java, and J2EE developers and development teams building web applications, web services, Java applications, J2EE applications, and portal applications. For corporate and web developers building dynamic web applications, web services, or java applications. Rational Web Developer is an easy-to-use IDE for visually constructing, testing, and deploying applications. Leverages JSF and EGL rapid tooling. Rational Software Modeler is a visual modeling and design tool that leverages UML to document and communicate the different views required to support analysis and design. All built on Eclipse 3.0 2 Software Development Conference 2007 Challenges of Architecting Software Communicating a Solution Even experienced teams need clear and consistent communication “Teams need effective, efficient communication.” Programming languages implement architectures -- they do not describe them Architecture decisions are only useful if they can be followed “How can our decisions be shared?” 3 Software Development Conference 2007 Challenges of Architecting Software How to discover bad practices? Often new projects begin with existing frameworks Projects intend to leverage the value of existing code, but often lock-in problems as well “We did not find our tangles until late in the project – but they were there from the beginning .” How to enforce standards? Developers stray from architecture decisions that they do not understand Creating code to implement an architecture is tedious Requirements are sometimes unclear when coding and construction begin “The architecture was solid, but it was not implemented as planned!” 4 Software Development Conference 2007 Challenge : Communicating Architecture Challenge Overcome the problem of communicating solution to a team Resolution Provide technologies to enable effective communication of a design UML 2 Notation Integrate the architecture artifacts into the development environment 5 Software Development Conference 2007 Challenge : Enforcing Architecture Standards Challenge How to enforce architecture decisions for a project team? Resolution Generate source-code based on architecture decisions Create and enforce rules which support the architecture Process Guidance Code rules Visually compare model changes Link requirements to design 6 Software Development Conference 2007 Key Feature: Architectural Analysis, Discovery, and Control Automatic generation of “topic” diagrams based on the results of the code analysis Patterns and anti-patterns are rendered in the diagram editor. Navigation to detailed code is supported. Architecture discovery for J2EE and J2SE High-level software visualization Application architecture is reflected in the running code Analyzing code can help assess its maintainability Govern the architecture with the assistance of rules Template-based rule authoring Anti-pattern and pattern detection Detection of cyclic dependencies, hubs, breakable, etc. Wizard assisted automated quickfix Code review pane providing a report of detected issues. Report is inclusive of J2EE detailed code analysis results. “Details View” providing an overview and avoidance guidance for anti-patterns. 7 Software Development Conference 2007 Key Feature: Patterns Applying Patterns is very simple Pattern rendered as a collaboration to support incremental application Evolution of pattern experience based on lessons learned Pattern-authoring provides greater flexibility using Open API All Gang of Four design patterns provided Additional patterns provided via RAS repository on IBM developerWorks Support “drag-and-drop” of pattern parameters into the collaboration New patterns view providing outline and description of the pattern 8 Software Development Conference 2007 Key Feature: Transformations Transformations are optimal for “batch” style computationally intensive operations Model-to-model Model-to-code Out-of-the box code transforms UML-to-J2EE/Java UML-to-C++ Plus sample model-to-model transforms Transformations may be updated via RAS repository hosted on IBM developerWorks Examples: Web Services transformations XSD transformations 9 Software Development Conference 2007 Key Feature: C++ Development Environment Perspective for C++ Development C/C++ project hierarchical tree view C/C++ editor with syntax highlighting, code completion, and advanced search UML class diagram visualization of C/C++ classes and structs 10 Software Development Conference 2007 Product Capabilities: C/C++ Development Environment Built on the Eclipse CDT project (http://www.eclipse.org/cdt) “The CDT project provides a set of plug-ins that implement a C/C++ IDE. It adds a C/C++ Perspective to the Eclipse Workbench that supports C/C++ development with a number of views, wizards, a powerful editor, and a debugger. The CDT is designed to provide an extensible architecture, that will provide support for integration of tools provided by independent software vendors (ISVs).” Editing and Navigation Ease of Use Build C/C++ Syntax Highlighting, Outline View Standard Make for projects with existing build infrastructure C++ Class Browser (Hierarchy View) Managed Build C/C++ Search Automatic makefile generation C/C++ Content Assist GNU tools supported out of box Managed build is extensible, build tools can be plugged-in and build tools options selectable Project Import Automated assistance in setting up CDT for search and content assist. UML C/C++ Code Editor Meets Internationalization and Accessibility requirements Debug Extensibility GDB Integrated Extensible Debug Interface Provides extension points for managed build, debuggers, … 11 Software Development Conference 2007 Key Feature: Visualize Java Method Bodies Facilitates understanding and application’s behavior by providing visualization of detailed code Diagrams can be integrated in Javadoc reports “Topic” diagram for method is automatically updated/refreshed when method is updated Integrated with the Java Package view Leverages UML 2.0 sequence diagram constructs for loops, conditionals, etc… Alternate abstract view of method behavior Select method to be visualized using UML 12 Software Development Conference 2007 UML Enhancements: JavaDoc with Embedded UML Diagrams Produce enriched JavaDoc UML diagrams right on the pages Completely integrated with hyperlinks 13 Software Development Conference 2007 Team: Model Compare & Merge 14 Software Development Conference 2007 Team: RequisitePro Integration Open and browse multiple RequisitePro projects Requirements Explorer for viewing requirements in Eclipse. See requirements, packages, and views Associate requirements with model elements via drag and drop Create model elements from requirements Associate requirements and model elements using Drag-and-Drop Customizable synchronization View requirements traceability from the perspective of either “trace-to” or “trace-from” 15 Software Development Conference 2007 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 16 Software Development Conference 2007 Code Quality Assurance: Code Review Details View 17 Software Development Conference 2007 Code Quality Assurance: Component Test Automation 18 Software Development Conference 2007 Code Quality Assurance: Code Coverage Annotated source shows lines hit/missed Coverage Navigator shows outline view 19 Software Development Conference 2007 Code Quality Assurance: 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 Monitor Trace Data Trace Data Server 1 Server 2 Agent Controller Agent Controller Servlet EJBs 20 Software Development Conference 2007 IBM Rational Web Developer for WebSphere Software “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 Web Services Tools Web UI construction Rich Client UI construction “EGL” • Simplified 4GL for Web Application Development • Text User Interface Programs Support (3270, Curses) • VisualAge Generator > EGL Migration Tool • Java Runtime Targets Enterprise Generation Language XML Tools Eclipse Java Development Tools “Web Services Tools” • WSDL visual editor • UDDI Registry browser “Rich Client UI construction” • Java Visual Editor for rich client composition • Supports Swing, AWT, SWT widgets “XML Tools” • XML and XSD tooling support “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 21 Software Development Conference 2007 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 The Data View lets you configure and drag and drop data to automatically create a data bound UI Page templates separate out common page elements in a single template file WDO accesses and updates data without writing any code! Property views allow easy customization of the selected component The Quick Edit View allows scripting of client or server side events in Java or Java Script. Web Application Development is Drag and Drop Simple! Code assist writes the code for you! Rapid UI Creation Instant binding of UI to Data Simple Data Access with WDO/SDO Quick Server-side event scripting (with Java Server Faces) 22 Software Development Conference 2007 Web Services Tools 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. Samples and tutorials in Samples Gallery & Tutorial Gallery Support for updated WS-I Basic Profile and latest UDDI release 23 Software Development Conference 2007 IBM Rational Application Developer for WebSphere Software “J2EE/EJB Tooling” • J2EE construction tools • Supports WebSphere and WebLogic • Rapid Deployment for WAS v6 • Integrated WAS test environments IBM Rational Application Developer “Component/Unit Test” • JUnit-based testing of Java, EJB 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 J2EE/EJB Tools Portal/Portlet Design Tools “Code Analysis Tools” • Both static code analysis and dynamic runtime analysis • Source code analysis for rule violation detection: Java/EJB coding practices, internationalization, accessibility, architectural constraints, API deprecation • Sequence diagram runtime trace with performance, thread and code coverage • Advanced memory leak detection • Remote data collection across multiple servers • User-defined run-time probes • Interactive reports and metrics Component/Unit Test • Visual Portal site and page layout tools • Visual Portlet layout and preview • Integrated Portal test environment Portal/Portlet Design Tools Code Analysis Tools UML Visual Editors Rational Web Developer RUP Configuration for J2EE ClearCase LT “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 24 Software Development Conference 2007 TMTP Deployment with IBM Problem Resolution Toolkit RDBMS RAD/RSA IPRT Management Server Managed Host 1 Application Server J 2 EE Monitor Management Agent ARM Agent 25 Software Development Conference 2007 Problem Determination and Resolution: IBM Problem Resolution Toolkit for Rational Application Developer No charge, download for IBM Rational Software Architect customers Import data from the Management server component of Tivoli Monitoring for Transaction Performance (TMTP) If the system slows down or fails, TMTP alerts operators Developers can import production diagnostic data, directly into RSA IBM Problem Resolution Toolkit for Rational Application Developer accelerates problem resolution, by providing detailed analysis of production problems within the RSA integrated development environment 26 Software Development Conference 2007 THAT’S ALL, FOLKS.. 27