Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Approach to Test Autonomic Containers Ronald Stevens (IEEE Computer Society & ACM Student Member) August 1, 2006 REU Sponsored by NSF.

Similar presentations


Presentation on theme: "An Approach to Test Autonomic Containers Ronald Stevens (IEEE Computer Society & ACM Student Member) August 1, 2006 REU Sponsored by NSF."— Presentation transcript:

1 An Approach to Test Autonomic Containers Ronald Stevens (IEEE Computer Society & ACM Student Member) August 1, 2006 REU Sponsored by NSF

2 2 Overview 1. Introduction 2. Research Objectives 3. Review of previous work 4. Autonomic Container 5. Testing Framework 6. Tools Used 7. Autonomic Container Package 8. Prototype 9. Conclusion 10. Future Work

3 3 1. Introduction The growing complexity of computing systems has motivated a need for self-managing systems. A key feature of the human body is self- management – Autonomic Nervous System. Self-management involves self-healing, self- configuring, self-optimizing, and self- protecting. An implicit component in self-management is the ability to self-test.

4 4 2. Research Objectives Review existing work on testing autonomic systems. Extend current knowledge on testing autonomic systems. Create a prototype to validate the extended knowledge. Document the research activities.

5 5 3. Review of Previous Work 1. Literature review – Testing Autonomic Systems 2. Phase 1 – Survey 3. Phase 2 – Testing Framework

6 6 3.1 Literature Review Several projects were reviewed including: – Impala – OceanStore – Model-Driven Autonomic Manager – Bison Little or no work has been done in testing Autonomic Computing Systems.

7 7 3.2 Phase 1 - Survey Survey on different projects in Autonomic Systems. Systems were compared based on criteria in the areas of: – QoS, Cost, Adaptivity, Fault Tolerance, Fault Avoidance, Fault Detection, Degree of Autonomy, Granularity, Availability of Source Code Documentation: – Presentation 1 “Survey of Validation Methods in Autonomic Computing Systems” and Survey Paper

8 8 3.3 Phase 2 – Testing Framework Introduction of Autonomic Testing Framework Introduction of Autonomic Container Presentation of a High Level Architectural Framework Documentation: Presentation 2: “A Framework to Test Autonomic Containers”

9 9 4. Autonomic Container Container – a housing for a group of items that allows storage, organization, and efficient access Autonomic Container can: – self-heal – self-protect – self-optimize – self configure It is an autonomic data structure This container will also possess the implicit ability to self-test

10 10 Use of Autonomic Container

11 11 Autonomic Container Architecture

12 12 5. Testing Framework

13 13 Structure of Touchpoint Test Manager 1.0 Load Validation Policy 1.1 Retrieve New Structure Information Information 1.2 Perform Test Suite Analysis Analysis 1.3 Create Test Plan 1.3.1 TestPlanCreated 1.3.1 TestPlanCreated Event Event 1.3.2 Finalize Test Plan 1.3.2 Finalize Test Plan 1.4 Execute Test Plan 1.5 Run Test Cases

14 14 Structure of Touchpoint Test Manager 2.1 Retrieve Test Results and Profiling Info and Profiling Info 2.2 Perform Test Log Analysis Analysis 2.2.1a TestsPassed Event (or TestsFailed Event) (or TestsFailed Event) 2.2.2a Completed Success (or Terminated) (or Terminated)OR 2.2.1b Inadequate TC Event 2.2.2b Re-analyze TS 2.3 – 2.5 Same as 1.3 – 1.5

15 15 6. Tools Used Cobertura – Code profiler – Branch coverage – Line coverage – Generates reports JUnit – Unit testing framework – Part of xUnit family of testing frameworks

16 16Cobertura Cobertura is used to profile the Stack class code. Cobertura will instrument the Stack class, then the JUnit tests will be run on Stack Test. When the tests are complete, we will see the branch and line coverage handled by the Stack Cover.

17 17JUnit We have created several JUnit test cases to run on the Stack class. The purpose of the test cases is to ensure the correctness of the Stack class. Approaches used to develop test cases: – Boundary – Equivalence Partitioning Following the completion of the JUnit test cases, the output of results will be placed in a text file entitled Test Log.

18 18 7. Autonomic Container Package The Autonomic Container Package consists of: – The Stack class – The Stack Exceptions (Empty Stack, Full Stack, and Stack Change) – The Self Test Manager (Stack Test, Stack Cover, Test Runner Batch File, and Test Exec) The JUnit and Cobertura folders are also housed in this directory.

19 19 AC Package Layout

20 20 8. Demonstration of Prototype 1. Design of Autonomic Container using UML 2. Implementation of the prototype 3. Execution of the prototype a. Good Stack b. Bad Stack

21 21 9. Results Extended the concept of an autonomic element to allow self-testing. Developed an architecture for the self-test management component of Autonomic Container. Validated our approach of self-testing by creating a prototype consistent with the proposed architecture.

22 22 Documentation of Research Activities Technical Report – Survey of Validation in Autonomic Systems Positional Paper – An Approach to Testing Autonomic Computing Systems – To be submitted to the 3 rd Workshop on Software Quality Assurance (SOQUA 2006), FSE/ACM. Technical Paper: Ronald Stevens and Brittany Parsons – A Self-Testing Autonomic Container – To be submitted to the 45 th ACM Southeast Conference

23 23 10. Future Work Currently we have been able to implement only the Self Test aspect of the Autonomic Container. The next step is to add in the Self Healing, Self Optimizing, Self Protecting, and Self Configuring characteristics to the Autonomic Container. Work will continue to be done on the idea of Self-test in Autonomic Computing.

24 24 Acknowledgements Brittany Parsons Tariq M. King – Ph.D. Student Software Testing Research Group at FIU Dr. Peter Clarke Dr. Masoud Milani and the FIU School of Computing and Information Sciences National Science Foundation

25 25 Sources [IBM05]IBM Corporation. IBM, 2005. An architectural blueprint for autonomic computing. June 2005. [KC03]J. Kephart and D. Chess. The vision of autonomic computing. Computer, vol. 36, no.1, pp. 41-50, January 2003. [JUN]Junit, Testing Resources for Extreme Programming. www.junit.org. July 2006 www.junit.org [COB]Cobertura. cobertura.sourceforge.net/. July 2006cobertura.sourceforge.net/

26 26 Thank You and Questions


Download ppt "An Approach to Test Autonomic Containers Ronald Stevens (IEEE Computer Society & ACM Student Member) August 1, 2006 REU Sponsored by NSF."

Similar presentations


Ads by Google