Split-Source Directory Structure for Virtual Path Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional software development approaches using Enterprise Archive (EAR) files are inconvenient for application development, as they mix source files and system-generated output, making it difficult to maintain a clean build and requiring mirroring of the EAR structure, which limits flexibility and prevents web-editing-in-place functionality.

Innovation Solution

A split-source directory structure is introduced, separating source and output directories, allowing the server to view both, with an abstraction layer and virtual mappings that map physical to virtual locations, enabling flexible build structures and eliminating the need for file copying during the build process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If a traditional EAR structure is used for application development, then the application can be packaged and deployed, but the source files and system-generated output are mixed together, making it difficult to maintain a clean build and perform iterative development

Engineering Contradiction:
Improveease of developmentVSAvoidease of maintaining clean build
Core Design Contradiction:
Ease of manufactureVSEase of operation

Solution Approach 1:

The patent divides the application directory into separate source and build directories. The source directory contains only human-readable source files under version control, while the build directory contains generated files. This segmentation allows developers to maintain a clean separation between source and generated content, enabling easy iterative development without mixing file types.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the generated files from the source directory and places them in a separate build directory. This extraction removes the harmful mixing of source and generated files, allowing the source directory to remain clean and manageable while the build directory handles all system-generated output.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If the build structure mirrors the EAR structure, then deployment is simplified, but flexibility in layout is reduced and web-editing-in-place functionality is prevented

Engineering Contradiction:
Improveflexibility in build structureVSAvoidease of deployment
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent introduces a virtual file system layer that acts as an intermediary between the physical directory structure and the EAR structure. This virtual layer maps logical paths to physical locations, allowing the build structure to be laid out flexibly for development purposes while automatically translating to the required EAR structure for deployment, thus maintaining both flexibility and ease of deployment.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Device complexity

If source files and generated files are in the same directory, then the directory structure is simple, but it becomes confusing and difficult to delete only system-generated files

Engineering Contradiction:
Improvesimplicity of directory structureVSAvoidease of deleting generated files
Core Design Contradiction:
Device complexityVSEase of operation

Solution Approach 1:

The patent segments the directory structure into distinct source and build directories. The source directory contains only editable source files, while the build directory contains all system-generated files. This segmentation maintains relative simplicity while enabling easy deletion of generated files by simply removing the build directory contents without affecting source files.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7774754B2System and method for software application development using virtual path mapping
Publication Date: 2010.08.10 ORACLE INT CORP
  • US7774754B2 patent drawing
  • US7774754B2 patent drawing
  • US7774754B2 patent drawing

AI summary

A development-oriented split-source directory structure, that can be used with an application server and which solves a number of the problems associated with traditional Enterprise Archive (EAR) files. In particular, the split-source directory structure presents a clean separation between human-readable source files stored in a source control system and generated java class files. The two directories (source and output) appear like a single application. In addition, the split-source directory structure supports an abstraction layer and mappings that allow a physical file location to be mapped to a virtual location. In this manner, the system provides flexibility in how the build structure can be laid out for a particular application development.