DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claims 1-20 have been submitted for examination and are pending further prosecution by the United States Patent & Trademark Office.
Allowable Subject Matter
Claims 4-10 and 14-20 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Specification
The abstract of the disclosure is objected to because of an informality. It is suggested Applicant amend the abstract as follows:
-- A method for generating an application template includes receiving a use case from a user, and analyzing the use case for missing attributes or ambiguities. The method also includes communicating with the user with a request, wherein the request is a notification for the user to provide the missing attributes or ambiguities, and receiving a response from the user. The method further includes generating an application template with code across a plurality of files, application manifest, and generated meta data. The application template takes the user closer to a working application. --
Applicant is reminded of the proper language and format for an abstract of the disclosure.
The abstract should be in narrative form and generally limited to a single paragraph on a separate sheet within the range of 50 to 150 words. It is important that the abstract not exceed 150 words in length since the space provided for the abstract on the computer tape used by the printer is limited. The form and legal phraseology often used in patent claims, such as "means" and "said," should be avoided. The abstract should describe the disclosure sufficiently to assist readers in deciding whether there is a need for consulting the full patent text for details.
The language should be clear and concise and should not repeat information given in the title. It should avoid using phrases which can be implied, such as, "The disclosure concerns," "The disclosure defined by this invention," "The disclosure describes," etc.
When re-submitted, the new abstract must be in a separate sheet, apart from other sheets.
Correction is required. See MPEP § 608.01(b).
Claim Objections
The following claims are objected to because of informalities and antecedence issues. It is suggested Applicants amend these claims as follows:
Claim 1
-- generating the [[an]] application template with code across a plurality of files, application manifest, and generated meta data, wherein the application template takes the user closer to a working application. --
Claim 2
-- sending a [[the]] request to the user via the chat box for the use case. --
Claim 5
-- using one or more selected modules received from the user to communicate use case keywords, integration endpoints, user interface (UI) components, server side components, and/or an authentication model, to an application programming interface (API) layer for developers. --
Claim 7
-- passing the UI design image through a design content processor, wherein the design content processor is configured to understand [[the]] details present in the UI design; --
-- converting the UI design into a HTML with CrayonTM components such that an [[the]] application developed is easily migrated into FreshworksTM UI. --
Claim 8
-- breaking down an [[the]] application into multiple sections, wherein the breaking down comprises prompting the user to provide one or more missing attributes. --
Claim 11
-- generating the [[an]] application template with code across a plurality of files, application manifest, and generated meta data, wherein the application template takes the user closer to a working application. --
Claim 12
-- sending a [[the]] request to the user via the chat box for the use case. --
Claim 15
-- using one or more selected modules received from the user to communicate use case keywords, integration endpoints, user interface (UI) components, server side components, and/or an authentication model, to an application programming interface (API) layer for developers. --
Claim 17
-- passing the UI design image through a design content processor, wherein the design content processor is configured to understand [[the]] details present in the UI design; --
-- converting the UI design into a HTML with CrayonTM components such that an [[the]] application developed is easily migrated into FreshworksTM UI. --
Claim 18
-- breaking down an [[the]] application into multiple sections, wherein the breaking down comprises prompting the user to provide one or more missing attributes. --
Claims 2-10 and 12-20 are additionally objected to due to their dependence on objected parent claim(s).
Appropriate correction is required.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1, 3, 11 and 13 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. Claim 1 recites one or more computer-readable media storing one or more computer programs for generating an application template. Under a broadest reasonable interpretation, claim 1 would fall under the category of mental processes as the claim features limitations performable as mental steps, with the assistance of pen & paper, but without additional elements that integrate the abstract idea into a practical application or amount to significantly more than the abstract idea. An analysis of claim 1 according to the 2019 Revised Patent Subject Matter Eligibility test follows:
Step 1: Is the claim directed to a process, machine, manufacture or composition of matter?
Yes, claim 1 is directed to computer readable media and, therefore, a manufacture.
Step 2A Prong 1: Does the claim recite an Abstract Idea, Law of Nature, or Natural Phenomenon?
Yes, claim 1 recites an abstract idea as the following limitations are performable as mental processes with the assistance of pen & paper: receiving a use case from a user; - A software developer can manually submit a printed use case for evaluation; analyzing the use case for missing attributes or ambiguities; - Upon receiving the use case, a software engineer can manually analyze the use case for missing attributes or ambiguities; communicating with the user with a request, wherein the request is a notification for the user to provide the missing attributes or ambiguities; receiving a response from the user; - The software engineer can ask the developer to provide the missing attributes or ambiguities and receive a response from the developer; generating the [[an]] application template with code across a plurality of files, application manifest, and generated meta data, wherein the application template takes The software developer can manually generate an application template containing source code, a manifest and meta data using pen & paper.
Step 2A Prong 2: Does the Claim Recite Additional Elements That Integrate The Judicial Exception Into A Practical Application?
No. While claim 1 recites the additional elements of one or more non-transitory computer-readable media storing one or more computer programs for generating an application template, the one or more computer programs configured to cause at least one processor to perform, these additional elements collectively amount to using a computer as a tool for performing the abstract idea. Therefore, the additional elements do not integrate the abstract idea into a practical application.
Step 2B: Does the Claim Recite Additional Elements That Amount To Significantly More Than The Judicial Exception?
No. While claim 1 recites the additional elements of one or more non-transitory computer-readable media storing one or more computer programs for generating an application template, the one or more computer programs configured to cause at least one processor to perform, these additional elements collectively amount to using a computer as a tool for performing the abstract idea. Therefore, the additional elements do not amount to significantly more than the abstract idea.
Claim 11, which recites a method for generating an application template, is rejected for the same reasons given for analogous claim 1.
Claims 3 and 13 are also directed to the abstract idea as the developer can manually perform the steps of upon receiving the request, execute a series of steps to understand parameters of the use case. Claims 3 and 13 do not recite additional element(s) that integrate the abstract idea into a practical application or amount to significantly more than the abstract idea, as the claims do not recite additional element(s), per se.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1 and 11 are rejected under 35 U.S.C. 103 as being unpatentable over US 20220391181 A1 - hereinafter "Bansal", in view of US 20210149648 A1 - hereinafter "Velammal".
With respect to claim 1, Bansal teaches,
One or more non-transitory computer-readable media storing one or more computer programs for generating an application template, the one or more computer programs configured to cause at least one processor to perform: - Fig. 5
receiving a use case from a user; - "The method begins at step 402 with receiving a user instruction in natural language." [0048] "For purposes of example, suppose the user instruction in natural language says “I would like to modify position X of the graphical user interface by placing a button there.”" [0048]
analyzing the use case for missing attributes or ambiguities; - "The method proceeds to step 404 with processing the user instruction received in step 402 to yield a structured user instruction." [0049] "The method proceeds to step 406 with determining a pre-defined structure that maps to the structured user instruction that was obtained in step 404." [0050] "In certain embodiments, the method proceeds to step 408 in order to determine whether the structured user instruction is ready for further processing. For example, the pre-defined structure determined in step 406 may indicate a plurality of required attributes. Step 408 may include determining whether the structured user instruction includes each of the required attributes." [0051]
communicating with the user with a request, wherein the request is a notification for the user to provide the missing attributes or ambiguities; receiving a response from the user; and - "In response to determining that the structured user instruction has one or more missing attributes (required attributes of the pre-defined structure that are missing from the structured user instruction), the method may request the one or more missing attributes from a user, receive the one or more missing attributes from the user (e.g., the user may provide the missing attribute(s) in natural language form, analogous to step 402), and update the structured user instruction to include the one or more missing attributes received from the user (e.g., optionally, the method may process the missing attribute(s) in a manner analogous to step 404 and then add the attribute(s) to the structured user instruction such that the format of the structured user instruction corresponds to that of the pre-defined structure)." [0051]
Bansal does not explicitly teach generating an application template with code across a plurality of files, application manifest, and generated meta data, wherein the application template takes
However, in the analogous field of software development, Velammal teaches:
"The code template generation unit 114 is configured to analyze the inputs provided by the users in order to generate templates or fetch the stored similar pre-defined templates from the storage unit 128. The templates may comprise source code templates, application deployment templates etc." [0024]
"In an embodiment of the present invention, the PaaS manifest file generation unit 118 of the automation engine 108 is configured to generate a manifest file associated with the application for specified PaaS infrastructures. Manifest file may comprise meta-data relating to the application source code which may include, but is not limited to, file name, version, other files etc. which may be utilized for deploying the application developed utilizing the source code." [0028]
"Advantageously, the micro-services templates provide a source code structure to the user which the user may utilize for developing domain logic, thereby minimizing manual effort for developing the complex micro-services application architecture." [0026]
It would have been obvious for one of ordinary skill in the art before the effective filing date of the invention to implement Bansal with Velammal's teachings because doing so would provide Bansal's system with the ability to reduce application development efforts, as suggested by Velammal [0005].
With respect to claim 11, Bansal teaches,
A computer-implemented method for generating an application template, comprising:
These limitations are rejected using the mapping from analogous claim 1.
Claims 2 and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Bansal and Velammal, in view of US 20220357929 A1 - hereinafter "Vijayaraghavan".
With respect to claims 2 and 12, Bansal does not explicitly teach,
accessing a chat box in which a bot is communicating with the user; and
sending a [[the]] request to the user via the chat box for the use case.
However, in the analogous field of machine learning, Vijayaraghavan teaches:
"For example, as shown in FIG. 2, user 102 may input text by uploading a document. In some embodiments, the user may interact with the system by communicating with a digital assistant (or chatbot), filling out an online form or template, responding to prompts, and/or uploading/inputting a text (e.g., a document) describing the project use case requirements. For example, in some embodiments, a virtual assistant or a webpage may prompt a user to insert parameters or text describing aspects of a project." [0033]
It would have been obvious for one of ordinary skill in the art before the effective filing date of the invention to implement Bansal and Velammal with Vijayaraghavan's teachings because doing so would provide Bansal/Velammal's system with the ability to compute a more accurate estimation of the effort required to develop software or modify software, as suggested by Vijayaraghavan [0006].
Claims 3 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over Bansal and Velammal, in view of US 20100325491 A1 - hereinafter "Kumanan".
With respect to claims 3 and 13, Bansal does not explicitly teach,
upon receiving the request, execute a series of steps to understand parameters of the use case.
However, in the analogous field of software development, Kumanan teaches:
"Creating the application models of one or more use cases may include one or more following steps: identifying a plurality of use-case concepts from the output of a shallow parser that parses textual descriptions of use cases; identifying and recording linguistic and grammatical properties of the use-case texts; classifying the identified concepts based on a knowledge base; building relationships between the classified concepts using heuristics rules; modeling a process flow using the identified concepts and constructed relationships; and creating application models that represent the identified concepts, properties, relationships, and flows and relating these to elements in the original use-case texts." [0103]
It would have been obvious for one of ordinary skill in the art before the effective filing date of the invention to implement Bansal and Velammal with Kumanan's teachings because doing so would provide Bansal/Velammal's system with the ability to better identify modeling errors in textual use case descriptions, as suggested by Kumanan [0004].
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. The NPL document "Lightweight Cloud Native Application Management Platform" discusses implementation of an application management platform that provides various types of application runtime environments for different digital applications within an enterprise, and that supports different application templates for simplifying application deployment. The NPL document "Use Case" is Wikipedia's entry on the subject.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to GEOFFREY R ST LEGER whose telephone number is (571)270-7720. The examiner can normally be reached M-F (IFP) ~9:00-5:00 pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Hyung S Sough can be reached at 571-272-6799. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/GEOFFREY R ST LEGER/Primary Examiner, Art Unit 2192