Methods, systems, and articles of manufacture for implementing software application development and releases

US2017372247A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017372247-A1
Application numberUS-201615192949-A
CountryUS
Kind codeA1
Filing dateJun 24, 2016
Priority dateJun 24, 2016
Publication dateDec 28, 2017
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Various aspects described herein are directed to a system that develops and manages releases of software applications. The system includes a server-side branch management module to automatically create one or more branches for deployment of a software application release, a deployment repository to store one or more box sets for a plurality of artifacts for the software release, and a code repository to store the plurality of artifacts. The system may further include a release management module configured to manage continuing releases of the software application, a continuous deployment dashboard module configured to receive the plurality of box sets from the deployment repository, and one or more development modules configured to create or modify at least some artifacts of the plurality of artifacts. The plurality of artifacts are automatically tagged with respective packaging types for automatic generation of the plurality of box sets.

First claim

Opening claim text (preview).

What is claimed is: 1 . A system for implementing software development and releases, comprising: one or more server computers connected to a plurality of client computing systems via one or more computer networks; a branch management module operatively coupled to the release management module and configured at least to automatically create one or more branches for deployment of a software application release; at least one persistent deployment repository accessible by at least the branch management module and the release management module and configured to store link structures corresponding to a plurality of artifacts for the software application release; and at least one persistent code repository accessible by at least the branch management module and the release management module and configured to store the plurality of artifacts. 2 . The system of claim 1 , further comprising: a release management module hosted on at least one server computer of the one or more server computers. 3 . The system of claim 2 , wherein the branch management module is further configured to generate a first box set and to identify link structures corresponding to the plurality of artifacts for the software application release. 4 . The system of claim 3 , wherein the branch management module is further configured to generate a plurality of box sets from the first box set and to identify respective link structures corresponding to artifacts in each of the plurality of box sets based in part or in whole upon one or more integration platforms or environments for the deployment of the software application release. 5 . The system of claim 4 , further comprising: a continuous deployment dashboard module configured to receive the plurality of box sets from the at least one deployment repository; and an enterprise continuous deployment module operatively coupled with the at least one persistent code repository and configured to receive the plurality of box sets based in part or in whole upon one or more acts performed by the continuous deployment dashboard module. 6 . The system of claim 5 , wherein the enterprise continuous deployment module is further configured to deploy the plurality of box sets to one or more enterprise services environments comprising at least one of a development environment, a quality check environment, a system environment, a Web environment, a manufacturing environment, or a performance test environment. 7 . The system of claim 1 , the release management module comprising at least one of: a release builder module that is configured to generate one or more models or packages for the software application release; a package identifying module that is configured to identify the plurality of artifacts with their respective packaging types; a resource generator module that is configured to generate software resources for the software application release; a software resource processing module that is configured to process at least some of the software resources; a data access module that is configured to provide one or more common data access mechanisms to access data or information related to the software application release; or a dependency module that is configured to generate and track dependencies among at least some of the plurality of artifacts. 8 . The system of claim 1 , the branch management module comprising at least one of: a snapshot module that is configured to take one or more snapshots of a state of a branch for the software application release upon an invocation of a commit command received from one or more modules operating on the branch; a data verification module that is configured to verify at least a newly created artifact or a modified artifact in the plurality of artifacts upon an invocation of the commit command received from the one or more modules operating on the branch and before storing the newly created artifact or the modified artifact in the at least one persistent code repository; a branching module that is configured to generate a project for the software application release, to create a branch with a common branch identifier, and to initiate a build process for the project with a project object model; a merge module that is configured to merge the newly created artifact or the modified artifact back into the one or more server computers; or an automatic tagging module that is configured to automatically tag at least some artifacts of the plurality artifacts with respective identifiers or package types. 9 . The system of claim 1 , further comprising: one or more code development modules that are configured to reside on or to interact with the plurality of client computing systems and are operatively coupled with at least the branch management module. 10 . The system of claim 9 , a code development module of the one or more code development modules comprising at least one of: a packaging identification module that is configured to associate a packaging type with the box set or a newly created artifact of the plurality of artifacts; a project object model module that is configured to generate a project and initiate a build process for the project with a project object model; an information generation and retrieval module that is configured to generate or retrieve object information and build information for the project object model; a build module that is configured to generate a build process and to perform version control, one or more code or program analyses, compilation, or interpretation for at least some artifacts of the plurality of artifacts for the build process; one or more test modules that are configured to automatically generate one or more tests and to set up one or more testing environments without relying on customizing the build process for the one or more tests; or a code hierarchy module that is configured to generate and maintain hierarchies indicating parent-child relationships among at least some artifacts of the plurality of artifacts. 11 . A computer implemented method for implementing software development and releases, comprising: one or more server computers connected to a plurality of client computing devices via one or more computer networks and comprising at least a branch management module and a release management module that are stored at least partially in memory of the one or more server computers, the one or more server performing a process, and the processing comprising: initiating a software application release for a software application at least by creating a branch, at the branch management module, for the software application release; automatically identifying a plurality of artifacts for the software application release based in part or in whole upon a plurality of packaging types associated with the plurality of artifacts; automatically packaging the plurality of artifacts into one or more box sets for deployment into one or more corresponding environments for the software application release; and deploying the one or more box sets into the one or more corresponding environments to complete the software application release. 12 . The machine implemented method of claim 11 , the act of initiating a software application release comprising: identifying the branch with a common branch identifier visible to the plurality of client computing systems; generating a project for the software application release; initiating a build process for the project by using a project object model; generating a snapshot by performing a database query in response to a commit command to store a state of at least some artifacts of the plurality of artifacts; and verifyin

Assignees

Inventors

Classifications

  • Test management · CPC title

  • Software maintenance or management · CPC title

  • Testing of software · CPC title

  • Sequencing of tasks or work · CPC title

  • Creation or generation of source code · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2017372247A1 cover?
Various aspects described herein are directed to a system that develops and manages releases of software applications. The system includes a server-side branch management module to automatically create one or more branches for deployment of a software application release, a deployment repository to store one or more box sets for a plurality of artifacts for the software release, and a code repo…
Who is the assignee on this patent?
Intuit Inc
What technology area does this patent fall under?
Primary CPC classification G06Q10/06316. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Dec 28 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 9 related publications on this page (citations in our corpus or others sharing the same primary CPC).