IP Library Granted Patent US 12,217,024
Granted Patent B2
US 12,217,024 · App. 18/163,264 · Granted Feb 4, 2025

Systems and methods for creating software

Inventors: Siddhartha Ghosh (London, GB); Sarvaswa Tandon (London, GB); Ralph Bourdoukan (London, GB); Sachin Dev Duggal (London, GB); Rohan Patel (London, GB)
Assignee: Engineer.ai Corp
G06F8/316G06F8/20G06F8/36G06F8/71G06Q10/06311G06Q30/0283
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,217,024
App. No.
18/163,264
Granted
Feb 4, 2025
Kind
B2
Abstract

An online software development platform providing an integrated resource for design, development, and purchase of customer-desired software applications for software projects created by customers. The platform comprising one or more computers configured using computer readable instructions stored in non-transitory computer memory to provide the software development platform, wherein the software development platform is configured to implement a plurality of electronic operational domains providing user-interactive capabilities or internal functionalities of the software development platform. The domains comprising a project scope process, a pricing process, and a project development process. The platform is configured to use a configuration involving knowledge graph to recommend features.

Claims (39)

1. An online software development platform providing an integrated resource for design and development of customer-desired software applications, comprising:

one or more computers configured using computer readable instructions stored in non-transitory computer memory to provide the online software development platform, wherein the online software development platform is configured to implement a plurality of electronic operational domains providing user-interactive capabilities or internal functionalities of the online software development platform, the domains comprising:

a database configured to store the online software development platform-defined graph data structures including edges, nodes, and properties in accordance with one or more data models, wherein the online software development platform-defined graph data structures comprises a plurality of different types of nodes representing entities, the node types comprising template, project, and feature, each node type having a set of defined attributes, and a plurality of different types of edges that represent interrelationship between entities;

wherein the online software development platform is configured to collect data from activity in a project scope process, pricing process, and project development process in accordance with the online software development platform-defined graph data structures, wherein as part of the project scope process a plurality of features are selected by a current user to be included in the customer-desired software application;

wherein the online software development platform is configured to generate and store a graph database comprising the nodes and edges created from the collected data in the operation of the online software development platform and configured to reuse existing nodes and edges, add new nodes and edges, and adjust individual attributes of existing nodes and edges, wherein the graph database represents via nodes and edges an aggregation of the software projects conducted on the online software development platform and related information and is updated to include new software projects using collected data; and

wherein the online software development platform configured to, in response to a query of the nodes and edges and graph traversal, control an action performed by the project development process.

2. The online software development platform of claim 1 wherein the project scope process is configured to selectively assign one or more elements of the software project, including one or of the selected features for the project, to developers.

3. The online software development platform of claim 1 wherein the project scope process is configured to manage the development process.

4. The online software development platform of claim 1 wherein the project scope process is configured to track the development process.

5. The online software development platform of claim 1 wherein the online software development platform is configured to generate an output comprising an assignment to a developer in response to the query.

6. The online software development platform of claim 1 wherein the online software development platform is configured to selectively assign one of the elements of the software project to one of the developers in in response to the query.

7. The online software development platform of claim 1 wherein the online software development platform is configured to:

include embedding generation that generates an embedding comprising a plurality of n-dimensional vectors that in accordance with an embedding algorithm represent the graph database, each n-dimensional vector corresponding to a node in the graph database and comprising vector values based on relationship to other nodes in the graph database; and

control the embedding generation with the hyper parameters and generate different and store different embeddings corresponding to different software tools.

8. A non-transitory computer readable medium storing one or more software applications that causes a computer system to execute a method that implements an online software development platform providing an integrated resource for design and development of customer-desired software applications, the method comprising:

implementing a plurality of electronic operational domains providing user-interactive capabilities or internal functionalities of the online software development platform, the domains comprising:

a database configured to store the online software development platform-defined graph data structures including edges, nodes, and properties in accordance with one or more data models, wherein the online software development platform-defined graph data structures comprises a plurality of different types of nodes representing entities, the node types comprising template, project, and feature, each node type having a set of defined attributes, and a plurality of different types of edges that represent interrelationship between entities;

