Layered visualization of socio-technical dependencies in enterprise systems using concentric onion-ring layers with organizationally-encoded edge bundling

The 'onion-ring' visualization method addresses the challenge of depicting enterprise software landscapes by using concentric layers and edge bundling to represent technical and organizational dependencies, enhancing change management and digital transformation planning.

WO2026083125A1PCT designated stage Publication Date: 2026-04-23ELLAHI MUHAMMAD ARSALAN
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
ELLAHI MUHAMMAD ARSALAN
Filing Date
2025-10-15
Publication Date
2026-04-23

AI Technical Summary

Technical Problem

Existing visualization methods for enterprise software landscapes fail to accurately depict the large number of actual elements and organizational ownership of integrations, lacking the ability to assess technical coupling and organizational distance, which is crucial for understanding system changes and risks.

Method used

A computer-implemented method that generates and displays an 'onion-ring' type visualization with concentric layers, incorporating channel applications, system use cases, external integration points, systems-of-record, integration points, and internal integrations, using hierarchical edge bundling to represent technical dependency and organizational hierarchy, allowing interactive focus and search capabilities.

Benefits of technology

The method provides a clear, interactive visualization that declutters large systems, supports element search, and automatically generates from metadata, enabling effective assessment of organizational distance and change management, facilitating digital transformation planning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IB2025000534_23042026_PF_FP_ABST
    Figure IB2025000534_23042026_PF_FP_ABST
Patent Text Reader

Abstract

A computer-implemented visualization arranges factual elements of an enterprise system into concentric onion-ring layers and supports interaction that highlights related elements across layers, intended target-state classification, and can be generated automatically from enterprise metadata.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Layered visualization of socio-technical dependencies in enterprise systems using concentric onion-ring layers with organizationally-encoded edge bundling

[0002] Inventor / Applicant: Muhammad Arsalan Ellahi, Aukland, New Zealand

[0003] Attorney for the applicant:

[0004] Bell IP Law

[0005] San Francisco, CA

[0006] USPTO Customer No. 39843

[0007] Cross-Reference to Related Applications

[0008] This application claims priority to and the benefit of U.S. Provisional Patent Application No. 63 / 707,543, filed October 15, 2024, titled “A layered method for holistic interactive visualization of socio-technical dependencies in enterprise systems architecture.” The entire disclosure of that provisional application is incorporated herein under any relevant and applicable law.

[0009] Field of the Invention

[0010] The invention relates to computer-implemented visualization of complex enterprise software landscapes. In particular it concerns arranging factual elements of an enterprise system into concentric layers and rendering technical integrations between elements as curves that are bundled according to organizational ownership to expose socio-technical dependencies.

[0011] Background

[0012] Modern organizations rely on a mixture of custom software, commercial-off-the-shelf platforms, APIs, and middleware operated by distributed teams. Existing diagrams show conceptual layers such as presentation, application, and data. However, widely used diagrams do not present the large number of actual, concrete items that exist in a real enterprise, nor do they simultaneously encode organizational ownership of integrations so that viewers can assess both technical coupling and organizational distance.

[0013] A practitioner needs a method that allows factual items to be placed at scale in a layered view, allows interactions that highlight cross-layer relationships for a selected element, and permits the same view to convey organizational structure so that the cost and risk of change can be inferred. There is relatively new and popular idea in the software development community to consider the entire software landscape of the business as a single system. This idea is popularized as System Thinking. Individual procured systems are treated as subsystem in the context of the larger holistic business system that serves the overall needs of the business to operate successfully. From here onwards we will use the word system to refer to holistic business system.

[0014] Brief description of the invention

[0015] The disclosure provides a computer-implemented method, system, and non-transitory medium that generate and display an “onion-ring” type visualization composed of concentric layers that include, at minimum, a channel applications layer, a system use cases layer, an external integration points, a systems -of-record layer organized by subsystems, an integration points layer, and an internal integrations layer. The invention declutters large systems by progressive focus, supports search of any element, and can be automatically generated from cunentstate metadata.

[0016] Facts / data about the enterprise are ingested (sourced and collated) from sources such as configurations, software source code, documentation platforms and telemetry. Each factual element is placed in a designated layer. Integrations between internal integration points are rendered as curved paths within the internal i niegralions layer.

[0017] Hierarchical edge bundling is applied so that curved paths are influenced by technical dependency and organizational hierarchy. The connected endpoints represent technical dependency, and the geometry of each path represent the organizational distance based on the team ownership of integration points.

[0018] The view supports interaction in which selecting an element causes its related elements to be highlighted across layers, and supports intended target-state classification such as implement, retire, or sustain via color or other visual encodings.

[0019] The approach declutters large systems by progressive focus, supports search of any element, and can be automatically generated from current-state metadata.

[0020] Brief Description of the Drawings

[0021] Fig. 1 illustrates the conceptual relation between various terminologies.

[0022] Fig. 2 shows the index and the role of each layer in a system.

[0023] Fig. 3 is a simplified diagram showing the arrangement of layers in Outside-In View. Fig. 4 is a simplified diagram showing the arrangement of layers in Inside-Out View.

