Tutorial on Hardware and Software Reliability, Maintainability and Availability

Tutorial on Hardware and Software Reliability, Maintainability and Availability

Author: Norman F. Schneidewind

Publisher: John Wiley & Sons

Published: 2008-10-21

Total Pages: 54

ISBN-13: 0738156779

DOWNLOAD EBOOK

Computer systems, whether hardware or software, are subject to failure. Precisely, what is a failure? It is defined as: The inability of a system or system component to perform a required function within specified limits. Afailure may be produced when a fault is encountered and a loss of the expected service to the user results [IEEE/AIAA P1633]. This brings us to the question of what is a fault? A fault is defect in the hardware or computer code that can be the cause of one or more failures. Software-based systems have become the dominant player in the computer systems world. Since it is imperative that computer systems operate reliably, considering the criticality of software, particularly in safety critical systems, the IEEE and AIAA commissioned the development of the Recommended Practice on Software Reliability. This tutorial serves as a companion document with the purpose of elaborating on key software reliability process practices in more detail than can be specified in the Recommended Practice. However, since other subjects like maintainability and availability are also covered, the tutorial can be used as a stand-alone document. While the focus of the Recommended Practice is software reliability, software and hardware do not operate in a vacuum. Therefore, both software and hardware are addressed in this tutorial in an integrated fashion. The narrative of the tutorial is augmented with illustrative solved problems. The recommended practice [IEEE P1633] is a composite of models and tools and describes the "what and how" of software reliability engineering. It is important for an organization to have a disciplined process if it is to produce high reliability software. This process uses a life cycle approach to software reliability that takes into account the risk to reliability due to requirements changes. A requirements change may induce ambiguity and uncertainty in the development process that cause errors in implementing the changes. Subsequently, these errors may propagate through later phases of development and maintenance. In view of the life cycle ramifications of the software reliability process, maintenance is included in this tutorial. Furthermore, because reliability and maintainability determine availability, the latter is also included.


Computer, Network, Software, and Hardware Engineering with Applications

Computer, Network, Software, and Hardware Engineering with Applications

Author: Norman F. Schneidewind

Publisher: John Wiley & Sons

Published: 2012-02-08

Total Pages: 608

ISBN-13: 1118181271

DOWNLOAD EBOOK

There are many books on computers, networks, and software engineering but none that integrate the three with applications. Integration is important because, increasingly, software dominates the performance, reliability, maintainability, and availability of complex computer and systems. Books on software engineering typically portray software as if it exists in a vacuum with no relationship to the wider system. This is wrong because a system is more than software. It is comprised of people, organizations, processes, hardware, and software. All of these components must be considered in an integrative fashion when designing systems. On the other hand, books on computers and networks do not demonstrate a deep understanding of the intricacies of developing software. In this book you will learn, for example, how to quantitatively analyze the performance, reliability, maintainability, and availability of computers, networks, and software in relation to the total system. Furthermore, you will learn how to evaluate and mitigate the risk of deploying integrated systems. You will learn how to apply many models dealing with the optimization of systems. Numerous quantitative examples are provided to help you understand and interpret model results. This book can be used as a first year graduate course in computer, network, and software engineering; as an on-the-job reference for computer, network, and software engineers; and as a reference for these disciplines.


Computer, Network, Software, and Hardware Engineering with Applications

Computer, Network, Software, and Hardware Engineering with Applications

Author: Norman F. Schneidewind

Publisher: John Wiley & Sons

Published: 2012-03-27

Total Pages: 608

ISBN-13: 1118037456

DOWNLOAD EBOOK

