Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
DETAILED ACTION
Various submissions with inconsistent of the application: 07/20/2022, 07/21/2022, and 07/09/2024.
This action is in response to the claimed listing amended on 07/20/2022. Claims 19-36 and 39-40 are canceled. Claims 1-18, 37, 38 are pending.
Priority
Acknowledgment is made of applicant's claim for priority under 35 U.S.C. 119(a)-(d) or (f), 365(a) or (b), or 386(a) based upon an application filed in China on 06/22/2021.
Specification
The abstract of the disclosure is objected to because the text in the abstract is exceeding 150 words. A corrected abstract of the disclosure is required and must be presented words. on a separate sheet, apart from any other text. See MPEP § 608.01(b).
Response to Amendment
The specification, abstract, drawings and claimed listing submitted on 07/09/2024 are undo the amendment on 07/21/2022. It would request a clear compliant amendment to present the latest amendment of the application.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1, 8, 11-18, 37, 38 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Lemos et al., “A test-driven approach to code search and its application to the reuse of auxiliary functionality”, 2010, Elsevier, pp. 294-306.
As per Claim 1: Lemos discloses,
1. (Original) A method for auxiliary processing of a software development (in Abstract: ‘We also describe CodeGenie, an Eclipse plugin we have developed that performs TDCS using a code search engine called Sourcerer.’) , comprising:
identifying, according to an auxiliary operation command information input by a
user (p. 297, Fig.3 “Trigger Search” [Wingdings font/0xE0] Code query), an auxiliary research and development function matched with the auxiliary operation command information in a local integrated development environment (p. 300, Fig. 7, Sourcerer system architecture, show web-based code search engine integrated with CodeGenie providing services, and in Fig. 4(a) a popup shows various operational commands (read on recitation ‘auxiliary operation command information in a local integrated development environment’)
sending an operation request to a service platform corresponding to the auxiliary
research and development function in response to determining that the auxiliary research and
development function is implemented by the corresponding service platform (p. 297, left column, “…Fig. 3 shows a basic TDCS process. To describe a missing feature
in the project, test cases are designed in the Integrated Development
Environment (IDE). The search facility can then be triggered
and, based on the information available on the test cases, a query is
sent to a code search service capable of processing it.”, and Fig. 3, ‘code service’ read on service platform) ,
wherein the operation request is configured to instruct the service platform to perform an operation corresponding to the auxiliary research and development function, and feed back an execution result of the auxiliary research and development function (p. 297, Fig. 3, ‘Code query’ perform by Search.
And in p. 300, left column, “CodeGenie formulates queries that can be processed by Sourcerer. These queries contain three parts: (1) keywords that must be present in the full qualified name of the entry point method; (2) return type of the entry point method; and (3) parameter types of the entry point method.
For example, given a test case with the following assertion:
assertEquals(‘‘trevni’’, Util.invert(‘‘invert’’))
CodeGenie formulates the following query:
fqn_contents: (util invert)
m_ret_type_contents: (String)
m_sig_args_sname: String
The query above means: ‘‘look for an entry point method that contains the strings ‘util’ and ‘invert’ somewhere in the full qualified name, returns a value of type String, and receives a parameter
of type String’’.” ) ; and
acquiring the execution result of the auxiliary research and development function.
(Fig. 3 “Code Results”)
As per Claim 8: Regarding,
8. (Currently Amended) The method according to claim 1, after the
identifying, according to an auxiliary operation command information input by a user, an
auxiliary research and development function matched with the auxiliary operation command
information in a local integrated development environment (Fig. 3,and in 300, Fig. 7), further comprising:
performing, in response to determining that the auxiliary research and development function is implemented in the local integrated development environment, an
operation corresponding to the auxiliary research and development function in the local
integrated development environment and acquiring the execution result of the auxiliary research and development function.
(p. 298, left column, “CodeGenie sends the query to Sourcerer which, in turn, returns code results. The keywords are initially formed by the terms coming from the method name and the class name. In the example, ‘util’ and ‘roman’ are the initial keywords. By default every information on the test cases is used
to generate the query: class name, method name, and method signature. After activating the search, the developer has the option to relax the query by enabling/disabling the return type, parameter
types, and name terms as keywords.
The CodeGenie Search View with the returned results for the referred example is presented in Fig. 4d. From here, the developer can examine, integrate, test, and detach results by right-clicking
on them and selecting the desired option.” (emphasis added) and see Fig. 4 (d))
As per Claim 11: Regarding,
11. (Currently Amended) The method according to claim 1,
wherein, the performing, in response to determining that the auxiliary research and development function is implemented in the local integrated development environment, an operation corresponding to the auxiliary research and development function in the local integrated development environment and acquiring the execution result of the auxiliary research and development function (Figs. 3, 4(d), and Fig. 7), comprises:
correcting the coding standard problem in the current file in response to the
auxiliary research and development function being coding standard formatting.
(Refer to queries specified in code search: Query is developed by user to request a result ,
and/or p. 295, right column, in sec. 2.3: “in our case, the tester – which determines the correct result of the function given an input” )
As per Claim 12: Regarding,
12. (Original) The method according to claim 11, after the correcting the coding standard
problem in the current file (As incorporated and addressed in claim 11), further comprising:
restoring the current file to a state before the correcting, in response to a formatting undo operation on the current file.
(Common operations of an IDE, and OS of computer)
As per Claim 13: Regarding,
13. (Currently Amended) The method according to claim 1, wherein
the identifying, according to an auxiliary operation command information input by a user, an
auxiliary research and development function matched with the auxiliary operation command
information in a local integrated development environment comprises:
performing natural language processing on the auxiliary operation command
information input by the user, so as to determine the auxiliary research and development function matched with the auxiliary operation command information.
(See Fig. 7: refer to Web-based Code Search, and queries)
As per Claim 14: Regarding,
14. (Original) The method according to claim 13, further comprising:
displaying an error prompt information in response to failing to determine the
auxiliary research and development function matched with the auxiliary operation command
information.
(See Fig.4(d) in section Search View)
As per Claim 15: Regarding,
15. (Currently Amended) The method according to claim 1,
before the identifying, according to an auxiliary operation command information input by a user,
an auxiliary research and development function matched with the auxiliary operation command
information in a local integrated development environment, further comprising:
displaying a dialog box in a development interface of the local integrated
development environment;
acquiring the auxiliary operation command information input by the user in the
dialog box.
(See Fig. 4(a), (b) (c) (d))
As per Claim 16: Regarding,
16. (Original) The method according to claim 15, after the acquiring the execution result
of the auxiliary research and development function, comprising:
displaying the execution result in a dialog interaction manner in the dialog box.
(See Fig. (d))
As per Claim 17: Regarding,
17. (Original) The method according to claim 15, after performing the operation
corresponding to the auxiliary research and development function, and before the acquiring the execution result of the auxiliary research and development function, further comprising:
displaying, in the dialog box, a prompt information indicating that the auxiliary
research and development function is being executed.
(See Fig. 4(d))
As per claim 37: Claim is directed to electronic device that has claimed functionality corresponding to the recitations in claim 1. Claim is rejected with the same rationale as claim 1.
As per claim 38: Claim is directed to non-transitory computer readable storage medium that has claimed functionality corresponding to the recitations in claim 1. Claim is rejected with the same rationale as claim 1.
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, 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.
Claim 18 is rejected under 35 U.S.C. 103 as being unpatentable over Lemos et al., “A test-driven approach to code search and its application to the reuse of auxiliary functionality”, 2010, Elsevier, pp. 294-306, and in view of Ivers et al., “Can AI Close the Design-Code Abstraction Gap?”, 2019, IEEE, pp. 122-125.
Augusto et al., “Development of Auxiliary Functions: Should You Be Agile? An Empirical Assessment of Pair Programming and Test-First Programming”, 2012, IEEE, pp. 529-539.
As per Claim 18: Incorporating limitations in claim 1, Lemos discloses the limitation in bold below:
18. (Currently Amended) The method according to claim 1,
before displaying a dialog box in a development interface of the local integrated development
environment,
further comprising:
installing [an intelligent research and development assistant] plug-in in the local
integrated development environment
(Lemos: In Abstract: “We also describe CodeGenie, an Eclipse plugin we have developed that performs TDCS using a code search engine called Sourcerer”, and Fig. 4),
[the intelligent research and development assistant] plug-in being configured to realize the auxiliary processing of the software development.
(Lemos: p. 301, sec. 6.1, “We used CodeGenie to search several features suggested by members of our group as relevant functionality they would like to reuse …..
These numbers are an evidence that TDCS using CodeGenie is not only feasible but also effective for auxiliary functionality…”)
Lemos does not explicitly mention install or plugin the research and development assistant as in manner “an intelligent research and development assistant”.
Ivers discloses, “an intelligent research and development assistant” (See in Abstract: “While developers are empowered with AI/ML augmented tools and techniques that increasingly assist them in
implementation tasks….use search-based refactoring to make design improvements for extracting functionality.”, and in p. 125, left column “Making progress on application of AI/ML techniques in narrowing the design-code abstraction gap will ideally improve automated support in IDE capabilities, leaving time for developers to focus their attention on tasks that require strategic thinking” ).
Since a code search used in search engine functions as research since its result is formed based on user instructed queries. With AI/ML it assists users with automation and reducing abstraction gaps.
Therefore, it would be obvious to an ordinary of skills in the art before effective filing of the Application to modify the IDE with plugin code search of Lemos with AI/ML features in the IDE as of Ivers. The combination would yield predictable results because the modification of research/search in and IDE will provide users with automated code support and conform to the technological availability.
Allowable Subject Matter
Claims 2-7, 9-10 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.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Ted T Vo whose telephone number is (571)272-3706. The examiner can normally be reached 8am-4:30pm ET.
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, Wei Y Mui can be reached at (571) 272-3708. 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.
TTV
July 24, 2026
/Ted T. Vo/
Primary Examiner, Art Unit 2191