[0024] Fig. 5 is a simplified diagram showing the arrangement of layers in Use Case Led.

[0025] Fig. 6 is a table showing the relationship between popular integration types and integration points.

[0026] Fig. 7 is an example of outside -in view in which use cases are in the outer most layer to drive the progressing decluttering in the inner layers with hierarchal edge bundling for impact analysis across the organization.

[0027] Fig. 8 is an example of inside -out view that arranges layers from inside out. User personas and their use cases are the inner most layer, and only relevant outer elements are shown when a use case is selected.

[0028] Fig. 9 is an example of Use Case Led View. It shows the nodes of a layer grouped by the nodes of another layer and some trait. The outer most layer shows Channel Apps grouped by use case and intended target state.

[0029] Detailed description of the invention

[0030] In the era of internet and ever-growing personal devices, a business system is generally decomposed into a collection of software applications often distributed over large number of computing devices.

[0031] Interrelation of various terminologies in a distributed system

[0032] A distributed system is a collection of Application Software (Apps).

[0033] Each App is built on a specific technology stack and runs on one or more platforms.

[0034] Each App has one or more instances of some of the following Application Roles: a) Channel App b) External Integration Points c) System of Record d) Internal Integration Points

[0035] Terminology

[0036] See Figure 1 that displays interrelation between various terminologies.

[0037] Technology Stack: A set of technology choices to develop a software. The technology stack chosen to build a software determines its capabilities and constraints. A technology stack typically includes choices of programming language(s), data storage technologies, caching technologies, reusable software libraries, hosting and integration technologies. Application Software (Apps) vs Platform: Both application software and software platforms are software developed by programmers but they serve different purpose. The software built to solve a specific real-world problem is called Application Software (or App for short). Platforms comprise software used as a foundational layer for multiple software apps. A Platform abstracts the complexity of lower-level platforms or electronics hardware to simplify the development efforts of software applications.

[0038] The technology stack and application software is built in determines whether that application can run on a single platform or multiple specific platforms. Some apps can be built on modern high-level technology stack that enables the app to run on multiple platforms. Such apps are called Cross-platform apps.

[0039] In one example we will assume it is 2010 and Uber is just a starting out. It must decide the technology stack to build their mobile app. At that time, they could only choose Xcode programming language in their technology stack so their mobile app could run on Apple iPhones. And when android phones (i.e. Samsung) became popular, Uber had to build and maintain a separate app to run on Android platform for Samsung Phones. As technology evolved, more cross platform technologies (like React Native and Flutter) became popular. When this happens, at some point Uber had to make a strategic call, do they want to keep maintaining and building same features in two separate native apps for Samsung and Apple or do they want to replace their existing two native apps with a single cross-platform app in React Native or Flutter. These kinds of apps developments are called Modernizations. They are not introducing new features or use cases in the application but optimizing the underlying technology or architecture of the software.

[0040] Use Cases: An application user (be it a human or another system) uses an application to fulfill a set of atomic objectives. Each of these atomic objectives that makes the user use the app is called a Use Case.

[0041] Integration Cases: Applications are often required to integrate with other applications within our system or with external systems. Each specific objective that requires an application to utilize an integration is called Integration Case.

[0042] A Software System: A collection of interconnected and interrelated software capabilities built to serve multiple user personas that are related in a real-world domain.

[0043] A Subsystem: A coherent tightly integrated set of applications that are usually introduced or replaced together in a software system, they are called a sub-system. A subsystem is often procured from a third party and integrated in the business system. A Distributed System: A software system in which various software capabilities are distributed across independently running software applications is called Distributed System. Often, various software applications in a distributed system are built on different technology stacks to ran on multiple platforms to cover diversity of user needs and preferences. Within a distributed system, a software application may be performing one or more of following roles: a. Channel App b. External Integration Point c. System of Record d. Internal Integration Point

[0044] A Channel App: The software applications that provide one or more user personas an interface to fulfill a set of their needs and objectives from the software system. The channel apps ran on user’s computing devices. Example: Netflix has a huge distributed system to serve a large volume of movies on demand to its users. However, their TV app is a channel app for users to search and view movies from the Netflix system. Uber is in ridesharing business which has two separate channel apps. one for riders to search and make a ride request. The second channel app is for ride providers to accept ride requests and navigate to rider and their destination.

[0045] A System of Record (SOR): When a software module, application or a subsystem enforces business rales and business logic on a set of related use cases (or business capability) and acts as a source of truth for the data produced by those use cases, it is called a System of Record. An app or subsystem can serve as a System of Record for multiple business capabilities. Similarly, an organization can have multiple SORs the encapsulate the complex logic, rales and data for various business capabilities. A SOR usually manages its database and offers one or more integration points to integrate in the larger business system.

[0046] Integrations: When an App needs to communicate with another App, they need to integrate with each other using their integration points.

[0047] Integration Points: When an application exposes an integration method to initiate or handle specific set of integration cases, it is called an Integration Point. Both internal or external integration points may be built on same integration patterns, protocols and / or platforms. Such as:

