Software Architecture-based Failure Prediction

Software Architecture-based Failure Prediction
Author: Atef S. Mohamed
Publisher:
Total Pages: 298
Release: 2012
Genre:
ISBN:


Download Software Architecture-based Failure Prediction Book in PDF, Epub and Kindle

Depending on the role of software in everyday life, the cost of a software failure can sometimes be unaffordable. During system execution, errors may occur in system components and failures may be manifested due to these errors. These errors differ with respect to their effects on system behavior and consequent failure manifestation manners. Predicting failures before their manifestation is important to assure system resilience. It helps avoid the cost of failures and enables systems to perform corrective actions prior to failure occurrences. However, effective runtime error detection and failure prediction techniques encounter a prohibitive challenge with respect to the control flow representation of large software systems with intricate control flow structures. In this thesis, we provide a technique for failure prediction from runtime errors of large software systems. Aiming to avoid the possible difficulties and inaccuracies of the existing Control Flow Graph (CFG) structures, we first propose a Connection Dependence Graph (CDG) for control flow representation of large software systems. We describe the CDG structure and explain how to derive it from program source code. Second, we utilize the proposed CDG to provide a connection-based signature approach for control flow error detection. We describe the monitor structure and present the error checking algorithm. Finally, we utilize the detected errors and erroneous state parameters to predict failure occurrences and modes during system runtime. We craft runtime signatures based on these errors and state parameters. Using system error and failure history, we determine a predictive function (an estimator) for each failure mode based on these signatures. Our experimental evaluation for these techniques uses a large open-source software (PostgreSQL 8.4.4 database system). The results show highly efficient control flow representation, error detection, and failure prediction techniques. This work contributes to software reliability by providing a simple and accurate control flow representation and utilizing it to detect runtime errors and predict failure occurrences and modes with high accuracy.

Architecture-Aware Online Failure Prediction for Software Systems

Architecture-Aware Online Failure Prediction for Software Systems
Author: Teerat Pitakrat
Publisher: BoD – Books on Demand
Total Pages: 278
Release: 2018-06-19
Genre: Computers
ISBN: 3752876514


Download Architecture-Aware Online Failure Prediction for Software Systems Book in PDF, Epub and Kindle

Failures at runtime in complex software systems are inevitable because these systems usually contain a large number of components. Having all components working perfectly at the same time is, if at all possible, very difficult. Hardware components can fail and software components can still have hidden faults waiting to be triggered at runtime and cause the system to fail. This dissertation proposes an architecture-aware online failure prediction approach, called Hora. The Hora approach improves online failure prediction by combining the results of failure prediction with the architectural knowledge about the system. The task of failure prediction is split into predicting the failure of each individual component, in contrast to predicting the whole system failure. Suitable prediction techniques can be employed for different types of components. The architectural knowledge is used to deduce the dependencies between components which can reflect how a failure of one component can affect the others. The failure prediction and the component dependencies are combined into one model which employs Bayesian network theory to represent failure propagation. The combined model is continuously updated at runtime and makes predictions for individual components, as well as inferring their effects on other components and the whole system.

Integrated Software Architecture-Based Reliability Prediction for IT Systems

Integrated Software Architecture-Based Reliability Prediction for IT Systems
Author: Franz Brosch
Publisher: KIT Scientific Publishing
Total Pages: 368
Release: 2014-07-29
Genre: Computers
ISBN: 3866448597


Download Integrated Software Architecture-Based Reliability Prediction for IT Systems Book in PDF, Epub and Kindle

With the increasing importance of reliability in business and industrial IT systems, new techniques for architecture-based software reliability prediction are becoming an integral part of the development process. This dissertation thesis introduces a novel reliability modelling and prediction technique that considers the software architecture with its component structure, control and data flow, recovery mechanisms, its deployment to distributed hardware resources and the system�s usage profile.

Software Architecture and Design for Reliability Predictability

Software Architecture and Design for Reliability Predictability
Author: Assefa D. Semegn
Publisher: Cambridge Scholars Publishing
Total Pages: 410
Release: 2011-09-22
Genre: Computers
ISBN: 1443834157


