Object Process Graph

Object Process Graph

An Object Process Graph (OPG) is a general purpose executable graph that incorporates every aspect of an application, including process, user interface, and database.[1][2][3] No programming language, tool, or database is required to handle any part of an application. A complete high-level visual programming environment is used to define an OPG. No code is generated; the graph is the code. Object Process Graphs interface with traditional programming languages and databases through industry standard protocols.[4] The reference implementation of the OPG model is GraphLogic's PointDragon platform.

Contents

Overview of Object Process Graph Technology

The major elements of Object Process Graph Technology are: the Object Process Graph (OPG), the Dynamic Graph Interpreter (DGI), the Application Controller Viewer (ACV), the Application Editor System (AES) and the Object Process Graph Application Program Interface (OPGAPI). Each of these elements are briefly described below.

Object Process Graph

An Object Process Graph (OPG) completely defines a computer application’s persistent and transient data, its processing logic and data flow, and the display and validation characteristics of every application data item. Its graph-based structure incorporates the concept of a graph-oriented object database model, and by making it executable extends its capabilities to encompass all the requirements of the new software architecture. Formally the Object Process Graph is a Turing complete programming language.[5] Fundamental to GraphLogic’s invention was the conversion of an executable graph into a practical programming language, through the addition of specialized nodes and edges, properties and specific protocols.[6] The OPG is interpreted as the program it defines is executed. OPGs are stored in both transient and persistent computer memory. They can hold any data structure, including but not limited to: relational tables, hierarchical tables, n-dimensional data arrays, spreadsheets, and both graphical 2-D and 3-D models. Large complex data structures are not stored as blobs as is common in relational database systems, but in OPG structures that reflect their original structure and internal relationships. Object Process Graph process and control structures provide complete control over the order and timing of persistent and transient data validation, transformation, and display within an application. Object Process Graph process and control structures can completely define mathematical formulas, regular expressions (in the case of textual data or mixed quantitative and textual data) and complete algorithms. Object Process Graph based applications are accessed, interpreted, modified, and run by the Dynamic Graph Interpreter (described below).

Dynamic Graph Interpreter

The Dynamic Graph Interpreter (DGI) runs an instance of an application by making transitions from one application state to another and displaying the application’s state information via the Application Controller Viewer (described below) on an internet browser. This is equivalent to interpreting, executing, performing or running in the traditional sense. The DGI makes it possible to concurrently develop and modify an application while it is being run. Development and modification may apply to all subsequent runs of an application, a subset of subsequent runs, or to the current instance of the application being run. This feature of the OPG and DGI facilitates the rapid development and long-term maintenance of enterprise-wide application systems. User access to this dynamic development capability is tightly controlled in a production environment by the OPG-DGI multi-level security and access system. In addition to data entered or changed via terminals, the system also accepts input data to application processes in various digital formats, including industry standards such as XML. Note this is a graph interpreter of object process graphs as opposed to a dynamic analysis of Object Process Graphs offered by Jochen Quante and Rainer Koschke.[7]

Application Controller Viewer

The Application Controller Viewer consists of an Application Controller and an Application Viewer. The Application Controller Viewer together with the OPG and DGI form the Dynamic Model–view–controller application structure. This dynamic application structure manifests running instances of OPG applications.[8] The Application Controller controls the running of applications by: processing input data and instructions/selections from users or other systems; initiating the display or output of information via the Application Viewer, commanding the DGI to initiate application state transitions and controlling the import and export of OPG application descriptions. The Application Controller is the controller component of the Dynamic Model View Controller.

The Application Viewer is the view component of the Dynamic Model View Controller. It receives display/output commands from the Application Controller to render OPG application data on a display media. The rendered application data provides a means of interacting with the applications via selection and input controls, and a way to view and update their content.

The third element of the Dynamic Model View Controller, is the integrated OPG and DGI, which functions as the model component. In addition to providing application control and view capabilities, the Application Controller Viewer provides a WYSIWYG (What You See Is What You Get) editor for editing application data display windows. Changes made to an application’s windows can affect all executions of an application, a single window within an application or a particular instance of running an application.

Application Editor System

The Application Editor System (AES) is a fully featured editing environment for defining and updating OPG applications. It renders graphical representations of OPG applications that closely correlate to actual OPG application structures.[9] The graphical representations include symbols and structures that developers can manipulate with editing commands entered via a keyboard, computer mouse or other input device. One example of an AES implementation is the Web-based client–server application, PointDragon.

The Application Editor System is implemented with the Model View Controller structure. It interfaces with the OPG-DGI via the OPGAPI.

Object Process Graph Application Program Interface

