Multi-Stage Report Generation in Process Automation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current process automation systems face challenges in efficiently managing distributed processes and generating reports, particularly in complex software projects, where resource allocation and diagnostic information management are cumbersome and inflexible.

Innovation Solution

Implementing a general-purpose property mechanism that allows arbitrary data to be attached to objects in the system, a three-tier hierarchy of data objects, and advanced report generation techniques that separate data gathering and report generation, enabling dynamic configuration and user-configurable reports.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a traditional process automation system is used to manage distributed processes, then resource allocation can be performed, but the system becomes cumbersome and inflexible when managing complex software projects

Engineering Contradiction:
Improveflexibility in managing distributed processesVSAvoidcomplexity of resource allocation management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments the management of distributed processes into hierarchical levels (central database, job controllers, job steps), allowing each segment to operate independently while maintaining overall system coordination. This reduces the complexity burden on any single component and improves adaptability at each level.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic property attachment mechanisms that allow the system structure to adapt during runtime. Properties can be dynamically added, removed, or modified on job objects, enabling flexible reconfiguration of distributed processes without system redesign, thus improving adaptability while managing complexity.

Inventive Principle:
Principle #15Dynamics

2Loss of information

If detailed diagnostic information is collected from all job steps, then comprehensive reporting is achieved, but the data management and report generation become inefficient

Engineering Contradiction:
Improvecompleteness of diagnostic informationVSAvoidefficiency of report generation
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The system extracts only the necessary diagnostic information from job steps based on user-defined criteria, rather than collecting all possible data. This selective extraction maintains information completeness for relevant metrics while reducing data volume, thereby improving report generation efficiency without significant loss of critical information.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system implements partial data collection by gathering diagnostic information at appropriate granularities - collecting detailed data only where needed and summary-level data elsewhere. This partial action approach maintains necessary information completeness while avoiding the inefficiency of collecting and processing excessive data across all job steps.

Inventive Principle:
Principle #16Partial or excessive action

3Device complexity

If the report generation process is integrated with data gathering, then the process is simpler, but the system cannot efficiently handle complex reporting requirements for distributed processes

Engineering Contradiction:
Improvesimplicity of report generation processVSAvoidcapability to handle complex reporting requirements
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The report generation process is segmented into distinct phases: data gathering, data processing, and report formatting. This segmentation allows each phase to be optimized independently - data gathering can focus on efficiency while report formatting can address complex user requirements, thus maintaining simplicity in the overall process while achieving versatility in handling complex reporting needs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary data structure layer between data gathering and report generation. This intermediary layer standardizes data from various job steps into a uniform format, simplifying the report generation process while enabling versatile handling of complex reporting requirements through configurable templates and processing rules.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If code modification is required to change system configuration, then system control is precise, but the ease of configuration is reduced

Engineering Contradiction:
Improveprecision of system controlVSAvoidease of configuration
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system implements dynamic configuration through runtime property attachment, allowing system behavior to be modified without code changes. Properties can be added, removed, or modified on job objects during execution, providing precise control over system behavior while maintaining ease of configuration through a user-friendly interface rather than requiring programming expertise.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system enables self-service configuration where users can directly modify system behavior by attaching properties to objects without requiring developer intervention or code modification. This self-service mechanism maintains precise control over system operation while dramatically improving ease of configuration for end users.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8042089B2Process automation system and method employing multi-stage report generation
Publication Date: 2011.10.18 CLOUDEBEES INC
  • US8042089B2 patent drawing
  • US8042089B2 patent drawing
  • US8042089B2 patent drawing

AI summary

The embodiments of the invention described herein employ sophisticated techniques for managing distributed processes in a process automation system. Specifically, one embodiment of the invention implements a general purpose property mechanism in which arbitrary data is attached to any object in the system (e.g., projects, procedures, jobs, job steps, resources, etc), thereby providing a convenient way to configure the system without modifying the underlying program code. In addition, in one embodiment, a three-tier hierarchy of data object is employed: “projects,”“procedures,” and “steps” (or “projects,”“jobs” and “job steps” during runtime). A property may be attached to any object on any tier of the hierarchy to configure that object and (potentially) all of the objects which reference the property. The properties and property sheets may be attached both statically (before runtime) and dynamically (during runtime). Moreover, one embodiment of the invention employs a unique property substitution syntax to allow the value for a particular property to be located and substituted dynamically at runtime. In addition, advanced report generation techniques are described below in which the report generation process is logically separated into a data gathering stage and a report generation stage. The data gathering stage extracts certain specified properties and diagnostic information from each job step. The extracted information is then stored in a highly flexible, reusable data format which is used to create different types of user-configurable reports.