Download presentation
Presentation is loading. Please wait.
Published byAgnes Tyler Modified over 9 years ago
1
Software Development Conference 2007 Vývoj pomocí IBM Rational Software Vítek Linduška
2
Software Development Conference 2007 2 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
3
Software Development Conference 2007 3 Challenges of Architecting Software Communicating a Solution Even experienced teams need clear and consistent communication Programming languages implement architectures -- they do not describe them Architecture decisions are only useful if they can be followed Communicating a Solution Even experienced teams need clear and consistent communication Programming languages implement architectures -- they do not describe them Architecture decisions are only useful if they can be followed “Teams need effective, efficient communication.” “How can our decisions be shared?”
4
Software Development Conference 2007 4 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 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 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 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 “We did not find our tangles until late in the project – but they were there from the beginning.” “The architecture was solid, but it was not implemented as planned!”
5
Software Development Conference 2007 5 Challenge Overcome the problem of communicating solution to a team 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 Resolution Provide technologies to enable effective communication of a design UML 2 Notation Integrate the architecture artifacts into the development environment Challenge : Communicating Architecture
6
Software Development Conference 2007 6 Challenge : Enforcing Architecture Standards Challenge How to enforce architecture decisions for a project team? 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 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
7
Software Development Conference 2007 7 Key Feature: Architectural Analysis, Discovery, and Control 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 quick- fix 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. “Details View” providing an overview and avoidance guidance for anti-patterns. Code review pane providing a report of detected issues. Report is inclusive of J2EE detailed code analysis results.
8
Software Development Conference 2007 8 Key Feature: Patterns Applying Patterns is very simple 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 New patterns view providing outline and description of the pattern Pattern rendered as a collaboration to support incremental application Support “drag-and-drop” of pattern parameters into the collaboration
9
Software Development Conference 2007 9 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
10
Software Development Conference 2007 10 Key Feature: C++ Development Environment Perspective for C++ Development C/C++ project hierarchical tree view UML class diagram visualization of C/C++ classes and structs C/C++ editor with syntax highlighting, code completion, and advanced search
11
Software Development Conference 2007 11 Product Capabilities: C/C++ Development Environment Editing and Navigation C/C++ Syntax Highlighting, Outline View C++ Class Browser (Hierarchy View) C/C++ Search C/C++ Content Assist Project Import Automated assistance in setting up CDT for search and content assist. UML C/C++ Code Editor Debug GDB Integrated Extensible Debug Interface Build Standard Make for projects with existing build infrastructure Managed Build Automatic makefile generation GNU tools supported out of box Managed build is extensible, build tools can be plugged-in and build tools options selectable Meets Internationalization and Accessibility requirements Extensibility Provides extension points for managed build, debuggers, … Built on the Eclipse CDT project (http://www.eclipse.org/cdt)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).” Built on the Eclipse CDT project (http://www.eclipse.org/cdt)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).” Ease of Use
12
Software Development Conference 2007 12 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 Integrated with the Java Package view Select method to be visualized using UML Leverages UML 2.0 sequence diagram constructs for loops, conditionals, etc… “Topic” diagram for method is automatically updated/refreshed when method is updated Alternate abstract view of method behavior
13
Software Development Conference 2007 13 UML Enhancements: JavaDoc with Embedded UML Diagrams Produce enriched JavaDoc UML diagrams right on the pages Completely integrated with hyperlinks
14
Software Development Conference 2007 14 Team: Model Compare & Merge
15
Software Development Conference 2007 15 Team: RequisitePro Integration Open and browse multiple RequisitePro projects See requirements, packages, and views Associate requirements with model elements via drag and drop Create model elements from requirements Customizable synchronization Requirements Explorer for viewing requirements in Eclipse. Associate requirements and model elements using Drag-and-Drop View requirements traceability from the perspective of either “trace-to” or “trace-from”
16
Software Development Conference 2007 16 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
17
Software Development Conference 2007 17 Code Quality Assurance: Code Review Details View
18
Software Development Conference 2007 18 Code Quality Assurance: Component Test Automation
19
Software Development Conference 2007 19 Code Quality Assurance: Code Coverage Annotated source shows lines hit/missed Coverage Navigator shows outline view
20
Software Development Conference 2007 20 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 Code Quality Assurance: Runtime Analysis Server 1Server 2 Agent Controller Servlet EJBs Monitor Trace Data
21
Software Development Conference 2007 21 IBM Rational Web Developer Eclipse Java Development Tools XML Tools Enterprise Generation Language Rich Client UI construction Web UI construction “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 “EGL” Simplified 4GL for Web Application Development Text User Interface Programs Support (3270, Curses) VisualAge Generator - > EGL Migration Tool Java Runtime Targets “XML Tools” XML and XSD tooling support “Rich Client UI construction” Java Visual Editor for rich client composition Supports Swing, AWT, SWT widgets “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 for WebSphere Software Web Services Tools “Web Services Tools” WSDL visual editor UDDI Registry browser
22
Software Development Conference 2007 22 Page Designer – New Look, JSF/SDO Enhancements Construct pages by dragging and dropping rich web components from a customizable Palette The Quick Edit View allows scripting of client or server side events in Java or Java Script. Code assist writes the code for you! Page templates separate out common page elements in a single template file Simplified Navigator hides the complexity of J2EE 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! Property views allow easy customization of the selected component Rapid UI Creation Simple Data Access with WDO/SDO Instant binding of UI to Data Quick Server-side event scripting (with Java Server Faces) Web Application Development is Drag and Drop Simple!
23
Software Development Conference 2007 23 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
24
Software Development Conference 2007 24 IBM Rational Application Developer ClearCase LT RUP Configuration for J2EE Rational Web Developer “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 “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 Portal/Portlet Design Tools Visual Portal site and page layout tools Visual Portlet layout and preview Integrated Portal test environment “J2EE/EJB Tooling” J2EE construction tools Supports WebSphere and WebLogic Rapid Deployment for WAS v6 Integrated WAS test environments UML Visual Editors Code Analysis Tools Portal/Portlet Design Tools Component/Unit Test J2EE/EJB Tools “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 IBM Rational Application Developer for WebSphere Software
25
Software Development Conference 2007 25 TMTP Deployment with IBM Problem Resolution Toolkit
26
Software Development Conference 2007 26 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
27
Software Development Conference 2007 27 THAT’S ALL, FOLKS..
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.