Interactive Layered Visualization of Software Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex software systems with large and intricate architectures in business organizations' repositories make it difficult for system architects and designers to understand the relationships between components, identify potential issues, and implement changes quickly, due to the vast and complex information maintained.

Innovation Solution

A visualization tool that provides real-time, interactive layered layout visualization of software systems, organizing entities into logical layers and preserving hierarchical structures, allowing users to define layers and rules for entity placement and interact with the visualization without disturbing the underlying structure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If detailed information about software systems is maintained in repositories, then traceability and visibility of complex software systems is improved, but understanding of architecture and interrelationships between components becomes difficult

Engineering Contradiction:
Improvetraceability and visibilityVSAvoidcomplexity of information
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent segments the complex software system information into multiple hierarchical levels (system level, component level, and detailed level). The visualization tool allows users to navigate between these levels, presenting high-level architectural overviews first and enabling drill-down to detailed information only when needed. This segmentation reduces the cognitive load by displaying only relevant information at each level while maintaining complete traceability in the underlying repository.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of visualization by transforming tabular repository data into graphical representations. The system adds spatial and visual dimensions to the information, using graphical icons, colored coding, and spatial arrangement to represent system architecture and component relationships. This dimensional transformation makes complex interrelationships visually perceivable and easier to understand.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If comprehensive software system information is maintained, then system understanding is improved, but speed of reviewing, updating, designing and optimizing software products decreases

Engineering Contradiction:
Improvesystem understandingVSAvoidspeed of software development
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements preliminary action by pre-calculating and pre-organizing system relationships into hierarchical structures before user interaction. The visualization tool pre-computes dependency graphs, relationship paths, and architectural hierarchies from the repository data, so that when users query the system, they immediately receive pre-processed visual representations rather than requiring real-time computation of complex relationships.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates visual copies of the software system architecture that can be manipulated and explored without affecting the actual system. The graphical representations are simplified copies that capture essential relationships and structures, allowing users to review, update, and design changes in the visual domain before implementing them in the actual software system, thereby speeding up the development cycle.

Inventive Principle:
Principle #26Copying

3Loss of information

If detailed component relationships are visualized, then architectural understanding is improved, but visualization complexity and difficulty of interpretation increases

Engineering Contradiction:
Improvearchitectural understandingVSAvoiddifficulty of interpretation
Core Design Contradiction:
Loss of informationVSDifficulty of detecting and measuring

Solution Approach 1:

The patent applies local quality by making different parts of the visualization have different levels of detail and complexity. The system uses selective visualization techniques where only locally relevant information is displayed with high detail, while other areas are shown with lower detail or aggregated representations. This allows users to focus on specific architectural concerns without being overwhelmed by global system complexity.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent uses color changes and visual encoding to represent different types of information and relationships. Different colors indicate different component types, relationship strengths, dependency directions, or architectural layers. This visual encoding system transforms complex relational data into intuitively understandable color-coded representations, making architectural patterns and issues easily detectable at a glance.

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS9716632B2Interactive layered visualization of a layered software architecture
Publication Date: 2017.07.25 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9716632B2 patent drawing
  • US9716632B2 patent drawing
  • US9716632B2 patent drawing

AI summary

A system to generate an interactive layered visualization of a software system includes a storage device to storage a model of the system that defines entities and relationships among entities. The system also includes a visualization tool to generate nodes representing the entities and assign nodes to layers in a set of ordered layers in accordance with rules associated with each layer. A layered layout of the software system is thereby generated and an interactive visualization of the layered layout is rendered for display to the user.