Contract Failure Handling With Escalation Policy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex software systems face challenges in handling contract failures, leading to unexpected behavior, data corruption, and potential system crashes, as they often lack compatible error handling mechanisms for contract violations, especially when interacting with external components or across different programming paradigms.

Innovation Solution

An error handling system that provides configurable runtime behavior for contract failures, allowing hosting applications to register event handlers or use an escalation policy to manage failures, ensuring controlled handling and minimizing data corruption risks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If contract checks are enforced in retail builds, then software reliability is improved, but system complexity increases due to additional error handling mechanisms

Engineering Contradiction:
Improvesoftware reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an event handler as an intermediary component between the contract failure detection mechanism and the failure response system. This event handler allows the hosting application to register custom handlers that are invoked when contract failures occur, providing a flexible intermediate layer that manages the complexity of error handling while maintaining reliability through systematic failure detection and response mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If configurable runtime behavior is provided for contract failures, then adaptability is improved, but device complexity increases due to additional configuration and event handling infrastructure

Engineering Contradiction:
Improveconfigurable runtime behaviorVSAvoiderror handling infrastructure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic error handling behavior by allowing the hosting application to register event handlers at runtime that can customize the response to contract failures. The system transitions from static, predefined error handling to dynamic, configurable behavior where the failure response can be adapted based on the specific hosting application's requirements, the type of contract failure, and the registered event handlers' logic.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments the error handling system into distinct components: the contract failure detection mechanism, the event registration system, the event handler invocation layer, and the escalation policy. This segmentation allows each component to be independently configured and managed, reducing the perceived complexity by organizing the error handling infrastructure into modular, manageable segments that can be selectively activated.

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If event handlers are registered for contract failures, then control over failure handling is improved, but ease of operation decreases due to additional registration and configuration steps

Engineering Contradiction:
Improvecontrol over failure handlingVSAvoidevent registration process
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent enables the hosting application to self-configure its error handling behavior by allowing it to register its own event handlers for contract failures. The system provides the infrastructure and interface for the application to autonomously manage its failure response strategy without requiring external configuration or complex setup procedures, empowering the application to service its own error handling needs.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8782607B2Contract failure behavior with escalation policy
Publication Date: 2014.07.15 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8782607B2 patent drawing
  • US8782607B2 patent drawing
  • US8782607B2 patent drawing

AI summary

An error handling system is described herein that provides a facility for controlling the behavior of software when the software violates a contract condition. The system provides configurable runtime behavior that takes place when a contract fails. The error handling system provides an event that a hosting application or other software code can register to handle and that the system invokes upon detecting a contract failure. The application's response to the event determines how the system handles the failure. If the event is unhandled, the system triggers an escalation policy that allows an administrator or application to specify how the system handles contract failures. Thus, the error handling system provides increased control over the handling of contract failures within software code.