The Object Process Graph Application Program Interface (OPGAPI) is a standard set of functions and associated parameters implemented by an OPG Translator. It is composed of OPG and DGI components that enable non-OPG applications, such as, the Application Editor System, to interact with an OPG application. It includes functions for starting, stopping, defining and modifying OPG applications. It also includes functions for inputting data to OPG applications and reporting their outputs.[10]

Notes and references

  1. ^ Steven Allen Gold, David Marvin Baker, Vladimir Gusev, Hongping Liang. Object process graph system, US Patent number 7316001, Filing date: May 20, 2005, Issue date: Jan 1, 2008.
  2. ^ Steven Allen Gold, David Marvin Baker, Vladimir Gusev, Hongping Liang. Object process graph system, European Publication Number CN101052948, Publication Date: 2007-10-10, Application Number CN20058030336 20050909.
  3. ^ Steven Allen Gold, David Marvin Baker, Vladimir Gusev, Hongping Liang. OBJECT PROCESS GRAPH SYSTEM, World Publication Number WO/2005/121954, Publication Date: 22.12.2005, International Application Number PCT/US2005/018942.
  4. ^ Steven Gold, A New Software Paradigm - The Object Process Graph (OPG) (White Paper).
  5. ^ Steven Gold, David Baker, Peter Schmidt, The Object Process Graph: A New Paradigm for Cloud Computing. 2008 Cloud Computing Expo In review.
  6. ^ Steven Allen Gold, David Marvin Baker, Vladimir Gusev, Hongping Liang. Object process graph system, US Patent number 7316001, Filing date: May 20, 2005, Issue date: Jan 1, 2008.
  7. ^ J. Quante, R. Koschke.Dynamic object process graphs. Journal of Systems and Software,Volume 81,Issue 4, p.481-501.
  8. ^ Steven Allen Gold, David Marvin Baker, Vladimir Gusev, Hongping Liang. Object Process Graph Application Controller-Viewer, US Patent number 7360209, Filing date: May 20, 2005, Issue date: Apr 15, 2008.
  9. ^ Steven Allen Gold, David Marvin Baker, Vladimir Gusev, Hongping Liang. Object Process Graph Application Controller-Viewer, US Patent number 7360209, Filing date: May 20, 2005, Issue date: Apr 15, 2008.
  10. ^ Steven Allen Gold, David Marvin Baker, Vladimir Gusev, Hongping Liang. Object Process Graph Application Controller-Viewer, US Patent number 7360209, Filing date: May 20, 2005, Issue date: Apr 15, 2008.

Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Object-oriented design — OOD redirects here. OOD may also refer to Officer of the Deck, Officer of the day, or the Ood. Object oriented design is the process of planning a system of interacting objects for the purpose of solving a software problem. It is one approach to… …   Wikipedia

  • Object database — Example of an object oriented model.[1] An object database (also object oriented database management system) is a database management system in which information is represented in the form of objects as used in object oriented programming. Object …   Wikipedia

  • Object-relational impedance mismatch — The object relational impedance mismatch is a set of conceptual and technical difficulties that are often encountered when a relational database management system (RDBMS) is being used by a program written in an object oriented programming… …   Wikipedia

  • Object (computer science) — In computer science, an object is any entity that can be manipulated by the commands of a programming language, such as a value, variable, function, or data structure. (With the later introduction of object oriented programming the same word,… …   Wikipedia

  • Object recognition (computer vision) — Feature detection Output of a typical corner detection algorithm …   Wikipedia

  • Comparison of object database management systems — Features Information about what fundamental ODBMS features are implemented natively. Name Current Stable Version Language(s) SQL support Datatypes License Description Caché 2010.1.4 ObjectScript (dynamic language), Basic. Java/.NET object mapping …   Wikipedia

  • Meta-Process Modeling — is a type of metamodeling used in software engineering and systems engineering for the analysis and construction of models applicable and useful some predefined problems. Meta process support the effort of creating flexible process models. The… …   Wikipedia

  • Meta-process modeling — Abstraction level for processes.[1] Meta process modeling is a type of metamodeling used in software engineering and systems engineering for the analysis and construction of models applicable and useful to some predefined problems. Meta process… …   Wikipedia

  • Scene graph — A scene graph is a general data structure commonly used by vector based graphics editing applications and modern computer games. Examples of such programs include AutoCAD, Adobe Illustrator, Acrobat 3D, OpenSceneGraph and CorelDRAW.The scene… …   Wikipedia

  • Event-driven process chain — Businesses use EPC diagrams to lay out business process work flows, originally in conjunction with SAP R/3 modeling, but now more widely. There are a number of tools for creating EPC diagrams, including ARIS Toolset of [http://www.ids scheer.com/ …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”