[0048] Examples include: a. Rest API b. GraphQL API c. gRPC d. Webhooks e. Websockets a. SOAP API b. Flat files / Batch files

[0049] If a SOR exposes an API and 3 SORs call that Api. Then there are four integration points. The following table shows the relationship between popular integration types and integration points:

[0050] External Integration Points: The integration points that are exposed over the internet are External Integration Points. They allow our channel apps or external systems to integrate over the internet.

[0051] Internal Integration Points: The integration points that are exposed only over the private network or for application running on the same computing device are Internal Integration Points. SORs rely on some internal integration points to trigger each other’s capabilities and exchange data with each other. See FIG.2.

[0052] Interplay of Various Layers in a Distributed System

[0053] As shown in Figure 2, various apps serve different role in a distributed web-based system, as follows: channel apps provide human interface for a set of use cases. Users perform their use cases to fulfill their atomic objectives in the system. A system of records exposes external integration points over the internet. Channel Apps access External Integration Points over the internet to fulfill use cases. And a system of record integrates with other SORs using internal integration points.

[0054] Internal Integration Points have integrations with other Internal Integration points Novelty and objects and advantages of the present invention

[0055] There are many visualizations on the internet to conceptually express the separate layers of software implementation concerns as onion rings, however there is no single known method to visually arrange large number of actual factual details of a system in such onion rings. We provide a novel arrangement of various elements in spherical layers in a distributed system as shown in Figure 3, Figure 4 and Figure 5.

[0056] In the present system, a layer can have multiple levels to represent grouping by various traits, and any layer or level within a layer can be turn on or off.

[0057] Interactive decluttering unrelated nodes across layers of apps in a distributed system.

[0058] When a user selects a node, for example a use case, the view shifts the focus to show the relevant elements in the other layers. For example when a use case is selected, the view is decluttered to show the following: a. Only that use case in use cases layer. b. The only relevant channel apps that expose the selected use case. c. The external integration points that channel apps depend on to fulfill the use case. d. The System of Record nodes that handle the selected use case. e. The internal integration points that participate in the selected use case processing. f. The internal integrations that get triggered by the selected use case. g. The destination integration points of the triggered internal integrations.

[0059] Focusing on an integration point will highlight its integrated integration points.

[0060] These visualizations will be searchable, user could search for any node, and the view will immediately focus on the searched node.

[0061] These visualizations will be auto generated by automated analysis of software technology stack, documentation and hosting platforms.

[0062] The users will be prompted to add missing information that could not be extracted automatically code, documentation and applications platforms.

[0063] The nodes in one layer can be grouped by the nodes of another layer or specific traits. For example: in Figure 9, the outer most layer shows Channel Apps grouped by use cases and intended target state. The nodes in one layer can be rearranged and / or have duplicate appearance to show association with the nodes in other layers. For example: in Figure 7, the same use cases have repeat appearance to show that they are implemented in multiple channel apps.

[0064] The sizes and color of the nodes can be used to represent various traits. For example, use cases can be colored by user personas that are expected to perform them and the length of the arcs for each SOR can represent the portion of total internal integration points it exposes in the system or the portion of use cases in the system it handles.

[0065] In Outside-In View, we utilize the popular hierarchal edge bundling technique (on layer 6) integration arcs to express the organizational structure of the teams that own the integrating points. This illustrates not only shows dependency between various modules, but also how far a team needs to interact in the organization when introducing a breaking change in the interface of an integration point. The closer the curve of an integration to the center of the sphere, the further the dependency in the organizational hierarchy as shown in Figure 7. Let’s say, one team is introducing a breaking change to the interface of their integration point, if it impacts a team that is also managed by your direct line manager, it is closer distance which makes it easier to influence / negotiate with the other team to prioritize the impacting change on their end.

[0066] The nodes in each layer can be configured to show various properties and their values with a colored logo, the node background color or the node font color. For example: We could configure a “fate” property of any node (i.e. channel app or SOR) with one of the following values to represent an intended target state of that node: a. To Be Developed b. To Retire c. To Retain

[0067] The fate property could be illustrated with a small colored logo next to the text or by font color or by background color.

[0068] We introduce unambiguous notations to represent the following characteristics of internal integrations: a) When an integration highlighted between two internal integration points, the colors of the integration points distinguish between the producer and consumer of the integration contract. b) Uni-directional arrow represent fire-and-forget model of the integration while bi-directional arrow represents request-reply model. c) The direction of the colored arrow represents the initiator of the integration. Utility of this novel arrangement of system facts in onion layers

[0069] The present invention provides the following. It provides a very intuitive way to make macro and micro level inferences about the holistic system architecture. Ability to visually classify various elements by intended target state will help express the current state and plan a series of transition states of the system to reach the target state of a digital transformation. This visualization method will make the holistic architecture clearly observable that will also improve the production support and time-to-resolution of issues in production environment.

[0070] Further objects and advantages

