Synchronizing Source Code and Workflow Objects for Offline Development

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software development workflow systems typically do not support offline operation, making it difficult and time-consuming for developers to update related systems after using distributed version control systems (DVCS) offline.

Innovation Solution

A mechanism is provided for synchronizing source code objects and software development workflow objects, allowing them to be used offline by creating a copy of the source control object store that includes both source code and workflow objects, which can be modified and then merged back into the original stores when a network connection is reestablished.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If software development workflow systems do not support offline operation, then the system can maintain centralized control and data consistency, but developers experience difficulty and time consumption when updating systems after offline use

Engineering Contradiction:
Improveoffline operation capabilityVSAvoidtime to update workflow systems after offline use
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs preliminary actions by synchronizing workflow objects to the development device before the developer goes offline. The synchronization mechanism prepares and transfers necessary workflow data in advance, so that when the developer comes back online, the workflow system is already updated and ready for immediate use, eliminating the need for time-consuming post-offline updates.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates a copy of the workflow objects and stores them on the development device. This copy allows the developer to access and work with workflow information offline without requiring a continuous network connection. When online, the system can synchronize the copy with the central workflow system, resolving the contradiction between offline accessibility and centralized control.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If developers use distributed version control systems offline, then they can work independently of network connectivity, but they face difficulty updating related software development workflow systems

Engineering Contradiction:
Improveoffline work capabilityVSAvoidupdating workflow systems
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system merges the functionality of distributed version control with workflow system synchronization by integrating a synchronization mechanism that works alongside the DVCS. This combined approach allows developers to use both source code versioning and workflow management offline through a unified system that automatically synchronizes both types of objects when connectivity is restored.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The synchronization mechanism acts as an intermediary between the development device and the central workflow system. It handles the complex task of updating workflow objects automatically, mediating the communication between offline and online states and eliminating the manual updating process that developers would otherwise face.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If workflow objects are synchronized continuously, then data consistency is maintained, but network bandwidth and system resources are consumed

Engineering Contradiction:
Improvedata consistencyVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

Instead of continuous full synchronization, the system implements partial synchronization by transferring only the necessary workflow objects and changes when connectivity is available. This selective approach maintains data consistency for the objects that need to be updated while minimizing network bandwidth consumption by avoiding unnecessary transfers of unrelated data.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9448791B1Synchronizing source code objects and software development workflow objects
Publication Date: 2016.09.20 AMAZON TECH INC
  • US9448791B1 patent drawing
  • US9448791B1 patent drawing
  • US9448791B1 patent drawing

AI summary

Technologies are described herein for synchronization of source code objects and software development workflow objects. Software development workflow objects are identified that are related to source code objects to be synchronized to a development device. The identified software development workflow objects are then stored in a copy of a source control object store that also includes the source code objects to be synchronized. The copy of the source control object store may then be transmitted to the development device for offline use. Tools might also be provided on the development device for utilizing the software development workflow objects stored in the copy of the source control object store maintained by the development device. The copy of a source control object store containing modified source code objects and modified software development workflow objects might also be utilized to synchronize the changes to the objects to an appropriate object store.