Patents Assigned to Software AG
  • Patent number: 10007491
    Abstract: Certain example embodiments relate to systems and/or methods for cloud-based event-driven integration, which in essence inverts the current point-to-point integration pattern by using an event-driven system in its place. Certain example embodiments transform and normalize integration patterns in connection with an underlying framework that helps decouple data producers from data consumers and advantageously allows additional systems to simply “plug into” the framework. Data from event sources is transformed into an event with a well-defined event type that may be picked up by an event sink, transformed into a format relevant for that event sink, and subsequently processed.
    Type: Grant
    Filed: December 18, 2014
    Date of Patent: June 26, 2018
    Assignee: SOFTWARE AG USA, INC.
    Inventors: Michael Ellis Bevilacqua, Dobromir Karamelski
  • Patent number: 10007447
    Abstract: Embodiments include methods, systems, and computer program products for low impact image level backup and replication of data between a production data storage and a backup data storage. In an embodiment system, the system starts processing of a task to backup or recover data between the production data storage and the backup data storage. The system measures a latency to access the production data storage. The system then determines whether the latency is above a throttling threshold. When the system determines that the latency exceeds the throttling threshold, the system calculates a throttling value, determines an amount of the delay based on the calculated throttling value, and delays, by the determined amount, the processing of the next data block.
    Type: Grant
    Filed: August 12, 2015
    Date of Patent: June 26, 2018
    Assignee: Veeam Software AG
    Inventors: Anton Gostev, Alexander Baranov
  • Patent number: 10002114
    Abstract: A computer-implemented method of generating interactive electronic documents comprises: generating each of the electronic documents as an object having a non-variable first part, the non-variable first part comprising instructions configured to direct a processing unit to perform a function call in response to user interaction, and a variable second part separate from the non-variable first part, the variable second part comprising variable data and functions defined to return the variable data in response to the function call. The invention provides generating interactive electronic documents at high speed, in particular in order to enable high throughput.
    Type: Grant
    Filed: February 18, 2014
    Date of Patent: June 19, 2018
    Assignee: GMC SOFTWARE AG
    Inventors: Jan Knoulich, Didier Rouillard
  • Patent number: 10002186
    Abstract: Precise quantile determination in a distributed environment is provided where data is distributed among worker nodes, one of which functions as a coordinator node. Each worker node has local data for precise quantile determination. The coordinator node derives a maximum relative error value ? which guarantees an exact result for every quantile can be determined in two passes with optimal memory consumption on this node. The worker nodes perform a distributed computation of quantile summaries of datapoints, that specify lower and upper bounds of quantile ranks for selected datapoints. The coordinator node merges the quantile summaries and determines, for each quantile rank, lower and upper bounds for values between which the quantile must occur. The worker nodes filter out, in a second pass, those datapoints that are not within the bounds and stream the qualifying data to the coordinator node. The coordinator node computes precise quantiles from the qualifying data.
    Type: Grant
    Filed: March 7, 2016
    Date of Patent: June 19, 2018
    Assignee: Software AG
    Inventors: Daniel Schreck, Sebastian Millies
  • Patent number: 9996736
    Abstract: Certain example embodiments relate to large venue surveillance and reaction systems and/or methods that take into account both subjective emotional attributes of persons having relations to the large venues, and objective measures such as, for example, actual or expected wait times, current staffing levels, numbers of customers to be serviced, etc. Pre-programmed scenarios are run in real-time as events stream in over one or more electronic interfaces, with each scenario being implemented as a logic sequence that takes into account at least an aspect of a representation of an inferred emotional state. The scenarios are run to (a) determine whether an incident might be occurring and/or might have occurred, and/or (b) dynamically determine a responsive action to be taken. A complex event processing engine may be used in this regard. The analysis may be used in certain example embodiments to help improve customer satisfaction at the large venue.
    Type: Grant
    Filed: September 6, 2016
    Date of Patent: June 12, 2018
    Assignee: Software AG USA, Inc.
    Inventors: Leighton Smith, Gareth Smith
  • Publication number: 20180157830
    Abstract: The present invention relates to a system for monitoring the integrity of a component delivered to a client system by a server system and processable and/or executable on the client system, having an integration system and having a sensor, wherein the integration system integrates the sensor into the component delivered by the server system to the client system, and wherein the sensor is configured such that it is executed on the processing and/or execution of the component and recognizes modifications of the component.
    Type: Application
    Filed: April 18, 2016
    Publication date: June 7, 2018
    Applicant: G DATA Software AG
    Inventors: Thomas SIEBERT, Karsten TELLMANN
  • Patent number: 9990132
    Abstract: Certain example embodiments relate to a highly-concurrent, predictable, fast, self-managed, in-process space for storing data that is hidden away from the garbage collector and its related pauses. More particularly, certain example embodiments relate to improved memory management techniques for computer systems that leverage an off-heap direct-memory data store that is massively scalable and highly efficient. The off-heap store may be provided in connection with a Java-based environment, and garbage collection may be completely or nearly completely avoided for the off-heap store. The off-heap store may be integrated into a tiered storage solution in certain example embodiments.
    Type: Grant
    Filed: October 2, 2015
    Date of Patent: June 5, 2018
    Assignee: Software AG USA, Inc.
    Inventors: Steven T. Harris, Christopher Dennis, Saravanan Subbiah
  • Patent number: 9973418
    Abstract: Certain example embodiments described herein relate to techniques for propagating changes across broker territories. Broker territories are formed from broker servers that are placed in different geographical locations. When a territory is formed, a minimum spanning tree (MST) is formed between the brokers in the territory and, as a result, every broker in the territory will know its nearest neighbors and will be able to propagate the changes to these brokers. The MST may be dynamic in certain example embodiments. Each broker may be configured to calculate the cost of the edges based on certain predefined parameters, e.g., in computing the MSTs. Parameters that may be used in determining edge weights may include, for example, response to ping, geographical distance, whether a broker is in a LAN versus in a WAN, whether brokers are embedded in a mobile device, predefined categories (e.g., based on device type, etc.), and/or the like.
    Type: Grant
    Filed: November 12, 2013
    Date of Patent: May 15, 2018
    Assignee: SOFTWARE AG
    Inventor: Preetha Srinivasan
  • Patent number: 9967196
    Abstract: Certain example embodiments relate to techniques for dynamic resource use limitations in a cloud computing environment. A service request from a user is received, in connection with a first application process of the application processes executing in the environment. A resource strategy based on the received service request is generated in connection with the first application process. The resource strategy specifies at least one resource shared by the application processes and an amount of the at least one resource for use by the first application process to subsequently perform a service requested. In connection with a resource controller process different from the first application process, a determination is made regarding whether the generated resource strategy is feasible. Either the service is performed (e.g., when the resource strategy is feasible), or the resource strategy is revised and re-submitted to the resource controller process (e.g., when the resource strategy is infeasible).
    Type: Grant
    Filed: November 17, 2014
    Date of Patent: May 8, 2018
    Assignee: SOFTWARE AG
    Inventors: Marc Lehmann, Christoph Wagmann
  • Patent number: 9965514
    Abstract: Certain example embodiments relate to techniques for real-time generation of temporal comparative and superlative analytics. For instance, certain example embodiments analyze real-time events to generate building blocks that are assemblable into natural language question templates. These natural language question templates, which may include natural language phrases and templated fields, may be comparative or superlative in nature. User selectable options or parameters may be inserted in place of the templated fields, and complete questions, including user selections and the comparative or superlative, may be translated into a formal query language for execution on the real-time data source. In certain example embodiments, a GUI may enable users to build pre-constructed questions with selectable parameters.
    Type: Grant
    Filed: December 19, 2014
    Date of Patent: May 8, 2018
    Assignee: SOFTWARE AG USA, INC.
    Inventors: John Crupi, Karthic Thope
  • Patent number: 9940221
    Abstract: For generating an application program (15) from a plurality of application program modules (12), a computerized application platform (1) comprises an application configuration module (11) configured to receive from a user of a communication terminal instructions, for defining a selection of the application program modules (12), and to generate an application program (15) using the selected application program modules (12). The application platform (1) further comprises a plurality of device profiles (13) for different types of mobile communication devices. Each device profile (13) includes hardware characteristics of a different type of mobile communication device.
    Type: Grant
    Filed: November 18, 2014
    Date of Patent: April 10, 2018
    Assignee: GMC SOFTWARE AG
    Inventor: Jan Knoulich
  • Patent number: 9922350
    Abstract: Certain example embodiments relate to a dynamically adaptable real-time customer experience manager and/or associated method. Electronic messages are received from different source systems. Each message has an associated message type. Metadata is dynamically and programmatically developed for each received message based on an extensible set of scoring scenarios. The metadata includes at least one metric that is comparable across messages of different types for assessing relative priorities. A determination is made as to where in a queue of pending messages each received message is to be inserted, based on the metadata. A complex event processing query is executed on the queue to dynamically identify a pending message therein that is to be delivered. The identified pending message is subjected to pre-programmed distribution scenarios to identify which possible communication channel(s) that identified pending message is to be sent.
    Type: Grant
    Filed: July 16, 2014
    Date of Patent: March 20, 2018
    Assignee: SOFTWARE AG
    Inventor: Gareth Smith
  • Patent number: 9922089
    Abstract: Certain example embodiments described herein relate to techniques for processing XML documents of potentially very large sizes. For instance, certain example embodiments parse a potentially large XML document, store the parsed data and some associated metadata in multiple independent blocks or partitions, and instantiate only the particular object model object requested by a program. By including logical references rather than physical memory addresses in such pre-parsed partitions, certain example embodiments make it possible to move the partitions through a caching storage hierarchy without necessarily having to adjust or encode memory references, thereby advantageously enabling dynamic usage of the created partitions and making it possible to cache an arbitrarily large document while consuming a limited amount of program memory.
    Type: Grant
    Filed: July 18, 2012
    Date of Patent: March 20, 2018
    Assignee: SOFTWARE AG USA, INC.
    Inventor: Bernard J. Style
  • Patent number: 9904899
    Abstract: Certain example embodiments relate to techniques for executing business processes in a distributed computer system (e.g., cloud-based) environment. A representation of the business process is decomposed into executable components. The executable components each have assigned thereto process and sequence identifiers, and each is classified as having an executable component types. The executable component types including integration, task, and data flow types. The integration flow type represents activities to be performed in connection with external computer systems, the task flow type represents human-interactive activities, and the data flow type represents activities to be performed on data relevant to the business process.
    Type: Grant
    Filed: August 27, 2014
    Date of Patent: February 27, 2018
    Assignee: SOFTWARE AG
    Inventor: Michael Stachel
  • Patent number: 9894185
    Abstract: A system for condition-based application logic shifting between a client and a server uses a stub generator, a function processor, and a client stub. Both the stub generator and the function processor are located in the server and the client stub is generated by the stub generator. Normally an application function's execution occurs on the client. The client stub determines whether or not a client shift condition (CSC) exists for shifting an application function's execution from the client to the server when the CSC does exist, and shifting the application's function back to the client when it is determined that the CSC does not exist (or no longer exists).
    Type: Grant
    Filed: December 16, 2014
    Date of Patent: February 13, 2018
    Assignee: Software AG
    Inventors: Vittorio De Angelis, Rocco De Angelis
  • Patent number: 9870359
    Abstract: A system for dynamic document retention, in a multi-owner environment that includes a document management system, registers, in a retention service, plural different document owners for a same document. The system receives a different owner-defined document retention policy for the document from each of the document owners, and registers, in a plug-in registry, the policies. In response to a scheduler or a document owner, the system triggers an update of a document retention policy, adds/deletes a document owner from the document, and/or deletes the document when there are no remaining document owners. The document management system includes a retention service that tracks the owners of the same document(s), the plug-in registry that tracks the different document retention policies of the different document owners, and an optional scheduler. The event-based retention policies can be responsive to events occurring internal to or external to the document management system.
    Type: Grant
    Filed: August 7, 2014
    Date of Patent: January 16, 2018
    Assignee: Software AG
    Inventors: Marc Lehmann, Christoph Wagmann
  • Patent number: 9864771
    Abstract: The invention relates to a method of synchronizing a plurality of clients accessing a database, each client executing a plurality of tasks on the database, wherein the method comprises for each of the clients the steps of accumulating the time of one or more tasks performed by the client after the issuance of a synchronization request and rejecting a request for the opening of a new task of the client, if the accumulated task time exceeds a maximum accumulated task time.
    Type: Grant
    Filed: May 15, 2007
    Date of Patent: January 9, 2018
    Assignee: Software AG
    Inventor: Heinz Kreuder
  • Patent number: 9858043
    Abstract: Certain example embodiments described herein relate to techniques for matching business requirements with available services in service-oriented business process systems. An n-to-m relationship between process steps and services may be established. In certain example embodiments, both future design and dynamic runtime changes become possible by elaborating on possible resolution techniques before process execution and by identifying/resolving configurational dependencies. The addition of a service-oriented process configuration layer is made possible in certain example embodiments by enhancing the way that business processes are modeled visually or notationally, and through the implementation of a metamodel. The model linking process steps and services may be extended so as to support logical operators, rules or constraints for matching process steps and services, dependencies and relationships, etc.
    Type: Grant
    Filed: December 22, 2010
    Date of Patent: January 2, 2018
    Assignee: SOFTWARE AG
    Inventor: Katrina Simon
  • Patent number: 9832268
    Abstract: An in-memory data grid (IMDG) server includes an i/o interface for transmitting and receiving data over a network. A random access memory (RAM) is configured with the IMDG which stores plural different data sets that may be requested for retrieval by applications that can connect to the IMDG server through the network. A processor receives requests for retrieval of data from the IMDG data sets, and sends the requested data to the requesting application. The IMDG server also includes a request prioritizer that determines, when two or more applications, which are competing applications that defined as having requests co-pending at the IMDG server to retrieve one or more of the data sets, which of the competing applications has the highest priority relative to the other competing applications. The request prioritizer causes a data set requested by the application with the highest priority to be handled before requests from the applications.
    Type: Grant
    Filed: August 28, 2014
    Date of Patent: November 28, 2017
    Assignee: Software AG USA Inc.
    Inventor: Gagan Mehra
  • Patent number: 9830356
    Abstract: Certain example embodiments relate to memory management techniques that enable users to “pin” elements to particular storage tiers (e.g., RAM, SSD, HDD, tape, or the like). Once pinned, elements are not moved from tier-to-tier during application execution. A memory manager, working with at least one processor, receives requests to store and retrieve data during application execution. Each request is handled using a non-transitory computer readable storage medium (rather than a transitory computer readable storage medium), if the associated data is part of a data cache that is pinned to the non-transitory computer readable storage medium, or if the associated data itself is pinned to the non-transitory computer readable storage medium. If neither condition applies, the memory manager determines which one of the non-transitory and the transitory computer readable storage mediums should be used in handling the respective received request, and handles the request accordingly.
    Type: Grant
    Filed: July 17, 2014
    Date of Patent: November 28, 2017
    Assignee: SOFTWARE AG USA, INC.
    Inventors: Gagan Mehra, Foram Gandhi, Steve Yellenberg