{"product_id":"service-availability-isbn-9781119954088","title":"Service Availability","description":"Our society increasingly depends on computer-based systems; the number of applications deployed has increased dramatically in recent years and this trend is accelerating. Many of these applications are expected to provide their services continuously. The Service Availability Forum has recognized this need and developed a set of specifications to help software designers and developers to focus on the value added function of applications, leaving the availability management functions for the middleware.  \u003cp\u003eA practical and informative reference for the Service Availability Forum specifications, this book gives a cohesive explanation of the founding principles, motivation behind the design of the specifications, and the solutions, usage scenarios and limitations that a final system may have. Avoiding complex mathematical explanations, the book takes a pragmatic approach by discussing issues that are as close as possible to the daily software design\/development by practitioners, and yet at a level that still takes in the overall picture. As a result, practitioners will be able to use the specifications as intended.\u003c\/p\u003e \u003cul\u003e \u003cli\u003eTakes a practical approach, giving guidance on the use of the specifications to explain the architecture, redundancy models and dependencies of the Service Availability (SA) Forum services\u003c\/li\u003e \u003cli\u003eExplains how service availability provides fault tolerance at the service level\u003c\/li\u003e \u003cli\u003eClarifies how the SA Forum solution is supported by open source implementations of the middleware\u003c\/li\u003e \u003cli\u003eIncludes fragments of code, simple example and use cases to give readers a practical understanding of the topic\u003c\/li\u003e \u003cli\u003eProvides a stepping stone for applications and system designers, developers and advanced students to help them understand and use the specifications\u003c\/li\u003e \u003c\/ul\u003e  \u003cb\u003eList of Contributors xiii\u003c\/b\u003e  \u003cp\u003e\u003cb\u003eForeword xv\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePreface xix\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAcknowledgments xxv\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eList of Abbreviations xxvii\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart I INTRODUCTION TO SERVICE AVAILABILITY\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e1 Definitions, Concepts, and Principles 3\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eFrancis Tam\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e1.1 Introduction 3\u003c\/p\u003e \u003cp\u003e1.2 Why Service Availability? 4\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.2.1 Dossier on Unavailability of Service\u003c\/i\u003e 4\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.2.2 Issues and Challenges\u003c\/i\u003e 5\u003c\/p\u003e \u003cp\u003e1.3 Service Availability Fundamentals 6\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.3.1 System, Behavior, and Service\u003c\/i\u003e 6\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.3.2 Dependable Computing Concepts\u003c\/i\u003e 8\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.3.3 The Meaning of Availability\u003c\/i\u003e 10\u003c\/p\u003e \u003cp\u003e1.4 Achieving Service Availability 13\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.4.1 Following the Framework of Fault Tolerance\u003c\/i\u003e 13\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.4.2 Redundancy is a Requisite\u003c\/i\u003e 14\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.4.3 Dealing with Failures\u003c\/i\u003e 16\u003c\/p\u003e \u003cp\u003e\u003ci\u003e1.4.4 Upgrade Matters\u003c\/i\u003e 19\u003c\/p\u003e \u003cp\u003e1.5 Conclusion 20\u003c\/p\u003e \u003cp\u003e\u003cb\u003e2 The Birth of the Service Availability Forum 23\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eFrancis Tam\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e2.1 Introduction 23\u003c\/p\u003e \u003cp\u003e2.2 Technology Environment 23\u003c\/p\u003e \u003cp\u003e2.3 Business Environment 24\u003c\/p\u003e \u003cp\u003e\u003ci\u003e2.3.1 Ecosystem\u003c\/i\u003e 25\u003c\/p\u003e \u003cp\u003e\u003ci\u003e2.3.2 COTS and Open Systems\u003c\/i\u003e 26\u003c\/p\u003e \u003cp\u003e2.4 The Service Availability Forum Era 27\u003c\/p\u003e \u003cp\u003e2.5 Concluding Remarks 28\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart II THE SA FORUM SYSTEM: SERVICES AND FRAMEWORKS\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e3 Overview of the Service Availability Architecture 33\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eDave Penkler\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e3.1 Introduction 33\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.1.1 Background and Business Context\u003c\/i\u003e 33\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.1.2 Goals and Requirements\u003c\/i\u003e 34\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.1.3 Service Availability Architecture Scope and Presentation\u003c\/i\u003e 36\u003c\/p\u003e \u003cp\u003e3.2 HA Concepts Applied 39\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.2.1 To Be or Not to Be High Availability Aware\u003c\/i\u003e 39\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.2.2 HA Aware Application Perspective\u003c\/i\u003e 42\u003c\/p\u003e \u003cp\u003e3.3 Architecture 43\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.3.1 Basic Architectural Model\u003c\/i\u003e 43\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.3.2 The AIS Services and Frameworks Architecture\u003c\/i\u003e 47\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.3.3 Service Dependencies\u003c\/i\u003e 58\u003c\/p\u003e \u003cp\u003e3.4 Open Issues 59\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.4.1 The Optional Features Issue\u003c\/i\u003e 60\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.4.2 Integrated AIS Service API\u003c\/i\u003e 60\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.4.3 Common Low Level Communication Facility Interface\u003c\/i\u003e 60\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.4.4 Common Distributed Process Management Interface\u003c\/i\u003e 61\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.4.5 System Trace Service\u003c\/i\u003e 61\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.4.6 Diagnostics Framework\u003c\/i\u003e 61\u003c\/p\u003e \u003cp\u003e\u003ci\u003e3.4.7 Overload Control Framework\u003c\/i\u003e 61\u003c\/p\u003e \u003cp\u003e3.5 Conclusion 62\u003c\/p\u003e \u003cp\u003e\u003cb\u003e4 The SA Forum Information Model: The Heart of Control and Monitoring 63\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMaria Toeroe\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e4.1 Introduction 63\u003c\/p\u003e \u003cp\u003e4.2 Background 64\u003c\/p\u003e \u003cp\u003e\u003ci\u003e4.2.1 Management Models Out There\u003c\/i\u003e 64\u003c\/p\u003e \u003cp\u003e\u003ci\u003e4.2.2 The SA Forum Needs\u003c\/i\u003e 65\u003c\/p\u003e \u003cp\u003e4.3 The SA Forum Information Model 67\u003c\/p\u003e \u003cp\u003e\u003ci\u003e4.3.1 Overview of the SA Forum Solution\u003c\/i\u003e 67\u003c\/p\u003e \u003cp\u003e\u003ci\u003e4.3.2 Administrative and Management Aspects\u003c\/i\u003e 80\u003c\/p\u003e \u003cp\u003e\u003ci\u003e4.3.3 Application Information Models\u003c\/i\u003e 81\u003c\/p\u003e \u003cp\u003e\u003ci\u003e4.3.4 Open Issues and Recommendations\u003c\/i\u003e 81\u003c\/p\u003e \u003cp\u003e4.4 Conclusion 83\u003c\/p\u003e \u003cp\u003e\u003cb\u003e5 Consistent and High Level Platform View 85\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMaria Toeroe\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e5.1 Introduction 85\u003c\/p\u003e \u003cp\u003e5.2 Hardware Platform Interface 86\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.2.1 Background\u003c\/i\u003e 86\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.2.2 Overview of the Hardware Platform Interface\u003c\/i\u003e 87\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.2.3 The HPI Model\u003c\/i\u003e 88\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.2.4 HPI Capability Discovery\u003c\/i\u003e 93\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.2.5 Error Handling and Administrative Operations\u003c\/i\u003e 94\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.2.6 Open Issues and Conclusions\u003c\/i\u003e 95\u003c\/p\u003e \u003cp\u003e5.3 Platform Management Service 96\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.3.1 The Conception of PLM\u003c\/i\u003e 96\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.3.2 Overview of the SA Forum Platform Management\u003c\/i\u003e 97\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.3.3 The PLM Information Model\u003c\/i\u003e 98\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.3.4 Tracking of PLM Entities\u003c\/i\u003e 107\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.3.5 Administrative and Management Aspects\u003c\/i\u003e 110\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.3.6 Service Interaction\u003c\/i\u003e 118\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.3.7 Open Issues and Conclusions\u003c\/i\u003e 120\u003c\/p\u003e \u003cp\u003e5.4 Cluster Membership Service 121\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.4.1 Background\u003c\/i\u003e 121\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.4.2 Overview of the Cluster Membership Service\u003c\/i\u003e 122\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.4.3 CLM Configuration: The Bootstrap Trap\u003c\/i\u003e 125\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.4.4 Are You a Member?\u003c\/i\u003e 126\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.4.5 Administrative and Management Aspects\u003c\/i\u003e 127\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.4.6 Service Interaction\u003c\/i\u003e 129\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.4.7 Open Issues\u003c\/i\u003e 130\u003c\/p\u003e \u003cp\u003e\u003ci\u003e5.4.8 Recommendation\u003c\/i\u003e 131\u003c\/p\u003e \u003cp\u003e5.5 Conclusion 131\u003c\/p\u003e \u003cp\u003e\u003cb\u003e6 Model Based Availability Management: The Availability Management Framework 133\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMaria Toeroe\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e6.1 Introduction 133\u003c\/p\u003e \u003cp\u003e6.2 Background 134\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.2.1 Error Detection and Repair\u003c\/i\u003e 134\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.2.2 Fault Zones and Error Escalation\u003c\/i\u003e 135\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.2.3 Separation of Services from Serving Entities\u003c\/i\u003e 136\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.2.4 Service Provisioning Roles\u003c\/i\u003e 136\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.2.5 Delicacies of Service State Replication\u003c\/i\u003e 137\u003c\/p\u003e \u003cp\u003e6.3 The Availability Management Framework 138\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.3.1 Overview of the SA Forum Solution\u003c\/i\u003e 138\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.3.2 Components and Component Service Instances\u003c\/i\u003e 139\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.3.3 The AMF Information Model\u003c\/i\u003e 148\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.3.4 Redundancy Models\u003c\/i\u003e 167\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.3.5 The AMF Administrative Interface\u003c\/i\u003e 176\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.3.6 Interactions Between AMF and Other AIS Services\u003c\/i\u003e 187\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.3.7 Open Issues\u003c\/i\u003e 190\u003c\/p\u003e \u003cp\u003e\u003ci\u003e6.3.8 Recommendation\u003c\/i\u003e 191\u003c\/p\u003e \u003cp\u003e6.4 Conclusion 191\u003c\/p\u003e \u003cp\u003e\u003cb\u003e7 Communication and Synchronization Utilities 193\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMaria Toeroe and Sayandeb Saha\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e7.1 Introduction 193\u003c\/p\u003e \u003cp\u003e7.2 Event Service 194\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.2.1 Background: Event Service Issues, Controversies, and Problems\u003c\/i\u003e 194\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.2.2 Overview of the SA Forum Event Service\u003c\/i\u003e 195\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.2.3 Event Service Architecture and Model\u003c\/i\u003e 196\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.2.4 User Perspective\u003c\/i\u003e 200\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.2.5 Administrative and Management Aspects\u003c\/i\u003e 201\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.2.6 Service Interactions\u003c\/i\u003e 201\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.2.7 Open Issues and Recommendations\u003c\/i\u003e 202\u003c\/p\u003e \u003cp\u003e7.3 Message Service 202\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.3.1 Need for Reliability and Load Distribution\u003c\/i\u003e 202\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.3.2 Overview of the SA Forum Message Service\u003c\/i\u003e 203\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.3.3 Message Service Architecture and Model\u003c\/i\u003e 205\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.3.4 User Perspective\u003c\/i\u003e 207\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.3.5 Administrative and Management Aspects\u003c\/i\u003e 210\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.3.6 Service Interaction\u003c\/i\u003e 210\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.3.7 Open Issues and Recommendations\u003c\/i\u003e 211\u003c\/p\u003e \u003cp\u003e7.4 Checkpoint Service 212\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.4.1 Background: Why Checkpoints\u003c\/i\u003e 212\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.4.2 Overview of the SA Forum Checkpoint Service\u003c\/i\u003e 213\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.4.3 Checkpoint Service Model\u003c\/i\u003e 215\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.4.4 User Perspective\u003c\/i\u003e 217\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.4.5 Administrative and Management Aspects\u003c\/i\u003e 220\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.4.6 Service Interaction\u003c\/i\u003e 221\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.4.7 Open Issues\u003c\/i\u003e 222\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.4.8 Recommendation\u003c\/i\u003e 222\u003c\/p\u003e \u003cp\u003e7.5 Conclusion 223\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.5.1 Common Issue: Entity Names\u003c\/i\u003e 223\u003c\/p\u003e \u003cp\u003e\u003ci\u003e7.5.2 Conclusion\u003c\/i\u003e 223\u003c\/p\u003e \u003cp\u003e\u003cb\u003e8 Services Needed for System Management 227\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMaria Toeroe\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e8.1 Introduction 227\u003c\/p\u003e \u003cp\u003e8.2 Log Service 228\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.2.1 Background: Data, Data, and More Data\u003c\/i\u003e 228\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.2.2 Overview of the SA Forum Solution\u003c\/i\u003e 229\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.2.3 The LOG Information Model\u003c\/i\u003e 231\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.2.4 User Perspective\u003c\/i\u003e 232\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.2.5 Administrative and Management Aspects\u003c\/i\u003e 233\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.2.6 Service Interaction\u003c\/i\u003e 233\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.2.7 Open Issues and Recommendations\u003c\/i\u003e 235\u003c\/p\u003e \u003cp\u003e8.3 Notification Service 236\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.3.1 Background: Issues, Controversies, and Problems\u003c\/i\u003e 236\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.3.2 Overview of the SA Forum Notification Service\u003c\/i\u003e 237\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.3.3 User Perspective\u003c\/i\u003e 239\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.3.4 Correlation of Notifications\u003c\/i\u003e 241\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.3.5 Administrative and Management Aspects\u003c\/i\u003e 243\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.3.6 Service Interaction\u003c\/i\u003e 244\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.3.7 Open Issues and Recommendation\u003c\/i\u003e 246\u003c\/p\u003e \u003cp\u003e8.4 Information Model Management Service 247\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.1 Background: Issues, Controversies, and Problems\u003c\/i\u003e 247\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.2 Overview of the SA Forum IMM Solution\u003c\/i\u003e 249\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.3 The Object Manager API\u003c\/i\u003e 251\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.4 The Object Implementer API\u003c\/i\u003e 255\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.5 IMM XML File\u003c\/i\u003e 258\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.6 Administrative and Management Aspects\u003c\/i\u003e 258\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.7 Service Interaction\u003c\/i\u003e 258\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.8 Open Issues\u003c\/i\u003e 260\u003c\/p\u003e \u003cp\u003e\u003ci\u003e8.4.9 Recommendation\u003c\/i\u003e 261\u003c\/p\u003e \u003cp\u003e8.5 Conclusion 262\u003c\/p\u003e \u003cp\u003e\u003cb\u003e9 Model-Based Software Management: The Software Management Framework 265\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMaria Toeroe\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e9.1 Introduction 265\u003c\/p\u003e \u003cp\u003e9.2 Background 266\u003c\/p\u003e \u003cp\u003e9.3 Software Management a la Carte 268\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.1 Overview of the SA Forum Solution\u003c\/i\u003e 268\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.2 Entity Types File: Is It Eaten or Drunk by SMF?\u003c\/i\u003e 271\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.3 The Upgrade Campaign and Its Specification\u003c\/i\u003e 273\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.4 Upgrade Campaign Execution Status and Failure Handling\u003c\/i\u003e 279\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.5 Administrative and Management Aspects\u003c\/i\u003e 285\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.6 User Perspective\u003c\/i\u003e 288\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.7 Service Interaction\u003c\/i\u003e 289\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.8 Open Issues\u003c\/i\u003e 291\u003c\/p\u003e \u003cp\u003e\u003ci\u003e9.3.9 Recommendation\u003c\/i\u003e 292\u003c\/p\u003e \u003cp\u003e9.4 Conclusion 294\u003c\/p\u003e \u003cp\u003e\u003cb\u003e10 Combining the Services 297\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMaria Toeroe\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e10.1 Introduction 297\u003c\/p\u003e \u003cp\u003e10.2 Application Design and Development 297\u003c\/p\u003e \u003cp\u003e10.3 Application Platform Design 299\u003c\/p\u003e \u003cp\u003e10.4 Operation and Maintenance 301\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart III SA FORUM MIDDLEWARE IN ACTION\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e11 SA Forum Programming Model and API Conventions 305\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eFrancis Tam\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e11.1 Introduction 305\u003c\/p\u003e \u003cp\u003e11.2 Programming Model 306\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.2.1 AIS Area Service Interfaces\u003c\/i\u003e 306\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.2.2 Real-Time Support\u003c\/i\u003e 306\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.2.3 Naming Conventions and Type Definitions\u003c\/i\u003e 308\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.2.4 Usage Model and Library Life Cycle\u003c\/i\u003e 309\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.2.5 Tracking\u003c\/i\u003e 311\u003c\/p\u003e \u003cp\u003e11.3 Making Sense of the API Specifications 312\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.3.1 Structure of Service API Specification\u003c\/i\u003e 314\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.3.2 Administration API\u003c\/i\u003e 315\u003c\/p\u003e \u003cp\u003e11.4 Practical Topics 316\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.4.1 Interacting with POSIX\u003c\/i\u003e 316\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.4.2 Allocating and Freeing Memory\u003c\/i\u003e 319\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.4.3 Handling Pointers\u003c\/i\u003e 319\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.4.4 Finding Out Implementation Limits\u003c\/i\u003e 320\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.4.5 When an Area Service is Unavailable\u003c\/i\u003e 321\u003c\/p\u003e \u003cp\u003e\u003ci\u003e11.4.6 Backward Compatibility\u003c\/i\u003e 322\u003c\/p\u003e \u003cp\u003e11.5 Concluding Remarks 322\u003c\/p\u003e \u003cp\u003e\u003cb\u003e12 SA Forum Java Mappings: Specifications, Usage, and Experience 325\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eRobert Hyerle and Jens Jensen\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e12.1 Introduction 325\u003c\/p\u003e \u003cp\u003e12.2 Background 325\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.2.1 Early Exploration of Java Mappings in Hewlett–Packard\u003c\/i\u003e 325\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.2.2 Java in Ericsson\u003c\/i\u003e 326\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.2.3 The SA Forum Java Mapping Initiative\u003c\/i\u003e 327\u003c\/p\u003e \u003cp\u003e12.3 Understanding the Java Mappings 328\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.3.1 Java Application Integration Architecture\u003c\/i\u003e 328\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.3.2 Naming\u003c\/i\u003e 329\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.3.3 Package Structure\u003c\/i\u003e 330\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.3.4 The Underlying Objects\u003c\/i\u003e 330\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.3.5 Types\u003c\/i\u003e 331\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.3.6 Parameters, Exceptions, and Method Signatures\u003c\/i\u003e 332\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.3.7 Factories, Callbacks, and Life-cycles\u003c\/i\u003e 333\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.3.8 Callbacks and the Selection Object in Java\u003c\/i\u003e 334\u003c\/p\u003e \u003cp\u003e12.4 Using the Java Mappings 335\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.4.1 Integrating AIS Services with Java Applications\u003c\/i\u003e 335\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.4.2 Integrating AIS Services with Containerized Java Applications\u003c\/i\u003e 342\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.4.3 AIS Services in Mixed Language and Mixed Implementation Environments\u003c\/i\u003e 343\u003c\/p\u003e \u003cp\u003e12.5 Going Further 343\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.5.1 The Java Mapping Roadmap\u003c\/i\u003e 343\u003c\/p\u003e \u003cp\u003e\u003ci\u003e12.5.2 Related Java Standards and Other References\u003c\/i\u003e 344\u003c\/p\u003e \u003cp\u003e\u003cb\u003e13 SA Forum Middleware Implementations 347\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMario Angelic and Ulrich Kleber\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e13.1 Introduction 347\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.1.1 OpenHPI\u003c\/i\u003e 347\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.1.2 OpenSAF\u003c\/i\u003e 348\u003c\/p\u003e \u003cp\u003e13.2 The OpenHPI Project 348\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.2.1 Overview of the OpenHPI Solution\u003c\/i\u003e 348\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.2.2 User Perspective\u003c\/i\u003e 351\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.2.3 OpenHPI Tools\u003c\/i\u003e 353\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.2.4 Open Issues and Recommendations\u003c\/i\u003e 354\u003c\/p\u003e \u003cp\u003e13.3 The OpenSAF Project 355\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.3.1 Background\u003c\/i\u003e 355\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.3.2 OpenSAF Architecture\u003c\/i\u003e 356\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.3.3 SA Forum Compliant Services\u003c\/i\u003e 360\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.3.4 OpenSAF Infrastructure Services\u003c\/i\u003e 364\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.3.5 Managing OpenSAF\u003c\/i\u003e 365\u003c\/p\u003e \u003cp\u003e\u003ci\u003e13.3.6 Deploying OpenSAF\u003c\/i\u003e 367\u003c\/p\u003e \u003cp\u003e13.4 Conclusion 368\u003c\/p\u003e \u003cp\u003e\u003cb\u003e14 Integration of the VideoLAN Client with OpenSAF: An Example 371\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eAnik Mishra and Ali Kanso\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e14.1 Introduction 371\u003c\/p\u003e \u003cp\u003e14.2 Going Under the Hood: The VLC Workflow 372\u003c\/p\u003e \u003cp\u003e14.3 Integrating VLC with OpenSAF 373\u003c\/p\u003e \u003cp\u003e\u003ci\u003e14.3.1 Nonproxied-Non-SA-Aware Integration\u003c\/i\u003e 374\u003c\/p\u003e \u003cp\u003e\u003ci\u003e14.3.2 SA-Aware VLC Integration\u003c\/i\u003e 379\u003c\/p\u003e \u003cp\u003e\u003ci\u003e14.3.3 SA-Aware VLC with Service Continuity\u003c\/i\u003e 384\u003c\/p\u003e \u003cp\u003e14.4 Summary and Conclusion 387\u003c\/p\u003e \u003cp\u003e\u003cb\u003e15 Migration Paths for Legacy Applications 391\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMario Angelic\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e15.1 Introduction 391\u003c\/p\u003e \u003cp\u003e15.2 Reasons for Migration 392\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.2.1 Benefits for System Owners\u003c\/i\u003e 392\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.2.2 Benefits for ISVs\u003c\/i\u003e 392\u003c\/p\u003e \u003cp\u003e15.3 Integration Criteria 393\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.3.1 Main Factors\u003c\/i\u003e 393\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.3.2 Easy Management\u003c\/i\u003e 394\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.3.3 Streamlined Architecture\u003c\/i\u003e 396\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.3.4 Code Quality\u003c\/i\u003e 397\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.3.5 Integration Levels\u003c\/i\u003e 397\u003c\/p\u003e \u003cp\u003e15.4 How to Migrate 399\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.4.1 Availability Integration\u003c\/i\u003e 399\u003c\/p\u003e \u003cp\u003e\u003ci\u003e15.4.2 Manageability Integration\u003c\/i\u003e 409\u003c\/p\u003e \u003cp\u003e15.5 Open Issues 413\u003c\/p\u003e \u003cp\u003e15.6 Conclusion 413\u003c\/p\u003e \u003cp\u003e\u003cb\u003e16 Overcoming Complexity: Formal Modeling Techniques at the Rescue 415\u003cbr\u003e \u003c\/b\u003e\u003ci\u003eMaria Toeroe and Ferhat Khendek\u003c\/i\u003e\u003c\/p\u003e \u003cp\u003e16.1 Introduction 415\u003c\/p\u003e \u003cp\u003e16.2 Background 416\u003c\/p\u003e \u003cp\u003e\u003ci\u003e16.2.1 The Model-Based Approach\u003c\/i\u003e 416\u003c\/p\u003e \u003cp\u003e\u003ci\u003e16.2.2 Starting Points in the Specifications\u003c\/i\u003e 417\u003c\/p\u003e \u003cp\u003e16.3 Model-Based Software Management 419\u003c\/p\u003e \u003cp\u003e\u003ci\u003e16.3.1 Configuration Model\u003c\/i\u003e 419\u003c\/p\u003e \u003cp\u003e\u003ci\u003e16.3.2 Configuration Generation\u003c\/i\u003e 420\u003c\/p\u003e \u003cp\u003e\u003ci\u003e16.3.3 Upgrade Campaign Generation\u003c\/i\u003e 424\u003c\/p\u003e \u003cp\u003e\u003ci\u003e16.3.4 Analytical Models and How They Can Help\u003c\/i\u003e 427\u003c\/p\u003e \u003cp\u003e16.4 Conclusion 428\u003c\/p\u003e \u003cp\u003e\u003cb\u003e17 Conclusion 431\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e17.1 Summary 431\u003c\/p\u003e \u003cp\u003e17.2 The Future 433\u003c\/p\u003e \u003cp\u003e\u003cb\u003eReferences 435\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eIndex 443\u003c\/b\u003e\u003c\/p\u003e  \u003cp\u003e\u003cstrong\u003eMaria Toeroe, Ericsson, Canada\u003c\/strong\u003e\u003cbr\u003eMaria Toeroe has been in the telecommunications industry for over 10 years conducting research and standardisation in the area of dependable software, service availability and fault tolerance utilizing the expertise she gained in her prior work in the academia related to formal description techniques and their use in protocol engineering. Having represented Ericsson in the Service Availability Forum since 2005, Maria has led several standardization efforts in different chair positions of the SA Forum Technical Work Group.? Within Ericsson she is also responsible for university collaborations related to her fields. She has been an Adjunct Associate Professor with the Department of Electrical and Computer Engineering of Concordia University since 2007. Maria holds a Diploma degree from the Institute of Engineering Economics Kharkov, a University Doctorate and a PhD from the Faculty of Electrical Engineering and Informatics of the Budapest University of Technology and Economics. \u003c\/p\u003e\u003cp\u003e\u003cstrong\u003eFrancis Tam, Nokia, Finland\u003c\/strong\u003e\u003cbr\u003eFrancis Tam has conducted research, development and standardisation in the dependable software area of service availability and fault tolerance in the telecommunications industry for more than 16 years. He has served as industrial adviser to three European Commission funded projects on dependable computer systems and frequently gives lectures on highly available systems to the Master of Engineering students at INSA Lyon in France. Francis holds a BSc in Computer Science from Queen Mary College (University of London), an MSc in Computing Science from North Staffordshire Polytechnic and a Doctor of Science (Technology) in Software Systems from Tampere University of Technology in Finland.   Our society increasingly depends on computer-based systems; the number of applications deployed has increased dramatically in recent years and this trend is accelerating. Many of these applications are expected to provide their services continuously. The Service Availability Forum has recognized this need and developed a set of specifications to help software designers and developers to focus on the value added function of applications, leaving the availability management functions for the middleware.  \u003c\/p\u003e\u003cp\u003eA practical and informative reference for the Service Availability Forum specifications, this book gives a cohesive explanation of the founding principles, motivation behind the design of the specifications, and the solutions, usage scenarios and limitations that a final system may have. Avoiding complex mathematical explanations, the book takes a pragmatic approach by discussing issues that are as close as possible to the daily software design\/development by practitioners, and yet at a level that still takes in the overall picture. As a result, practitioners will be able to use the specifications as intended.\u003c\/p\u003e \u003cul\u003e \u003cli\u003eTakes a practical approach, giving guidance on the use of the specifications to explain the architecture, redundancy models and dependencies of the Service Availability (SA) Forum services\u003c\/li\u003e \u003cli\u003eExplains how service availability provides fault tolerance at the service level\u003c\/li\u003e \u003cli\u003eClarifies how the SA Forum solution is supported by open source implementations of the middleware\u003c\/li\u003e \u003cli\u003eIncludes fragments of code, simple example and use cases to give readers a practical understanding of the topic\u003c\/li\u003e \u003cli\u003eProvides a stepping stone for applications and system designers, developers and advanced students to help them understand and use the specifications\u003c\/li\u003e \u003c\/ul\u003e","brand":"Wiley","offers":[{"title":"Default Title","offer_id":47990010937573,"sku":"NP9781119954088","price":123.95,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1842\/7735\/files\/9781119954088.jpg?v=1761786197","url":"https:\/\/k12savings.com\/es\/products\/service-availability-isbn-9781119954088","provider":"K12savings","version":"1.0","type":"link"}