Building Scalable Failure-proneness Models Using Complexity Metrics for Large Scale Software Systems

Author(s):  
Thirumalesh Bhat ◽  
Nachiappan Nagappan
2010 ◽  
Vol 44-47 ◽  
pp. 3548-3552 ◽  
Author(s):  
Hao Hua Zhang ◽  
Wen Jiang Feng ◽  
Li Juan Wu

Measuring the complexity of a large-scale software system has been a urgent demand in software development practices. The traditional software metrics can hardly describe the structural complexity in modern software. As the complex networks theory has been used to study the software structure, we analyzed a great many software systems. The analyzing results reveal the parameters in complex networks can be used to represent property of software structure. And this paper introduces some efficient metrics and measuring methods based on basic parameters in complex networks. A practice example was described to demonstrate the effectiveness of the metrics.


2010 ◽  
Vol 25 (6) ◽  
pp. 1184-1201 ◽  
Author(s):  
Yu-Tao Ma ◽  
Ke-Qing He ◽  
Bing Li ◽  
Jing Liu ◽  
Xiao-Yan Zhou

2021 ◽  
Vol 177 ◽  
pp. 110944
Author(s):  
Mohsin Irshad ◽  
Ricardo Britto ◽  
Kai Petersen
Keyword(s):  

2016 ◽  
Vol 17 (3) ◽  
pp. 913-938 ◽  
Author(s):  
Daniela Rabiser ◽  
Herbert Prähofer ◽  
Paul Grünbacher ◽  
Michael Petruzelka ◽  
Klaus Eder ◽  
...  

Author(s):  
Yutaka Watanobe ◽  
Nikolay Mirenkov

Programming in pictures is an approach where pictures and moving pictures are used as super-characters to represent the features of computational algorithms and data structures, as well as for explaining the models and application methods involved. *AIDA is a computer language that supports programming in pictures. This language and its environment have been developed and promoted as a testbed for various innovations in information technology (IT) research and implementation, including exploring the compactness of the programs and their adaptive software systems, and obtaining better understanding of information resources. In this paper, new features of the environment and methods of their implementation are presented. They are considered within a case study of a large-scale module of a nuclear safety analysis system to demonstrate that *AIDA language is appropriate for developing efficient codes of serious applications and for providing support, based on folding/unfolding techniques, enhancing the readability, maintainability and algorithmic transparency of programs. Features of this support and the code efficiency are presented through the results of a computational comparison with a FORTRAN equivalent.


Author(s):  
Shruthi P. ◽  
Nagaraj G. Cholli

Cloud Computing is the environment in which several virtual machines (VM) run concurrently on physical machines. The cloud computing infrastructure hosts multiple cloud service segments that communicate with each other using the interfaces. This creates distributed computing environment. During operation, the software systems accumulate errors or garbage that leads to system failure and other hazardous consequences. This status is called software aging. Software aging happens because of memory fragmentation, resource consumption in large scale and accumulation of numerical error. Software aging degrads the performance that may result in system failure. This happens because of premature resource exhaustion. This issue cannot be determined during software testing phase because of the dynamic nature of operation. The errors that cause software aging are of special types. These errors do not disturb the software functionality but target the response time and its environment. This issue is to be resolved only during run time as it occurs because of the dynamic nature of the problem. To alleviate the impact of software aging, software rejuvenation technique is being used. Rejuvenation process reboots the system or re-initiates the softwares. This avoids faults or failure. Software rejuvenation removes accumulated error conditions, frees up deadlocks and defragments operating system resources like memory. Hence, it avoids future failures of system that may happen due to software aging. As service availability is crucial, software rejuvenation is to be carried out at defined schedules without disrupting the service. The presence of Software rejuvenation techniques can make software systems more trustworthy. Software designers are using this concept to improve the quality and reliability of the software. Software aging and rejuvenation has generated a lot of research interest in recent years. This work reviews some of the research works related to detection of software aging and identifies research gaps.


Sign in / Sign up

Export Citation Format

Share Document