Computer Program Preparation Patents (Class 706/922)
  • Patent number: 10353703
    Abstract: Techniques are described for analysis and evaluation of different computer programs developed by different users to accomplish programming tasks. A computer programming evaluation system provides users with one or more programming tasks and ability to input source code to solve the programming tasks. In an embodiment, using a client computer system, a user initiates a computer programming session with a programming system. As a result of the session, the client computer system is provided with user interface elements allowing the user to view one or more programming tasks and submit to the programming system source code for the one or more programming tasks. In an embodiment, different modes are used by the programming system to evaluate quality of the computer programming performed by a user in terms of accomplishing the programming task.
    Type: Grant
    Filed: January 27, 2017
    Date of Patent: July 16, 2019
    Assignee: BrainFights, Inc.
    Inventors: Tigran Sloyan, Aram Shatakhtsyan, Jan-Felix Desroches, Eduard Piliposyan
  • Patent number: 10055198
    Abstract: A method to quantify compliance of a software snippet having a plurality of code lines includes generating an OpsHash fingerprint of the software snippet, dividing the software snippet OpsHash fingerprint into a first group containing one or more OpsHash fingerprint based on context code lines, and a second group containing one or more OpsHash fingerprint based on operation-on-context code lines, applying a probably approximate matching algorithm to the first group, generating context cardinality sets from the OpsHash fingerprints of the first group, quantifying a match between each of the context cardinality sets and at least one of a governing definition and a rule/technique definition, ranking the OpsHash fingerprints of the first group based on the quantifying match, and incorporating software snippets having an OpsHash fingerprint ranking above a predetermined threshold into a software application. A system to implement the method and a non-transitory computer-readable medium are also disclosed.
    Type: Grant
    Filed: June 13, 2017
    Date of Patent: August 21, 2018
    Assignee: SAP SE
    Inventors: Vipul Gupta, Rick Banerjee
  • Patent number: 9646257
    Abstract: Various techniques for evaluating probabilistic assertions are described herein. In one example, a method includes transforming a program, a probabilistic assertion, and an input into an intermediate representation, the intermediate representation including a Bayesian network of nodes representing distributions. The method further includes verifying a probabilistic assertion in the program using the intermediate representation.
    Type: Grant
    Filed: September 3, 2014
    Date of Patent: May 9, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Todd Mytkowicz, Kathryn S. McKinley, Adrian Sampson
  • Patent number: 9507695
    Abstract: A processor receives a rule containing a first set of code statements. The processor compares the first set of code statements of the rule to a second set of code statements of a plurality of code statements of source code. The processor responds to a match of the first set of code statements of the rule and the second set of code statements of the plurality of code statements of the source code, by applying a weight modifier to the rule, which adds a weighted value to the rule, and the processor, in response to a second matching of the first set of code statements of the rule to the second set of code statements of the plurality of code statements of the source code, applies the weight modifier to the rule, which includes a weighted value, and the weight modifier adjusts the weighted value of the rule.
    Type: Grant
    Filed: April 14, 2014
    Date of Patent: November 29, 2016
    Assignee: International Business Machines Corporation
    Inventors: Logeswaran T. Rajamanickam, Arun Ramakrishnan, Rohit Shetty
  • Patent number: 8315425
    Abstract: A method for carrying out comparison between the as-built state of an industrial plant and the associated CAD planning model, characterized in that the comparison is achieved by superimposition of unreliable components of the CAD model and digital images on the plant, whereby the superimposition is computed without any particular instrumentation within the plant, but only based on selected reliable components from the CAD model, whose physical installations are visible in the images.
    Type: Grant
    Filed: May 19, 2008
    Date of Patent: November 20, 2012
    Assignees: Siemens Aktiengesellschaft, Areva NP GmbH
    Inventors: Mirko Appel, Pierre Georgel, Ralf Keller, Nassir Navab
  • Patent number: 8224486
    Abstract: There is provided a device for evaluating and correcting a robot operation program for evaluating an appropriateness for the robot operation program and correcting the robot operation program, comprising a computer including a simulation function for confirming a robot operation. The computer includes a load calculation section for calculating a load given to a motor for driving an operating portion of the robot by a simulation conducted by a computer; and an evaluation section for evaluating, by an evaluation function, whether or not the load exceeds a predetermined allowed value.
    Type: Grant
    Filed: December 16, 2010
    Date of Patent: July 17, 2012
    Assignee: Fanuc Ltd
    Inventors: Yoshiharu Nagatsuka, Toshiya Takeda
  • Patent number: 7739671
    Abstract: Systems, methods and apparatus are provided through which in some embodiments an informal specification is translated without human intervention into a formal specification. In some embodiments the formal specification is a process-based specification. In some embodiments, the formal specification is translated into a high-level computer programming language which is further compiled into a set of executable computer instructions.
    Type: Grant
    Filed: August 12, 2005
    Date of Patent: June 15, 2010
    Assignee: The United States of America as represented by the Administrator of the National Aeronautics and Space Administration
    Inventors: Michael G. Hinchey, James L. Rash, John D. Erickson, Denis Gracinin, Christopher A. Rouff
  • Patent number: 7028221
    Abstract: An apparatus and method is provided for auditing the configuration of an enterprise comprising the steps of: collecting information relating to the configuration of the enterprise, analyzing the configuration information based on expert knowledge; and providing the result of the analysis in the form of reports, and other results of the analyses.
    Type: Grant
    Filed: May 21, 2002
    Date of Patent: April 11, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Paul Edward Holland, Adam Michael Carr, Mark William McDowell
  • Patent number: 6985899
    Abstract: A system and method of composing a query object for application against a database is provided. The method composes a selection clause for the query. Next, a criteria clause for the query is generated, with the criteria clause comprising input criteria related to the query, additional criteria specified against the query, and generated criteria based on a joint relationship. Next a source clause utilizing elements in the database accessed by the query is generated. A database traversal system and method is provided. The method identifies all tables directly accessible by each table and creates a data structure comprising an entry for each table. The entry comprises an identification field for each table and a link field identifying all tables directly accessible by each table. The data structure is traversed and an optimum path of the traversal paths utilizing data obtained from traversing the data structure is identified.
    Type: Grant
    Filed: November 27, 2001
    Date of Patent: January 10, 2006
    Assignee: International Business Machines Corporation
    Inventors: Victor Chan, Fen Wang, Mark W. Hubbard
  • Patent number: 6751735
    Abstract: An apparatus and method provide a controlled, dynamically loaded, modular, cryptographic implementation for integration of flexible policy implementations on policy engines, and the like, into a base executable having at least one slot. The base executable may rely on an integrated loader to control loading and linking of fillers and submodules. A policy module may be included for use in limiting each module's function, access, and potential for modification or substitution. The policy may be implemented organically within a manager layer or may be modularized further in an underlying engine layer as an independent policy, or as a policy created by a policy engine existing in an engine layer. The policy module is subordinate to the manager module in the manager layer in that the manager module calls the policy module when it is needed by the manager module. The policy module is preferably dynamically linkable, providing flexibility, and is layered deeper within the filler module than the manager module.
    Type: Grant
    Filed: May 26, 1999
    Date of Patent: June 15, 2004
    Assignee: Novell, Inc.
    Inventors: Roger R. Schell, Kevin W. Kingdon, Thomas A. Berson, Robert R. Jueneman
  • Publication number: 20020065870
    Abstract: The present invention provides a method and apparatus for heterogeneous distributed computation. According to one or more embodiments, a semi-automatic process for setting up a distributed computing environment is used. Each problem that the distributed computing system must handle is described as an n-dimensional Cartesian field. The computational and memory resources needed by the computing system are mapped in a monotonic fashion to the Cartesian field.
    Type: Application
    Filed: June 29, 2001
    Publication date: May 30, 2002
    Inventors: Tom Baehr-Jones, Michael Hochberg
  • Patent number: 6385494
    Abstract: A method and system for producing production control software for a plurality of electronic control modules, is provided. The electronic control modules are located on production machines. Each production machine includes a subset of the electronic control modules. The system includes a part file staging area for receiving and storing new production control software from a design engineering group. A product engineering workstation is coupled to the part file staging area and operated by a product engineering user. The product engineering user can review, modify and approve the new production control software. A production staging area, coupled to the product engineering workstation, receives and stores approved production control software and receives an order for a production machine.
    Type: Grant
    Filed: September 30, 1996
    Date of Patent: May 7, 2002
    Assignee: Caterpillar Inc.
    Inventors: David G. Blahnik, Stephen J. Jackson, Steven D. Monday, Allen B. Peacock, Catherine A. Roling, Leslie W. Johnson, Paul M. McCarron, Bruce W. Day
  • Patent number: 6314555
    Abstract: A system for building collaborative software agents is provided with a set of editors for capturing data for installation in the individual agents. The collaborative software agents will normally form a community, including some standard agents, provided by the system, and will collaborate to provide functionality in a domain selected by the user. Each collaborative software agent built by the system is provided with co-ordination policies, selected by the user, and represented by a co-ordination graph. A single collaborative software agent can be provided with more than one collaborative policy and is capable of running more than one collaborative policy simultaneously with different agents of the system. An exception handler flags an exception during use of the collaborative agents in the relevant domain when the value of a variable for an agent conflicts with a relevant constraint.
    Type: Grant
    Filed: August 25, 1998
    Date of Patent: November 6, 2001
    Assignee: British Telecommunications public limited company
    Inventors: Divine T Ndumu, Hyacinth S Nwana, Lyndon C Lee
  • Patent number: 6114978
    Abstract: A method is described for the selection and assignment of keyboard access mnemonics and accelerator key combinations as part of the application software development process. After determining application functions and categories that require assignment, mnemonics and accelerators are assigned using pre-established recommendations, assignment rules and/or user assignment. If the assignments are made automatically, each function is first evaluated on the basis of usage likelihood and then prioritized before assignment begins in order to maximize the number and quality of successful assignments. In the alternative, assignments can be made on a function-by-function basis.
    Type: Grant
    Filed: January 14, 1998
    Date of Patent: September 5, 2000
    Assignee: Lucent Technologies Inc.
    Inventor: LaVerne L. Hoag
  • Patent number: 6059842
    Abstract: A method of optimizing the operation of a computer system in running application programs in accordance with system capabilities, user preferences and configuration parameters of the application program. More specifically, with this invention, an optimizing program gathers information on the system capabilities, user preferences and configuration parameters of the application program to maximize the operation of the application program or computer system. Further, user selected rules of operation can be selected by dragging rule icons to target optimizer icon.
    Type: Grant
    Filed: April 14, 1998
    Date of Patent: May 9, 2000
    Assignee: International Business Machines Corp.
    Inventors: Daniel Peter Dumarot, David Alan Stevenson, Nicholas Richard Dono, James Randall Moulic, Clifford Alan Pickover, Bengt-Olaf Schneider, Adelbert Smith
  • Patent number: 5966533
    Abstract: A method and system for dynamically synthesizing a computer program based on user context data is provided. In accordance with the invention, a request is received to generate a computer program for an identified user. In response, an incomplete definition of the computer program, from which portions of the definition are omitted, is retrieved. For each portion of the computer program omitted from the incomplete definition of the computer program, a plurality of possible versions of the omitted portion are accessed. Each possible version produces a different behavior in the computer program when it is added to the computer program. Further, each possible version has one or more conditions that may be evaluated against user attributes for the identified user to determine whether the possible version is acceptable for the user. Next, for each possible version of each omitted portion, the conditions of the possible version are evaluated to determine whether the possible version is acceptable for the user.
    Type: Grant
    Filed: June 11, 1996
    Date of Patent: October 12, 1999
    Assignee: Excite, Inc.
    Inventor: Scott F. Moody
  • Patent number: 5856925
    Abstract: In a method for managing design data regarding an electronic circuit in order to design and analyze the electronic circuit, the design data is arranged according to a hierarchical-layer module structure. The design data in each of hierarchical layers of the hierarchical-layer module structure is divided into objects. The objects together for each of the hierarchical layers are connected together and the objects are connected together over the hierarchical layers. The design data including design data having different items and design data having different data lengths is integrally managed.
    Type: Grant
    Filed: June 5, 1997
    Date of Patent: January 5, 1999
    Assignee: Fujitsu Limited
    Inventors: Sumiko Maeda, Hisataka Fukase