® IBM Software Group Open Software Development IBM Software Development Platform Marc Brown, Rational software.
Download ReportTranscript ® IBM Software Group Open Software Development IBM Software Development Platform Marc Brown, Rational software.
® IBM Software Group Open Software Development IBM Software Development Platform Marc Brown, Rational software IBM Software Group | IBM Rational software Agenda Where are we today? Challenges in software development (TPF, IT, Embedded, etc.) What is missing? And how can we resolve the issues? IBM Software Development Platform Closing Comments IBM Software Group | IBM Rational software Agenda Where are we today? Challenges in software development (TPF, IT, Embedded, etc.) What is missing? And how can we resolve the issues? IBM Software Development Platform Closing Comments IBM Software Group | IBM Rational software Industry Truism? Quality Time-to-Market The Software Development Paradox IBM Software Group | IBM Rational software How Is Business Doing? Over 30%1 of software projects are cancelled Of the remaining 70%, many are over budget, over time, or defective functionally 52%1 of software projects cost 189%1 original estimates Only 16%1 of are completed on time and within budget For large enterprises, this can be as bad as 9%1 1 Standish Group IBM Software Group | IBM Rational software Why are organizations failing? Hitting the wall before release (1) Losing/adding team members Unforeseen technology difficulties Unforeseen or changing requirements Figure-1 90% done (2) Riskiest features deferred Endless Q&A (3) Poor quality code Figure-2 Bugs found late are very costly Negative ROI Failure Traps – Balance and Guidance Required Prototype Scripting 4GL’s Figure-3 IBM Software Group | IBM Rational software Software Development Obstacles Environment Complexity Process Complexity Limited tooling - legacy tools, compilers, integrations No defined development process Lack of built-in debugging and testing capabilities Lack of understanding Host Platforms – Linux, UNIX, zSeries Application Complexity Legacy systems – difficult to maintain / understand / modernize Hard to maintain Architectural enforcement or knowledge Inadequate testing Poor performance Transaction driven – highly unpredictable events and loads Unreliable builds Strong timing constraints – realtime requirements Missing integration Concurrent / Distributed / Networked Changing requirements Disparate tools lacking required integrations IBM Software Group | IBM Rational software Transforming for Success: What is Required? Good / Complete Planning Complete Requirements & Specification Definition (end-user signoff) Requirement Management and Implementation Control (ie., what shall get built and when) Clear Responsibility and Accountability of Team Members Individual workflows Clear communication paths Schedule Control Software Configuration Management, Activity, and Test Managenment Project Statistics Clear Communication and Validation Architectural Enforcement Test Validation and Support IBM Software Development Platform IBM Software Group | IBM Rational software Agenda Where are we today? Challenges in software development (TPF, IT, Embedded, etc.) What is missing? And how can we resolve the issues? IBM Software Development Platform Closing Comments IBM Software Group | IBM Rational software IBM Software Development Platform Analyst Model, Pervasive simulate, assemble, and and monitor Embedded business processes IBM and 3rd Party Servers Project Manager Architect Developer Tester Deployer Model applications and data Visually construct, transform, integrate and generate code Design, create, and execute tests Provision, configure, tune and troubleshoot applications Follow a common process Track project status Manage requirements Microsoft Industry Standards Manage change and assets Manage quality DB2 Lotus Rational Tivoli WebSphere Partners Training & Mentoring A open team-based approach IBM Software Group | IBM Rational software The Business Driven Development Process Model & Monitor Business Process Elicit Requirements Business Develop Iteratively Focus on Architecture Monitor & Manage Operations Key Benefits Discover & Design Continuously Ensure Quality Test & Deploy Manage Change & Assets Development Transform, Integrate & Build Transform the Business of Software Development Automating the Process of Software Development through open-standards Do more with less, improve time to value, leverage open standards IBM Software Group | IBM Rational software The Business Driven Development Process Model & Monitor Business Process Elicit Requirements Business Develop Iteratively Focus on Architecture Monitor & Manage Operations Key Benefits Discover & Design Continuously Ensure Quality Test & Deploy Manage Change & Assets Development Transform, Integrate & Build Transform the Business of Software Development Automating the Process of Software Development through open-standards Do more with less, improve time to value, leverage open standards IBM Software Group | IBM Rational software Develop Iteratively Requirements Analysis & Design Planning Adopt a flexible process Create successive iterations of executable releases Confirm requirements and quality with every iteration Business Benefits Fewer failed projects help reduce costs, minimize waste Unify distributed teams, contractors, outsourcers Develop Iteratively Business Modeling Initial Planning Configuration & Change Management Implementation Environment Test Evaluation Deployment Technology Benefits Mitigate risk early in the project lifecycle Remedy the root causes of project failures Accurately scope and measure projects IBM Software Group | IBM Rational software Develop Iteratively IBM Software Group | IBM Rational software Each Iteration Produces a Working Implementation of the Final System Iterative projects engage the development disciplines from the start of the project Develop Iteratively IBM Software Group | IBM Rational software Address Risks Earlier in the Project Lifecycle Risk Resolution Period Risk Management Period Risk Waterfall Iterative Risk Reduction Time Develop Iteratively IBM Software Group | IBM Rational software Focus on Architecture Create models at various levels of abstraction Implement with componentoriented and serviceoriented architectures Visualize as-built architecture Business Validate or refine & iterate Business Benefits Better align projects with business needs Higher-level reuse for improved productivity Faster, more reliable changes Focus on Architecture Application System Information Implementation Technology Benefits Enables model-driven architecture and development Scales better than focusing only on code Facilitates traceability across the lifecycle IBM Software Group | IBM Rational software Spectrum of Solutions Adopt the right development style for your needs Level of abstraction Business Modeling & Model Execution Rapid Application Development Direct Architected Traditional Coding Code Visualization & Visual Editing Modeling & Round-Trip Engineering IBM has development solutions that span across: Focus on Architecture Legacy Integration Development languages Operating environments Skill levels Modeling paradigms IBM Software Group | IBM Rational software Modeling Business, System, and Application Architectures Document business processes Capture enterprise assets Enterprise Architecture Web Services Design component-based or SOA software architectures Key products: Rational Rose XDE WebSphere Business Integration Modeler WebSphere Studio Application Developer WebSphere Studio Asset Analyzer IBM Rational Rose XDE Developer IBM Software Group | IBM Rational software Continuously Ensure Quality Build in quality from the beginning Automate testing Bridge development, testing, and operations teams Attention to quality should begin here Attention to quality often begins here C O S T Iterative Process Business Benefits Low risk delivery of unique differentiators Rapid cycle times Satisfied service level commitments Continuously Ensure Quality Technology Benefits Complete asset traceability Accelerated problem determination Early detection of system availability risks IBM Software Group | IBM Rational software Manage Change and Assets Software Configuration Management Manage change Manage assets Automate and accelerate workflow Business Benefits • Quickly respond to change • Develop anytime, anywhere, in parallel • Enable reuse and protect assets Manage Change and Assets Requirements Models Code Tests… Technology Benefits • Flexible workflow and process support • Distributed team management • Traceability across the lifecycle IBM Software Group | IBM Rational software Managing Change: The Challenge How many Did requirement Add promotion 462 make it into calculation Bug 849 severity 1 bugs left? this release ?Bug 527 New platform are New customer Analyst New GUI New web Bug 98 transaction button design Bug 348 Bug 179 Bug 251 Of course I didn’t forget a file... Project Manager Is bug 873 fixed in this build? Why did the build break? Build 3 Build 2 Build 1 Developers Manage Change and Assets Testers Integrator IBM Software Group | IBM Rational software Unify Artifact and Activity Management Ensure predictable results UCM Process Best Practices Process, Out of the Box Manage Activities Manages High-level Objects To Do Lists Decades of CM experience Workflow Hundreds of successful CM implementations Manage Artifacts Versioning: code, models, XML, HTML Parallel development Easy to adopt Optimized for team acceptance Components Subsystems Baselines IBM Rational ClearCase and IBM Rational ClearQuest Manage Change and Assets IBM Software Group | IBM Rational software The Business Driven Development Process Model & Monitor Business Process Elicit Requirements Business Develop Iteratively Focus on Architecture Monitor & Manage Operations Key Benefits Discover & Design Continuously Ensure Quality Test & Deploy Manage Change & Assets Development Transform, Integrate & Build Transform the Business of Software Development Automating the Process of Software Development through open-standards Do more with less, improve time to value, leverage open standards IBM Software Group | IBM Rational software Eclipse: Universal Platform for Developing Tools What is Eclipse? An Open Source Project - eclipse.org Open, extensible architecture based on standards Licensed for royalty free world-wide distribution Strengths Open standards-based platform for application development tools Language-neutral / OS-neutral • HTML, Java, C, JSP, EJB, XML, GIF, … ISV’s and Customers can add/integrate deeper functionality to installed products C/C++ Development Tools (CDT) Tool C Eclipse Platform Workbench Java Development Tools (JDT) JFace Tool A SWT Team Workspace Plug-in Development Environment (PDE) Help Debug Tool B Platform Runtime IBM Software Group | IBM Rational software Eclipse Enables Deeper Product Integration Analyst Architect Developer Tester Develop Iteratively Continuously Ensure Quality Role-based user interfaces Common models for integration across lifecycle Artifact sharing via Rational Team Unifying Platform Project Manager Manage Change and Assets 3rd Party ISV Tools Customer Extensions Focus on Architecture IBM Software Group | IBM Rational software Eclipse: Based on Industry Standards Comprehensive support for: Development Languages Application Servers Databases Operating Systems Biz Rules Business Process Design BPM BPEL WSDL UML UML2 BPEL UML2 J2EE SPEM C/C++ XML J2EE WCCM Application Development SDO Hyades SQL Java XML CIM IT Infrastructure IBM Software Group | IBM Rational software IBM Requirements & Analysis Solutions Benefits Capabilities Drive business needs throughout projects Ensure regulatory compliance Monitor ROI of technology investments Key Products IBM Rational RequisitePro Analyze business workflows & activities Capture business requirements Model enterprise and data architectures Business Analyst Systems Analyst IBM Rational Rose Data Modeler IBM Rational Rose XDE Modeler IBM WebSphere Business Integration Modeler IBM WebSphere Business Integration Monitor IBM WebSphere Studio Asset Manager DBA/ Data Analyst IBM Software Group | IBM Rational software IBM Rational RequisitePro Communicating and managing requirements effectively Present requirements contextually Familiar interface Prioritize and track requirements Out-of-box reports Communicate requirement changes Integrated with Rational tools IBM Software Group | IBM Rational software IBM Design & Construction Solutions Benefits Capabilities Code Visualization and Visual Editing Modeling & RoundTrip Engineering Legacy Integration Rapid Application Development Model Execution Maximizes value from both code and models Eases migration to higher levels of productivity Maximizes user choices & flexibility Key Products Architect IBM WebSphere Studio Family Application Developer Web Developer IBM Rational Rose XDE Developer IBM Rational Rose Technical Developer IBM Rational Rapid Developer IBM Software Group | IBM Rational software IBM WebSphere Studio family An open, comprehensive development environment for building dynamic e-business applications Extend and customize with IBM eServer & IBM middleware tools A single, comprehensive development environment with unprecedented flexibility & extensibility IBM eServer & Middleware Tools Extend and customize with partner & customer tools Partner Tools & Middleware WebSphere Studio Universal Platform for Development Tools An integrated environment for the application lifecycle – from discovery through development to deployment An open, industry-supported development platform Web Services Asset Componentization and Impact Analysis TPF, Embedded, IT Development Legacy Modernization IBM Software Group | IBM Rational software IBM Rational Rose XDE family An open, integrated, and comprehensive model-driven development environment Multi Platform Support Extend, customize, or create user definable patterns or templates Assisted modeling and runtime analysis, including multi-model support WebSphere, MS, Eclipse A single design-to-code development environment with unprecedented flexibility & capability Patterns & Code Templates Assisted Modeling & Runtime Analysis (Visual Trace) Rose XDE Unified Modeling Language An open, industry-supported modeling language An integrated environment for the application lifecycle – from discovery through development IBM Software Group | IBM Rational software IBM Software Quality Solutions Benefits Capabilities Runtime analysis Component, functional, and performance testing Cross-platform test execution support Test planning & reporting Ensures reliability, functionality, scalability Reduces cycle time Accommodates multiple skill sets, roles Shares responsibility for quality across the team Key Products Business Analyst Tester Developer IBM Rational Functional Tester for Java and Web IBM Rational Performance Tester IBM Rational Robot IBM Rational PurifyPlus (C, C++, Java) IBM Rational Test RealTime (C, C++, Java) IBM Software Group | IBM Rational software Rational PurifyPlus family Complete suite of runtime analysis tools for improving reliability and performance Designed for C, C++, and Java Runtime analysis includes four basic functions: Memory corruption detection Memory leak detection Application performance profiling Code coverage analysis Support Windows, UNIX, Linux IBM Software Group | IBM Rational software Rational Performance Tester Uncover and correct production-environment performance problems before deployment Easily create scripts for performance testing Use Robot’s code automation to shave hours off of your script development time Manage your testing assets No more spreadsheets and sticky notes. TestManager controls all functional, performance and manual test assets from your test plans to your test results Pinpoint your bottlenecks Use TestManager’s intuitive reports to find your bottlenecks and pinpoint the route causes of your scalability issues IBM Software Group | IBM Rational software IBM Software Configuration Management Solutions Benefits Capabilities Develop anytime, anywhere Ensure predictable results Understand the impact of change Enterprise-wide change management Asset and build management Process and integrated tool support Project Manager Developer Tester IBM Rational ClearCase IBM Rational ClearQuest IBM Rational Team Unifying Platform Key Products IBM z/OS SCLM Suite Analyst IBM Software Group | IBM Rational software Rational ClearCase and Rational ClearQuest Unified Change Management Manage artifacts, activities, and defects Activity-based artifact and change management Consistent project control, protection and traceability IBM Software Group | IBM Rational software IBM Process & Project Management Solutions Benefits Capabilities Mitigate risks early in the project lifecycle Equip the team to work effectively together Accurately scope projects Plan and estimate projects Manage teams with proven best practices Measure progress based on accurate data Project Manager Analyst Tester Developer IBM Rational Unified Process IBM Rational SUMMIT Ascendant IBM Rational Team Unifying Platform IBM Rational Suite Key Products IBM Software Group | IBM Rational software Rational ProjectConsole Accurate Project Status Customizable reports on project information Visual project status and measurement information Avoid wasting time looking for and/or working from outdated information IBM Software Group | IBM Rational software Rational Unified Process Collaborative Customizable Process Searchable, Web-based, covers the entire lifecycle Integrated with tools IBM Software Group | IBM Rational software IBM Software Development Platform A Team-based Solution providing integrations without data duplication Requirements How to reproduce bug? What to test? Rational TestManager Rational RequisitePro Test Data Rational ClearQuest Avoid Data Redundancy by Sharing Artifacts Across Tools IBM Software Group | IBM Rational software Agenda Where are we today? Challenges in software development (TPF, IT, Embedded, etc.) What is missing? And how can we resolve the issues? IBM Software Development Platform Closing Comments IBM Software Group | IBM Rational software IBM Software Development Platform Analyst Pervasive and Embedded WebSphere Business Integration Modeler & Monitor Rational RequisitePro IBM and 3rd Party Servers Project Manager Microsoft Architect Rational Rose XDE family Developer Tester WebSphere Studio Family Rational Rapid Developer Rational Functional Tester for Java and Web Rational Rose XDE Developer for Java Rational Rose XDE Developer for Visual Studio Rational PurifyPlus Rational Unified Process Rational ClearCase Rational ClearQuest Open Standards Rational Robot DB2 Lotus Tivoli WebSphere Rational Performance Tester Rational RequisitePro Rational TestManager Rational ProjectConsole Training and Mentoring Partners IBM Software Group | IBM Rational software Enabling Role-Based Access to Information Multiple perspectives of common data, optimized for each role Business Analyst Full traceability across the lifecycle Maximizes individual and team productivity Eclipse Meta-model Framework (EMF) Systems Analyst Architect Business Process Use Case Application Design Component Developer Tester Team API Deployment Operations Manager IBM Software Group | IBM Rational software IBM Software Group | IBM Rational software IBM Software Group | IBM Rational software Requirements and Analysis Solutions for the analyst, architect, and developer Requirements & Analysis Design & Construction Process and Project Management Software Configuration Management Software Quality IBM Software Group | IBM Rational software IBM WebSphere Business Integration Software to connect internal and external applications to exchange information reliably and securely IBM WebSphere Business Integration Connect Enable community integration through connectivity between trading partners Solutions for Industries IBM WebSphere MQ High performance communications transport enabling reliable and secure application communication Business Integration Server MQ Business Integration Connect IBM WebSphere MQ Everyplace Integration of users with mobile devices enabling secure and reliable exchange of information IBM WebSphere MQ Brokers Information transformation, intelligent routing and real-time event distribution