Download Software Architecture and Design for Reliability Predictability Book in PDF, Epub and Kindle

Reliability prediction of a software product is complex due to interdependence and interactions among components and the difficulty of representing this behavior with tractable models. Models developed by making simplifying assumptions about the software structure may be easy to use, but their result may be far from what happens in reality. Making assumptions closer to the reality, which allows complex interactions and interdependences among components, results in models that are too complex to use. Their results may also be too difficult to interpret. The reliability prediction problem is worsened by the lack of precise information on the behavior of components and their interactions, information that is relevant for reliability modeling. Usually, the interactions are not known precisely because of subtle undocumented side effects. Without accurate precise information, even mathematically correct models will not yield accurate reliability predictions. Deriving the necessary information from program code is not practical if not impossible. This is because the code contains too much implementation detail to be useful in creating a tractable model. It is also difficult to analyze system reliability completely based on the program code. This book documents the resulting novel approach of designing, specifying, and describing the behavior of software systems in a way that helps to predict their reliability from the reliability of the components and their interactions. The design approach is named design for reliability predictability (DRP). It integrates design for change, precise behavioral documentation and structure based reliability prediction to achieve improved reliability prediction of software systems. The specification and documentation approach builds upon precise behavioral specification of interfaces using the trace function method (TFM). It also introduces a number of structure functions or connection documents. These functions capture both the static and dynamic behaviors of component based software systems. They are used as a basis for a novel document driven structure based reliability prediction model. System reliability assessment is studied in at least three levels: component reliability, which is assumed to be known; interaction reliability, a novel approach to studying software reliability; and service reliability, whose estimation is the primary objective of reliability assessment. System reliability can be expressed as a function of service reliability. A mobile streaming system, designed and developed by the author as an industrial product, is used as a case study to demonstrate the application of the approach.

Software Architecture

Software Architecture
Author: Bedir Tekinerdogan
Publisher: Springer Nature
Total Pages: 374
Release: 2023-09-07
Genre: Computers
ISBN: 3031425928


Download Software Architecture Book in PDF, Epub and Kindle

This book constitutes the refereed proceedings of the 17th International Conference on Software Architecture, ECSA 2023, held in Istanbul, Turkey, in September 2023. The 16 full papers and the 9 short papers included in this volume were carefully reviewed and selected from 71 submissions. They address the most recent, innovative, and significant findings and experiences in the field of software architecture research and practice.

Component-Based Software Engineering

Component-Based Software Engineering
Author: Umesh Kumar Tiwari
Publisher: CRC Press
Total Pages: 240
Release: 2020-11-19
Genre: Computers
ISBN: 1000222225


Download Component-Based Software Engineering Book in PDF, Epub and Kindle

This book focuses on a specialized branch of the vast domain of software engineering: component-based software engineering (CBSE). Component-Based Software Engineering: Methods and Metrics enhances the basic understanding of components by defining categories, characteristics, repository, interaction, complexity, and composition. It divides the research domain of CBSE into three major sub-domains: (1) reusability issues, (2) interaction and integration issues, and (3) testing and reliability issues. This book covers the state-of-the-art literature survey of at least 20 years in the domain of reusability, interaction and integration complexities, and testing and reliability issues of component-based software engineering. The aim of this book is not only to review and analyze the previous works conducted by eminent researchers, academicians, and organizations in the context of CBSE, but also suggests innovative, efficient, and better solutions. A rigorous and critical survey of traditional and advanced paradigms of software engineering is provided in the book. Features: In-interactions and Out-Interactions both are covered to assess the complexity. In the context of CBSE both white-box and black-box testing methods and their metrics are described. This work covers reliability estimation using reusability which is an innovative method. Case studies and real-life software examples are used to explore the problems and their solutions. Students, research scholars, software developers, and software designers or individuals interested in software engineering, especially in component-based software engineering, can refer to this book to understand the concepts from scratch. These measures and metrics can be used to estimate the software before the actual coding commences.

Artificial Neural Network Applications for Software Reliability Prediction

Artificial Neural Network Applications for Software Reliability Prediction
Author: Manjubala Bisi
Publisher: John Wiley & Sons
Total Pages: 222
Release: 2017-09-18
Genre: Computers
ISBN: 111922392X


