kdyoung@kr.ibm.com IBM Rational 2006 IBM Corporation
Agenda Testing IBM Rational Test RealTime Test RealTime/PurifyPlus Runtime Analysis Test Real Time Component Testing Demo 2
Agenda Testing IBM Rational Test RealTime Test RealTime/PurifyPlus Runtime Analysis Test Real Time Component Testing Demo 3
Testing?,, Testing : DETECTIVE, Debugging : CORRECTIVE, 4
Testing Issue platform / platform platform cross platform timing Modeling / 5
Test Cycle Test Test Case Test Test 6
Testing 6 Unit Testing Test C function C++ class Data testing : function parameter testing : C++ method :, object, 7
Testing 6 Unit Testing Integration Testing Test function class Interface : flow diagram interaction 8
Testing 6 Unit Testing Integration Testing Test Code ( ) Test : Validation Testing 9
Testing 6 Test system component : Code + RTOS Tasking, communication, Virtual Tester Grey-box testing Unit Testing 10
Testing 6 Test component Unit Testing : RTOS network communication protocol ( RTOS event network messages) Virtual Tester interface Grey-box testing Integration Testing 11
Testing 6 Test Testing Black-box testing Unit Testing Integration Testing Validation Testing 12
Rational Software & IBM Rational Portfolio Manager IBM Rational Method Composer Best practices content (IBM Rational Unified Process IBM Tivoli Unified Process, Portfolio Management) & IBM WebSphere Business Modeler IBM Rational RequisitePro IBM Rational Software Architect IBM Rational Software Modeler IBM Rational Rose Data Modeler & IBM Rational Software Architect IBM Rational Software Modeler IBM Rational Data Architect IBM Rational Application Developer IBM Rational Web Developer & IBM Rational Performance Tester IBM Rational Functional Tester IBM Rational Manual Tester IBM Rational PurifyPlus IBM Rational Robot IBM Test RealTime IBM Rational ClearCase IBM Rational ClearQuest IBM Rational Team Unifying Platform IBM Tivoli Provisioning Manager IBM Tivoli Configuration Manager IBM Tivoli Intelligent Orchestrator & : Eclipse, Linux, Microsoft Windows, UNIX, IBM z/os 13
Rational Software Test Test Rational RequisitePro Rational TestManager Rational ClearQuest Rational ClearQuest Test Rational PurifyPlus Rational Test RealTime Rational Functional Tester Test Automation Test Rational Functional Tester Plus Rational Manual Tester Test Rational Performance Tester Rational Robot Project Test Report 14
,,,,, IT Analyst Architect Developer Tester Operations and Code Test Debug Test Test 15
: IBM & Gartner : 1.0 System Down : $89K ~ $4.5M 1 & 100 1.5 : I/T 18.5% 2 Test 10 60 1 AC Market Analysis: Self-healing market June 2004 2 Source: Tivoli Marketplace Assessment, February 2004 16
CMM Level 1 4.5 6.6 Code 8.8 Test 9.4 CMM Level 3 4.0 6.0 Code 6.8 Test 3.75 testing & testing testing 50% 20%, testing 80%, 45% : CMM Level 1 30% testing CMM Level 3 15% 17
UNIT TESTING TEST BUILD TESTING & TEST & SYTEM TEST 18
Enhancement Requests Project Managers Use Cases Developers Requirements Test Cases Testers Baselines Team Project Admin. test case IBM Rational Team-Unifying Platform 19
Code code test Memory third party code performance data dead code, test code : Unix, Windows, Linux, Java,.NET, VB6, C/C++, IBM Rational Purify Plus 20
Embedded Real-time Software Testing Test, & software White-box black-box testing testing host target Test debug embedded target Host, build target target Size speed code model model test runtime analysis IBM Rational Test RealTime 21
Testing regression test Java, VS.NET WinForm, Web, Siebel terminal test project QA, tester GUI test use case project fact test script 100% Java VB.NET Data- test asset test script Eclipse VS.NET- ScriptAssure debugger test Java, VS.NET, Web terminal-based test Java in Eclipse or VB.NET in VS.NET IBM Rational Functional Tester 22
Test 3 test Record Enhance Execute Script Recording Test Script Enhancing Script Script Execution Script Script IBM Rational Functional Tester 23
, code, test project, request, issue, IBM Rational Team-Unifying Platform IBM Rational ClearCase, ClearQuest 24
Agenda Testing IBM Rational Test RealTime Test RealTime/PurifyPlus Runtime Analysis Test Real Time Component Testing Demo 25
? Quality Time to Market 26
Rational : Support Medical Telecom Devices Rational Solution:, Test, Aerospace / Military Automotive 27
Rational : Best-in-class and Best Integrated Product Depth Best-in-Class # 1 Analysis, Modeling & Design 1 # 1 Software Configuration Mgmt 1 # 1 Embedded Testing 1 # 1 Requirements Management 2 Leader in Automated Testing 1 Market-leading tools Best integrations Best Integrated Integrated since 1999 Winner, Best Team Programming Tool 3 Product Breadth Revenue Leadership Sources: 1 Various analyst sources; 2 Internal estimates; 3 Rational Suite, 2002 Editor s Choice, PC Magazine 28
Test Debug Test : Component Test Test Data Black- white-box testing : Test, Regression Testing Analyze : Test Code Memory Performance Runtime Resolve : Test Test Test Report Test data runtime analysis code hyperlink 29
Component Testing Runtime Analysis Component White-box black-box testing C Ada function procedure component testing C++ class Component testing assertion checking Java (J2ME/J2SE) class Component testing Message C thread, task, process system nodedml unit integration testing runtime analysis Memory Performance Code UML runtime 30
IBM Rational Test RealTime - Component Testing Code Coverage Memory Profiling Performance Profiling Runtime Tracing Thread Profiling C, C++, Ada, Java C, C++ Ada, Java C, C++ Java C, C++ Java C, C++ Java C, C++ Java Unit, Integration, Validation, Regression and System Testing System Testing standards compliance DO-178B MISRA C ( ) Target Deployment Port Defense Standard 00-55 31
Total Environment Adaptability Target Deployment Technology A low-overhead, versatile target deployment technology Compiler high level scripting API Debugger test Target test upload report Full Target Independence! 32
Total Environment Adaptability WindRiver GreenHills ARM Enea 4-Bit to 64-Bit Cross Montavista Tasking TI CAD-UL NEC Cosmic Hitachi Hiware C C++ Ada J2ME/J2SE Windows CE LynuxWorks Lauterbach Apex Sun Microtec Hitex Symbian Windows Solaris Linux HP-UX AIX 33
Agenda Testing IBM Rational Test RealTime Test RealTime/PurifyPlus Runtime Analysis Test Real Time Component Testing Demo 34
Runtime Analysis Memory Performance code and/or Test code Test case code 35
Untested Code? Unexecuted Executed 36
Runtime Analysis : Code 9, incl. MC/DC test case : code code : test case code code (%) Boolean (C & Ada) 37
Runtime Analysis : Memory Memory error Memory Error Call Code Memory Code 38
Uninitialized Memory The hard way debugger variable The easy way run-time error : Rational Test RealTime/PurifyPlus 39
Runtime Analysis : Performance 3 Performance + 40
Performance Bottleneck 41
Runtime Analysis : Runtime UML diagram Track data values Trace Code Exception Catch 42
Agenda Testing IBM Rational Test RealTime Test RealTime/PurifyPlus Runtime Analysis Test Real Time Component Testing Demo 43
Test RealTime: Component Testing Code Data function call Testing Code Template Test data Stub Regression Testing reporting Test Test RealTime Runtime Analysis Memory Performance Code Runtime 44
Test 1. Test driver Test Test Data Return Global Variable 2. Stubs Return 45
Component Testing : Test Code Fix Test Enhancement Software Engineer Coding Test Script Design Test Result Analysis Source Code IBM Test RealTime Component Testing for C and Ada Test Script Template Generation Test Harness Generation Test Execution Test Results Reporting Compilers / Linkers / Debuggers Simulators / Emulators / Targets 46
IBM Rational Test RealTime: Test Code Browser 47
Component Testing : Test Script Test : Test Variable Test Function Test Script Test Function: a + b returns c 3 integer 48
Component Testing for C : Test Script TEST 1 : -, ELEMENT -. Test Function #ret_val=myfunction(y,a,z,b,c); : - -, delta, etc. VAR glob, init=0, ev== VAR y, init in {-1,glob,0}, ev in {-1,0,0} VAR a[1..10],init from 1 to 1000 step 1, ev(y) in {0,2,3} VAR z.field1,init=a[2], ev=ret_val VAR b, init==, min=y, max=y*10 Test Data VAR c, init=b, ev=10, delta=10% VAR ret_val, init=my_define, ev=init STUB alloc_block, 0=>(100)&a, OTHERS=>()NIL END ELEMENT STUB: - Parameter, - Return END TEST 2, 3x1000=3000 test case! 49
Component Testing : Test report,, : variable stub code : Rational Test RealTime Code Coverage HTML Test 50
System Testing for C: Test sequence diagram, test report source code hyperlink HTML Test Test Virtual Tester 51
52
Rational CGE&Y Accelerated Delivery Centre - Finland TTI Telecom Unisys Ericsson Lockheed Martin Canada Credence Systems Corporation Information Builders (ISV) software, ( 6 project : 55, 5 tester 10 business analysts) time-to-market 50% $2M client : 25-40% 75-100% 25-60% 80% ; 100% $409K ; 222% 1200% 90% regression testing 96% 53
54