US 12,141,576 B2
Separate relationship management for application data objects
Michael George Landi, Farmingdale, NY (US); Matthew Roy Noble, Seattle, WA (US); Ryan D. Dawkins, Seattle, WA (US); and Shaun Levin, Seattle, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Sep. 29, 2021, as Appl. No. 17/489,488.
Prior Publication US 2023/0095230 A1, Mar. 30, 2023
Int. Cl. G06F 8/70 (2018.01); G06F 8/71 (2018.01); G06F 8/73 (2018.01); G06F 16/23 (2019.01); G06F 16/242 (2019.01)
CPC G06F 8/71 (2013.01) [G06F 8/73 (2013.01); G06F 16/2358 (2019.01); G06F 16/244 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
a document-based data store, storing a plurality of different application data objects for one or more application features of an application development, build, delivery, and deployment service;
a database, storing a graph that models relationships between the plurality of different application data objects, wherein the database is separate from the document-based data store;
at least one processor; and
a memory, storing program instructions that when executed by the at least one processor, cause the at least one processor to implement a control plane for an application, configured to:
receive a request, via a first plugin for a first development tool that provides a relationship management interface, that specifies within the request a relationship between a first application data object and a second application data object, the request causing a write to implement the specified relationship between the first application data object and the second application data object;
responsive to the receipt of the request:
determine, by a change control management system, that the write can be performed based, at least in part, on one or more requests received via a second plugin for a second one or more development tools;
send a request to perform the write to the database to update the graph in accordance with the specified relationship between the first application data object and the second application data object;
receive a response from the database that indicates successful completion of the write to the database to update the graph;
after receipt of the response from the database, return an acknowledgment of the request via the relationship management interface.