[0071] This visualization method will allows a user to visually classify various integrations based on their usage and system load in different time intervals. The visualization method will help observe the cohesion and coupling between various elements and liighlight opportunities to improve the size and the scope of each node and integration choices. This visualization method will accelerate current state discovery and comprehension by extracting and visualizing the metadata from current state of the system. This visualization method will allow teams to design architecture specification for the new change initiatives, be it part of a digital transformation or introduction of new features in the ongoing system evolution.

[0072] The visualization is generated by a pipeline that performs element discovery, classification, layout assignment, edge construction, bundling, and interactive rendering. During discovery, the system collects an inventory of channel applications, use cases, external integration points, systems of record with subsystem membership, and internal integration points. During classification, the system assigns each element to a layer and may assign an intended target state including implement, retire, or sustain. During layout assignment, the system positions each element according to its layer in a set of concentric rings. During edge const ruction, the system constructs a set of curved paths for each internal integration that connect the corresponding integration points. During bundling, the system obtains an organizational tree that encodes team ownership and applies hierarchical edge bundling so that the geometry of the curved paths is routed through vertices that correspond to the organizational hierarchy. As a result, curves that represent integrations owned by teams that share a common ancestor are bundled more tightly and traverse a shorter organizational path than curves whose endpoints are owned by teams far apart in the hierarchy.

[0073] The interaction engine supports focus operations and search operations. When a user selects an element, the engine highlights that element and the elements related to it across all layers, dims or hides unrelated elements, and optionally animates curved paths to emphasize the directionality or contract ownership. When a user enters a search for any element identifier, the engine focuses on the matching element and expands the surrounding context. Progressive decluttering is achieved by windowing, by degree-of-interest functions, and by layerspecific filters so that expansion in one layer does not overwhelm the entire diagram.

[0074] The system supports derived metrics and overlays. By sampling message volumes, event counts, or API call rates, the internal integrations layer can encode usage intensity as stroke thickness and encode stress or error rate as texture. By analyzing system of record boundaries, the system can surface coupling patterns and reveal subsystem boundary candidates. The system can also simulate change. If a user marks an integration contract as breaking, the engine computes which integration points and which organizational branches are impacted and renders an estimated change-management distance based on the path length through the organizational hierarchy.

[0075] The system can operate as a web application or a desktop tool. A data ingestion process extracts metadata by scraping documentation, code repositories, infrastructure environments, reading interface description languages, querying service catalogs, or scanning runtime telemetry. The layout and bundling algorithms can be executed on the server or the client. The display is produced using a vector graphics engine. Color schemes are configurable and accessible alternatives are provided. The system may store user edits that refine placement or classification. An export facility writes the visualization as a static image, a vector graphic, or an interactive package for sharing.

[0076] The described layered arrangement accommodates very large enterprises. Because each element is assigned to a single ring, the visual load is distributed. Because integration curves are routed through the hierarchy, the viewer grasps organizational distance at a glance. The combination of factual placement, organizationally encoded bundling, and interactive decluttering allows an operator to explore both macro and micro structure of the enterprise.

[0077] Exemplary Embodiments

[0078] In a first embodiment the six layers are fixed as channel applications, system use cases, external integration points, systems of record arranged by subsystem, internal integration points, and internal integrations, and the placement of elements is computed from metadata alone without manual layout.

[0079] In a second embodiment the set of layers is extensible and can include additional rings such as program initiatives, infrastructure components, data products, or risk controls, and the system stores a mapping that relates each additional ring to one or more existing rings and integrates the additional rings into the interaction model. In a third embodiment the internal integrations layer encodes contract ownership by drawing a path that originates at the producer’s integral! on point, traverses nodes corresponding to the producer’s organizational chain, passes through a lowest common ancestor with the consumer’ s organizational chain, and continues to the consumer’s integration point, wherein the distance along the chain is proportional to the number of management hops required to coordinate a breaking change.

[0080] In a fourth embodiment the system provides an intended target-state overlay in which each element is assigned a state of implement, retire, or sustain and is encoded by a color scale, the overlay being persistent across sessions and used to plan transition states of a digital transformation.

[0081] In a fifth embodiment the system computes cohesion and coupling metrics for subsystems by counting intrasubsystem versus inter-subsystem edges and presents suggested boundary adjustments to reduce coupling.

[0082] In a sixth embodiment the system supports a search box that accepts an identifier of any element and focuses the display on that element, expands related context, and brings related curves to the foreground while fading unrelated curves.

[0083] In a seventh embodiment the visualization is generated in near real time from operational telemetry so that production support teams can observe bursty traffic patterns, detect stress on particular integrations, and reduce time to resolution for incidents.

[0084] In an eighth embodiment the system stores user selections of focus and generates a narrative of the path an operator has followed through the enterprise landscape, which can be exported as an architectural review artifact.

[0085] Advantages: The layered approach presents concrete facts rather than generic conceptual boxes and exposes relationships across layers. The hierarchical edge bundling conveys organizational distance and therefore the likely effort to coordinate change. The interaction model scales to large landscapes by decluttering when focusing on a particular element. The approach accelerates current state discovery by extracting metadata and reduces manual diagramming effort. The method enables planning and communication of transition states during digital transformation. Example Computing Environment: The system is implemented on one or more processors that execute instructions stored in memory. Storage holds metadata, organizational hierarchies, and user configurations. A network interface provides access to catalogs and telemetry. A graphics subsystem renders vector graphics. The instructions may be written in any suitable language and executed on servers or clients. The non-transitory computer-readable medium claims recite storage of instructions that, when executed, perform the described visualization steps.

