Patents Examined by Don Wong
  • Patent number: 9146836
    Abstract: The present invention extends to methods, systems, and computer program products for linking diagnostic visualizations to regions of application code. Diagnostic visualizations emitted during execution of an application are displayed. The diagnostic visualizations partially represent the abstract objective of the application (e.g., as envisioned by a developer). Diagnostic data for at least one of a plurality of components is displayed. The diagnostic data indicates the performance of the at least one of the plurality of components during execution of the application. The displayed one or more diagnostic visualizations and the displayed diagnostic data is correlated to link the one or more diagnostic visualizations to the at least one of the plurality of components. Linking the one or more diagnostic visualizations to the at least one of the plurality of components can better indicate how the application's behavior reconciles the abstract objective.
    Type: Grant
    Filed: December 13, 2011
    Date of Patent: September 29, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: James Rapp, Daniel Griffing, Alexander Dadiomov, Matthew Jacobs, Ben Nesson, Drake A. Campbell, Mayank Agarwal, Paulo Cesar Sales Janotti, Xinhua Ji, Eric Ledoux, Alexey Kamenev, Jared Robert Van Leeuwen
  • Patent number: 9141344
    Abstract: A method and apparatus for proving hover help support is described. In one embodiment, the method includes loading a documentation file generated from application source code. The method may also include parsing the documentation file to determine a context of elements within the documentation file. Furthermore, the method may include generating a model of the documentation file based on the context of the elements and storing the model in a memory.
    Type: Grant
    Filed: February 5, 2010
    Date of Patent: September 22, 2015
    Assignee: Red Hat, Inc.
    Inventor: Jeffrey Grant Johnston
  • Patent number: 9141351
    Abstract: The disclosed embodiments provide a system that facilitates the development and compilation of a software program. During operation, the system provides, in a programming language platform associated with source code for the software program, an indicator for a resource with an idempotent close method. Next, the system enables use of the indicator with a resource-management statement in the source code, wherein the indicator facilitates the use of a wrapped resource in the resource-management statement.
    Type: Grant
    Filed: May 1, 2012
    Date of Patent: September 22, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventor: Joseph D. Darcy
  • Patent number: 9141379
    Abstract: Embodiments of the invention relate to automated code coverage measurement and tracking per user story and requirement. An aspect of the invention includes receiving one or more software development requirements. One or more tasks are generated from the one or more software development requirements. A task identifier (ID) is assigned to each of the one or more tasks, and each of the task IDs is assigned to at least one code component. An application is released that includes at least one code components.
    Type: Grant
    Filed: January 15, 2013
    Date of Patent: September 22, 2015
    Assignee: International Business Machines Corporation
    Inventors: Edward B. Boden, Robert C. Hansen, Anthony F. Pioli
  • Patent number: 9141350
    Abstract: A method of generating an embedded system (4999) from an original computer program (996) which embedded system (4999) provides a parallellized hardware (4598) and software (4599) implementation of the original computer program (996), which parallellized implementation (4598, 4599) satisfies one or more criteria regarding hardware constraints of the embedded system (4999). The system provides partitioning of functionality from the original computer program (996) using structural and behavioral program models and detects streaming and memory dependencies to improve the partitioning, relying on added indications of source lines and variables in said original computer program to relate partitions and dependencies in the program model with locations in the original program source code.
    Type: Grant
    Filed: April 20, 2011
    Date of Patent: September 22, 2015
    Assignee: Vector Fabrics B.V.
    Inventors: Paul Stravers, Jos Van Eijndhoven, Martijn Rutten, Alexey Rodriguez, Wouter Swierstra, Maurice Kastelijn
  • Patent number: 9141373
    Abstract: A method and apparatus of a device that updates a software image for a network element is described. In an exemplary embodiment, a device receives a signal to update the network element with the new software image, where the network element includes a plurality of hardware forwarding engines and a control plane. The device further boots the control plane with the new software image, where the booting is accomplished without restarting the control plane. In one embodiment, the device boots the control plane by chain booting from a current software image to the new software image. The device additionally restarts and reconfigures the plurality of hardware forwarding engines. In a further embodiment, the device additionally prefills one or more queues in the hardware forwarding engines with keep-alive messages. These keep-alive messages are transmitted during the time that the control plane is being restarted. In a further embodiment, the hardware forwarding engines are reconfigured without restarting them.
    Type: Grant
    Filed: July 31, 2014
    Date of Patent: September 22, 2015
    Assignee: Arista Networks, Inc.
    Inventor: Simon Francis Capper
  • Patent number: 9141382
    Abstract: Embodiments of the invention are directed to system and method for managing parallel development of projects. One embodiment of the invention is a method of automatically managing processes in the parallel development of an application through a graphical user interface. The graphical user interface manages the automated processes, which are able to complete their tasks without further user interaction. The automated processes managed by the graphical user interface include, provisioning a first development environment and second development environment. The processes also includes deploying a second release of an application to the second development environment, and merging modifications to the second source code and the second content of the second release into a first source code and a first content of the first release. After the releases have been merged together, the process automatically deploys the third release of the application to a production environment for use by users.
    Type: Grant
    Filed: January 29, 2013
    Date of Patent: September 22, 2015
    Assignee: HSBC Technology & Services (USA) Inc.
    Inventors: Marc Heyhoe, Dan Avidan, Daron Finn, Daniel Lees
  • Patent number: 9134970
    Abstract: A software development tool for developing software that implements a customer's business processes. The software development tool determines a plurality of models to define the software to be developed, wherein at least one model of the plurality of models is a business model that comprises at least one business process, and the at least one business process is a set of interrelated business process paths that accomplish a business goal. The software development tool defines at least one business process path, wherein the at least one business process path is a route through the at least one business process taken during a single execution of the at least one business process, and the at least one business process path comprises at least one step.
    Type: Grant
    Filed: January 10, 2013
    Date of Patent: September 15, 2015
    Assignee: Oracle International Corporation
    Inventors: Andrew Ioannou, Mark Vilrokx, Joel Dupont
  • Patent number: 9134969
    Abstract: Systems and methods are provided for generating a plurality of applications of disparate types. A graphical user interface is provided for designing an interactive user experience, where a designed user experience includes an arrangement of experience elements, where the experience elements include a plurality interactive elements and decorative elements, and where each of the experience elements are configured for display according to one or more attributes. An identification of the experience elements and the attributes of the experience elements is received via the graphical user interface. An identification of a plurality of disparate types of applications to be generated based on the designed experience is received. The experience is translated for each of the disparate types of applications to generate the plurality of applications of disparate types.
    Type: Grant
    Filed: December 4, 2012
    Date of Patent: September 15, 2015
    Assignee: IPAR, LLC
    Inventors: Jeffrey D. Brandstetter, Joseph L. Spears
  • Patent number: 9134981
    Abstract: Systems and methods for increasing speed and reducing processing power of a compile process of programmable logic of an integrated circuit (IC) are provided. For example, in one embodiment, a method includes obtaining a high level program, comprising computer-readable instructions for implementation on programmable logic of an integrated circuit (IC); translating the high level program into low level code representative of functional components needed to execute functionalities of the high level program; generating a host program comprising computer-readable instructions for implementing the low level code based upon the high level program; obtaining modifications to the high level program; determining whether the modifications can be implemented by a new host program utilizing the low level code; and generating the new host program to implement the modifications, when the modifications can be implemented by the new host program utilizing the low level code.
    Type: Grant
    Filed: June 22, 2012
    Date of Patent: September 15, 2015
    Assignee: Altera Corporation
    Inventors: Doris Tzu Lang Chen, Deshanand Singh
  • Patent number: 9134988
    Abstract: A mechanism is provided for managing pre-requisite software components of a software product distributed on a virtual machine. A list of pre-requisite software components for the software product provided in the software product virtual image distribution package of the software product virtual image is read. A test is performed as to whether each pre-requisite software component in the list of prerequisite software components is not installed in the virtual machine. If the prerequisite software component is not installed, the pre-requisite software component is retrieved. License text of the retrieved pre-requisite software component is read and displayed to a user. Upon approval of the license text by the user, the retrieved pre-requisite software component is installed. The process is repeated until all the pre-requisite software components are installed.
    Type: Grant
    Filed: November 3, 2011
    Date of Patent: September 15, 2015
    Assignee: International Business Machines Corporation
    Inventors: Paolo Cavazza, Giuseppe Ciano, Antonio Di Cocco, Luigi Pichetti
  • Patent number: 9135145
    Abstract: A system and methods are provided for distributed tracing in a distributed application. In one embodiment, a method includes observing a plurality of messages sent and received among components of the distributed application, generating a probabilistic model of a call flow from observed messages of the distributed system, and constructing a call flow graph based on the probabilistic model for the distributed application. Distributed tracing may include observing messages by performing the subscription-based observation techniques and operations to receive, message traces describing messages being communicated among components of the distributed application. In this regard, the tracing service may merge message traces from different instrumentation points with message traces obtained by observing message queues to generate a probabilistic model and call flow graph.
    Type: Grant
    Filed: January 28, 2013
    Date of Patent: September 15, 2015
    Assignee: Rackspace US, Inc.
    Inventors: Paul Voccio, Matthew Charles Dietz
  • Patent number: 9137299
    Abstract: The invention provides a system, a method and a computer program product that facilitate access to one or more applications by a computing device. The invention includes determining one or more contexts associated with at least one of the computing device and a user of the computing device, such that the one or more contexts describe at least one of an environment and an activity of the at least one of the user and the computing device. Thereafter at least one contextual tag corresponding to the one or more contexts is generated. Subsequently, the one or more applications associated with the at least one contextual tag are identified and the computing device is enabled to access the one or more applications.
    Type: Grant
    Filed: August 26, 2014
    Date of Patent: September 15, 2015
    Inventors: Keertikiran Gokul, Premkumar Jonnala
  • Patent number: 9137106
    Abstract: A system and method are disclosed for private cloud computing and for the development and deployment of cloud applications in the private cloud. The private cloud computing system and method of the present invention include as components at least a cloud controller, a cloud stack, Service Registry, and a cloud application builder.
    Type: Grant
    Filed: June 19, 2013
    Date of Patent: September 15, 2015
    Assignee: State Street Corporation
    Inventors: Christopher McCarthy, Kevin Sullivan, Rejith Krishnan
  • Patent number: 9135604
    Abstract: Synchronizing real and virtual software environments. A first input of an entity identifier that identifies a software development entity and a second input of an operation identifier that identifies a software development operation that has been performed on the entity in a physical environment are received. The entity identifier and the operation identifier are on a first and second physical medium, respectively. The entity and the operation are identified in response to receiving the inputs. A virtual software development environment is updated to reflect that the operation has been performed on the entity in the physical environment. The entity and the operation are associated with a software development model that is also associated with the virtual environment.
    Type: Grant
    Filed: June 3, 2013
    Date of Patent: September 15, 2015
    Assignee: SAP SE
    Inventors: Daniel Ritter, Manuel Holzleitner
  • Patent number: 9135139
    Abstract: Methods and systems to identify and reproduce concurrency bugs in multi-threaded programs are disclosed. An example method disclosed herein includes defining a data type. The data type includes a first predicate associated with a first thread of a multi-threaded program that is associated with a first condition, a second predicate that is associated with a second thread of the multi-threaded program, the second predicate being associated with a second condition, and an expression that defines a relationship between the first predicate and the second predicate. The relationship, when satisfied, causes the concurrency bug to be detected. A concurrency bug detector conforming to the data type is used to detect the concurrency bug in the multi-threaded program.
    Type: Grant
    Filed: June 27, 2012
    Date of Patent: September 15, 2015
    Assignee: Intel Corporation
    Inventors: Youfeng Wu, Justin E. Gottschlich, Gilles Pokam, Shiliang Hu, Ali-Reza Adl-Tabatabai, Cristiano L. Pereira
  • Patent number: 9135027
    Abstract: A device may identify a first compiled block with an original constraint and an additional constraint. The first compiled block may be identified based on a program counter value and may include compiled information relating to a first segment of program code, linking information associated with a second compiled block, and information distinguishing the original constraint from the additional constraint. The original constraint may relate to a type of variable used in the first segment of programming code. The additional constraint may relate to a variable used in a second segment of programming code associated with the second compiled block. The device may copy information of the first compiled block to generate a third compiled block that lacks the additional constraint. The device may execute the third compiled block to execute a program associated with the programming code.
    Type: Grant
    Filed: January 14, 2015
    Date of Patent: September 15, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Ayon Basumallik, Nikolay Mateev
  • Patent number: 9135001
    Abstract: In a method for configuring an integrated development environment for programming a type of computer application, a computer receives a selection of a target application runtime program supporting one or more types of computer applications. The computer sends a request for information and receives information on the one or more types of computer applications supported by the target application runtime program. The computer determines, based on the received information, the one or more types of computer applications supported by the target application runtime program. The computer requests and receives a selection of the type of computer application. The computer configures an integrated development environment for programming the type of computer application selected.
    Type: Grant
    Filed: July 23, 2013
    Date of Patent: September 15, 2015
    Assignee: International Business Machines Corporation
    Inventors: Dustin K. Amrhein, Douglas C. Berg, Nitin Gaur, Christopher D. Johnson
  • Patent number: 9134965
    Abstract: A method for developing software includes providing a source component repository storing source code of multiple software components, providing a binary component repository storing binary code of the multiple software components, editing the source code included in a component of the multiple software components, downloading the binary code included in at least one other component of the multiple software components, and generating a target application from a combination of the component including the edited source code and the at least one other component including the downloaded binary code. The source code of each of the multiple software components is individually editable. Each of the multiple software components is configured to perform a single and complete function. Each of the multiple software components is substantially independent of any runtime environment. The binary code of each of the multiple software components is individually downloadable.
    Type: Grant
    Filed: September 25, 2013
    Date of Patent: September 15, 2015
    Assignee: RICOH COMPANY, LTD.
    Inventor: Christian Ravel
  • Patent number: 9128722
    Abstract: Disclosed herein are systems, computer-implemented methods, and non-transitory computer-readable storage media for obfuscating code, such as instructions and data structures. Also disclosed are non-transitory computer-readable media containing obfuscated code. In one aspect, a preprocessing tool (i.e. before compilation) identifies in a source program code a routine for replacement. The tool can be a software program running on a computer or an embedded device. The tool then selects a function equivalent to the identified routine from a pool of functions to replace the identified routine. A compiler can then compile computer instructions based on the source program code utilizing the selected function in place of the identified routine. In another aspect, the tool replaces data structures with fertilized data structures. These approaches can be applied to various portions of source program code based on various factors. A software developer can flexibly configure how and where to fertilize the source code.
    Type: Grant
    Filed: March 27, 2013
    Date of Patent: September 8, 2015
    Assignee: Apple Inc.
    Inventors: Pierre Betouin, Mathieu Ciet, Augustin J. Farrugia