There are many books on computers, networks, and software engineering but none that integrate the three with applications. Integration is important because, increasingly, software dominates the performance, reliability, maintainability, and availability of complex computer and systems. Books on software engineering typically portray software as if it exists in a vacuum with no relationship to the wider system. This is wrong because a system is more than software. It is comprised of people, organizations, processes, hardware, and software. All of these components must be considered in an integrative fashion when designing systems. On the other hand, books on computers and networks do not demonstrate a deep understanding of the intricacies of developing software. In this book you will learn, for example, how to quantitatively analyze the performance, reliability, maintainability, and availability of computers, networks, and software in relation to the total system. Furthermore, you will learn how to evaluate and mitigate the risk of deploying integrated systems. You will learn how to apply many models dealing with the optimization of systems. Numerous quantitative examples are provided to help you understand and interpret model results. This book can be used as a first year graduate course in computer, network, and software engineering; as an on-the-job reference for computer, network, and software engineers; and as a reference for these disciplines.


Software Reliability Techniques for Real-World Applications

Software Reliability Techniques for Real-World Applications

Author: Roger K. Youree

Publisher: John Wiley & Sons

Published: 2023-02-13

Total Pages: 357

ISBN-13: 1119931827

DOWNLOAD EBOOK

SOFTWARE RELIABILITY TECHNIQUES FOR REAL-WORLD APPLICATIONS SOFTWARE RELIABILITY TECHNIQUES FOR REAL-WORLD APPLICATIONS Authoritative resource providing step-by-step guidance for producing reliable software to be tailored for specific projects Software Reliability Techniques for Real-World Applications is a practical, up to date, go-to source that can be referenced repeatedly to efficiently prevent software defects, find and correct defects if they occur, and create a higher level of confidence in software products. From content development to software support and maintenance, the author creates a depiction of each phase in a project such as design and coding, operation and maintenance, management, product production, and concept development and describes the activities and products needed for each. Software Reliability Techniques for Real-World Applications introduces clear ways to understand each process of software reliability and explains how it can be managed effectively and reliably. The book is supported by a plethora of detailed examples and systematic approaches, covering analogies between hardware and software reliability to ensure a clear understanding. Overall, this book helps readers create a higher level of confidence in software products. In Software Reliability Techniques for Real-World Applications, readers will find specific information on: Defects, including where defects enter the project system, effects, detection, and causes of defects, and how to handle defects Project phases, including concept development and planning, requirements and interfaces, design and coding, and integration, verification, and validation Roadmap and practical guidelines, including at the start of a project, as a member of an organization, and how to handle troubled projects Techniques, including an introduction to techniques in general, plus techniques by organization (systems engineering, software, and reliability engineering) Software Reliability Techniques for Real-World Applications is a practical text on software reliability, providing over sixty-five different techniques and step-by-step guidance for producing reliable software. It is an essential and complete resource on the subject for software developers, software maintainers, and producers of software.


System Software Reliability

System Software Reliability

Author: Hoang Pham

Publisher: Springer Science & Business Media

Published: 2007-04-21

Total Pages: 442

ISBN-13: 1846282950

DOWNLOAD EBOOK

Computer software reliability has never been so important. Computers are used in areas as diverse as air traffic control, nuclear reactors, real-time military, industrial process control, security system control, biometric scan-systems, automotive, mechanical and safety control, and hospital patient monitoring systems. Many of these applications require critical functionality as software applications increase in size and complexity. This book is an introduction to software reliability engineering and a survey of the state-of-the-art techniques, methodologies and tools used to assess the reliability of software and combined software-hardware systems. Current research results are reported and future directions are signposted. This text will interest: graduate students as a course textbook introducing reliability engineering software; reliability engineers as a broad, up-to-date survey of the field; and researchers and lecturers in universities and research institutions as a one-volume reference.


Designing Data-Intensive Applications

Designing Data-Intensive Applications

Author: Martin Kleppmann

Publisher: "O'Reilly Media, Inc."

Published: 2017-03-16

Total Pages: 658

ISBN-13: 1491903104

DOWNLOAD EBOOK

Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, we have an overwhelming variety of tools, including relational databases, NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords? In this practical and comprehensive guide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various technologies for processing and storing data. Software keeps changing, but the fundamental principles remain the same. With this book, software engineers and architects will learn how to apply those ideas in practice, and how to make full use of data in modern applications. Peer under the hood of the systems you already use, and learn how to use and operate them more effectively Make informed decisions by identifying the strengths and weaknesses of different tools Navigate the trade-offs around consistency, scalability, fault tolerance, and complexity Understand the distributed systems research upon which modern databases are built Peek behind the scenes of major online services, and learn from their architectures


