G06F11/3604

DATA GOVERNANCE POLICY RECOMMENDATIONS FOR APPLICATION PROGRAM INTERFACES
20220398184 · 2022-12-15 ·

A computer-implemented method includes: receiving, by a computing device and from a user device, a request to validate an application program interface (API); validating, by the computing device, the API by performing a fetch analysis using different user profiles; returning, by the computing device and to the user device, a result of the fetch analysis; validating, by the computing device, the API by performing an insert/update analysis using the different user profiles; and returning, by the computing device and to the user device, a result of the insert/update analysis

SELF-OPTIMIZING ANALYSIS SYSTEM FOR CORE DUMPS
20220398185 · 2022-12-15 ·

A method for facilitating root cause analysis of a software crash by core dump analysis is disclosed. The method comprises receiving a core dump file relating to a software program, identifying unique source code lines in the core dump file for each running thread at the crash time, and determining unique source code lines as conspicuous source code lines depending on an abstraction level value indicating a number of occurrences of the conspicuous source code line in different threads. Furthermore, the method comprises determining an abstraction ratio as a function of a number of conspicuous source code lines and a number of unique source code lines, evaluating whether the predefined abstraction level value has to be adjusted by determining unique source code line as a conspicuous source code line and determining an abstraction ratio, and outputting the conspicuous source code lines and an assessment value for the abstraction ratio.

CLOUD SERVICE DELIVERY TECHNIQUES AND SYSTEMS
20220398333 · 2022-12-15 ·

Various examples are directed to systems and methods for providing software services to one or more consumer systems. A cloud service provider system accesses a software service build comprising a first feature and a first feature toggle for selectively enabling or disabling the first feature. The cloud service provider system configures the first feature toggle of the software service build to disable the first feature and deploys the software service build to a first environment accessible by a first consumer system. A toggle routine determines that a first toggle condition for the first feature has occurred and modifies the software service build deployed at the first environment to configure the first feature toggle to enable the first feature.

Automated program repair tool

An automated program repair tool utilizes a neural transformer model with attention to predict the contents of a bug repair in the context of source code having a bug of an identified bug type. The neural transformer model is trained on a large unsupervised corpus of source code using a span-masking denoising optimization objective, and fine-tuned on a large supervised dataset of triplets containing a bug-type annotation, software bug, and repair. The bug-type annotation is derived from an interprocedural static code analyzer. A bug type edit centroid is computed for each bug type and used in the inference decoding phase to generate the bug repair.

WEB-BASED ROBOTIC PROCESS AUTOMATION DESIGNER SYSTEMS AND AUTOMATIONS FOR VIRTUAL MACHINES, SESSIONS, AND CONTAINERS
20220391227 · 2022-12-08 · ·

Web-based robotic process automation (RPA) designer systems that allow RPA developers to design and implement web serverless automations, user interface (UI) automations, and other automations are disclosed. Such web-based RPA designer systems may allow a developer to sign in through the cloud and obtain a list of template projects, developer-designed projects, services, activities, etc. Thus, RPA development may be centralized and cloud-based, reducing the local processing and memory requirements on a user's computing system and centralizing RPA designer functionality, enabling better compliance. Automations generated by the web-based RPA designer systems may be deployed and executed in virtual machines (VMs), containers, or operating system sessions.

Systems and Methods for Evaluating Code Contributions by Software Developers
20220382541 · 2022-12-01 · ·

A tool is provided for evaluating contributions of different software developers to a software project, which considers both the structural value and non-structural value of each developer's contributions. Source code for the project is parsed to generate abstract syntax trees (ASTs) representing the code at different times during the project. The tool may perform both a structural value analysis and a non-structural value analysis of the code contributions of each developer. The structural value analysis for each developer may include a call-commit analysis of a call-commit graph generated from the ASTs to analyze function calls and commits attributable to each developer. The non-structural value analysis for each software developer may include identifying and classifying commits attributable to each developer based on impact of such commits on the project. The tool may then calculate a development value score for each developer based on the structural and non-structural metrics for each developer.

AUTOMATED FUNCTION CATEGORY DETECTION

A method may include extracting, from a function included in code, sub-tokens and program analysis features, generating sub-token vectors from the sub-tokens and a program analysis vector from the program analysis features, combining, by a machine learning model, the sub-token vectors to obtain a combined sub-token vector, combining the combined sub-token vector and the program analysis vector to obtain a function vector, and classifying, using the function vector, the function as a function category.

Scalable points-to analysis via multiple slicing

A method for analyzing software with pointer analysis may include obtaining a software program, and determining a first independent program slice of the software program describing a first code segment of the software program. The method may further include determining, using a first pointer analysis objective, a first result from performing a first pointer analysis on the first independent program slice, and determining, using the first result, a first dependent program slice of the software program. The method may further include determining, using a second pointer analysis objective, a second result from performing a second pointer analysis on the first dependent program slice. The method may further include generating a report, using these results, indicating whether the software program satisfies a predetermined criterion.

Guided safety analysis for cyber physical systems

Systems and methods for maintaining the safety of a software-based system. One method includes automatically generating a first artifact tree for a hazard for a first version of the system and automatically transforming the first artifact tree into a first augmented tree using a set of heuristics. The method also includes automatically generating a second artifact tree for the hazard for a second version of the system and automatically transforming the second artifact tree for the hazard into a second augmented tree using the set of heuristics. The method further includes automatically comparing the first augmented tree and the second augmented tree to generate a delta view, and automatically generating, based on the delta view, at least one selected from a group consisting of a safety warning for the second version of the software-based system and an actionable recommendation to maintain safety of the second version of the software-based system.

VERIFICATION CONTROL APPARATUS, SYSTEM, AND METHOD, AND NON-TRANSITORY COMPUTER-READABLE MEDIUM
20230054078 · 2023-02-23 · ·

A verification control apparatus (1) includes: a first region (12) that is a virtualization execution region where a first information system including a first file operates; a second region (13) that is a virtualization execution region where a common environment setting with the first region is applied and a second information system in which the first file in the first information system is replaced with a second file operates; a storage unit (14) that stores setting information in which an operation setting is made for one of the first region and the second region, and a verification setting is made for the other; an input control unit (11) that transfers a processing request to each of a region where the operation setting is made and a region where the verification setting is made; and an output control unit (15) that transfers, when an output of a processing result for the processing request is detected from a region where the operation setting is made, the processing result to a transmission destination of the processing result, and inhibits, when an output of a processing result for the processing request is detected from a region where the verification setting is made, transfer to a transmission destination of the processing result.