1. RV College Of Engineering
Dept Of Information Science i
ABSTRACT
Software rejuvenation has become a new horizon for increasing the system reliability and
availability in a long run. With time, the system outages tend to increase due to the aging of the
software which may be caused due to numerous factors like memory leaks, unreleased locks, file
descriptor leaking and so on. The rejuvenation of the software based on time factor tends to
periodically rollback a continuously running application to prevent failures in the future. The
time factor is set a particular value after which the software is restarted. Thus the better way to
avoid software failure and to increase the availability and reliability of the system is to find the
failure probable state and rejuvenate the software prior to the failed state. This project
investigates about time based rejuvenation policies in maintaining high reliability of software
systems. This project is worked on three domains namely OS, VM, VMM in two approaches
cold and warm rejuvenation techniques and migration technique is implemented in VMM
domain. This project make use of time and variable workload policy, where rejuvenation time
predetermined is optimized depending on workload applied to system
The goal of our project is to provide high availability to system and decrease the request failure
and also the downtime of the system during reboot process and demonstrate the advantages of
Time and workload based approaches over existing systems. Using Time and workload based
approaches, detection of system failure and avoiding of hang/crash of system due to heavy
workload is avoided by rejuvenating the system before it tend to failure state.
2. RV College Of Engineering
Dept Of Information Science ii
LIST OF FIGURES
SL. No Name Of Figure Page No
Figure 1.1 Time and prediction based rejuvenation policy 4
Figure 3.1 Data Flow Diagram : Level 0 11
Figure 3.2 Data Flow Diagram : Level 1 11
Figure 3.3 Data Flow Diagram :Level 2 12
Figure 3.4 Structured Chart 14
Figure 3.5 Sequence Diagram 15
Figure 3.6 Functioning of PTSRP 17
Figure 3.7 Module of PPSRP 18
Figure 3.8 Module for writing to a CSV file 19
Figure 3.9 UI Module 20
3. RV College Of Engineering
Dept Of Information Science iii
LIST OF TABLES
Table No. Name Of Table Page No.
Table 2.1 Software Requirements 7
Table 2.2 Hardware Requirements 8
Table 2.3 Classes and their description 9
Table 4.1 NET namespaces used and their description 17
Table 4.2 Classes and description 18
Table 4.3 Exceptions and description 18
Table 5.1 Unit test case 1 21
Table 5.2 Unit test case 2 22
Table 5.3 Unit test case 3 22
Table 5.4 Unit test case 4 23
Table 5.5 Unit test case 5 23
Table 5.6
Table 5.7
Table 5.8
Table 5.9
Integration test case 1
Integration test case 2
Integration test case 3
System test case 1
25
25
26
27
4. RV College Of Engineering
Dept Of Information Science iv
TABLE OF CONTENTS
Sl. No. Chapter Name Page No.
1 Introduction 1
1.1 Introduction 1
1.2 Motivation 3
1.3 Problem Statement 3
1.3.1 Existing System 3
1.3.2 Proposed System 4
1.4 Objectives of project 4
1.5 Scope of project 4
1.5.1 Limitations of project 4
1.5.2 Constraints of project 4
1.6 Methodology 4
1.7 Organization of the Report 5
2 Software requirement specification 6
2.1 Project description 6
2.2 Module description 6
2.3 Software requirements 7
2.4 Hardware requirements 8
2.5 Performance requirements 8
2.6 External interface requirements 9
2.7 Functional requirements 9
3 High level design 10
5. RV College Of Engineering
Dept Of Information Science v
3.1 Developments methods 10
3.2 Data flow diagrams 10
3.3 Data flow diagram 11
3.3.1 Data flow diagram: level 0 11
3.3.2 Data flow diagram: level 1
3.3.3 Data flow diagram: level 2
11
12
3.4 Structured chart 12
3.4.1 Structure chart construction 12
3.5 Sequence diagram 14
3.6 Detailed design 16
3.6.1 Detailed system design 16
3.6.2 Module 1: simulation of PTSRP 16
3.6.3 Module 2: simulation of PPSRP 17
3.6.4 Module 3: writing a CSV file 18
3.6.5 Module 4: user interface module 19
4 Implementation 21
4.1 Platform selection 21
4.1.1 Microsoft visual studio 2008 21
4.2 Programming language used 22
4.3 Conventions deployed in the project coding 24
4.3.1 Class and declaration 24
4.3.2 Partial classes
4.3.3 Genesis
24
24
4.4 Notable Features Implemented 25
4.5 Key Parameters 25
6. RV College Of Engineering
Dept Of Information Science vi
5 Testing 26
5.1 Testing 26
5.2 Unit testing 26
5.2.1 Testing strategy
5.2.2 Unit Test cases
26
27
5.3 Integration testing
5.3.1 Testing strategy
5.3.2 Integration Test cases
30
30
31
5.4 System testing
5.4.1 Testing Strategy
5.4.2 System test cases
32
32
33
6 Results 34
6.1 Results 34
6.2 Discussion 35
6.3 Snapshots 36
7 Conclusion 39
7.1 Summary 39
7.2 Limitations 40
7.3 Future Enhancement 40
References 41
Appendices 43