[0086] Definitions

[0087] As used herein, unless the context clearly indicates otherwise, the following terms have the meanings set forth below. Definitions are drafted to support §112(b) clarity without narrowing claim scope. Where appropriate, examples are illustrative and non-limiting. Numerical ranges include endpoints and all subranges; “about” means within ±10% unless stated otherwise.

[0088] "About" Within ±10% of the stated value unless a different tolerance is provided by context.

[0089] "Application Programming Interface (API) / Web API" An interface accessible programmatically to exchange requests and responses. A “Web API” is accessible over a network using protocols such as HTTP(S) and may employ REST, GraphQL, gRPC, SOAP. WebSocket, or webhook patterns.

[0090] "Architectural Review Artifact (Narrative)" A recorded sequence of user focus operations and / or views exported as a document, slide deck, video, or interactive bundle that communicates architectural context and decisions.

[0091] "Internal Integration" A connection between two or more Internal Integration Points executed on server-side or service-to-service infrastructure using technologies such as files / batch, events / streams, synchronous or asynchronous APIs, or webhooks.

[0092] "Internal Integrations Layer" The concentric ring that visualizes Internal Integrations as Curved Paths connecting Internal Integration Points, optionally with overlays for usage and error metrics.

[0093] "Breaking Change" A change to an integration contract or interface that requires coordinated updates by one or more consuming or producing parties to preserve compatibility.

[0094] "Bundling Strength" A parameter of Hierarchical Edge Bundling that controls the degree to which Curved Paths are attracted to intermediate hierarchy nodes; it may vary by zoom level or focus state.

[0095] "Change-Management Distance" An estimated coordination effort measure derived from the route of a Curved Path through the Organizational Hierarchy (e.g., number of management hops or hierarchy depth traversed). "Channel Application (Channel App)" Software that provides a user interface for business operations and runs on a platform such as a browser, mobile OS, desktop OS, TV platform, or XR device. "Computer-Readable Medium I Non-Transitory Computer-Readable Medium" A tangible storage medium (e.g., RAM, ROM, flash, magnetic or optical storage, SSD) storing instructions and / or data. The term excludes signals per se.

[0096] "Coupling (Metric)" A measure comparing inter-subsystem connections relative to intra- subsystem connections; higher inter-subsystem linkage indicates greater coupling.

[0097] "Curved Path" A spline or polyline that connects Integration Points to represent a Internal Integration; the path geometry is routed through nodes of the Organizational Hierarchy in accordance with Hierarchical Edge Bundling.

[0098] "Degree-of-Interest (Doi) Function" A function that ranks or weights elements relative to a focus element to determine which related elements to show, highlight, or collapse during decluttering.

[0099] "Distributed System" A software system whose capabilities are partitioned across multiple independently running applications or services that communicate over networks.

[0100] "Enterprise Metadata" Facts about the enterprise software landscape including, without limitation: Channel Applications, System Use Cases, External Integration Points, Systems of Record (SORs) with Subsystem membership, Internal Integration Points, and Internal Integrations.

[0101] "Error-Rate Texture" A visual texture / encoding applied to Curved Paths (e.g., dashed or patterned stroke) that conveys error or stress metrics computed from Runtime Telemetry.

[0102] "External Integration Point" An Integration Point exposed over a public or partner network, accessible to Channel Applications or external systems.

[0103] "Focus (Operation)" An interaction that centers the visualization on a selected element, highlights related elements across layers, and fades unrelated elements to reduce clutter.

[0104] "Group I Grouping Level" A level within a layer used to cluster elements by a trait (e.g., grouping Use Cases by Channel Application). Arc length may reflect the proportional size of grouped elements.

[0105] "Hierarchical Edge Bundling (HEB)" A routing technique that pulls Curved Paths toward nodes of an Organizational Hierarchy so that paths sharing closer ancestry are visually bundled more tightly.

[0106] "Integration" Communication between applications or services using one or more Integration Points.

[0107] "Integration Case" A specific objective or scenario that requires an application to utilize an Integration (e.g., publish event, call API, process batch).

[0108] "Integration Point" A specific participation of a software module or application in an Integration, characterized at least by initiator / consumer role and contract ownership (producer-owned or consumer-owned); includes External and Internal Integration Points.

[0109] " Internal Integration Points Layer" The concentric ring that contains Integration Points corresponding to Systems of Record and other components that expose or consume interfaces. "Intended Target State (Fate)" A classification assigned to an element indicating planned disposition, such as Implement (to develop), Retire (to decommission), or Sustain (to retain).

[0110] "Internal Integration Point" An Integration Point accessible only over private networks or local inter-process mechanisms and typically used among Systems of Record.

