Component-Based Sensor Software Toolset for Rapid Development

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developing sensor-enabled software applications is challenging due to the need for dedicated code for various sensors, complex data interrelationships, and asynchronous sensor data events, requiring significant programmer effort for data collection, processing, and coordination.

Innovation Solution

A component-based software toolset and method that uses predefined sensor-related components as building blocks, allowing users to define and configure data source, data series, and data field components to create complex sensor data processing flows through a front-end application generating system specifications, which are then dynamically built and run by a back-end application.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If dedicated program code is added for each sensor type and connection, then sensor data collection capability is improved, but programmer effort and code complexity increase significantly

Engineering Contradiction:
Improvesensor data collection capabilityVSAvoidcode complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the sensor data collection system into separate, reusable components: a base class for sensor connections and specific subclasses for different sensor types (local sensors, remote sensors, file sensors, database sensors). Each component is independently developable and can be combined in various ways to handle different sensor configurations without requiring dedicated code for each combination.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The base class `SensorConnection` provides universal functionality that can be inherited by multiple specific sensor connection types. This base class handles common operations such as data collection, error handling, and event management, allowing all sensor types to share common code while maintaining type-specific capabilities through inheritance.

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

2Adaptability or versatility

If programming code is written for each sensor connection type, then data processing capability is improved, but development time and programmer effort increase

Engineering Contradiction:
Improvedata processing capabilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary action by pre-defining the `SensorConnection` base class and its subclasses before the actual application development. The framework includes pre-implemented methods for data collection, processing, and event handling, so that developers can simply instantiate and configure pre-built components rather than writing code from scratch for each sensor connection type.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses code reuse through inheritance, where specific sensor connection classes copy and extend the functionality of the base class. This allows developers to leverage existing well-tested code structures while adding only the necessary type-specific logic, significantly reducing development time compared to writing separate code for each sensor type.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If sensor data from multiple sources is collected, then data processing capability is improved, but coordination of asynchronous data events becomes more challenging

Engineering Contradiction:
Improvedata processing capabilityVSAvoiddata coordination complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism through event-driven architecture where sensor connections raise events when data is available. The base class defines a standardized event interface that all sensor types implement, allowing consistent handling of asynchronous data events from multiple sources through a unified event management system that coordinates data flow automatically.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP2033089B1Method and system for rapidly developing and deploying sensor-enabled software applications
Publication Date: 2021.03.10 HEXAGON TECH CENT GMBH
  • EP2033089B1 patent drawingFigure 1~3
  • EP2033089B1 patent drawingFigure 4~5
  • EP2033089B1 patent drawingFigure 6

AI summary

A system for deploying component-based software systems (212) for the implementation of desired sensor data process flows makes use of a toolset of software components specially tailored for building sensor data process flows. In one or more embodiments, the system comprises a front-end application (202) operative to generate system specifications (210) from user input, each system specification (210) defining a desired component-based software system (212) of one or more sensor components and their corresponding configurations (50) in accordance with sensor component class definitions (e.g., the toolset) for a predefined set of sensor components tailored for building desired sensor data process flows. The system further includes a back-end application (204) operative to store the sensor component class definitions for use in instantiating sensor components as needed, receive system specifications (210), and dynamically build and run the corresponding desired component-based software systems (212) within a run-time environment (236) provided by the back-end application (204).