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 .
Response to Arguments
Objections to the Specification
The applicant’s amendments are sufficient to overcome the previous objections which are consequently withdrawn.
Rejection under 35 USC § 103
Applicant’s arguments have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Claim(s) 1-4, 7-10 and 13-16 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2023/0094887 to Sridhara et al. (Sridhara) in view of US 2023/0168887 to Tamilselvam et al. (Tamilselvam) in view of OData “Version 4.0”. by Oasis (OData).
Claims 1, 7 and 13: Sridhara discloses a system comprising:
memory storing processor-executable program code; and
a processing unit to execute the processor-executable program code to cause the system to:
identify a plurality of entities of an application,
identify, for each of one or more of the plurality of entities one or more navigation relationships through which one or more other of the plurality of entities may be queried in one call to the entity (par. [0036] “identify one or more software functions in the plurality of software classes”, par. [0038] “tracing call dependency graphs”);
determine a plurality of primary groups of entities based on the navigation relationships, where no entities of a primary group have a navigation relationship with any entities of another primary group (par. [0036] “isolating non-overlapping software functions”); and
present the groups (Sridhara par. [0024] “the deployable microservices 114 may be output to the user”).
Sridhara does not explicitly teach:
for each of the plurality of primary groups of entities:
determine a closeness of each entity of the primary group to each other entity of the primary group based on received queries of the navigation relationships between the entities of the primary group; and
cluster the entities of the primary group into two or more secondary groups based on the determined closeness of each entity of the primary group; and
Tamilselvam teaches:
determine a closeness of each entity of the primary group to each other entity of the primary group based on received queries of the navigation relationships between the entities of the primary group (par. [0023] “the static analysis may be used to identify interactions between different code elements … and/or affinity of different code elements”); and
cluster the entities of the primary group into two or more secondary groups based on the determined closeness of each entity of the primary group (par. [0024] “perform and agglomerative clustering process to generate groups of code elements”).
It would have been obvious at the time before the effective filing of the claimed invention to cluster entities based on a determined closeness of the entities of the primary group(s). Those of ordinary skill in the art would have been motivated to do so as a known means of providing a finer grained control over the microservice generation (see e.g. Tamilselvam par. [0019] “It is desirable to have control over the microservices”).
Sridhara and Tamilselvam do not explicitly teach:
identify, for each of one or more of the plurality of entities one or more navigation relationships through which one or more other of the plurality of entities may be queried in one call to the entity.
OData teaches:
identifying, for each of one or more of a plurality of entities one or more navigation relationships through which one or more other of the plurality of entities may be queried in one call to the entity (§4.11, The $expand query option can be specified using the names of the selected entity sets as navigation property names”, §5.1, “Resource paths identifying … a single entity, … a collection of entities … allow $expand”).
It would have been obvious before the effective filing date of the claimed invention to identify navigation relationships through which a plurality of entities may be queried at once. Those of ordinary skill in the art would have been motivated to do so as a known means of accessing such entities which would have produced only the expected results (see e.g. OData )
Claims 2, 8 and 14: Sridhara, Tamilselvam and OData teach claims 1, 7 and 13, where the entities are Web service entities (Sridhara par. [0020] “Web APIs”), and wherein the plurality of entities and navigation relationships between the plurality of entities are identified from metadata associated with the application (Tamilselvam pars.[0057]-[0068] “a number of different metrics”).
Claims 3, 9 and 15: Sridhara, Tamilselvam and OData teach claims 1, 7 and 13, wherein determination of the closeness of each entity of a primary group to each other entity of the primary group comprises:
counting a number of the received queries for each of the navigation relationships between the entities of the primary group to determine closeness values ci,j between every two entities entityi and entityj of the primary group, where ci,j=cj,I (Tamilselvam par. [0035] “ICU matrix 200 show usage information … c0 calls APIs in c1 3 times”).
Claims 4, 10 and 16: Sridhara, Tamilselvam and OData teach claims 3, 9 and 15, wherein the queries are received from a plurality of users of the application (Tamilselvam par. [0026] “interfaces to be invoked by … users”).
Claim(s) 5-6, 11-12 and 17-18 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2023/0094887 to Sridhara et al. (Sridhara) in view of US 2023/0168887 to Tamilselvam et al. (Tamilselvam) in view of OData “Version 4.0”. by Oasis (OData) in view of US 2023/0342428 to Kramer et al. (Kramer).
Claims 5-6, 11-12 and 17-18: Sridhara, Tamilselvam and OData teach claim 3, 1, 9, 7, 15 and 13, but do not explicitly teach wherein clustering of the entities of the primary group into two or more secondary groups comprises:
generation of a closeness matrix of the closeness values ci,j ;
summing of each column of the closeness matrix and forming of a degree matrix including the summed values on a diagonal of the degree matrix;
generation of a Laplacian matrix based on a difference between the degree matrix and the closeness matrix;
determination of eigenvectors of the Laplacian matrix;
determination of an affinity matrix based on the Laplacian matrix and a desired number of secondary groups, where each row of the affinity matrix represents an entity of the primary group; and
clustering of the rows of the affinity matrix into the desired number of secondary groups.
Kramer teaches:
generation of a closeness matrix of the closeness values ci,j (par. [0091] “the similarity or distance matrix”);
summing of each column of the closeness matrix and forming of a degree matrix including the summed values on a diagonal of the degree matrix (par. [0091] “computing the degree matrix D”);
generation of a Laplacian matrix based on a difference between the degree matrix and the closeness matrix (computing … the Laplacian matrix”);
determination of eigenvectors of the Laplacian matrix (par. [0091] “finding the eigenvalues and eigenvectors”);
determination of an affinity matrix based on the Laplacian matrix and a desired number of secondary groups, where each row of the affinity matrix represents an entity of the primary group (par. [0091] “forming a matrix with the eigenvectors of k largest eigenvalues”); and
clustering of the rows of the affinity matrix into the desired number of secondary groups (par. [0091] “clustering the data points”).
It would have been obvious at the time of filing to perform the spectral clustering taught by Kramer. Those of ordinary skill in the art would have been motivated to do so as a known alternative method of clustering.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
The following are suggested formats for either a Certificate of Mailing or Certificate of Transmission under 37 CFR 1.8(a). The certification may be included with all correspondence concerning this application or proceeding to establish a date of mailing or transmission under 37 CFR 1.8(a). Proper use of this procedure will result in such communication being considered as timely if the established date is within the required period for reply. The Certificate should be signed by the individual actually depositing or transmitting the correspondence or by an individual who, upon information and belief, expects the correspondence to be mailed or transmitted in the normal course of business by another no later than the date indicated.
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
US 2021/0240672 to Dillon, and US 2017/0331915 to Jann et al. disclose navigation relationships through which a plurality of entities may be queried.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JASON D MITCHELL whose telephone number is (571)272-3728. The examiner can normally be reached Monday through Thursday 7:00am - 4:30pm and alternate Fridays 7:00am 3:30pm.
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, Lewis Bullock can be reached at (571)272-3759. 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.
/JASON D MITCHELL/Primary Examiner, Art Unit 2199