Download Artificial Neural Network Applications for Software Reliability Prediction Book in PDF, Epub and Kindle

This book provides a starting point for software professionals to apply artificial neural networks for software reliability prediction without having analyst capability and expertise in various ANN architectures and their optimization. Artificial neural network (ANN) has proven to be a universal approximator for any non-linear continuous function with arbitrary accuracy. This book presents how to apply ANN to measure various software reliability indicators: number of failures in a given time, time between successive failures, fault-prone modules and development efforts. The application of machine learning algorithm i.e. artificial neural networks application in software reliability prediction during testing phase as well as early phases of software development process are presented. Applications of artificial neural network for the above purposes are discussed with experimental results in this book so that practitioners can easily use ANN models for predicting software reliability indicators.

Computer Systems and Software Engineering: Concepts, Methodologies, Tools, and Applications

Computer Systems and Software Engineering: Concepts, Methodologies, Tools, and Applications
Author: Management Association, Information Resources
Publisher: IGI Global
Total Pages: 2124
Release: 2017-12-01
Genre: Computers
ISBN: 1522539247


Download Computer Systems and Software Engineering: Concepts, Methodologies, Tools, and Applications Book in PDF, Epub and Kindle

Professionals in the interdisciplinary field of computer science focus on the design, operation, and maintenance of computational systems and software. Methodologies and tools of engineering are utilized alongside computer applications to develop efficient and precise information databases. Computer Systems and Software Engineering: Concepts, Methodologies, Tools, and Applications is a comprehensive reference source for the latest scholarly material on trends, techniques, and uses of various technology applications and examines the benefits and challenges of these computational developments. Highlighting a range of pertinent topics such as utility computing, computer security, and information systems applications, this multi-volume book is ideally designed for academicians, researchers, students, web designers, software developers, and practitioners interested in computer systems and software engineering.

Source Code Modularization

Source Code Modularization
Author: Ayaz Isazadeh
Publisher: Springer
Total Pages: 272
Release: 2017-10-10
Genre: Computers
ISBN: 3319633465


Download Source Code Modularization Book in PDF, Epub and Kindle

This book presents source code modularization as a key activity in reverse engineering to extract the software architecture from the existing source code. To this end, it provides detailed techniques for source code modularization and discusses their effects on different software quality attributes. Nonetheless, it is not a mere survey of source code modularization algorithms, but rather a consistent and unifying theoretical modularization framework, and as such is the first publication that comprehensively examines the models and techniques for source code modularization. It enables readers to gain a thorough understanding of topics like software artifacts proximity, hierarchical and partitional modularization algorithms, search- and algebraic-based software modularization, software modularization evaluation techniques and software quality attributes and modularization. This book introduces students and software professionals to the fundamental ideas of source code modularization concepts, similarity/dissimilarity metrics, modularization metrics, and quality assurance. Further, it allows undergraduate and graduate students in software engineering, computer science, and computer engineering with no prior experience in the software industry to explore the subject in a step-by-step manner. Practitioners benefit from the structured presentation and comprehensive nature of the materials, while the large number of bibliographic references makes this book a valuable resource for researchers working on source code modularization.

Intelligent and Cloud Computing

Intelligent and Cloud Computing
Author: Debahuti Mishra
Publisher: Springer Nature
Total Pages: 834
Release: 2020-10-30
Genre: Technology & Engineering
ISBN: 9811559716


Download Intelligent and Cloud Computing Book in PDF, Epub and Kindle

This book features a collection of high-quality research papers presented at the International Conference on Intelligent and Cloud Computing (ICICC 2019), held at Siksha 'O' Anusandhan (Deemed to be University), Bhubaneswar, India, on December 20, 2019. Including contributions on system and network design that can support existing and future applications and services, it covers topics such as cloud computing system and network design, optimization for cloud computing, networking, and applications, green cloud system design, cloud storage design and networking, storage security, cloud system models, big data storage, intra-cloud computing, mobile cloud system design, real-time resource reporting and monitoring for cloud management, machine learning, data mining for cloud computing, data-driven methodology and architecture, and networking for machine learning systems.