[0111] "Inventive Visualization / Concentric Visualization Layers" An “onion-ring” arrangement of concentric layers comprising at least: Channel Applications, System Use Cases, External Integration Points, Systems-of-Record arranged by Subsystems, Internal Integration Points, and the Internal Integrations Layer.

[0112] "Lowest Common Ancestor (LCA)" The deepest node in the Organizational Hierarchy that is an ancestor of both producer-side and consumer-side ownership chains for an Integration.

[0113] "Memory" Any Computer-Readable Medium used to store data and / or program instructions (e.g., volatile or non-volatile storage).

[0114] "Module / Component" Hardware, software, firmware, or any combination configured to perform the recited function(s).

[0115] "Organizational Hierarchy" A tree or graph representing team and management relationships used to encode ownership of Integration Points and to route Curved Paths for HEB.

[0116] "Processor" One or more processing elements such as CPUs, GPUs, DSPs, FPGAs, ASICs, or combinations thereof.

[0117] "Progressive Decluttering" Reducing visible complexity by selectively fading, collapsing, or filtering elements based on Focus, Doi, and layer-specific rules.

[0118] "Real Time I Near Real Time" Bounded latency suitable for the described use case (e.g., within a threshold necessary for operational monitoring); not necessarily zero latency.

[0119] "Runtime Telemetry" Operational data sampled or collected from running systems, including message volumes, event counts, API call rates, latencies, and error indicators.

[0120] "Search Interface" An input control (e.g., text box, API) that accepts an identifier of any element and triggers Focus with Doi-based context expansion.

[0121] "Stroke Thickness" A visual variable applied to Curved Paths to encode usage intensity (e.g., message volume) computed from Runtime Telemetry.

[0122] "Subsystem" A coherent, tightly integrated set of applications that are usually introduced or replaced together; often a procured package integrated into the business system.

[0123] "System of Record (SOR)" A software module or package that maintains authoritative data and business rules for one or more System Use Cases and exposes Integration Points.

[0124] "System Use Case" An atomic business objective that a user or system accomplishes through the enterprise system.

[0125] "User" A human operator or an automated agent interacting with the system. "Vector Graphic I Interactive Package" An export format: (i) vector graphic denotes resolution-independent image formats (e.g., SVG, PDF); (ii) interactive package denotes a shareable bundle capable of client-side interaction.

[0126] "WebSocket / Webhook / gRPC / GraphQL I SOAP / REST" Illustrative integration technologies: WebSocket (full-duplex messaging), Webhook (HTTP callback on events), gRPC (RPC over HTTP / 2 with schema), GraphQL (typed query language), SOAP (XML-based protocol), REST (resource-oriented API style).

[0127] A “channel application”, also called a channel app, means software that provides a user interface for business operations and is executed on a platform such as a browser, a handheld device, a desktop operating system, a television platform, a virtual reality headset, or smart glasses.

[0128] A “system use case” means an atomic business objective that a user accomplishes through the enterprise system.

[0129] A “web application programming interface” or web API means an interface accessible over a computer network through a protocol such as HTTP, TCP, REST, GraphQL, gRPC, SOAP, WebSocket, or webhook.

[0130] A “system of record”, abbreviated SOR, means a software module or package that maintains authoritative data and business rules for a subset of use cases.

[0131] An “integration point” means a specific participation of a software module in an integration, where the integration point is characterized at least by whether the module initiates or consumes the integration and whether the module owns the integration contract.

[0132] A “Internal integration” means a connection between two or more Internal integration points that is executed on the server side using a technology such as files, events, synchronous APIs, asynchronous APIs, or webhooks.

[0133] General disclosures regarding interpretation of the disclosure