Reliability

Reliability

Author: Wallace R. Blischke

Publisher: John Wiley & Sons

Published: 2000-03-27

Total Pages: 852

ISBN-13: 9780471184508

DOWNLOAD EBOOK

Bringing together business and engineering to reliability analysis With manufactured products exploding in numbers and complexity, reliability studies play an increasingly critical role throughout a product's entire life cycle-from design to post-sale support. Reliability: Modeling, Prediction, and Optimization presents a remarkably broad framework for the analysis of the technical and commercial aspects of product reliability, integrating concepts and methodologies from such diverse areas as engineering, materials science, statistics, probability, operations research, and management. Written in plain language by two highly respected experts in the field, this practical work provides engineers, operations managers, and applied statisticians with both qualitative and quantitative tools for solving a variety of complex, real-world reliability problems. A wealth of examples and case studies accompanies: * Comprehensive coverage of assessment, prediction, and improvement at each stage of a product's life cycle * Clear explanations of modeling and analysis for hardware ranging from a single part to whole systems * Thorough coverage of test design and statistical analysis of reliability data * A special chapter on software reliability * Coverage of effective management of reliability, product support, testing, pricing, and related topics * Lists of sources for technical information, data, and computer programs * Hundreds of graphs, charts, and tables, as well as over 500 references


Performance Evaluation of Computer and Communication Systems

Performance Evaluation of Computer and Communication Systems

Author: Lorenzo Donatiello

Publisher: Springer Science & Business Media

Published: 1993-09-15

Total Pages: 692

ISBN-13: 9783540572978

DOWNLOAD EBOOK

This volume contains the complete set of tutorial papers presented at the 16th IFIP (International Federation for Information Processing) Working Group 7.3 International Symposium on Computer Performance Modelling, Measurement and Evaluation, and a number of tutorial papers presented at the 1993 ACM (Association for Computing Machinery) Special Interest Group METRICS Conference on Measurement and Modeling of Computer Systems. The principal goal of the volume is to present an overview of recent results in the field of modeling and performance evaluation of computer and communication systems. The wide diversity of applications and methodologies included in the tutorials attests to the breadth and richness of current research in the area of performance modeling. The tutorials may serve to introduce a reader to an unfamiliar research area, to unify material already known, or simply to illustrate the diversity of research in the field. The extensive bibliographies guide readers to additional sources for further reading.


High-Level System Modeling

High-Level System Modeling

Author: Ronald Waxman

Publisher: Springer Science & Business Media

Published: 2012-12-06

Total Pages: 206

ISBN-13: 1461313090

DOWNLOAD EBOOK

In system design, generation of high-level abstract models that can be closely associated with evolving lower-level models provides designers with the ability to incrementally `test' an evolving design against a model of a specification. Such high-level models may deal with areas such as performance, reliability, availability, maintainability, and system safety. Abstract models also allow exploration of the hardware versus software design space in an incremental fashion as a fuller, detailed design unfolds, leaving behind the old practice of hardware-software binding too early in the design process. Such models may also allow the inclusion of non-functional aspects of design (e.g. space, power, heat) in a simulatable information model dealing with the system's operation. This book addresses Model Generation and Application specifically in the following domains: Specification modeling (linking object/data modeling, behavior modeling, and activity modeling). Operational specification modeling (modeling the way the system is supposed to operate - from a user's viewpoint). Linking non-functional parameters with specification models. Hybrid modeling (linking performance and functional elements). Application of high-level modeling to hardware/software approaches. Mathematical analysis techniques related to the modeling approaches. Reliability modeling. Applications of High Level Modeling. Reducing High Level Modeling to Practice. High-Level System Modeling: Specification and Design Methodologies describes the latest research and practice in the modeling of electronic systems and as such is an important update for all researchers, design engineers and technical managers working in design automation and circuit design.