Component-Based Application Generation for Mobile Platforms

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developing and maintaining software applications for various mobile devices is challenging due to restricted resources and the complexity of delivering large data sets, with current solutions either being resource-intensive or requiring multiple platform-specific versions, lacking platform independence and efficiency.

Innovation Solution

A component-based application generation environment using structured definition languages, XML code, and ECMAScript, which defines data, presentation, and message components, along with workflow components, to create persistent applications that can be deployed across different devices, facilitating platform independence and resource management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If native applications are developed for each mobile device platform, then application performance and device optimization are improved, but device complexity and development time increase due to requiring multiple platform-specific versions

Engineering Contradiction:
Improveapplication performanceVSAvoiddevelopment complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a universal application architecture where a single application written in one programming language can run on multiple mobile device platforms through just-in-time compilation. The system uses a runtime environment that can dynamically compile and execute the same application code on different platforms (Java ME, .NET Compact Framework, native), eliminating the need to develop separate versions for each platform while maintaining optimized performance.

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

Solution Approach 2:

The patent introduces an intermediary runtime environment and compilation system that acts as a mediator between the application source code and various platform-specific execution environments. This intermediary layer handles the translation and adaptation of a single application into multiple platform-specific versions automatically, reducing development complexity while preserving platform optimization.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If browsers are used to access web services on mobile devices, then platform independence is improved, but resource consumption increases due to runtime rendering and lack of data persistence

Engineering Contradiction:
Improveplatform independenceVSAvoidresource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent implements preliminary action by pre-compiling applications into platform-specific bytecode before runtime execution. This allows the application to be loaded and executed efficiently without requiring runtime rendering operations, reducing resource consumption while maintaining platform independence through the universal compilation approach.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by generating platform-specific copies of the application through automatic compilation. Instead of using a single interpreted version that consumes resources at runtime, the system creates optimized copies tailored to each platform's native execution environment, reducing resource usage while preserving adaptability.

Inventive Principle:
Principle #26Copying

3Productivity

If component-based application generation is implemented, then productivity and ease of maintenance are improved, but device complexity increases due to the need for structured definition languages and mapping modules

Engineering Contradiction:
Improveapplication development efficiencyVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the application into distinct components (UI components, data components, logic components) that can be independently defined, developed, and maintained. This modular component-based architecture improves productivity by allowing parallel development and easier maintenance, while the complexity is managed through standardized interfaces and automatic code generation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses parameter changes by allowing flexible configuration of application components through structured definition languages. The system can adjust compilation parameters, mapping relationships, and component properties to optimize for different platforms and requirements, improving productivity while managing complexity through parameterized design.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8407666B2System and method for generating component based applications
Publication Date: 2013.03.26 MALIKIE INNOVATIONS LTD
  • US8407666B2 patent drawing
  • US8407666B2 patent drawing
  • US8407666B2 patent drawing

AI summary

A system and method for generating an application based on a first component having definitions expressed in a structured definition language and a second component having a series of instructions. The component applications comprise data components, presentation components, and message components, which are written in XML code. The component applications further comprise workflow components which are written in a subset of ECMAScript, and are augmented with the XML code. The components define the processing on a device runtime environment of messages communicated over a network between the device and a datasource. The system and method have a data model for providing a persistent state of the application including the component definitions and the series of instructions. The system and method also have a code module for obtaining the components from the data model and for generating a first application element including code representing the component definitions. The system and method also have a mappings module for obtaining datasource mapping information from the data model and for generating a second application element including mapping file descriptors corresponding to the datasource mapping information, the mapping information for use in communication of the messages between the device runtime environment and the datasource. The system and method also have a resource module for collecting application resources and for generating a third application element including the resources, wherein the application elements are subsequently packaged as a deployable form of the application.