CTNF 18/835,950 CTNF 86397 DETAILED ACTION Notice of Pre-AIA or AIA Status 07-03-aia AIA 15-10-aia 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-8 are pending and examined in this office action. 07-30-03-h AIA Claim Interpretation 07-30-03 AIA The following is a quotation of 35 U.S.C. 112(f): (f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof. The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph: An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof. This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitation(s) uses a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitation(s) is/are: a storage unit, an input unit, a feature conversion unit, a software component selecting unit, a notification unit, a system feature checking unit, a system component selecting unit, a validity detecting unit, a traceability checking unit in claims 1-6. Because this/these claim limitation(s) is/are being interpreted under 35 U.S.C. 112(f), it/they is/are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof. Because this/these claim limitation(s) is/are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof. If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. Claim Rejections - 35 USC § 102 07-07-aia AIA 07-07 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 – 07-08-aia AIA (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. 07-15 AIA Claim s 1, 4, 6 and 8 are rejected under 35 U.S.C. 102( a)(1 ) as being anticipated by Hashimoto et al. (US PGPUB 2008/0244520) hereinafter Hashimoto . Per claim 1, Hashimoto discloses a processing device comprising: a storage unit that stores a software component database that is a database indicating a correspondence relationship between a software component including at least a source code and a software feature indicating characteristics of a software, and heterogeneous features correlation information indicating a correspondence relationship between the software feature and a system feature having a lower abstraction level than the software feature and indicating characteristics of a system; (Figs. 3, 6; paragraphs [0032][0039]; a software component database stores software configuration information and a plurality of software components, in the software component database, one-to-one correspondence is established between the items of the software component arrangement information and the software components (including their source code); the tree chart shows the correspondence relationship between a software component and a software feature (for example, sensors or actuators) indicating characteristics of a software, and heterogeneous features correlation information indicating a correspondence relationship between the software feature (sensors) and a system feature (digital port) having a lower abstraction level than the software feature and indicating characteristics of a system); an input unit that receives a request feature list including one or more of the system features; a feature conversion unit that refers to the heterogeneous features correlation information and outputs the software feature corresponding to the system feature included in the request feature list; and a software component selecting unit that refers to the software component database and outputs as a software component selection result the software component corresponding to the software feature output by the feature conversion unit. (Fig. 3; claim 1; paragraphs [0049][0051]; an interface unit ( an input unit ) for acceptance of selection of components by the user while displaying a component selection screen, a software component input unit ( a software component selecting unit ) for inputting from said database storage unit software components corresponding to the result of the component selection accepted from the user at said interface unit; when a software component corresponding to a certain node is chosen, to include in the same file all the ascendant nodes which contain a parent of such the node (i.e. when a user selects a system feature (digital port), based on the tree chart, its corresponding parent node (sensors group) which is a software feature is automatically selected, retrieved and outputted from the component database to the user)). Per claim 4, Hashimoto further discloses wherein the storage unit further stores a system component database that is a database indicating a correspondence relationship between the system feature and a system component that is at least one of a model and a design document, and the processing device further includes a system component selecting unit that specifies the system component corresponding to the system feature included in the request feature list based on the system component database and outputs the system component as a system component selection result (Figs. 3, 6; paragraphs [0032][0039]; software component database stores one-to-one correspondence is established between the items of the software component arrangement information and the software components (including their source code); the tree chart shows the correspondence relationship between a system feature (digital port) and a system component (software component) which is a model; claim 1-5; when a user selects a system feature (digital port), the system selects the corresponding software component (system component) from the component database and output it to the user as a result). Per claim 6, Hashimoto further discloses wherein the storage unit further stores a traceability database indicating a correspondence relationship between the system component and the software component, and the processing device further includes a traceability checking unit that refers to the traceability database, specifies the software component corresponding to the system component specified by the system component selecting unit, and checks whether the software component that has been specified matches the software component selected by the software component selecting unit (Figs. 3, 6; paragraphs [0032][0039]; software component database stores one-to-one correspondence is established between the items of the software component arrangement information and the software components (traceability relationships); the tree chart shows the correspondence relationship between a system feature (digital port) and a system component (software component); claim 1-5; when a user selects a system feature (digital port), the system selects the corresponding software component ( which is system component) from the component database and output it to the user as a result; i.e. only a matched software component under the system feature is selected, there are other software components which are under other unselected system features, those unmatched software components are not selected). Claim 8 is rejected under similar rationales as claim 1 . Claim Rejections - 35 USC § 103 07-20-aia AIA 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. 07-21-aia AIA Claim s 2-3 and 5 are rejected under 35 U.S.C. 103 as being unpatentable over Hashimoto, in view of White et al. ( Automated Diagnosis of Feature Model Configurations , Journal of Systems and Software, Volume 83, Issue 7, July 2010, Pages 1094-1107) hereinafter White . Per claim 2, Hashimoto does not explicitly teach the storage unit further stores system feature constraining information indicating a constraint between the system features, and the processing device further includes a notification unit that notifies a user of information, and a system feature checking unit that, when a number of the system features included in the request feature list is two or more and the system features included in the request feature list do not satisfy a constraining condition between the system features based on the system feature constraining information, uses the notification unit to notify the user that the system features do not satisfy the constraining condition between the system features . However, White suggests the above (abstract; Software product-lines are software architectures that can be readily reconfigured for different project requirements. A key part of an SPL is a model that captures the rules (constraint info) for reconfiguring the software. Each SPL configuration is represented as a selection of features from the feature model. Invalid SPL configurations can be created due to feature conflicts introduced via staged or parallel configuration or changes to the constraints in a feature model. When invalid configurations are created, a method is needed to automate the diagnosis of the errors; it would be obvious that in a diagnosis, to provide a user with an error report when there is a constraining condition, as evidenced in Novak, paragraph [0055]; providing a defect report to a user). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Hashimoto and White to notify the user after detecting a constraining condition between selected features, so the user can work to resolve the constraining condition which can cause errors. Per claim 3, Hashimoto does not explicitly teach the storage unit further stores software feature constraining information indicating a constraint between the software features, and the processing device further includes a notification unit that notifies a user of information, and a software feature checking unit that, when a number of the software features that the feature conversion unit outputs is two or more and the software features that are output by the feature conversion unit do not satisfy a constraining condition between the software features based on the software feature constraining information, uses the notification unit to notify the user that the software features do not satisfy the constraining condition between the software features . However, White suggests the above (abstract; Software product-lines are software architectures that can be readily reconfigured for different project requirements. A key part of an SPL is a model that captures the rules (constraint info) for reconfiguring the software. Each SPL configuration is represented as a selection of features from the feature model. Invalid SPL configurations can be created due to feature conflicts introduced via staged or parallel configuration or changes to the constraints in a feature model. When invalid configurations are created, a method is needed to automate the diagnosis of the errors; it would be obvious that in a diagnosis, to provide a user with an error report when there is a constraining condition, as evidenced in Novak, paragraph [0055]; providing a defect report to a user). Hashimoto further discloses converted software features (Fig. 3; claim 1; paragraphs [0049][0051]; when a software component corresponding to a certain node is chosen, to include in the same file all the ascendant nodes which contain a parent of such the node (i.e. when a user selects a system feature (digital port), based on the tree chart, its corresponding parent node (sensors group) which is a software feature (converted software feature) is automatically selected, retrieved and outputted from the component database to the user). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Hashimoto and White to notify the user after detecting a constraining condition between converted software features, so the user can work to resolve the constraining condition which can cause errors. Per claim 5, Hashimoto does not explicitly teach the storage unit further stores system feature constraining information indicating a constraint between the system features and a software feature constraining information indicating a constraint between the software features, and the processing device further includes a validity detecting unit that detects a contradiction among the heterogeneous features correlation information, the system feature constraining information, and the software feature constraining information . However, White suggests the above (abstract; Software product-lines are software architectures that can be readily reconfigured for different project requirements. A key part of an SPL is a model that captures the rules (constraint info) for reconfiguring the software. Each SPL configuration is represented as a selection of features from the feature model. Invalid SPL configurations can be created due to feature conflicts introduced via staged or parallel configuration or changes to the constraints in a feature model. When invalid configurations are created, a method is needed to automate the diagnosis of the errors; it would be obvious that in a diagnosis, to provide a user with an error report when there is a constraining condition, as evidenced in Novak, paragraph [0055]; providing a defect report to a user). Hashimoto further discloses converted software features (Fig. 3; claim 1; paragraphs [0049][0051]; when a software component corresponding to a certain node is chosen, to include in the same file all the ascendant nodes which contain a parent of such the node (i.e. when a user selects a system feature (digital port), based on the tree chart, its corresponding parent node (sensors group) which is a software feature (converted software feature) is automatically selected, retrieved and outputted from the component database to the user). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Hashimoto and White to notify the user after detecting a constraining condition between system features or software features, so the user can work to resolve the constraining condition which can cause errors . 07-21-aia AIA Claim 7 rejected under 35 U.S.C. 103 as being unpatentable over Hashimoto, in view of Novak et al. (US PGPUB 2012/0110544) hereinafter Novak . Per claim 4, Hashimoto further teaches wherein the storage unit further stores software component attribute information indicating a correspondence relationship between the software component and software component attribute information that is attribute information of the software component (paragraph [0050]; the GUI displays a tree chart of software configuration information, which includes software components and their corresponding attribute information). Hashimoto does not explicitly teach the software component selecting unit further outputs the software component attribute information corresponding to the software component to be output as a development risk report, and the attribute information is at least one of a size of the software component, an index indicating an abstraction level of a feature, a development difficulty level, and a number of test re-execution . However, Novak suggests the above (paragraphs [0035][0054]; generating a report of selected software components, which includes their metrics/attribute information such as code size). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Hashimoto and Novak to generate a report of user selected software components and their attribute information, so the user can better assess the usefulness of the selected components (a component with a large code size may consume too much storage resource, thus not useful). Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to HANG PAN whose telephone number is (571)270-7667. The examiner can normally be reached 9 AM to 5 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, 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. /HANG PAN/Primary Examiner, Art Unit 2193 Application/Control Number: 18/835,950 Page 2 Art Unit: 2193 Application/Control Number: 18/835,950 Page 3 Art Unit: 2193 Application/Control Number: 18/835,950 Page 4 Art Unit: 2193 Application/Control Number: 18/835,950 Page 5 Art Unit: 2193 Application/Control Number: 18/835,950 Page 6 Art Unit: 2193 Application/Control Number: 18/835,950 Page 7 Art Unit: 2193 Application/Control Number: 18/835,950 Page 8 Art Unit: 2193 Application/Control Number: 18/835,950 Page 9 Art Unit: 2193 Application/Control Number: 18/835,950 Page 10 Art Unit: 2193 Application/Control Number: 18/835,950 Page 11 Art Unit: 2193