[0134] In this specification, reference is made to particular features of the invention. It is to be understood that the disclosure of the invention in this specification includes all appropriate combinations of such particular features. For example, where a particular feature is disclosed in the context of a particular embodiment or a particular claim, that feature can also be used, to the extent appropriate, in the context of other particular embodiments and claims, and in the invention generally. The embodiments disclosed in this specification are exemplary and do not limit the invention. Other embodiments can be utilized and changes can be made. As used in this specification, the singular forms “a”, “an”, and “the” include plural reference unless the context clearly dictates otherwise. Thus, for example, a reference to “a part” includes a plurality of such parts, and so forth. The term "comprises" and grammatical equivalents thereof are used in this specification to mean that, in addition to the features specifically identified, other features are optionally present. The term "consisting essentially of" and grammatical equivalents thereof is used herein to mean that, in addition to the features specifically identified, other features may be present which do not materially alter the claimed invention. The term "at least" followed by a number is used herein to denote the start of a range beginning with that number (which may be a range having an upper limit or no upper limit, depending on the variable being defined). For example "at least 1 " means 1 or more than 1, and "at least 80%" means 80% or more than 80%. The term "at most" followed by a number is used herein to denote the end of a range ending with that number (which may be a range having 1 or 0 as its lower limit, or a range having no lower limit, depending upon the variable being defined). For example, "at most 4" means 4 or less than 4, and "at most 40% " means 40% or less than 40 %. When, in this specification, a range is given as "(a first number) to (a second number)" or "(a first number) - (a second number)", this means a range whose lower limit is the first number and whose upper limit is the second number. Where reference is made in this specification to a method comprising two or more defined steps, the defined steps can be carried out in any order or simultaneously, and the method can optionally include one or more other steps which are carried out before any of the defined steps, between two of the defined steps, or after all the defined steps. Where reference is made herein to "first" and "second" features, this is generally done for identification purposes; unless the context requires otherwise, the first and second features can be the same or different, and reference to a first feature does not mean that a second feature is necessarily present (though it may be present). Where reference is made herein to "a" or "an" feature, this includes the possibility that there are two or more such features (except where the context excludes that possibility). Claim drafting conventions. System, method, and computer program product claims are intended to be coextensive where appropriate. Functional language such as “configured to,” “operative to,” or “for” describes capability and does not invoke any special interpretation unless an applicable jurisdiction dictates otherwise. Compatibility and substitution. Specific brands, standards, or interfaces (for example, databases, file formats, operating systems, cloud services) are cited as examples; any compatible alternatives may be substituted. Data structures (arrays, graphs, trees, tables, documents) and storage layouts (row-store, columnar, key-value, object) may be used interchangeably as suits the implementation. Error handling and security. Unless stated otherwise, embodiments may include validation, error handling, retry / backoff, authentication / authorization, encryption in transit and at rest, logging, observability, and other operational safeguards customary in software systems. Units and precision. Where values are derived from measurements or estimations (e.g., latency, throughput, probability, confidence), tolerances and implementation variance are contemplated unless a claim specifies otherwise. Jurisdiction-neutrality. The terminology herein is intended to be acceptable across major patent offices (e.g., under PCT and EPC practice). Where certain expressions are disfavored in a jurisdiction, equivalent wording may be substituted without changing the technical substance, for example, “computer-readable medium” / “computer program product”.

[0135] General disclosures regarding software subject-matter. The disclosure describes software and computer-implemented embodiments. References to particular features, components, or steps are non-limiting and may be combined in any technically compatible manner unless expressly stated otherwise. Software / hardware realization. Unless specifically limited, any “module,” “engine,” “service,” “controller,” “process,” “task,” or “component” may be implemented in software, firmware, hardware, or any combination thereof. Software may execute on a single device or be distributed across multiple devices or services. Hardware may include general-purpose processors, GPUs, DSPs, FPGAs, or ASICs. Computing environment. A “computing device,” “computer,” “server,” or “client device” includes processor! s) and memory coupled to one or more computer-readable media storing instructions that, when executed, cause performance of the described operations. Examples include desktop or mobile devices, embedded systems, edge devices, virtual machines, and containers. A “network” includes any wired, wireless, or hybrid network (e.g., LAN, WAN, cellular, Wi-Fi, the public Internet, VPNs), and messages may traverse multiple networks and intermediaries. Program instructions & data. “Program instructions,” “code,” or “software” encompass source code, object code, scripts, configuration, models (e.g., machine -learning parameters), bytecode, or any representation that can be processed to cause a device to perform operations. “Data,” “records,” or “messages” include any digital representation (text, audio, video, images, logs, metrics, events, API payloads, or combinations thereof). Computer-readable media / program product. Unless otherwise indicated, a computer-readable medium is a tangible storage medium capable of storing instructions or data (for example, semiconductor memory, magnetic or optical media, flash storage, or solid-state drives). In jurisdictions where “computer program product” language is preferred, the disclosure contemplates a program product comprising instructions which, when executed, cause a device to carry out the methods described herein. Distributed / cloud execution. Operations attributed to a single element may be partitioned among multiple machines, threads, or services (e.g.. microservices), executed remotely (e.g., in a cloud region), cached or batched, or offloaded to accelerators, unless a claim expressly limits otherwise. State may be synchronized eventually or strongly, and consistency models may vary by embodiment. User and I / O. “User” includes a human or an automated agent. “Input” may be provided via GUI interactions (mouse, trackpad, touchscreen, stylus, keyboard), voice, sensors, or programmatic interfaces (APIs / webhooks). “Output” may include GUI updates, audio, haptics, logging, or machine-readable responses. References to a “display” encompass monitors, mobile screens, head-mounted displays, or any device capable of presenting graphics. Performance terms. Phrases such as “in real time,” “instant,” or “without perceptible delay” denote bounded latency suitable for the described use case (for example, not more than a specified threshold in particular embodiments). These terms do not require zero latency unless a numerical bound is expressly recited.

Claims

Claims1. A computer-implemented method for visualizing socio-technical dependencies in an enterprise system, the method comprising the steps of:(i) ingesting enterprise metadata identifying channel applications, system use cases, external integration points, systems of record, internal integration points, and internal integrations;(ii) assigning the identified items to concentric visualization layers including at least a channel applications layer, a system use cases layer, a external integrations layer, a systems -of-record layer arranged into subsystems, an internal integration points layer, and a internal integrations layer; representing, within the internal integrations layer, each internal integration as a curved path between corresponding integration points;(iii) obtaining an organizational hierarchy encoding team ownership of the integration points; and(iv) applying hierarchical edge bundling to the curved paths using the organizational hierarchy so that (a) curves that share closer organizational ancestry are bundled more tightly and (b) a geometric route of each curved path through the hierarchy indicates organizational distance relevant to change management.

