Patents Examined by Mohammad Kabir
  • 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: 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: 9128702
    Abstract: This specification describes technologies relating to software execution. A computing device includes a processor. An operating system includes an execution environment in which applications can execute computer-specific commands. A web-browser application includes a scripting environment for interpreting scripted modules. The web-browser application further includes a native environment in which native modules can execute computer-specific commands. The web-browser application further includes an interface between the scripting environment and the native environment. The interface includes functions to asynchronously pass data objects by value, from one of the scripting environment and the native environment, to the other of the scripting environment and the native environment.
    Type: Grant
    Filed: March 23, 2012
    Date of Patent: September 8, 2015
    Assignee: Google Inc.
    Inventors: David A. Michael, Darin Fisher, Brett E. Wilson
  • 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
  • Patent number: 9110755
    Abstract: Techniques for aggregation of update sets are described. In at least some implementations, techniques enable relationships between the updates to be created, managed, and applied in a variety of ways. For example, updates can be grouped in a set for installation on a computing device as an integrated set. Grouping updates in a set can be based on membership rules that specify whether a particular update may be grouped in a set, and conditions under which the particular update may be grouped in a set. Updates that are included in a set may be associated with interaction rules that specify how updates in the set interact as part of an installation process. In at least some implementations, membership rules and interaction rules for updates can be dynamically created, configured, and/or dynamically reconfigured.
    Type: Grant
    Filed: August 10, 2012
    Date of Patent: August 18, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Hrishikesh S. Raje, Mark Henriksen Phaedrus, Christopher S. Gouge
  • Patent number: 9104484
    Abstract: Techniques and mechanisms for conversion of code of a first type to bytecode. Apex provides various unique characteristics. When converting to bytecode, these characteristics are handled to provide bytecode functionality. Some of the unique characteristics of Apex include Autoboxing, SOQL, Properties, Comparisons, Modifiers, Code coverage mechanisms and Sharing mechanisms.
    Type: Grant
    Filed: April 21, 2011
    Date of Patent: August 11, 2015
    Assignee: salesforce.com, inc.
    Inventors: Gregory D. Fee, William J. Gallagher
  • Patent number: 9086899
    Abstract: A loading and debugging method and a debugging system thereof are disclosed in the present invention, wherein the debugging method includes: loading a relocatable program according to an order of input segments in an ARM image file; compiling a link of the loaded relocatable program to generate an executable file; and loading the executable file into a debugging tool, to realize the debugging of the relocatable program. The present invention achieves the debugging of a dynamic program loaded dynamically, and addresses the issue that the symbol information of the loaded relocatable file cannot be acquired and the code debugging cannot be performed directly when the relocatable file is loaded dynamically.
    Type: Grant
    Filed: April 16, 2010
    Date of Patent: July 21, 2015
    Assignee: ZTE CORPORATION
    Inventors: Xiaohui Wu, Haijian He
  • Patent number: 9081586
    Abstract: A method for tailored compiler optimization is provided. The method includes extracting kernels from an application program, performance tuning the kernels to determine a tailored optimization strategy for each of the kernels, the tailored optimization strategy different than a default optimization strategy of a compiler for each of the kernels, and annotating the application program, using a computer, to identify the tailored optimization strategy determined for each of the kernels. In an embodiment, the method also includes the design and implementation for adjusting a compiler to customize optimization strategies for different kernels.
    Type: Grant
    Filed: August 8, 2012
    Date of Patent: July 14, 2015
    Assignee: Futurewei Technologies, Inc.
    Inventor: Peng Zhao
  • Patent number: 9075687
    Abstract: A system and associated methods for enabling a tenant user of a multi-tenant computing platform to introduce an extension to the platform's functions and capabilities. A computing system, such as a distributed computing service platform, may manage independent customizations and/or extensions (collectively, “extensions”) of the service platform by multiple tenants in a manner that avoids undesirable behavior that may be caused by incompatible extensions. The service may accomplish this by requiring that a proposed extension provided by a tenant or extension vendor be accompanied by a formal declaration with respect to service platform component functionality and/or service platform data objects (collectively, “service platform resources”) that are utilized and/or modified by the extension. The service may further require that the extension be accompanied by validation code (e.g.
    Type: Grant
    Filed: April 18, 2013
    Date of Patent: July 7, 2015
    Assignee: NetSuite Inc.
    Inventors: Alan S. Liu, Ryan Grisso
  • Patent number: 9069561
    Abstract: The invention generally relates to enterprise computer applications, and more particularly to methods and tools for data-driven engineering of computer applications. A method of generating a business application includes inputting requirement data into a requirement model, inputting platform data into a platform model, generating a design model based on the requirement model and the platform model, generating source code of the business application from the design model, and outputting the source code.
    Type: Grant
    Filed: January 6, 2014
    Date of Patent: June 30, 2015
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: William J. Lewis
  • Patent number: 9043767
    Abstract: A deployment system provides the ability to deploy a multi-node distributed application, such as a cloud computing platform application that has a plurality of interconnected nodes performing specialized jobs. The deployment system includes a release management system that builds and manages versioned releases of application services and/or software modules that are executed by the plurality of nodes of the cloud computing platform application. The release management system utilizes specification files to define a jobs and application packages and configurations needed to perform the jobs. The jobs and application packages are assembled into a self-contained release bundle that may be provided to the deployment system. The deployment system unwraps the release bundle and provides each job to deployment agents executing on VMs. The deployment agents apply the jobs to their respective VM (e.g., launching applications), thereby deploying the cloud computing platform application.
    Type: Grant
    Filed: March 23, 2012
    Date of Patent: May 26, 2015
    Assignee: Pivotal Software, Inc.
    Inventors: Vadim Spivak, Kent Skaar, Oleg Shaldibin
  • Patent number: 9015702
    Abstract: An aspect of the present invention detects usage, by an application process, of a utility provided by a first version of an operating system, and determines whether a later version of the operating system is incompatible with identical usage of the detected utility. If the usage is determined to be incompatible, the corresponding information on the incompatibility is included in a report. According to another aspect, the determination of compatibility is performed by maintaining data (e.g., in a database) indicating incompatibility information related to a set of utilities, which are incompatible with the second version. The data is examined to determine incompatibility. The features are disclosed as being applied with respect to dynamically linked libraries, dynamically loaded libraries, functions, fonts, etc.
    Type: Grant
    Filed: January 13, 2012
    Date of Patent: April 21, 2015
    Inventor: Vasanth Bhat
  • Patent number: 9015654
    Abstract: A system is operable to provide one or more test environments for executing and analyzing test routine. The system includes one or more user interfaces coupled via a communication network to a server arrangement for hosting a plurality of emulations of wireless communication devices or terminals. The server arrangement is operable to receive one or more software applications for execution upon the wireless communication devices or terminals, and one or more test routines for use in testing the wireless communication devices or terminals. Moreover, the server arrangement is operable to execute one or more the software applications and apply the one or more test routines thereto. Furthermore, the server arrangement is operable to monitor operation of the wireless communication devices or terminals and to provide corresponding test results to the one or more user interfaces.
    Type: Grant
    Filed: August 13, 2012
    Date of Patent: April 21, 2015
    Assignee: Bitbar Technologies Oy
    Inventors: Jouko Kaasila, Petri Pohjanen, Henri Kivela, Sakari Rautiainen
  • Patent number: 9003395
    Abstract: Techniques for directing plug-in updates for software applications to a target audience using manifest parameters are disclosed. In some embodiments, directing plug-in updates for software applications to a target audience using manifest parameters includes processing a manifest to determine that a plug-in is available for a software application on a device; determining whether a plurality of attributes associated with the plug-in match corresponding attributes associated with the device or the software application, in which the plurality of attributes are identified in the manifest; and automatically installing the plug-in if the plurality of attributes are determined to match.
    Type: Grant
    Filed: August 10, 2012
    Date of Patent: April 7, 2015
    Assignee: Adobe Systems Incorporated
    Inventors: Shawn A. Gaither, Randy Lee Swineford
  • Patent number: 9003363
    Abstract: Device flag techniques are described. In one or more implementations, responsive to detection by a computing device that a device has been communicatively coupled to bus of the computing device, a database is queried by the computing device to determine whether one or more flags have been set for the device. Responsive to a determination made as a result of the querying that the one or more flags have been set for the device identifier, information associated with the one or more flags is communicated to software that is associated with the device to configure the software.
    Type: Grant
    Filed: March 21, 2011
    Date of Patent: April 7, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Corneliu I. Lupu, Silviu C. Calinoiu, Cristian G. Petruta, Batsaihan Jargalsaihan, Chris Ernest Matichuk
  • Patent number: 8997043
    Abstract: In encoding for putting one or more files and/or one or more files in a folder into a single archive file, original hierarchy information and standard hierarchy information generated by converting characters in a special character coding in each file name to characters in a standard character coding are recorded in the archive file. If the character coding used in the original hierarchy information in the archive file cannot be used in the system environment used in decoding, a file name in the standard character coding is generated from the standard hierarchy information and is converted to a character coding that can be used in the system environment.
    Type: Grant
    Filed: November 19, 2012
    Date of Patent: March 31, 2015
    Assignee: Nippon Telegraph and Telephone Corporation
    Inventors: Noboru Harada, Takehiro Moriya, Yutaka Kamamoto
  • Patent number: 8966462
    Abstract: Optimized memory management settings may be derived from a mathematical model of an execution environment. The settings may be optimized for each application or workload, and the settings may be implemented per application, per process, or with other granularity. The settings may be determined after an initial run of a workload, which may observe and characterize the execution. The workload may be executed a second time using the optimized settings. The settings may be stored as tags for the executable code, which may be in the form of a metadata file or as tags embedded in the source code, intermediate code, or executable code. The settings may change the performance of memory management operations in both interpreted and compiled environments. The memory management operations may include memory allocation, garbage collection, and other related functions.
    Type: Grant
    Filed: August 10, 2012
    Date of Patent: February 24, 2015
    Assignee: Concurix Corporation
    Inventors: Alexander G. Gounares, Ying Li, Charles D. Garrett
  • Patent number: 8954941
    Abstract: Method of generating respective instruction compaction schemes for subsets of instructions to be processed by a programmable processor, comprising the steps of a) receiving at least one input code sample representative for software to be executed on the programmable processor, the input code comprising a plurality of instructions defining a first set of instructions (S1), b) initializing a set of removed instructions as empty (S3), c) determining the most compact representation of the first set of instructions (S4) d) comparing the size of said most compact representation with a threshold value (S5), e) carrying out steps e1 to e3 if the size is larger than said threshold value, e1) determining which instruction of the first set of instructions has a highest coding cost (S6), e2) removing said instruction having the highest coding cost from the first set of instructions and (S7), e3) adding said instruction to the set of removed instructions (S8), f) repeating steps b-f, wherein the first set of instructions
    Type: Grant
    Filed: September 3, 2010
    Date of Patent: February 10, 2015
    Assignee: Intel Corporation
    Inventors: Hendrik Tjeerd Joannes Zwartenkot, Alexander Augusteijn, Yuanging Guo, Jürgen Von Oerthel, Jeroen Anton Johan Leijten, Erwan Yann Maurice Le Thenaff
  • Patent number: 8949772
    Abstract: A system and method of dynamically generating software is provided. Applications are created in a set of workflow models which are tested in an interpretive test environment. The models are stored in a versioning repository and code generation templates created for the models. Source code is generated and compiled for the application. Modifications to the models are tested and incorporated into a modified version of the application after subsequent testing of the model and the modified, compiled application. The modified version of the application is returned to the test environment where it becomes the basis for testing future modifications.
    Type: Grant
    Filed: June 1, 2009
    Date of Patent: February 3, 2015
    Assignee: Amazon Technologies, Inc.
    Inventors: David Talby, Scott David McMaster
  • Patent number: 8949789
    Abstract: An adaptable business object can include a generic, content-free, and meaning-free skeleton business object, which can be used to create a new business object without requiring that a user be proficient in a development environment such as a software development kit (SDK). Definitions of a first field to be added to a header of the adaptable business object and a second field to be added to an item node of the adaptable business object can be received via a field extensibility tool, and a terminology tool can adapt the adaptable business object by storing metadata relating to the terminology of the business object in a metadata repository such that screen and section titles for at least one user interface screen supported by the new business object can be presented at runtime using the stored metadata.
    Type: Grant
    Filed: August 13, 2012
    Date of Patent: February 3, 2015
    Assignee: SAP SE
    Inventors: Uwe Schlarb, Stefan Baeuerle