collecting data from activity in a project scope process, pricing process, and project development process in accordance with the online software development platform-defined graph data structures, wherein as part of the project scope process a plurality of features are selected by a current user to be included in the customer-desired software application;

generating and storing a graph database comprising the nodes and edges created from the collected data in the operation of the online software development platform and reusing existing nodes and edges, add new nodes and edges, and adjust individual attributes of existing nodes and edges, wherein the graph database represents via nodes and edges an aggregation of the software projects conducted on the online software development platform and related information and is updated to include new software projects using collected data; and

in response to a query of the nodes and edges and graph traversal, controlling an action performed by the project development process.

9. The non-transitory computer readable medium of claim 8 wherein method comprising selectively assigning one or more elements of the software project, including one or of the selected features for the project, to developers.

10. The non-transitory computer readable medium of claim 8 wherein the project scope process is configured to manage the development process.

11. The non-transitory computer readable medium of claim 8 wherein the project scope process is configured to track the development process.

12. The non-transitory computer readable medium of claim 8 wherein the method comprising generating an output comprising an assignment to a developer in response to the query.

13. The non-transitory computer readable medium of claim 8 wherein the method comprising selectively assigning one of the elements of the software project to one of the developers in in response to the query.

14. The non-transitory computer readable medium of claim 8 wherein the method comprising:

including embedding generation that generates an embedding comprising a plurality of n-dimensional vectors that in accordance with an embedding algorithm represent the graph database, each n-dimensional vector corresponding to a node in the graph database and comprising vector values based on relationship to other nodes in the graph database; and

controlling the embedding generation with the hyper parameters and generate different and store different embeddings corresponding to different software tools.

15. A computer implemented method for an online software development platform providing an integrated resource for design and development of customer-desired software applications, the method comprising:

implementing a plurality of electronic operational domains providing user-interactive capabilities or internal functionalities of the online software development platform, the domains comprising:

a database configured to store the online software development platform-defined graph data structures including edges, nodes, and properties in accordance with one or more data models, wherein the online software development platform-defined graph data structures comprises a plurality of different types of nodes representing entities, the node types comprising template, project, and feature, each node type having a set of defined attributes, and a plurality of different types of edges that represent interrelationship between entities;

collecting data from activity in a project scope process, pricing process, and project development process in accordance with the online software development platform-defined graph data structures, wherein as part of the project scope process a plurality of features are selected by a current user to be included in the customer-desired software application;

generating and storing a graph database comprising the nodes and edges created from the collected data in the operation of the online software development platform and reusing existing nodes and edges, add new nodes and edges, and adjust individual attributes of existing nodes and edges, wherein the graph database represents via nodes and edges an aggregation of the software projects conducted on the online software development platform and related information and is updated to include new software projects using collected data; and

in response to a query of the nodes and edges and graph traversal, controlling an action performed by the project development process.

16. The computer implemented method of claim 15 wherein method comprising selectively assigning one or more elements of the software project, including one or of the selected features for the project, to developers.

17. The computer implemented method of claim 15 wherein the project scope process is configured to manage the development process.

18. The computer implemented method of claim 15 wherein the project scope process is configured to track the development process.

19. The computer implemented method of claim 15 wherein the method comprising generating an output comprising an assignment to a developer in response to the query.

20. The computer implemented method of claim 15 wherein the method comprising selectively assigning one of the elements of the software project to one of the developers in in response to the query.