2. The method of claim 1, wherein ingesting comprises scraping documentation repositories, reading interface description languages, querying service catalogs, and sampling runtime telemetry, and wherein assigning to the layers is performed without manual layout.

3. The method of claim 1, wherein applying hierarchical edge bundling comprises routing each curved path through intermediate hierarchy nodes including a lowest common ancestor of producer- and consumer-side ownership chains.

4. The method of claim 1 , further comprising receiving a user selection of a first element and, responsive to the selection, highlighting elements related to the first element across the layers while dimming unrelated elements to declutter the display.

5. The method of claim 4, further comprising animating at least a subset of curved paths to indicate directionality from a producer integration point to a consumer integration point.

6. The method of claim 1, further comprising assigning, to at least some elements, an intended target state selected from implement, retire, and sustain, and encoding the intended target state by a visual variable comprising color, texture, or opacity.

7. The method of claim 1, further comprising computing usage metrics for internal integrations from runtime telemetry and encoding message-volume intensity by stroke thickness and error-rate intensity by stroke texture within the internal integrations layer.

8. The method of claim 1, further comprising providing a search interface that, upon receiving an identifier of any element, focuses the visualization on that element, expands a surrounding context by a degree-of-interest function, and collapses unrelated context.

9. The method of claim 1, further comprising computing cohesion and coupling metrics for subsystems by comparing intra-subsystem curved paths to inter-subsystem curved paths and presenting suggested subsystem boundary adjustments.

10. The method of claim 1, further comprising exporting the visualization as at least one of a static image, a vector graphic, and an interactive package, and persisting user-defined overlays of intended target state.

11. A system comprising one or more processors and memory storing instructions that, when executed, cause the system to perform operations comprising: ingesting enterprise metadata identifying channel applications, system use cases, external integration points, systems of record, internal integration points, and internal integrations; assigning the identified items to concentric visualization layers including at least the layers recited in claim 1; constructing curved paths between integration points that participate in internal integrations; obtaining an organizational hierarchy that encodes team ownership of the integration points; performing hierarchical edge bundling according to the organizational hierarchy so that curves are grouped by organizational commonality and routed through hierarchy nodes; and rendering an interactive visualization that highlights related elements across the layers in response to user input.

12. The system of claim 11, wherein the instructions further cause the system to classify elements by intended target state, persist transition plans that move elements from current state to target state, and apply a target-state overlay during rendering.

13. The system of claim 11, wherein the instructions further cause the system to encode message volume by curve thickness and error rate by curve texture based on sampled telemetry.

14. The system of claim 11, wherein the instructions further cause the system to accept user edits to placement or classification and to reconcile the edits with subsequently ingested metadata.

15. The system of claim 11, wherein an arc length allocation within a grouping level of the systems-of-record layer reflects proportional sizes of groups associated with adjacent layers.

16. The system of claim 11, wherein a bundling strength parameter used for hierarchical edge bundling is automatically adjusted responsive to a current zoom level or focus state.

17. A non-transitory computer-readable medium storing instructions that, when executed by one or more processors, cause performance of operations comprising: ingesting enterprise metadata identifying channel applications, system use cases, external integration points, systems of record, internal integration points, and internal integrations; assigning the identified items to concentric visualization layers including at least a channel applications layer, a system use cases layer, an external integration points layer, a systems-of-record layer arranged into subsystems, an internal integration points layer, and a internal integrations layer; constructing curved paths between integration points that participate in internal integrations; obtaining an organizational hierarchy that encodes team ownership of the integration points; applying hierarchical edge bundling to the curved paths according to the organizational hierarchy so that curves are routed through hierarchy nodes indicative of organizational distance; and rendering an interactive visualization that highlights related elements across the layers in response to user input.

18. The computer-readable medium of claim 17, wherein the instructions further cause the system to provide a search interface that focuses the visualization on a queried element, expands a surrounding context by a degree- of-interest function, and collapses unrelated context.

19. The computer-readable medium of claim 17, wherein the instructions further cause the system to simulate a breaking change by receiving a designation that an integration contract is breaking, determining impacted integration points by traversing the curved paths, computing an organizational-distance measure from routes through the organizational hierarchy, and rendering an impact overlay that indicates change-management distance.

20. The computer-readable medium of claim 17, wherein the instructions further cause the system to export a narrative of a recorded sequence of user focus operations as an architectural review artifact.

Citation Information

Patent Citations

  • Team based row level security system and method

    US20060200860A1

  • Method and system for understanding social organization in a design and development process

    US20080288632A1

  • Parametric modeling and simulation of complex systems using large datasets and heterogeneous data structures

    US20210209505A1

  • Network Security Monitoring and Correlation System and Method of Using Same

    US20210218649A1

  • Systems and methods for automating data science machine learning analytical workflows

    US20220076165A1