Title: Testing, Reliability, and Interoperability Issues in CORBA Programming Paradigm
1Testing, Reliability, and Interoperability Issues
in CORBA Programming Paradigm
2Outline
- Motivation
- Testing CORBA Program
- Reliability Evaluation
- Interoperability
- Future Work
- QA
3Motivation
- Implement distributed applications with CORBA
become popular - Testing, reliability, and interoperability for
the CORBA programming paradigm remain unexplored - These issues is important to develop the reliable
distributed system in CORBA
4What is CORBA?
- Architecture and specification
- Allow object in the network communicate through
an "interface broker" - Developed by Object Management Group (OMG)
- Standard architecture for distributed objects (or
Components)
5Experiment Project Description
- 19 Programs,same specification
- Soccer Management System
- 10 operations
- team rules
- Different ORBs(Visigenic/Orbix)
- Different Languages (C/Java)
6Program Metrics
- 7 programs use Iona Orbix(C)
- 12 programs use Visigenic
- 9 uses Java for client and server
- 2 uses C for client and server
- 1 uses Java as client and C as server
7General Software Metrics
8Testing the Programs
- Test Preparation
- Generate Test Cases
- Test Procedure
- Test Execution
- Result Analysis
9Generate Test Cases
10Test Procedure
11Pass Rate
Pj - number of Pass cases for program j. Mj
-number of Maybe cases program j. C- total
number of cases apply to the programs (57)
Oi -number of Pass test cases for operation
i OMi- number of Maybe test cases for operation
i Ti - total cases for operation i
12Test Result for Each Team
Test Results for Each Team
Maybe Some Test cases not applicable
13Test Results for Each Operation
14Defects Classification
- Exceptions
- Server Side
- Missing
- Extra or Wrong
- Client Side
- Missing
- Wrong
- Memory Management
- Ref Count
- Language Mapping
- Other
15Distribution of Defects
Distribution of Defects
Missing/Extra or Wrong Missing/Wrong
16Distribution of Defects
17Reliability
- Develop the Operational Profile
- Define the Reliability of the Program
- Analysis the Results
18Operational Profile
Operation Profile List of occurrence
probabilities of each element in the input domain
of the program.
19Reliability Evaluation
Rj - Reliability for program j Rj' - Reliability
for program j (treat maybe as
pass) OPi,j-Pass test cases for operation i ,
program j Mi,j-Maybe test cases for operation i
, program j Ti - total cases for operation i ?i-
Probability for operation I n-number of operation
20Evaluation Results
21Evaluation Results
22Comparison
23Why Interoperability?
- Same Specification
- Try to Exchange the Client and Server
- Availability
- Higher Reliability Server/Client lead to higher
system reliability?
24Interoperability Evaluation
The difficulty of Interoperability
1 very difficult to inter-operate 2 possible
to inter-operate, but with considerable effort
3 interoperable with moderate effort. 4
interoperable with some effort. 5 readily
interoperable with minimal effort.
25Evaluation Results
26Difficulties in Interoperability
- IDL
- Interface
- Attribute/Operation
- Exception
- Other
- Between ORBs
- CORBA Service
- Specification
27Summary
- Introduction to CORBA
- Testing the CORBA program
- Evaluating the reliability
- Evaluating the interoperability
28Future Work
- Testing Techniques
- Reliability Evaluation Techniques
- Apply Software Fault Tolerance Techniques
- Reliability Model
- Implement Software Reliability Middleware
29QA
30Thank You!