Assignments (1)
SECURITY INTEREST Recorded Oct 16, 2024
From: ENGINEER.AI CORP.; ENGINEER.AI GLOBAL LIMITED
To: VIOLA CREDIT PARTNERS MANAGEMENT, LIMITED PARTNERSHIP, AS COLLATERAL AGENT
Reel/Frame 068916/0785 →
Continuity (3)
Continuation 17348695 · Jun 15, 2021
Provisional Application 63039968 · Jun 16, 2020
Related Publication 20230176826A1 · Jun 8, 2023
References Cited (92)
US 6016394A · Walker · 2000 [cited by applicant]
US 6697824B1 · Bowman-Amuah · 2004 [cited by applicant]
US 7536676B2 · Baker et al. · 2009 [cited by applicant]
US 7783523B2 · Lopez et al. · 2010 [cited by applicant]
US 8144619B2 · Hoffberg · 2012 [cited by applicant]
US 8146053B2 · Morrow et al. · 2012 [cited by applicant]
US 8365018B2 · McIntosh et al. · 2013 [cited by applicant]
US 8413062B1 · Little · 2013 [cited by applicant]
US 8458009B1 · Southworth · 2013 [cited by applicant]
US 8621423B2 · Knight et al. · 2013 [cited by applicant]
US 8640027B2 · Chandhoke et al. · 2014 [cited by applicant]
US 8893212B2 · Reisman · 2014 [cited by applicant]
US 8997038B2 · Bozek et al. · 2015 [cited by applicant]
US 9129038B2 · Begel et al. · 2015 [cited by applicant]
US 9268544B2 · Kang et al. · 2016 [cited by applicant]
US 9286040B2 · Halley et al. · 2016 [cited by applicant]
US 9342623B2 · Narayanan et al. · 2016 [cited by applicant]
US 9477779B2 · Webber et al. · 2016 [cited by applicant]
US 9563407B2 · Salter · 2017 [cited by applicant]
US 9753960B1 · Troyanovsky · 2017 [cited by applicant]
US 9886247B2 · Laredo et al. · 2018 [cited by applicant]
US 10296308B2 · Lance · 2019 [cited by applicant]
US 10469741B2 · Ishibashi · 2019 [cited by applicant]
US 10521199B2 · Ganesan et al. · 2019 [cited by applicant]
US 10540153B2 · Stachura · 2020 [cited by applicant]
US 10649741B2 · Duggal · 2020 [cited by applicant]
US 10776965B2 · Stetson et al. · 2020 [cited by applicant]
US 10798028B2 · Fung et al. · 2020 [cited by applicant]
US 11086599B2 · Duggal et al. · 2021 [cited by applicant]
US 20030018952A1 · Roetzheim · 2003 [cited by applicant]
US 20050066304A1 · Tattrie et al. · 2005 [cited by applicant]
US 20060259442A1 · Iqbal · 2006 [cited by applicant]
US 20080004844A1 · Kefford · 2008 [cited by applicant]
US 20080235155A1 · Thywissen · 2008 [cited by applicant]
US 20090037287A1 · Baitalmal et al. · 2009 [cited by applicant]
US 20110088011A1 · Ouali · 2011 [cited by applicant]
US 20110271246A1 · Fujihara · 2011 [cited by applicant]
US 20110276354A1 · Bijani et al. · 2011 [cited by applicant]
US 20120331439A1 · Zimmermann et al. · 2012 [cited by applicant]
US 20140173454A1 · Sanchez · 2014 [cited by applicant]
US 20140330867A1 · Sarkar et al. · 2014 [cited by applicant]
US 20160055079A1 · Hanna · 2016 [cited by applicant]
US 20160092179A1 · Straub · 2016 [cited by applicant]
US 20160139888A1 · Iyer et al. · 2016 [cited by applicant]
US 20170221240A1 · Stetson et al. · 2017 [cited by applicant]
US 20200057946A1 · Singaraju et al. · 2020 [cited by applicant]
US 20200125478A1 · Iyer et al. · 2020 [cited by applicant]
US 20200285450A1 · Das et al. · 2020 [cited by applicant]
US 20210149957A1 · Grossman et al. · 2021 [cited by applicant]
US 20210349695A1 · Duggal et al. · 2021 [cited by applicant]
US 20210390032A1 · Quaglio et al. · 2021 [cited by applicant]
US 20220004366A1 · Ghosh · 2022 [cited by examiner]
US 20220236958A1 · Duggal et al. · 2022 [cited by applicant]
US 20220241548A1 · Duggal et al. · 2022 [cited by applicant]
US 20220244921A1 · Duggal et al. · 2022 [cited by applicant]
US 20220244922A1 · Duggal et al. · 2022 [cited by applicant]
US 20220244923A1 · Duggal et al. · 2022 [cited by applicant]
US 20220326914A1 · Duggal et al. · 2022 [cited by applicant]
US 20220342642A1 · Duggal et al. · 2022 [cited by applicant]
US 20230168869A1 · Ghosh · 2023 [cited by examiner]
US 20230168870A1 · Ghosh · 2023 [cited by examiner]
US 20230176825A1 · Ghosh · 2023 [cited by examiner]
US 20230176826A1 · Ghosh et al. · 2023 [cited by applicant]
US 20230176827A1 · Ghosh · 2023 [cited by examiner]
US 20230176828A1 · Ghosh · 2023 [cited by examiner]
US 20230185542A1 · Ghosh · 2023 [cited by examiner]
US 20230251830A1 · Ghosh · 2023 [cited by examiner]
CN 102880455 · 2013 [cited by applicant]
CN 107346249 · 2017 [cited by applicant]
CN 110457031 · 2019 [cited by applicant]
CN 110457313 · 2019 [cited by applicant]
CN 110515614 · 2019 [cited by applicant]
CN 111158670 · 2020 [cited by applicant]
JP 201325612 · 2013 [cited by applicant]
KR 101975272 · 2019 [cited by applicant]
WO 2004102431 · 2004 [cited by applicant]
WO 2015136607 · 2015 [cited by applicant]
WO 2018005665 · 2018 [cited by applicant]
WO 2021116471 · 2021 [cited by applicant]
Sharlene Aminullah, “Cost Estimation of Service Delivery in Cloud Computing”, Aug. 2012, Arjuna Technologies Ltd., 95 pages ( Year: 2012). [cited by applicant]
Nathan Curtis, “Modular Web Design—Creating Reusable Components for User Experience Design”, 2010, Peachpit Press, 328 pages (Year: 2010). [cited by applicant]
International Search Report and Written Opinion, International Application No. PCT/EP2020/085866 mailed Mar. 31, 2021 (11 pages). [cited by applicant]
Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration for International Application No. PCT/US2017/057030, International Fili… [cited by applicant]
Angel Puerta et al., “The UI Pilot: A Model-Based Tool to Guide Early Interface Design”, 2005, ACM, pp. 215-222 (Year: 2005). [cited by applicant]
Bernaschina et al., “Formal Semantics of OMG's Interaction Flow Modeling Language (IFML) for Mobile and Rich-Client Application Model Driven Development,” Elsevier, pp. 239-260 (2017). [cited by applicant]
Bernaschina et al., “Online Model Editing, Simulation and Code Generation for Web and Mobile Applications,” IEEE, pp. 33-37 (2017). [cited by applicant]
Chen et al., “Wireframe-Based UI Design Search Through Image Autoencoder,” Retrieved from the Internet: <https://arxiv.org/pdf/2103.07085vl.pdf> ACM Trans. Softw. Eng. Methodol., vol. 29, No. 3, Article 19, 31 pages (Ma… [cited by applicant]
Dekkers, “Beyond Development: Estimating Model for Run & Maintain Cost,” Software Measurement European Forum, Italy, pp. 249-264 (2007). [cited by applicant]
Al Asheeri and Hammad, “Machine Learning Models for Software Cost Estimation,” 2019 International Conference on Innovation and Intelligence for Informatics, Computing, and Technologies (3ICT), 6 pages (2019). [cited by applicant]
Thung, “API Recommendation System for Software Development,” Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, pp. 896-899 (2016). [cited by applicant]
Microsoft Development Support, “Recommendations API is retired! Here is what you can do,” Microsoft Dev Blogs, retrieved from https://devblogs.microsoft.com/, 5 pages (2019). [cited by applicant]
Yamanaka and Annamalai, “Build Recommendation Systems Using a Graph Database,” Oracle, 29 (2020). [cited by applicant]