® IBM Software Group IBM Rational Proof of Technology Discovering the Value of IBM Rational’s Web Services Testing Solution © 2007 IBM Corporation TechWorks IBM Software Group | Rational software Agenda Overview of Quality Management of SOA Applications Challenges of Testing SOA Applications Overview of IBM SOA Quality Management Solution Key SOA Concepts and Terminology Functional Testing of Services Performance Testing of Services Management and Monitoring of Services 2 TechWorks IBM Software Group | Rational software IBM Rational software Business imperatives Global capability Business flexibility Time to value Risk & compliance management Governance & lifecycle management A strategic partner in business innovation & transformation Business innovation & transformation Governing the business process of software & systems delivery Alignment Control Efficiency Decades of proven process expertise & customer success 3 TechWorks IBM Software Group | Rational software What is IBM SOA Quality Management? An Integral Part of SOA Governance & Service Lifecycle Management Service Development and Delivery Management Infrastructure and Service Development Management & Delivery In Management Support of SOA SOA Governance Method Apr ‘06 Oct ‘06 March ‘07 Dec ‘06 4 TechWorks IBM Software Group | Rational software What is SOA Quality Management? SOA Quality Management is the process to assure services meet business requirements by validating service functionality and operations throughout the SOA Lifecycle SOA Quality Management is continuous and takes place within each phase of the SOA Lifecycle 5 TechWorks IBM Software Group | Rational software The SOA Testing Strategy The only way to effectively test SOA projects is to…. start from the ground up. test the inputs and outputs of individual modules. assemble sections of logic together and test smaller sections of the integration flow. Assemble those smaller sections into a finished SOA project and perform an end-to-end test on the fully assembled project. Key tenants Focus on the business processes in requirements and testing Create test plans that account for assembly of services Create an automated and repeatable testing process Plan for typical SOA testing hurdles (e.g. security access, unavailable systems) Test early, test often is more important now than ever (due to the domino affect a bug in a service may have on a given business process and the possibility of that service being in many business processes) 6 TechWorks IBM Software Group | Rational software Agenda Overview of Quality Management of SOA Applications Challenges of Testing SOA Applications Overview of IBM SOA Quality Management Solution Key SOA Concepts and Terminology Functional Testing of Services Performance Testing of Services Management and Monitoring of Services 7 TechWorks IBM Software Group | Rational software SOA adoption increases modularity & change Bringing quality to the forefront Pain of modularity Business impact Lower level of functionality & performance both at individual service level & composite application Service and application SLAs will be impacted by more frequent updates Increased risk and need to manage distributed assets Cross-organization Business/IT organizations will have increased complexity Increased management of a larger number of services including custom, outsourced & packaged Decentralization, modularity and increased risk drives need for a structured approach of integrated requirements, architecture & lifecycle quality management 8 TechWorks IBM Software Group | Rational software Quality Management of Service Oriented Applications Examining the fundamental challenge… Challenges of testing Service Oriented Architecture Applications Ensuring system fulfils requirements Validating system functionality Validating system performance Validating component web services Tracking test cases and defects 9 TechWorks IBM Software Group | Rational software Quality Management of Service Oriented Applications A new twist on an old problem… Challenges of testing Service Oriented Architecture Applications Validating component web services 10 TechWorks IBM Software Group | Rational software Quality Management of Service Oriented Applications The IBM Rational Solution. Quality Management of Service Oriented Architecture Applications The IBM Rational Solution is a three pronged approach Traditional user centric requirement, test and defect management New Web Service Quality functionality to address building blocks of SOA Apps Post Deployment monitoring of service oriented architecture applications 11 TechWorks IBM Software Group | Rational software Challenge: The Cost - Time - Quality Tradeoff Governance of the software delivery process Your job is to deliver quality applications. On Time. On Budget. You need to coordinate teams, data, schedules, requirements, models, code, tests, results and reports. Are you ready? “Everyone uses different tools – there’s no way to share data between the team.” “I have requirements, I have tests and I have defects…but nothing ties them together” “There’s too much to test. Where do we begin ?” 12 TechWorks IBM Software Group | Rational software Challenge: Validating SOA component functionality & performance Ensuring functionality of composite application units Web Services are the building blocks of SOA applications. A single service is a standalone component but may be used in dozens of systems. Some of those services will be yours, some not. How do you test a service without the rest of the system? Does it work? All the time? Under load? Are you sure? “The Web Service is ready for testing, but there is no user interface to exercise it.” “We don’t want to pull Programmers off their projects to write complex test harnesses.” “How can we leverage our Business Process analysis in our services testing efforts?” 13 TechWorks IBM Software Group | Rational software Challenge: Post Deployment Monitoring of Services Creating a feedback loop from operations to development Congratulations you’ve gone live. How are things going out there? Do you know? What happens when you need to make a change? And what if operations found a problem – how would it get back to development? Do these groups communicate? “How can I monitor web services running on many different platforms against thousands of users?” “How do I change policies and ensure those changes don’t break the implementations?” “How can I communicate problems found in the field back to development?” 14 TechWorks IBM Software Group | Rational software Agenda Overview of Quality Management of SOA Applications Challenges of Testing SOA Applications Overview of IBM SOA Quality Management Solution Key SOA Concepts and Terminology Functional Testing of Services Performance Testing of Services Management and Monitoring of Services 15 TechWorks IBM Software Group | Rational software IBM Rational Quality Management Solutions Process and products to ensure quality throughout the delivery lifecycle and deployment Implement Increase code quality Define & Analyze Enable requirements based testing Assess business analytics Build & Deploy Automate & trace the quality process Test & Production Ensure functionality, system performance & compliance 16 TechWorks IBM Software Group | Rational software IBM Rational Quality Management Solutions Process and products to ensure quality throughout the delivery lifecycle and deployment Validate the business requirements Discover and assess against current services Model service requirements Manage & monitor the service throughout its lifecycle Track the service in the registry Report on the service against SLAs Create service update plan Create/modify the service to meet the business requirements Assess service against governance policies Approve assembly completion Quality assure the services Function testing Performance testing Compliance testing Approve service deployment 17 TechWorks IBM Software Group | Rational software IBM Toolset What does the toolset provide? Automate business processes to achieve improved business flexibility Proactive response to quality issues earlier in the lifecycle Collaborative process automation & enforcement Extensible framework and registry/repository Create, document and prioritize business requirements Rational RequisitePro WebSphere Business Modeler Define, approve & monitor Rational Portfolio Manager Rational ClearCase Design, code, build Rational Application Developer Rational Build Forge WebSphere Service Registry and Repository Publish Deploy, build & monitor in production environment Tivoli Composite Application Manager Tivoli Provisioning Manager Find Enrich Manage Govern Evaluate & execute functional & performance test cases Rational Tester for SOA Quality and Performance Tester Extension for SOA Quality Rational ClearQuest 18 TechWorks IBM Software Group | Rational software Test Management with ClearQuest The Hub for Life-Cycle development Track requirements, test cases, change requests and defects from a single interface Consolidated reporting for full lifecycle process governance Global test project coordination unifies distributed teams on a centralized data infrastructure Configurable, enforceable processes ensures the tool adapts to your process 19 TechWorks IBM Software Group | Rational software Service Quality Management Functional and Performance Testing of Web Services from a common interface Rational Tester for SOA Quality Automated regression and functional testing for GUI-less Web services Rational Performance Tester Extension for SOA Quality Performance Testing for Web Service based applications 20 TechWorks IBM Software Group | Rational software Agenda Overview of Quality Management of SOA Applications Challenges of Testing SOA Applications Overview of IBM SOA Quality Management Solution Key SOA Concepts and Terminology Functional Testing of Services Performance Testing of Services Management and Monitoring of Services 21 TechWorks IBM Software Group | Rational software Service (in the context of SOA) A self contained business function in which consumers interact through a well defined interface (contract). The consumer does not know (or care) "how" the service implements the requested business action - only that the service performs "what" is defined by its published interface (contract). A service in the context of an SOA An abstracted view of SOA concepts 22 TechWorks IBM Software Group | Rational software WSDL – Web Service Description Language An XML-based service description on how to communicate using web services. Defines services as collections of network endpoints, or ports. Specification provides an XML format. The abstract definition of ports and messages is separated from their concrete use or instance, allowing the reuse of these definitions. WSDL is often used in combination with SOAP and XML Schema to provide web services over the Internet. 23 TechWorks IBM Software Group | Rational software Agenda Overview of Quality Management of SOA Applications Challenges of Testing SOA Applications Overview of IBM SOA Quality Management Solution Key SOA Concepts and Terminology Functional Testing of Services Performance Testing of Services Management and Monitoring of Services 24 TechWorks IBM Software Group | Rational software Functional & Regression Testing Strategy Quickly test Web Services and setup desired regression Test Cases. Ease-of-use in setting up these tests will help promote testers to test their Web Services early and often. Easy Test Case Management and Setup is vital to a productive establishment and maintenance of functional & regression tests. Setup an environment where the impact of requirement and business process changes can be quickly analyzed and realized 25 TechWorks IBM Software Group | Rational software IBM Rational Tester for SOA Quality Code free test development Simplify testing of GUI-less service Automated generation of web service test client No programming knowledge is necessary to create, comprehend, modify, and execute a functional or performance test Support a wide variety of users Automated data correlation and data driven testing through a code-free test environment Simplify service integration testing Automated test creation from WebSphere Business Process Execution Language resources Create, comprehend, modify, and execute a functional or performance test Code Free Test Editor Graphical test editor enables both high-level and deeper detail views Support Web services standards (e.g. SOAP, HTTP(S), JMS, WS-Security, UDDI) 26 TechWorks IBM Software Group | Rational software Agenda Overview of Quality Management of SOA Applications Challenges of Testing SOA Applications Overview of IBM SOA Quality Management Solution Key SOA Concepts and Terminology Functional Testing of Services Performance Testing of Services Management and Monitoring of Services 27 TechWorks IBM Software Group | Rational software Performance Testing Strategy QA Testers & Network Engineers should test the scalability and robustness of web services and determine performance and endurance characteristics of their WSDL operations. Performance Tests should determine: response times latency throughput profiles endurance robustness scalability 28 TechWorks IBM Software Group | Rational software IBM Rational Performance Tester Extension for SOA Quality Performance testing for Web applications Validate system scalability Web Service Response Time Automated generation of web service performance tests Real-time reporting of server response time and throughput Eliminate need for costly development of test code Automated generation of web service test client Get real time feedback on SOA efficiency Broad platform monitoring support for deployed web services User action throughput 29 TechWorks IBM Software Group | Rational software Agenda Overview of Quality Management of SOA Applications Challenges of Testing SOA Applications Overview of IBM SOA Quality Management Solution Key SOA Concepts and Terminology Functional Testing of Services Performance Testing of Services Manage and Monitoring of Services 30 TechWorks IBM Software Group | Rational software Analyze SOA Service Quality Deploy with confidence with Tivoli Provisioning Manager Increased service modularity within SOA will require additional and regular dependency and integrity checking Dependency Checking Analyzing the environment to ensure the change will be successful Integrity Checking Analyzing relationships and the impact the change will have on them 31 TechWorks IBM Software Group | Rational software Monitor Deployed Services and Service Quality Tivoli Composite Application Management (ITCAM) Health Monitoring of SOA components NEW! Application Management dashboards for IT and business reporting supports Web Services, ESB and Process Server Performance Monitoring and Transaction Management Populate WSRR with live service performance data NEW! Response Time dashboards ITCAM supports production and development needs with a unified console! Change and Configuration management DataPower configuration support Reroute services by making changes and upgrades while staying in full production mode “Show me the flow details in my service development tool!” Auto-discover services for populating WSRR with services information 32 TechWorks IBM Software Group | Rational software Response Time Breakdown Mapping imported operations monitoring data to code Export operations alert data for analysis by development Import ITCAM and ITM data to your development environment to discover bottlenecks in hardware and code Feed back operations data to development to provide insight into live deployed application response Monitor both resource data such as CPU, Network and RAM as well as code performance data 33 TechWorks IBM Software Group | Rational software Next Steps – Learn and Explore Rational Tester for SOA Quality http://www306.ibm.com/software/awdtools/tester/soa/inde x.html IBM Rational Tester for SOA Quality test execution and performance reports http://www128.ibm.com/developerworks/rational/library/07 /0327_kelly2/index.html?ca=drs- IBM SOA http://www306.ibm.com/software/solutions/soa/ Tutorials on developerWorks http://www128.ibm.com/developerworks/views/rational/libr aryview.jsp?search_by=Design+SOA+services +with+Rational+Software+Architect,+Part/ 34 TechWorks IBM Software Group | Rational software Quality Management of Service Oriented Applications A complete solution Enable quality management throughout the lifecycle Ensure business flexibility Enhance organizational efficiencies Continuous, comprehensive, and collaborative quality management throughout the lifecycle reduces costs and improves credibility Functional and performance testing of business services helps ensure compliance and improve customer satisfaction Automating workflows across business processes by streamlining and eliminating redundancies to improve return on investment IBM Rational software quality management: Connecting software results to business objectives 35