UML Affinity Graph for User-Perceived Use Case Relationships

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Unified Modeling Language (UML) practices do not support the formal specification of user-perceived relationships among independent use cases, limiting the ability of designers to create effective user experiences by determining which use cases to include or present together on web pages.

Innovation Solution

A system and method for associating affinities representing user-perceived relationships between use cases within a UML model, allowing designers to assign weights to these affinities, which influences the design process and presentation of use cases in a user interface environment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If current UML modeling practices are used, then the model structure is simple and easy to maintain, but the ability to specify user-perceived relationships among independent use cases is lost

Engineering Contradiction:
Improveuser-perceived relationshipsVSAvoidUML model structure
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent segments the relationship specification into a separate affinity graph component that operates independently from the core UML use case model. This allows user-perceived relationships to be added without fundamentally restructuring the existing UML modeling framework, thus avoiding excessive complexity while capturing the lost relationship information.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The affinity graph acts as an intermediary layer between the UML use case model and the user interface design. It mediates by providing affinity weights and relationships that guide designers in composing views from use cases without requiring changes to the fundamental UML modeling structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If UML includes and extends relationships are used, then use case dependencies are formally specified, but associations among independent use cases cannot be established

Engineering Contradiction:
Improveuse case associationsVSAvoiduse case relationship definition
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The affinity graph component serves multiple functions: it captures user-perceived relationships, assigns weights to relationships, and provides guidance for view composition. This multi-functional approach allows independent use cases to be associated with each other without requiring complex relationship definitions, maintaining ease of operation while establishing comprehensive associations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Ease of operation

If designers create views with multiple use case choices, then user interaction effectiveness is improved, but the complexity of determining which use cases to include increases

Engineering Contradiction:
Improveuser interaction effectivenessVSAvoidview composition complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The affinity graph provides feedback to designers about user-perceived relationships among use cases. By quantifying affinities as weights, the system gives concrete guidance on which use cases should be grouped together in views, reducing the complexity of view composition while maintaining user interaction effectiveness.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8621420B2Modeling user perceived use case affinity
Publication Date: 2013.12.31 SERVICENOW INC
  • US8621420B2 patent drawing
  • US8621420B2 patent drawing
  • US8621420B2 patent drawing

AI summary

A system, method and program product for creating a UML model of a user interface environment, such as a website. A UML design system is disclosed that includes: a system for defining use cases within the UML model; a system for associating an affinity representing a user-perceived relationship between use cases within the UML model; and a system for assigning a weight to the affinity within the UML model.