Prosecution Insights
Last updated: September 26, 2026
Application No. 18/724,033

AN APPROACH FOR CLASSIFYING SOURCE CODE WITH A CODE QUALITY INDICATOR

Non-Final OA §101
Filed
Jun 25, 2024
Priority
Jan 28, 2022 — SE 2250081-3 +1 more
Examiner
SLACHTA, DOUGLAS M
Art Unit
Tech Center
Assignee
Codescene AB
OA Round
1 (Non-Final)
82%
Grant Probability
Favorable
1-2
OA Rounds
0m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 82% — above average
82%
Career Allowance Rate
292 granted / 354 resolved
+22.5% vs TC avg
Strong +18% interview lift
Without
With
+18.4%
Interview Lift
resolved cases with interview
Typical timeline
2y 3m
Avg Prosecution
15 currently pending
Career history
373
Total Applications
across all art units

Statute-Specific Performance

§101
22.0%
-18.0% vs TC avg
§103
47.8%
+7.8% vs TC avg
§102
7.8%
-32.2% vs TC avg
§112
16.0%
-24.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 354 resolved cases

Office Action

§101
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 This office action is in response to communication filed 6/25/2024. Claims 11-19 are currently pending and claims 1-10 are cancelled. Claims 11, 18, and 19 are the independent claims. Claim Objections Claims 12-17 are objected to because of the following informalities: Claims 12-16 recite “The method of claim 1…” and claim 17 recites “…the method according to claim 1…” when they should refer to claim 11/recite “The method of claim 11” as claim 1 is cancelled. 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 11-19 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. As per independent claim 11, it recites “A computer-implemented method for code classification, the method comprising: parsing source code stored on a code carrier to obtain a plurality of code structure characteristics of the source code; evaluating the code structure characteristics on at least three code structure levels comprising a module level, wherein the evaluation on each code structure level comprises, for each of one or more level-specific conditions: determining whether the code structure characteristics violate the level-specific condition, wherein the level-specific condition is considered violated when the code structure characteristic falls on a specific side of a corresponding threshold value; and when the level-specific condition is violated, representing the violation by a weighted value, wherein the weighted value is indicative of a significance of the violated level-specific condition and/or of an extent of the violation; combining the weighted values for at least some of the violated level-specific conditions over the at least three code structure levels to generate one or more code quality indicator for the source code, wherein the one or more code quality indicator for the source code comprises module-specific code quality values, and wherein generation of a module-specific code quality indicator value comprises combining only weighted values that relate to the module under consideration; and causing use of the one or more code quality indicator to provide guidance to a user regarding which portions of the source code should be prioritized for improvement efforts.” The limitations “parsing source code stored on a code carrier to obtain a plurality of code structure characteristics of the source code”, “evaluating the code structure characteristics on at least three code structure levels comprising a module level, wherein the evaluation on each code structure level comprises, for each of one or more level-specific conditions”, “determining whether the code structure characteristics violate the level-specific condition, wherein the level-specific condition is considered violated when the code structure characteristic falls on a specific side of a corresponding threshold value”, “when the level-specific condition is violated, representing the violation by a weighted value, wherein the weighted value is indicative of a significance of the violated level-specific condition and/or of an extent of the violation”, “combining the weighted values for at least some of the violated level-specific conditions over the at least three code structure levels to generate one or more code quality indicator for the source code, wherein the one or more code quality indicator for the source code comprises module-specific code quality values, and wherein generation of a module-specific code quality indicator value comprises combining only weighted values that relate to the module under consideration”, and “causing use of the one or more code quality indicator to provide guidance to a user regarding which portions of the source code should be prioritized for improvement efforts” as drafted, recites functions that, under its broadest reasonable interpretation, covers functions that could reasonably be performed in the mind, including with the aid of pen and paper, but for the recitation of generic computer components, and, as such, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. For example, a human may mentally/with pen and paper judge/parse/analyze/evaluate source code and decide/judge/determine characteristics, judge/evaluate/analyze/etc. code structure characteristics, determine/decide/judge whether the code structure characteristics violate a condition/fall on a specific side of a corresponding threshold/etc., decide/judge/determine a significance of a violated condition and decide/assign/judge/etc. a weighted value/indication of significance/etc. for the violation, judge/decide/determine/etc. a quality of the code by combining weighted values/indications of significance of violations/etc., and provide guidance/communicate/verbally tell/write a notice/etc. to a user regarding portions of code to prioritize for improvement efforts using code quality indicators. As such, the limitations encompass a human mind carrying out the functions through observation, evaluation, judgment, and/or opinion, or even with the aid of pen and paper, and therefore the limitations recite and falls within the “Mental Processes” grouping of abstract ideas. This judicial exception is not integrated into a practical application. The claim recites the additional elements/limitations “A computer-implemented method for code classification, the method comprising” which, with broadest reasonable interpretation, recites that high level/generic computer/computer components are used to implement/perform the abstract idea/mental process, and as such amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components, which does not integrate the abstract idea into a practical application. Accordingly, the additional elements do not integrate the recited judicial exception into a practical application, and the claim is therefore directed to the judicial exception. See MPEP 2106.05(f), 2106.05(g), etc.. The claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements amount to no more than mere instructions, or generic computer/computer components to implement/perform/carry out the exception/abstract idea/mental process, which is not significantly more than the abstract idea/mental process. Accordingly, the claims are not patent eligible under 35 USC 101. As per claim 12, it incorporates the deficiencies of claim 11, upon which it depends, and further recites “…wherein the at least three code structure levels further comprise one or more of: a global level, an inter-module level, a function level, and an inter-function level, and an implementation level, wherein evaluation on the implementation level refers to analysis of code characteristics inside a function” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/judging/evaluation/etc. performed, and as such does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process. As such, claim 12 fails to correct the deficiencies of claim 11, and is therefore rejected for similar reasoning as claim 11, above. As per claim 13, it incorporates the deficiencies of claim 11, upon which it depends, and further recites “…wherein at least some of the level-specific conditions includes a requirement for one or more of: cohesion, nesting depth, number of execution paths, lines of code, lines of declaration, number of functions, function size, number of built in types, number of string types, number of function arguments, code duplication, assertion duplication, consecutive assertions, and clusters of conditional nesting” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/judging/evaluation/etc. performed, and as such does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process. As such, claim 13 fails to correct the deficiencies of claim 11, and is therefore rejected for similar reasoning as claim 11, above. As per claim 14, it incorporates the deficiencies of claim 11, upon which it depends, and further recites “…wherein combining weighted values comprises accumulating the weighted values and mapping the result of accumulation to a code quality indicator value” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/judging/mapping/etc. performed, and as such does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process. As such, claim 14 fails to correct the deficiencies of claim 11, and is therefore rejected for similar reasoning as claim 11, above. As per claim 15, it incorporates the deficiencies of claim 11, upon which it depends, and further recites “…wherein the one or more code quality indicator for the source code further comprises an overall code quality value of the source code” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/judging/deciding/etc. performed, and as such does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process. As such, claim 15 fails to correct the deficiencies of claim 11, and is therefore rejected for similar reasoning as claim 11, above. As per claim 16, it incorporates the deficiencies of claim 11, upon which it depends, and further recites “…implementing, on the code carrier, an association between the one or more code quality indicator and the source code” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/judging/associating/etc. performed, and as such does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process. As such, claim 16 fails to correct the deficiencies of claim 11, and is therefore rejected for similar reasoning as claim 11, above. As per claim 17, it recites “a computer program product comprising a non-transitory computer readable medium” having similar limitations as the method of claim 11, and as such recites the same deficiencies as claim 11. Claim 17 recites the further additional elements/limitations “A computer program product comprising a non-transitory computer readable medium, having thereon a computer program comprising program instructions, the computer program being loadable into a data processing unit and configured to cause execution of the method according to claim 1 when the computer program is run by the data processing unit” which, with broadest reasonable interpretation, recites that high level/generic computer/computer components are used to implement/perform the abstract idea/mental process, and as such amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components, which does not integrate the abstract idea into a practical application and is not significantly more than the abstract idea/mental process. Accordingly, the additional elements of claim 17 do not correct the deficiencies of claim 11, and therefore claim 17 is rejected for similar reasoning as claim 11, above. As per claim 18, it recites “An apparatus” having similar limitations as the method of claim 11, and as such recites the same deficiencies as claim 11. Claim 18 recites the further additional elements/limitations “An apparatus for code classification, the apparatus comprising controlling circuitry configured to cause:” which, with broadest reasonable interpretation, recites that high level/generic computer/computer components/controlling circuitry/etc. are used to implement/perform the abstract idea/mental process, and as such amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components, which does not integrate the abstract idea into a practical application and is not significantly more than the abstract idea/mental process. Accordingly, the additional elements of claim 18 do not correct the deficiencies of claim 11, and therefore claim 18 is rejected for similar reasoning as claim 11, above. As per claim 19, it recites “a system” having similar limitations as the method of claim 11, and as such recites the same deficiencies as claim 11. Claim 19 recites the further additional elements/limitations “A system of one or more servers, wherein the system is configured to carry out a computer-implemented method for code classification, the method comprising” and “wherein at least one of the servers comprises the apparatus of claim 18” which, with broadest reasonable interpretation, recites that high level/generic computer/computer components/one or more servers/apparatus/controlling circuitry/etc. are used to implement/perform the abstract idea/mental process, and as such amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components, which does not integrate the abstract idea into a practical application and is not significantly more than the abstract idea/mental process. Accordingly, the additional elements of claim 19 do not correct the deficiencies of claim 11, and therefore claim 19 is rejected for similar reasoning as claim 11, above. REASONS FOR ALLOWABILITY OVER PRIOR ART The prior art of record fails to anticipate or render an obviousness of parsing source code stored on a code carrier to obtain a plurality of code structure characteristics of the source code; evaluating the code structure characteristics on at least three code structure levels comprising a module level, wherein the evaluation on each code structure level comprises, for each of one or more level-specific conditions: determining whether the code structure characteristics violate the level-specific condition, wherein the level-specific condition is considered violated when the code structure characteristic falls on a specific side of a corresponding threshold value; and when the level-specific condition is violated, representing the violation by a weighted value, wherein the weighted value is indicative of a significance of the violated level-specific condition and/or of an extent of the violation; combining the weighted values for at least some of the violated level-specific conditions over the at least three code structure levels to generate one or more code quality indicator for the source code, wherein the one or more code quality indicator for the source code comprises module-specific code quality values, and wherein generation of a module-specific code quality indicator value comprises combining only weighted values that relate to the module under consideration; and causing use of the one or more code quality indicator to provide guidance to a user regarding which portions of the source code should be prioritized for improvement efforts, as required by the independent claims. The prior art of record (Kaulgud et al. US PG Pub. 2011/0231828 A1, Dhal et al. US Patent 11,307,955 B2, Krishnan et al. US Patent 8,494,832 B2, and Kuester et al. US Patent 7,788,632 B2) teaches analyzing/parsing/etc. code/source code/program/etc. to determine/obtain/etc. multiple/different/etc. code structure/design/etc. characteristics/elements/attributes/etc., that the code structure/design/characteristics/elements/etc. may be evaluated/analyzed/tested/etc. according to conditions/requirements/factors/rules/etc. to determine if the code/source code/program/etc. violates/meets/does not meet/has errors/satisfies/etc. the conditions/requirements/rules/etc., that errors/violations/issues/problems/etc. may be weighted/prioritized/etc. and aggregated/combined/etc. and a quality of the code/source code/program/etc. may be determined, that violations/errors/issues/code quality indications/etc. may be provided to a user/reviewer/developer/etc. to make corrections/changes/improvements/etc.. However, the prior art of record fails to render an obviousness of combining weighted values for at least some violated level-specific conditions over at least three code structure levels to generate one or more code quality indicator for a source code, wherein the one or more code quality indicator for the source code comprises module-specific code quality values, and wherein generation of a module-specific code quality indicator value comprises combining only weighted values that relate to the module under consideration; and causing use of the one or more code quality indicator to provide guidance to a user regarding which portions of the source code should be prioritized for improvement efforts; when the source code is stored on a code carrier and the weighted values are indicative of a significance of the violated level-specific condition and/or of an extent of the violation; and after parsing the source code to obtain a plurality of code structure characteristics of the source code, evaluating the code structure characteristics on at the least three code structure levels which comprise a module level, wherein the evaluation on each code structure level comprises, for each of one or more level-specific conditions: determining whether the code structure characteristics violate the level-specific condition, wherein the level-specific condition is considered violated when the code structure characteristic falls on a specific side of a corresponding threshold value, and when the level-specific condition is violated, representing the violation by a weighted value, as required by the independent claims. Any comments considered necessary by applicant must be submitted no later than the payment of the issue fee and, to avoid processing delays, should preferably accompany the issue fee. Such submissions should be clearly labeled “Comments on Statement of Reasons for Allowance.” Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to DOUGLAS M SLACHTA whose telephone number is (571)270-0653. The examiner can normally be reached Monday-Friday 6:30am-4pm. 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, Chat Do can be reached at 571-272-3721. 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. /DOUGLAS M SLACHTA/Examiner, Art Unit 2193
Read full office action

Prosecution Timeline

Jun 25, 2024
Application Filed
Sep 10, 2026
Non-Final Rejection mailed — §101 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12739217
GENERATING EDITABLE EMAIL COMPONENTS UTILIZING A CONSTRAINT-BASED KNOWLEDGE REPRESENTATION
3y 10m to grant Granted Sep 15, 2026
Patent 12737124
SYSTEMS AND METHODS FOR UPDATING WITNESS SLEDS
3y 4m to grant Granted Sep 15, 2026
Patent 12737169
AUTONOMOUS CONFIGURATION-BASED RELEASE ORCHESTRATION
2y 7m to grant Granted Sep 15, 2026
Patent 12730631
SELECTIVE DEPLOYMENT OF SOFTWARE BASED ON VERSIONING SCHEMA
2y 10m to grant Granted Sep 08, 2026
Patent 12717702
SYSTEMS AND METHODS FOR ERROR MITIGATION IN A SOFTWARE PIPELINE
2y 7m to grant Granted Aug 25, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
82%
Grant Probability
99%
With Interview (+18.4%)
2y 3m (~0m remaining)
Median Time to Grant
Low
PTA Risk
Based on 354 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month