Object Model Tree Diagram Layout Automation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software development tools, such as UML, BNF, and EBNF, face challenges in automatically laying out class diagrams, managing line crossings, and representing the natural tree-like structure of class relationships, making manual layout time-consuming and unreadable.

Innovation Solution

A design tool system that takes a computer-readable representation of object graphs and automatically creates editable treelike diagrams, allowing for interactive reorganization, line channeling, and collapsible sections, while exploiting the natural tree structure to improve readability and efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If UML class diagrams are laid out automatically, then productivity is improved, but manufacturing precision deteriorates (satisfactory results are rarely achieved)

Engineering Contradiction:
Improvelayout automation speedVSAvoidlayout quality
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The layout problem is segmented into two distinct phases: a tree-based hierarchical arrangement phase that establishes the overall structure, followed by a refinement phase that optimizes visual presentation. This segmentation allows automatic layout to achieve both high productivity and satisfactory visual quality by handling structural and aesthetic requirements separately.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system provides dynamic layout adjustment capabilities, allowing users to interactively modify automatically generated layouts. The layout can be adjusted between fully automatic mode (high productivity) and manual refinement mode (high precision), enabling users to balance efficiency and quality based on specific needs.

Inventive Principle:
Principle #15Dynamics

2Manufacturing precision

If UML class diagrams are laid out manually, then manufacturing precision is improved (line crossing limited, adornments placed meaningfully), but productivity deteriorates (time-consuming)

Engineering Contradiction:
Improvelayout qualityVSAvoidlayout creation speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The system performs preliminary automatic layout generation to establish a reasonable initial structure, eliminating the need to start from scratch. This preliminary action provides a good foundation that reduces the time required for manual refinement while maintaining high layout quality, thus improving productivity without sacrificing precision.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates a copy of the class diagram in tree-based layout format, preserving all structural information while enabling different visualization approaches. This copying allows the same data to be presented in both automatic tree layout and manually refined traditional UML layouts, accommodating both productivity and precision requirements.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If traditional UML diagrams are used, then adaptability is maintained (standard notation), but ease of operation deteriorates (difficult to expand and collapse sections systematically)

Engineering Contradiction:
Improvenotation compatibilityVSAvoiddiagram navigation
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system implements nested expandable/collapsible sections within the class diagram, allowing users to systematically organize and navigate complex hierarchies. This nested structure maintains UML notation adaptability while dramatically improving ease of operation by enabling users to focus on specific portions of large diagrams through systematic expansion and collapse of nested elements.

Inventive Principle:
Principle #7Nested doll (Nesting)

4Ease of operation

If tree-based layout is applied, then ease of operation is improved (natural structure representation), but device complexity increases (new layout algorithm required)

Engineering Contradiction:
ImprovereadabilityVSAvoidlayout algorithm
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system implements a universal layout framework that can handle both traditional UML layouts and tree-based layouts through a common algorithmic foundation. This multi-functional approach improves readability through tree-based representation while minimizing the increase in algorithmic complexity by reusing existing layout algorithms across different diagram types.

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

Data Source

PatentUS7814427B2Object model tree diagram
Publication Date: 2010.10.12 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7814427B2 patent drawing
  • US7814427B2 patent drawing
  • US7814427B2 patent drawing

AI summary

A designer tool that facilitates design of an object model. The tool takes as input a computer-readable representation of a graph of objects (e.g., classes), and creates automatically one or more diagrams that depict these classes as editable trees showing their relationships and properties. These graphs naturally have a tree-like structure which is exploited by the approach. The design tool system includes a layout component that receives as input one or more of the graphs, and converts the one or more graphs into the editable treelike structure. The system further comprises a presentation component that presents the editable treelike structure as a treelike structure diagram, and facilitates user interaction therewith. The tool can be used for opening, editing and saving existing object model files or to create new ones.