ENTIT Software LLCDownload PDFPatent Trials and Appeals BoardMay 19, 20212020000560 (P.T.A.B. May. 19, 2021) Copy Citation UNITED STATES PATENT AND TRADEMARK OFFICE UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office Address: COMMISSIONER FOR PATENTS P.O. Box 1450 Alexandria, Virginia 22313-1450 www.uspto.gov APPLICATION NO. FILING DATE FIRST NAMED INVENTOR ATTORNEY DOCKET NO. CONFIRMATION NO. 15/574,370 11/15/2017 Inbar Shani 92001718 2420 146568 7590 05/19/2021 MICRO FOCUS LLC 500 Westover Drive #12603 Sanford, NC 27330 EXAMINER VU, TUAN A ART UNIT PAPER NUMBER 2193 NOTIFICATION DATE DELIVERY MODE 05/19/2021 ELECTRONIC Please find below and/or attached an Office communication concerning this application or proceeding. The time period for reply, if any, is set in the attached communication. Notice of the Office communication was sent electronically on above-indicated "Notification Date" to the following e-mail address(es): software.ip.mail@microfocus.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE ____________ BEFORE THE PATENT TRIAL AND APPEAL BOARD ____________ Ex parte INBAR SHANI, AMICHAI NITSAN, and YARON BURG ____________ Appeal 2020-000560 Application 15/574,370 Technology Center 2100 ____________ Before KARA L. SZPONDOWSKI, SCOTT B. HOWARD, and STEVEN M. AMUNDSON, Administrative Patent Judges. AMUNDSON, Administrative Patent Judge. DECISION ON APPEAL Appellant1 seeks our review under 35 U.S.C. § 134(a) from a final rejection of claims 1–20, i.e., all pending claims. We have jurisdiction under 35 U.S.C. § 6(b). We affirm in part. 1 We use the word “Appellant” to refer to “applicant” as defined in 37 C.F.R. § 1.42 (2019). Appellant identifies the real party in interest as Entit Software LLC. Appeal Br. 1. Appeal 2020-000560 Application 15/574,370 2 STATEMENT OF THE CASE The Invention According to the Specification, the invention concerns software application testing “to provide information about an application under test (‘AUT’).” Spec. ¶ 1.2 The Specification explains that “application testing may be performed to determine whether the AUT includes any errors or other defects.” Id. The Specification also explains that application testing procedures “may involve two main types of test steps”: (1) “actions steps which manipulate, drive, or query an application under test (‘AUT’)”; and (2) “verification steps which verify the expected outcomes associated with the action steps.” Id. According to the Specification, the “basic application testing procedure may create a dependency between the actions and verifications.” Spec. ¶ 14. That dependency “may have several shortcomings” including: (1) “the need to re-run a test execution of an AUT when the verification changes (even if the actions have not changed)”; (2) “a tendency to only verify what is being acted upon (e.g., if the action is to click a button, a user will verify that the button has been clicked)”; (3) “difficulty correlating action step outcomes with events at other levels of the AUT (e.g., server logs, database logs, application logs, etc.)”; and 2 This decision uses the following abbreviations: “Spec.” for the Specification, filed May 28, 2015; “Final Act.” for the Final Office Action, mailed February 12, 2019; “Advisory Act.” for the Advisory Action, mailed April 23, 2019; “Appeal Br.” for the Appeal Brief, filed July 3, 2019; “Ans.” for the Examiner’s Answer, mailed August 29, 2019; and “Reply Br.” for the Reply Brief, filed October 29, 2019. Appeal 2020-000560 Application 15/574,370 3 (4) “various maintenance challenges based on changed actions and/or changed verifications.” Id. Hence, the invention endeavors to “avoid the need to revise and re-execute a test by separating test actions from test verifications.” Id. ¶ 15. Exemplary Claims Independent claims 1 and 11 exemplify the claims at issue and read as follows: 1. A system comprising: a processor; and a non-transitory storage medium storing instructions executable on the processor to: capture data points during test executions of an application under test, the data points including test action data and application action data; generate a representation of test actions and associated application actions based on correlating each of the data points with a particular test execution of the test executions, each of the data points being correlated based on a sequence of events that occurred during the particular test execution; determine, by querying the representation with a query that represents an execution sequence comprising a test action and an associated application action, a potential test action to perform during a further test execution of the application under test; and execute the potential test action during the further test execution of the application under test. 11. A method performed by a system comprising a hardware processor, comprising: generating a representation of test actions and associated application actions based on correlating data points captured during test executions of a program under test; Appeal 2020-000560 Application 15/574,370 4 identifying, responsive to querying the representation with a query that represents a verification execution sequence comprising a test action and an associated application action performed in response to the test action, an absence, in the representation, of the test action and the associated application action of the verification execution sequence; identifying, based on identifying the absence, a potential test action to perform during a further test execution of the program under test; generating, based on the identified potential test action, a potential test action verification to be executed during the further test execution of the program under test; and executing the potential test action verification during the further test execution of the program under test. Appeal Br. 18, 20 (Claims App. i, iii). The Prior Art Supporting the Rejections on Appeal As evidence of unpatentability under 35 U.S.C. § 103, the Examiner relies on the following prior art: Name Reference Date Buskens et al. (“Buskens”) US 2006/0294507 A1 Dec. 28, 2006 Cheung US 2009/0133006 A1 May 21, 2009 Lawrance et al. (“Lawrance”) US 2013/0055029 A1 Feb. 28, 2013 Schissel et al. (“Schissel”) US 2014/0109063 A1 Apr. 17, 2014 Altman et al. (“Altman”) US 9,183,387 B1 Nov. 10, 2015 (filed June 5, 2013) Wingfors et al. (“Wingfors”) US 2015/0347282 A1 Dec. 3, 2015 (filed Dec. 19, 2014) Martinez et al. (“Martinez”) US 2016/0117118 A1 Apr. 28, 2016 (filed June 20, 2014) Appeal 2020-000560 Application 15/574,370 5 Name Reference Date Elgarat US 9,727,447 B1 Aug. 8, 2017 (filed Jan. 16, 2015) The Rejections on Appeal Claims 1, 17, and 18 stand rejected under 35 U.S.C. § 103 as unpatentable over Elgarat, Lawrance, Schissel, and Wingfors. Final Act. 2–6; Appeal Br. 6. Claim 2 stands rejected under 35 U.S.C. § 103 as unpatentable over Elgarat, Lawrance, Schissel, Wingfors, Cheung, Altman, Martinez, and Buskens. Final Act. 15–17; Appeal Br. 6. Claims 3–16, 19, and 20 stand rejected under 35 U.S.C. § 103 as unpatentable over Elgarat, Lawrance, Schissel, Wingfors, Cheung, Altman, and Martinez. Final Act. 6–14; Appeal Br. 6. ANALYSIS We have reviewed the rejections in light of Appellant’s arguments that the Examiner erred. For the reasons explained below, we agree with the Examiner about the unpatentability of claims 1, 2, and 16–18 but disagree with the Examiner about the unpatentability of claims 3–15, 19, and 20. We adopt the Examiner’s findings and reasoning in the Final Office Action, Advisory Action, and Answer for claims 1, 2, and 16–18. See Final Act. 2–6, 14–17; Advisory Act. 2; Ans. 3–8, 11–12. We provide the following to address and emphasize specific findings and arguments. The § 103 Rejection of Claims 1, 17, and 18 INDEPENDENT CLAIM 1 As noted above, the obviousness rejection of claim 1 rests on Elgarat, Lawrance, Schissel, and Wingfors. See Final Act. 2–5. Appellant argues Appeal 2020-000560 Application 15/574,370 6 that the Examiner erred in rejecting claim 1 because the references fail to teach or suggest the following limitation in claim 1: “determine, by querying the representation with a query that represents an execution sequence comprising a test action and an associated application action, a potential test action to perform during a further test execution of the application under test.” See Appeal Br. 6–10; Reply Br. 1–11. The Examiner cites Elgarat as teaching or suggesting the disputed limitation in claim 1. See Final Act. 3; Ans. 4–5. Specifically, Appellant disputes that Elgarat discloses “querying the representation with a query that represents an execution sequence comprising a test action and an associated application action” as claimed. Appeal Br. 8; see also Reply Br. 4–7. Appellant concedes that Elgarat discloses constructing a tree or directed acyclic graph (DAG) for exploratory descriptive programming. Appeal Br. 8 (citing Elgarat 5:7–10); Reply Br. 5. But Appellant contends that “Elgarat provides no teaching or hint that the tree or DAG” is “used for querying.” Appeal Br. 8. Further, Appellant asserts that Elgarat’s descriptive programming “is used for the purpose of constructing a DAG” and “is not the query that represents an execution sequence, where the query that represents the execution sequence comprises a test action and an associated application action.” Reply Br. 5–6 (emphasis by Appellant). Appellant’s arguments do not persuade us of Examiner error because the Examiner properly reasons that nothing in claim 1 distinguishes a query from “the exploratory analysis of a tree-like sequence as in Elgarat’s exploratory testing.” Ans. 4–5. Further, the Examiner correctly finds that Appeal 2020-000560 Application 15/574,370 7 Elgarat discloses “a directed acyclic graph (DAG)” with nodes representing test actions and application actions. Final Act. 3, 6. Elgarat’s Figure 2 (reproduced below) “illustrates a system flow for automated exploratory testing.” Elgarat 1:57–58, 3:51–53. Figure 2 shows exploratory-testing system 200 with test-planning system 204. Id. at 3:51–53, 3:59–60, Fig. 2. Test-planning system 204 includes “a testing software platform that may be accessed over one or more networks or that may be stored locally” by test-planning system 204. Id. at 3:59–62. “The system 204 may manage both the actions performed and the actions not performed and generates a directed acyclic graph (DAG) view 202 of the possible options.” Id. at 4:10–13. Among other things, a DAG depicts “actions to be performed as part of the test” including “multiple additional actions for each decision point in Appeal 2020-000560 Application 15/574,370 8 the flow that could be performed as at least part of the exploratory test as branches” in the DAG. Elgarat 2:10–18, 2:58–63, Fig. 2; see also id. at 1:39–42, 2:1–9, code (57). Moreover, a DAG may depict “successes, failures, and various other statuses” by “using text, icons, colors, shading, and/or in various other manners.” Id. at 3:17–29; see also id. at 1:48–51, 5:50–61, code (57). Elgarat’s disclosure of a DAG depicting test actions and test statuses teaches or suggests “an execution sequence comprising a test action and an associated application action” according to the disputed limitation in claim 1. See Final Act. 3, 6; Ans. 4–5. In addition, Elgarat discloses querying a DAG based on user input similar to the Specification’s disclosure of querying a DAG based on user input. See Elgarat 5:1–24; Spec. ¶¶ 30, 40–41, 44–47, Figs. 5–6; see also Final Act. 3, 6; Advisory Act. 2; Ans. 4–5. Specifically, Elgarat explains that if a DAG as initially constructed contains “every combination of options along the flow as a possible path,” the DAG may include some invalid paths. Elgarat 5:5–17. To remove invalid paths, a user may “define a business rule stating two options from two different activities must never meet.” Id. at 5:19–22. “Once defined, the system 204 searches for all paths which include that combination and removes it from the tree.” Id. at 5:22–24. Elgarat’s disclosure of a user-defined search through a DAG teaches or suggests “querying the representation” according to the disputed limitation in claim 1. See Final Act. 3, 6; Advisory Act. 2; Ans. 4–5. As the Examiner properly reasons, “[s]crutinizing relationships of a node graphs (or test results thereon) as cited entails equivalent of querying representation of the associated application.” Advisory Act. 2. Appeal 2020-000560 Application 15/574,370 9 For the reasons discussed above, Appellant’s arguments have not persuaded us that the Examiner erred in rejecting claim 1 for obviousness based on Elgarat, Lawrance, Schissel, and Wingfors. Hence, we sustain the § 103 rejection of claim 1. DEPENDENT CLAIMS 17 AND 18 Claims 17 and 18 depend directly from claim 1. Appellant does not argue patentability separately for claims 17 and 18. See Appeal Br. 6–10: Reply Br. 1–11. Hence, we sustain the § 103 rejection of claims 17 and 18 for the same reasons as claim 1. See 37 C.F.R. § 41.37(c)(1)(iv). The § 103 Rejection of Claim 2 Claim 2 depends directly from claim 1. Appellant does not argue patentability separately for claim 2. See Appeal Br. 6–16; Reply Br. 1–16. Hence, we sustain the § 103 rejection of claim 2 for the same reasons as claim 1. See 37 C.F.R. § 41.37(c)(1)(iv). The § 103 Rejection of Claims 3–16, 19, and 20 INDEPENDENT CLAIMS 11 AND 14 As noted above, the § 103 rejection of claims 11 and 14 rests on Elgarat, Lawrance, Schissel, Wingfors, Cheung, Altman, and Martinez. See Final Act. 11–14. Appellant argues that the Examiner erred in rejecting claims 11 and 14 because the references fail to teach or suggest the following limitation in claim 11 and a similar limitation in claim 14: identifying, responsive to querying the representation with a query that represents a verification execution sequence comprising a test action and an associated application action performed in response to the test action, an absence, in the representation, of the test action and the associated application action of the verification execution sequence. Appeal 2020-000560 Application 15/574,370 10 See Appeal Br. 12–14; Reply Br. 12–16. The Examiner cites the combined disclosures in Elgarat, Martinez, Altman, and Cheung as teaching or suggesting the disputed limitations in claims 11 and 14. See Final Act. 7–8, 11–14; Ans. 8–11. In particular, Appellant contends that Elgarat’s disclosure about depicting “status indications of activities in the graph” does not “provide any teaching or hint of identifying ‘an absence, in the representation, of the test action and the associated application action of the verification execution sequence.’” Appeal Br. 12–13; Reply Br. 13. Appellant distinguishes claims 11 and 14 from Elgarat’s graph by asserting that the claims require that a query identify “an absence in the representation of the test action and the associated application action.” Appeal Br. 13; Reply Br. 13–14. In addition, Appellant contends that (1) the “‘annotations added to [a] graph’ in Martinez,” (2) the “DAG in Altman,” and (3) the “topology of edges, vertices, circles, and lines of Cheung” do not overcome the deficiency in Elgarat. Appeal Br. 13 (alteration by Appellant). In response, the Examiner explains that “the limitation such as querying ‘. . . in response to . . . absence of test action and associated application action’” is “reasonably met” by Elgarat’s disclosure about (1) “querying a graph for test modifying or providing UI [user interface] type action as in Elgarat’s exploratory approach geared towards generating an adjusted/next test execution” and (2) “exploring options and actions necessitated in response to lack of associated application type of adjustment or test graph altering actions.” Ans. 9 (emphases by the Examiner). Further, the Examiner makes the following findings: First, Martinez discloses “annotations added to graph” including “information indicative of Appeal 2020-000560 Application 15/574,370 11 a token propagation time, identifying the timestamp from which the edge is arriving from.” Final Act. 7 (citing Martinez ¶ 64). Second, Altman discloses a “DAG attached with metadata such as timestamps on the edge pointed to a node, the timestamp for indicating a directional movement.” Id. (citing Altman 11:7–20, Fig. 6). Third, Cheung discloses a “graph having edge and node interconnectivity” including “a topology of edges, vertices, circles, [and] lines” that may represent “a backbone for the visualizing interaction between elements of the source code.” Id. (citing Cheung ¶¶ 50–51, Figs. 4, 8). Based on the record before us, we agree with Appellant that the Examiner has not adequately explained how the cited portions of Elgarat, Martinez, Altman, and Cheung teach or suggest the disputed limitations in claims 11 and 14. See Appeal Br. 12–14; Reply Br. 12–16. As discussed above, Elgarat discloses querying a DAG based on user input. See Elgarat 5:1–24. Specifically, Elgarat’s system searches the DAG for invalid paths and removes them from the DAG. Id. at 5:19–24. So Elgarat’s system identifies the presence—not the absence—of a test action and an associated application action. Additionally, the Examiner has not adequately explained how the cited portions of Martinez, Altman, and Cheung overcome the deficiency in Elgarat about identifying the absence of a test action and an associated application action. See Final Act. 7–8, 11–14; Ans. 8–11. Hence, we do not sustain the § 103 rejection of claims 11 and 14. DEPENDENT CLAIMS 3–10 Claim 3 depends directly from claim 1 and further requires instructions executable to “determine the potential test action by querying the directed acyclic graph based on the query, and receiving, in response to Appeal 2020-000560 Application 15/574,370 12 the query, data indicating that the test action and the associated application action represented by the query is not included in the directed acyclic graph.” Appeal Br. 19 (Claims App. ii). The Examiner cites the combined disclosures in Elgarat, Martinez, Altman, and Cheung as teaching or suggesting claim 3’s “determine” limitation. See Final Act. 6–8; Ans. 9–11. Appellant argues that claim 3 “is further allowable for the additional reasons stated above with respect to claim 11.” Appeal Br. 16; see Reply Br. 14. We agree with Appellant that the cited portions of Elgarat, Martinez, Altman, and Cheung do not teach or suggest claim 3’s “determine” limitation. Similar to the disputed limitations in claims 11 and 14, claim 3’s “determine” limitation requires that a query determine that information “is not included in” (is absent from) a directed acyclic graph. Hence, we do not sustain the § 103 rejection of claim 3. Claims 4–10 depend directly or indirectly from claim 3. For the reasons discussed for claim 3, we do not sustain the § 103 rejection of claims 4–10. DEPENDENT CLAIMS 12, 13, 15, 19, AND 20 Claims 12, 13, and 19 depend directly from claim 11; and claims 15 and 20 depend directly from claim 14. For the reasons discussed for claims 11 and 14, we do not sustain the § 103 rejection of claims 12, 13, 15, 19, and 20. DEPENDENT CLAIM 16 Claim 16 depends directly from claim 1 and specifies that “the execution sequence represented by the query comprises an order of a plurality of test actions and associated application actions.” Appeal Br. 21 Appeal 2020-000560 Application 15/574,370 13 (Claims App. iv). The Examiner cites Elgarat as teaching or suggesting claim 16’s limitation. See Final Act. 14; Ans. 11–12. Appellant argues that the Examiner erred in rejecting claim 16 because the claim requires “a query that represents an execution sequence, where this execution sequence comprises an order of a plurality of test actions and associated application actions” and the claimed query “does not exist in Elgarat.” Appeal Br. 14–15 (emphasis by Appellant). We agree with the Examiner that Elgarat teaches or suggests claim 16’s limitation. See Final Act. 14; Ans. 11–12. As discussed above, Elgarat discloses querying a DAG based on user input. See Elgarat 5:1–24. As also discussed above, a DAG depicts “actions to be performed as part of the test” including “multiple additional actions for each decision point in the flow that could be performed as at least part of the exploratory test as branches” in the DAG. Id. at 2:10–18, 2:58–63, Fig. 2; see also id. at 1:39–42, 2:1–9, code (57). A particular flow along particular branches in the DAG “comprises an order of a plurality of test actions and associated application actions” according to claim 16. See Final Act. 14; Ans. 11–12. As the Examiner properly reasons, “the concept of ‘order of’ being in part matched with teaching such as flow or branch to be selected.” Ans. 11–12. For these reasons, we sustain the § 103 rejection of claim 16. CONCLUSION We affirm the Examiner’s decision to reject claims 1, 2, and 16–18. We reverse the Examiner’s decision to reject claims 3–15, 19, and 20. Appeal 2020-000560 Application 15/574,370 14 In summary: Claims Rejected 35 U.S.C. § Reference(s)/Basis Affirmed Reversed 1, 17, 18 103 Elgarat, Lawrance, Schissel, Wingfors 1, 17, 18 2 103 Elgarat, Lawrance, Schissel, Wingfors, Cheung, Altman, Martinez, Buskens 2 3–16, 19, 20 103 Elgarat, Lawrance, Schissel, Wingfors, Cheung, Altman, Martinez 16 3–15, 19, 20 Overall Outcome 1, 2, 16– 18 3–15, 19,20 TIME PERIOD FOR RESPONSE No time period for taking any subsequent action in connection with this appeal may be extended under 37 C.F.R. § 1.136(a)(1)(iv). See 37 C.F.R. § 41.50(f). AFFIRMED IN PART Copy with citationCopy as parenthetical citation