Patent classifications
G06F8/316
METHOD AND SYSTEM FOR IMPOSING CONSTRAINTS IN A SKILL-BASED AUTONOMOUS SYSTEM
According to an aspect of the present disclosure, a computer-implemented includes creating a plurality of basic skill functions for a controllable physical device of an autonomous system. Each basic skill function includes a functional description for using the controllable physical device to interact with a physical environment to perform a defined objective. The method further includes selecting one or more basic skill functions to configure the controllable physical device to perform a defined task. The method also includes determining a decorator skill function specifying at least one constraint. The decorator skill function is configured to impose, at run-time, the at least one constraint, on the one or more basic skill functions. The method further includes generating executable code by applying the decorator skill function to the one or more basic skill functions, and actuating the controllable physical device using the executable code.
SCALING SERVICE DISCOVERY IN A MICRO-SERVICE ENVIRONMENT
Systems and methods provide for scaling service discovery in a micro-service environment. A controller can inject a service discovery agent onto a host. At least one of the controller or the agent can identify a first set of micro-service containers that are dependencies of the first micro-service container and a second set of micro-service containers that are dependencies of the second micro-service container. At least one of the controller or the agent can update routing data for the first set of micro-service containers and the second set of micro-service containers. At least one of the controller or the agent can determine the second micro-service container has terminated on the host computing device. At least one of the controller or the agent can update the agent to remove the routing data for the second set of micro-service containers.
Generating plug-in application recipe extensions
Techniques for generating plug-in application recipe (PIAR) extensions are disclosed. A PIAR management application discovers a particular data type within one or more data values for a particular field of a plug-in application, where the particular data type is (a) different from a data type of the particular field as reported by the plug-in application and (b) narrower than the data type of the particular field while complying with the data type of the particular field. The PIAR management application identifies one or more mappings between (a) the particular data type and (b) one or more data types for fields accepted by actions of plug-in applications. The PIAR management application presents a user interface including one or more candidate PIAR extensions based on the mapping(s). Based on a user selection of a candidate PAIR extension, the PIAR management application executes a PIAR that includes the selected PIAR extension.
Auto-injection of security protocols
A method for automatically enhancing security and fixing security vulnerabilities in the source code of a computer program in an object oriented run time environment includes evaluating the source code file of a monitored computer program. The source code file includes a plurality of class files. Each session includes two or more session segments. A security assessment on each of the plurality of class files is performed to identify one or more potential security issues associated with the plurality of class files. One or more security controls configured to address the identified potential security issues are automatically injected into a source code of one or more class files identified as having potential security issues. The automatically modified source code file of the monitored computer program is deployed to the run-time environment.
GENERATING PLUG-IN APPLICATION RECIPE EXTENSIONS
Techniques for generating plug-in application recipe (PIAR) extensions are disclosed. A PIAR management application discovers a particular data type within one or more data values for a particular field of a plug-in application, where the particular data type is (a) different from a data type of the particular field as reported by the plug-in application and (b) narrower than the data type of the particular field while complying with the data type of the particular field. The PIAR management application identifies one or more mappings between (a) the particular data type and (b) one or more data types for fields accepted by actions of plug-in applications. The PIAR management application presents a user interface including one or more candidate PIAR extensions based on the mapping(s). Based on a user selection of a candidate PAIR extension, the PIAR management application executes a PIAR that includes the selected PIAR extension.
INTEGRATED APPLICATION DEVELOPMENT SYSTEMS AND METHODS
A system for developing software provides automatically identifies, based on wireframe images, features from a library of features for a custom software application, implements simulations of a plurality of the features available for demonstration through the graphical user interface, stores blocks of source code for each feature in a source code repository wherein the blocks are adapted to provide an actual application when compiled by developers, receives from the client device, by a server running a software building component, one or more selected features for the software application, automatically integrates, by the software building component, the one or more selected features to generate an integrated feature set based on attributes of each of the selected features and an inter-feature rules set, and generates an interactive visualization of a navigable prototype of the software application based on the integrated feature set.
Collaboration service to support cross-process coordination between active instances of a microservice
Techniques are provided for enabling cross-process coordination between multiple instances of given microservice in a cloud computing system. A method includes running a plurality of active instances of a given microservice of a computing system comprising a distributed microservices architecture. A first active instance of the plurality of active instances executes a portion of program code of the given microservice to perform a job. The portion of the program code of the given microservice includes an instance synchronization element which is configured to enable cross-process coordination between the plurality of active instances of the given microservice with the support of a collaboration service. The first active instance utilizes the instance synchronization element to communicate with the collaboration service and cause the collaboration service to execute a process associated with the instance synchronization element to thereby implement the cross-process coordination between the plurality of active instances for executing the job.
SIMULATION-BASED SOFTWARE DESIGN AND DELIVERY ATTRIBUTE TRADEOFF IDENTIFICATION AND RESOLUTION
In some examples, simulation-based software design and delivery attribute tradeoff identification and resolution may include receiving requirements specification, and generating, based on an analysis of the requirements specification, canonical sustainability requirements. Based on an analysis of the canonical sustainability requirements, sustainable software attribute decisions and an attribute optimization score may be generated, and used to generate a sustainable software attribute balance score and a tradeoff attributes list. Based on an analysis of the sustainable software attribute balance score and the tradeoff attributes list, a green quotient may be generated and used to generate an architecture document. Further, based on an analysis of the architecture document, software quality rules may be generated, and used to generate a software application.
OBJECT-ORIENTED INFRASTRUCTURE-AS-CODE PLATFORM (OOIACP)
Novel tools and techniques are provided for implementing object-oriented infrastructure-as-code platform (“OOIACP”) and its functionalities. In various embodiments, when a request to process one or more lifecycle events is received, a computing system may perform: selecting and scaling across a plurality of OOIACP instances; and causing the selected plurality of OOIACP instances to process the one or more lifecycle events. In some cases, each OOIACP instance may include an infrastructure-as-code (“IAC”) command line that instantiates component infrastructure among a plurality of component infrastructure to process at least one lifecycle event among the one or more lifecycle events concurrently and independently of other OOIACP instances. In some instances, the first plurality of OOIACP instances may be located within an environment in which the plurality of component infrastructure is located.
FORMAL OBJECTS AND EXECUTORS
Embodiments are provided for formal objects and executors. In one embodiment, a formal object serialization allows retrieving the object value using a Get method, writing the object value using a Write method, and reading the object value using a Read method. In one embodiment, a formal object validation uses a validator to validate assignments to the object value. Formal validation and serialization may be combined. In one embodiment, a formal executor is guaranteed to be closed regardless of whether an error has occurred or not.