Abstract:
A method and system, the method including receiving a set of requirements for a software application, the set of requirements comprising a plurality of software requirements identified for the software application; analyzing the set of requirements to determine dependencies between the plurality of software requirements in the set of requirements; generating a visualization of the determined dependencies and test boundaries between the plurality of software requirements in the set of requirements; storing the generated visualization of the determined dependencies and test boundaries between the plurality of software requirements in the set of requirements in a record; and applying the determined dependencies in the record to at least one of (i) optimize test steps in a test procedure and (ii) generate an executable test procedure that exercises external inputs and outputs for the software application.
Abstract:
Automated requirements-based test case generation method includes constructing in a model-based development tool a software architecture model automatically derived from architectural information of a software design model, allocating requirement models into blocks/operators of the software architecture model, and generating component level requirements-based test cases from the software architecture. The component level requirements-based test case generation method includes receiving a software architecture along with allocated requirement models represented in hierarchical data flow diagram, selecting one of the software components, building an intermediate test model based on the selected component by automatically attaching at least one of test objectives or constraints to the corresponding software architecture model blocks/operators based on the selected test strategy, and generating human and machine readable test cases with the test generator for further automatic conversion to test executable and test review artifacts. A system and a non-transitory computer-readable medium for implementing the method are also disclosed.
Abstract:
According to some embodiments, a system includes a communication device operative to communicate with a user to obtain the one or more requirements associated with a specification model for a semantic module; a semantic module to receive the one or more requirements, store the one or more requirements and transform the one or more requirements into a semantic model; a specification module to receive the semantic model, store the semantic model, translate the semantic model and generate a specification model; a memory for storing program instructions; at least one specification model platform processor, coupled to the memory, and in communication with the specification module and the semantic module and operative to execute program instructions to: transform the one or more requirements into a semantic model by executing the semantic module; translate the semantic model into a graphical model by executing the specification module; and modify the graphical model by executing the specification module to generate the specification model; and generate a specification model that is human-readable and computer-readable for use in software design. Numerous other aspects are provided.
Abstract:
A method for model-based design of safety-critical software is disclosed. The method includes receiving natural-language software requirements, developing a specification model by implementing either semantic modeling or graphical modeling, applying formal requirements analysis to the specification model, auto generating requirements based and robustness test cases from the specification model, developing a design model based on the specification model, applying test cases to the design model, auto-generating source code using the design model, verifying the source code using both test cases and static analysis technology, and compiling executable object code from the verified source code. If a result of the analysis of the software specification or design models is not satisfactory then adjusting the specification or design model to correct any inconsistency, and repeating applying the analysis and test cases. A system for implementing the model-based design and a non-transitory computer readable medium are disclosed.
Abstract:
A method for model-based design of safety-critical software is disclosed. The method includes receiving natural-language software requirements, developing a specification model by implementing either semantic modeling or graphical modeling, applying formal requirements analysis to the specification model, auto generating requirements based and robustness test cases from the specification model, developing a design model based on the specification model, applying test cases to the design model, auto-generating source code using the design model, verifying the source code using both test cases and static analysis technology, and compiling executable object code from the verified source code. If a result of the analysis of the software specification or design models is not satisfactory then adjusting the specification or design model to correct any inconsistency, and repeating applying the analysis and test cases. A system for implementing the model-based design and a non-transitory computer readable medium are disclosed.
Abstract:
A computer-implemented system for generating test cases and/or test procedures to verify software having a nonlinear arithmetic constraint over a Real number range. The system includes a translator that receives, as input, software specification models for the software to be verified. The translator is configured to generate, as output, a plurality of SMT formulas that are semantically equivalent to the software specification models. The system includes an analytical engine pool that receives, as input, the plurality of SMT formulas from the translator and analyzes the plurality of SMT formulas, and generates, as output, test case data for each of the plurality of SMT formulas determined to be satisfiable. The system includes a post-processor that receives, as input, the test case data from the analytical engine pool and generates, as output, the test cases and/or test procedures for the software to be verified based on the test case data.
Abstract:
A computer-implemented system for generating test cases and/or test procedures to verify software having a nonlinear arithmetic constraint over a Real number range. The system includes a translator that receives, as input, software specification models for the software to be verified. The translator is configured to generate, as output, a plurality of SMT formulas that are semantically equivalent to the software specification models. The system includes an analytical engine pool that receives, as input, the plurality of SMT formulas from the translator and analyzes the plurality of SMT formulas, and generates, as output, test case data for each of the plurality of SMT formulas determined to be satisfiable. The system includes a post-processor that receives, as input, the test case data from the analytical engine pool and generates, as output, the test cases and/or test procedures for the software to be verified based on the test case data.
Abstract:
According to some embodiments, a system includes a communication device operative to communicate with a user to obtain the one or more requirements associated with a specification model for a semantic module; a semantic module to receive the one or more requirements, store the one or more requirements and transform the one or more requirements into a semantic model; a specification module to receive the semantic model, store the semantic model, translate the semantic model and generate a specification model; a memory for storing program instructions; at least one specification model platform processor, coupled to the memory, and in communication with the specification module and the semantic module and operative to execute program instructions to: transform the one or more requirements into a semantic model by executing the semantic module; translate the semantic model into a graphical model by executing the specification module; and modify the graphical model by executing the specification module to generate the specification model; and generate a specification model that is human-readable and computer-readable for use in software design. Numerous other aspects are provided.
Abstract:
A system for equivalence class analysis-based automated requirements-based test case generation includes a control processor, a data store containing textual design requirements, a textual converter unit structured to convert the textual design requirements to a machine-readable version of design requirements, a requirement partition unit configured to partition the machine-readable design requirements into one or more sets of related design requirements, an equivalence class partition unit configured to process the machine-readable design requirements and input/output variables into a set of equivalence classes, an equivalence class analyzer unit structured to analyze the set of equivalence classes to generate equivalence class tests and identify uncovered input space, and a boundary class analyzer unit structured to identify boundaries of the equivalence classes and generate boundary value tests and robustness tests. A method for equivalence class analysis-based automated requirements-based test case generation implementable on the system, and a non-transitory computer readable medium are also disclosed.
Abstract:
According to some embodiments, an Arbitrary Software Logic Modeling (“ASLM”) data source may store electronic records associated with units, each electronic record including a unit identifier, one or more identification tags, context data, unit parameters, unit variables, and internal logic. An ASLM platform may express system requirements at a logic block level and establish the logic blocks as self-contained entities and connections in accordance with the system requirements (the established logic blocks graphically representing systems logic). The ASLM platform may then explicitly transform the systems logic automatically to output language agnostic common design information exchange model information. The ASLM platform may also translate and maintain traceability among the system requirements, common design information exchange model information, and generated code.