US6862030B1 - Method for showing the execution trail of objects in a graphical programming language - Google Patents

Method for showing the execution trail of objects in a graphical programming language Download PDF

Info

Publication number
US6862030B1
US6862030B1 US09/033,901 US3390198A US6862030B1 US 6862030 B1 US6862030 B1 US 6862030B1 US 3390198 A US3390198 A US 3390198A US 6862030 B1 US6862030 B1 US 6862030B1
Authority
US
United States
Prior art keywords
icons
executed
icon
executing
run
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US09/033,901
Inventor
James T. Bachmann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agilent Technologies Inc filed Critical Agilent Technologies Inc
Priority to US09/033,901 priority Critical patent/US6862030B1/en
Assigned to HEWLETT-PACKARD COMPANY reassignment HEWLETT-PACKARD COMPANY ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BACHMANN, JAMES T.
Assigned to HEWLETT-PACKARD COMPANY reassignment HEWLETT-PACKARD COMPANY MERGER (SEE DOCUMENT FOR DETAILS). Assignors: HEWLETT-PACKARD COMPANY
Assigned to AGILENT TECHNOLOGIES INC reassignment AGILENT TECHNOLOGIES INC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HEWLETT-PACKARD COMPANY
Application granted granted Critical
Publication of US6862030B1 publication Critical patent/US6862030B1/en
Adjusted expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program

Definitions

  • the present invention relates generally to computer systems and more particularly to a method for showing the execution trail of objects in a graphical programming language.
  • Graphical programming languages like Hewlett-Packard's VEE, are iconic programming systems. Such a system is a “programming-less” environment where programming is performed by employing objects, or icons (i.e., graphical images of functions), together with connecting lines, to form a directed graph and create an iconic network which is representative of a software program.
  • the iconic programming system may be used in a test and measurement system, where several different electronic instruments are connected to test a system or a device. Programming such a system requires instructions to cause the various instruments to perform desired functions in order to operate as a system.
  • each instrument will be represented by a graphical icon, and the connections between the instruments are represented by lines between the icons.
  • Programming functions such as IF-THEN-ELSE statements and FOR loops, can also be represented by icons.
  • the present invention provides a method for showing the execution trail of objects in a graphical programming language. Upon initiation by the user, the method highlights objects that have executed so that, while debugging a program, the user can trace the path a program has taken and identify which icons have executed.
  • FIG. 1 shows a block diagram of a computer system incorporating the present invention.
  • FIG. 2 shows a representative iconic network
  • FIG. 3 shows a flowchart of the method for showing the execution trail of icons according to the present invention.
  • FIG. 1 shows a block diagram of a computer system 100 incorporating the present invention.
  • a processing unit 110 is connected to system bus 105 .
  • the system bus 105 facilitates communications between the processing unit 110 and memory 120 , a data storage disk 130 and an input/output interface device 140 .
  • the memory stores the software of the present invention as well as all data collected and generated by the present invention.
  • An first area 122 within the memory 120 is set aside for storage of the present method which is described more fully below.
  • a second area 124 within the memory 120 contains the user-defined iconic network.
  • the input/output interface device 140 controls data communications between the bus 105 and a display 142 , a keyboard 144 and a point-and-click input device 146 .
  • An instrument bus 150 is used to allow the iconic programming system to communicate with test instruments.
  • the instrument bus 150 is an IEEE-488 bus.
  • FIG. 2 shows a representative iconic network.
  • Display screen 200 contains a first numeric input icon 210 which is used to define a start point and a second numeric input icon 212 which is used to define the number of points to be displayed in a view screen 220 .
  • the start point is sent over connecting line 201 to view screen 220 to set the starting point of the view screen which displays logic activity of a device under test (not shown), or DUT.
  • the number of points to be displayed are sent over connecting line 202 to a count icon 214 .
  • the count icon 214 will count from zero to the number of points defined in icon 212 .
  • Each time the count icon 214 increments the count value by one a signal will be sent over connecting line 203 to the view screen 220 which in turn updates the logic activity signal with an additional data point.
  • Each icon in FIG. 2 has a frame that is highlightable; that is, the lines that comprise the rectangular box that frames each icon can be set to be a predetermined color which in effect highlights the icon on the display screen.
  • FIG. 3 shows a flow diagram of the present invention.
  • Block 310 sets the trace mode of the present method to “on.” In a preferred embodiment, this is accomplished by the end user who would click the mouse on a toolbar button to enable the present method.
  • the “for loop” indicated by block 320 then operates to examine each icon in the display screen to determine if the icon was executed (decisional block 330 ). If the icon has not been executed, no action is taken. If decisional block 330 determines that the icon has been executed, control is passed to block 340 to set a TRACE_FLAG to “on.”
  • block 350 examines each icon that has had its TRACE_FLAG set to on; for those icons that have TRACE_FLAG set equal to on, block 360 highlights the frame.
  • the TRACE_FLAG for each icon that is executed is set equal to “on.”
  • the present method will set highlight the last iteration of the of the loop. So, for example, if the “else” clause of the IF-THEN-ELSE function icon 230 executed during the last iteration of the loop, then function B 2 234 will be highlighted, and not function B 1 232 .

Abstract

In an iconic programming computer system, the execution trail of objects is shown. Upon initiation by a user, the icons that have executed are highlighted so that the user, while debugging a program, can trace the path that the program has taken and identify which icons have executed.

Description

FIELD OF THE INVENTION
The present invention relates generally to computer systems and more particularly to a method for showing the execution trail of objects in a graphical programming language.
BACKGROUND OF THE INVENTION
Graphical programming languages, like Hewlett-Packard's VEE, are iconic programming systems. Such a system is a “programming-less” environment where programming is performed by employing objects, or icons (i.e., graphical images of functions), together with connecting lines, to form a directed graph and create an iconic network which is representative of a software program. The iconic programming system may be used in a test and measurement system, where several different electronic instruments are connected to test a system or a device. Programming such a system requires instructions to cause the various instruments to perform desired functions in order to operate as a system. When an iconic programming system is used, each instrument will be represented by a graphical icon, and the connections between the instruments are represented by lines between the icons. Programming functions, such as IF-THEN-ELSE statements and FOR loops, can also be represented by icons. By combining programming icons with instrument icons, a user can create an iconic network related to the operation of the instruments.
Such iconic networks are often large and/or complicated. Debugging these networks is tedious and fraught with pitfalls. Often the user cannot be sure which icons have already executed and which paths the program took. There is a need in the art then for a system that will provide a way for a programmer in an iconic programming system to trace the path a program has taken and to identify which icons have executed while debugging the program.
Various features and components of an iconic programming system are disclosed in U.S. Pat. No. 5,325,481 for METHOD FOR CREATING DYNAMIC USER PANELS IN AN ICONIC PROGRAMMING SYSTEM of Hunt and U.S. Pat. No. 5,261,043 for PROCESSING METHOD FOR AN ICONIC PROGRAMMING SYSTEM of Beethe, each of which is hereby specifically incorporated by reference for all that is disclosed therein.
SUMMARY OF THE INVENTION
The present invention provides a method for showing the execution trail of objects in a graphical programming language. Upon initiation by the user, the method highlights objects that have executed so that, while debugging a program, the user can trace the path a program has taken and identify which icons have executed.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows a block diagram of a computer system incorporating the present invention.
FIG. 2 shows a representative iconic network.
FIG. 3 shows a flowchart of the method for showing the execution trail of icons according to the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
FIG. 1 shows a block diagram of a computer system 100 incorporating the present invention. A processing unit 110 is connected to system bus 105. The system bus 105 facilitates communications between the processing unit 110 and memory 120, a data storage disk 130 and an input/output interface device 140. The memory stores the software of the present invention as well as all data collected and generated by the present invention. An first area 122 within the memory 120 is set aside for storage of the present method which is described more fully below. A second area 124 within the memory 120 contains the user-defined iconic network. The input/output interface device 140 controls data communications between the bus 105 and a display 142, a keyboard 144 and a point-and-click input device 146. An instrument bus 150 is used to allow the iconic programming system to communicate with test instruments. In a preferred embodiment, the instrument bus 150 is an IEEE-488 bus.
FIG. 2 shows a representative iconic network. Display screen 200 contains a first numeric input icon 210 which is used to define a start point and a second numeric input icon 212 which is used to define the number of points to be displayed in a view screen 220. The start point is sent over connecting line 201 to view screen 220 to set the starting point of the view screen which displays logic activity of a device under test (not shown), or DUT. The number of points to be displayed are sent over connecting line 202 to a count icon 214. The count icon 214 will count from zero to the number of points defined in icon 212. Each time the count icon 214 increments the count value by one, a signal will be sent over connecting line 203 to the view screen 220 which in turn updates the logic activity signal with an additional data point.
Each time the view screen 220 updates, a signal is sent over connecting line 204 to IF-THEN-ELSE function icon 230. If A is either equal to zero or less than 1, then function icon B1 is executed; else, if A equals 1, then function icon B2 is executed.
Each icon in FIG. 2 has a frame that is highlightable; that is, the lines that comprise the rectangular box that frames each icon can be set to be a predetermined color which in effect highlights the icon on the display screen.
FIG. 3 shows a flow diagram of the present invention. Block 310 sets the trace mode of the present method to “on.” In a preferred embodiment, this is accomplished by the end user who would click the mouse on a toolbar button to enable the present method. The “for loop” indicated by block 320 then operates to examine each icon in the display screen to determine if the icon was executed (decisional block 330). If the icon has not been executed, no action is taken. If decisional block 330 determines that the icon has been executed, control is passed to block 340 to set a TRACE_FLAG to “on.”
After each icon is processed, block 350 examines each icon that has had its TRACE_FLAG set to on; for those icons that have TRACE_FLAG set equal to on, block 360 highlights the frame.
Referring back to FIG. 2 for illustrative purposes, as flow moves through each icon, the TRACE_FLAG for each icon that is executed is set equal to “on.” For looping functions (e.g., icons 214 and 230), the present method will set highlight the last iteration of the of the loop. So, for example, if the “else” clause of the IF-THEN-ELSE function icon 230 executed during the last iteration of the loop, then function B2 234 will be highlighted, and not function B1 232.
While the present invention has been illustrated and described in connection with the preferred embodiments, it is not to be limited to the particular structures shown. It should be understood by those skilled in the art that various changes and modifications may be made within the purview of the appended claims without departing from the true scope and spirit of the invention in its broader aspects.

Claims (10)

1. In an iconic programming system, wherein the iconic programming system contains an existing network of connected icons, a computer-implemented method for tracing the execution of icons, the method comprising the steps of:
executing a plurality of the icons via a run of a software program;
setting a flag for each icon executed in the executing step, the flag corresponding with the each icon; and
simultaneously highlighting each icon corresponding with each flag set in the setting step subsequent to the run of the software program.
2. The method of claim 1, further comprising the step of performing the setting step during the executing step.
3. In an iconic programming system, wherein the iconic programming system contains an existing network of connected icons, a computer-implemented method for tracing the execution of icons, the method comprising the steps of:
executing a plurality of the icons;
setting a flag for each icon executed in the executing step, the flag corresponding with the each icon;
receiving an input subsequent to the executing step; and
simultaneously highlighting, in response to the receiving step, each icon corresponding with each flag set in the setting step.
4. In an iconic programming system,
wherein the iconic programming system contains an existing network of connected icons, a computer-implemented method for tracing the execution of icons, the method comprising the steps of:
executing a plurality of the icons;
indicating which of the icons are executed in the executing step;
determining, subsequent to the executing step and based on the indicating step, that the plurality of icons have been executed; and
highlighting the plurality of executed icons in response to the determining step.
5. The method of claim 4, wherein the indicating step includes the step of setting, during the executing step, a plurality of flags respectively corresponding with the plurality of icons.
6. The method of claim 4, further comprising the steps of:
receiving an input subsequent to the executing step; and
performing the determining step in response to the receiving step.
7. An iconic programming computer system containing an existing network of connected icons, the system comprising:
a display device; and
logic configured to execute a plurality of the icons being displayed on the display device during a run of a software program and provide an indication as to which of the icons are executed during the run, the logic further configured to make a determination, subsequent to the run and based on the indication, that the plurality of icons have been executed and highlight the plurality of executed icons on the display device in response to the determination.
8. The system of claim 7, wherein the logic is further configured to set, during the run, a plurality of flags respectively corresponding with the plurality of icons, and wherein the indication is based on the flags.
9. The system of claim 7, wherein the logic is further configured to receive an input subsequent to the run and perform the determination in response to the input.
10. The system of 9, wherein the input is a user input.
US09/033,901 1998-02-28 1998-02-28 Method for showing the execution trail of objects in a graphical programming language Expired - Fee Related US6862030B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/033,901 US6862030B1 (en) 1998-02-28 1998-02-28 Method for showing the execution trail of objects in a graphical programming language

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/033,901 US6862030B1 (en) 1998-02-28 1998-02-28 Method for showing the execution trail of objects in a graphical programming language

Publications (1)

Publication Number Publication Date
US6862030B1 true US6862030B1 (en) 2005-03-01

Family

ID=34192577

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/033,901 Expired - Fee Related US6862030B1 (en) 1998-02-28 1998-02-28 Method for showing the execution trail of objects in a graphical programming language

Country Status (1)

Country Link
US (1) US6862030B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040210831A1 (en) * 2003-04-16 2004-10-21 Haihua Feng Signal navigation and label propagation in block diagrams
US20050107998A1 (en) * 2003-11-18 2005-05-19 The Mathworks, Inc. Propagation of characteristics in a graphical model environment
US20050257203A1 (en) * 2004-05-11 2005-11-17 National Instruments Corporation Visually indicating problems found during programmatic analysis of a graphical program
US20080104525A1 (en) * 2006-10-31 2008-05-01 Agilent Technologies, Inc. Modeless Watch Window in an Iconic Programming System
US7720662B1 (en) * 2005-12-02 2010-05-18 The Mathworks, Inc. Visual representation of model execution results contributing to a failure condition in a model
US20120011441A1 (en) * 2005-04-16 2012-01-12 Eric Larsen Visually encoding nodes representing stages in a multi-stage video compositing operation
US9477399B1 (en) * 2015-05-19 2016-10-25 Synack, Inc. Automated interaction for mobile applications

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5005119A (en) * 1987-03-02 1991-04-02 General Electric Company User interactive control of computer programs and corresponding versions of input/output data flow
US5392207A (en) * 1993-08-20 1995-02-21 Allen-Bradley Company, Inc. Programmable motion controller with graphical programming aid
US5475843A (en) * 1992-11-02 1995-12-12 Borland International, Inc. System and methods for improved program testing
US5821934A (en) * 1986-04-14 1998-10-13 National Instruments Corporation Method and apparatus for providing stricter data type capabilities in a graphical data flow diagram
US5867163A (en) * 1995-12-01 1999-02-02 Silicon Graphics, Inc. Graphical user interface for defining and invoking user-customized tool shelf execution sequence
US6239800B1 (en) * 1997-12-15 2001-05-29 International Business Machines Corporation Method and apparatus for leading a user through a software installation procedure via interaction with displayed graphs
US6286137B1 (en) * 1997-12-15 2001-09-04 International Business Machines Corporation Method and apparatus of indicating steps in a task which have been completed

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5821934A (en) * 1986-04-14 1998-10-13 National Instruments Corporation Method and apparatus for providing stricter data type capabilities in a graphical data flow diagram
US5005119A (en) * 1987-03-02 1991-04-02 General Electric Company User interactive control of computer programs and corresponding versions of input/output data flow
US5475843A (en) * 1992-11-02 1995-12-12 Borland International, Inc. System and methods for improved program testing
US5392207A (en) * 1993-08-20 1995-02-21 Allen-Bradley Company, Inc. Programmable motion controller with graphical programming aid
US5867163A (en) * 1995-12-01 1999-02-02 Silicon Graphics, Inc. Graphical user interface for defining and invoking user-customized tool shelf execution sequence
US6239800B1 (en) * 1997-12-15 2001-05-29 International Business Machines Corporation Method and apparatus for leading a user through a software installation procedure via interaction with displayed graphs
US6286137B1 (en) * 1997-12-15 2001-09-04 International Business Machines Corporation Method and apparatus of indicating steps in a task which have been completed

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7975235B2 (en) 2003-04-16 2011-07-05 The Mathworks, Inc. Signal navigation and label propagation in block diagrams
US20070271499A1 (en) * 2003-04-16 2007-11-22 The Mathworks, Inc. Signal navigation and label propagation in block diagrams
US8560958B1 (en) 2003-04-16 2013-10-15 The Mathworks, Inc. Signal navigation and label propagation in block diagrams
US20040210831A1 (en) * 2003-04-16 2004-10-21 Haihua Feng Signal navigation and label propagation in block diagrams
US7665025B2 (en) * 2003-04-16 2010-02-16 The Mathworks, Inc. Signal navigation and label propagation in block diagrams
US20050107998A1 (en) * 2003-11-18 2005-05-19 The Mathworks, Inc. Propagation of characteristics in a graphical model environment
US8875039B2 (en) * 2003-11-18 2014-10-28 The Mathworks, Inc. Propagation of characteristics in a graphical model environment
US8316311B2 (en) 2004-05-11 2012-11-20 National Instruments Corporation Automatically correcting problems found during programmatic analysis of a graphical program
US20100058296A1 (en) * 2004-05-11 2010-03-04 Nattinger Darren M Programmatic Analysis of Graphical Sub-Programs within a Graphical Program
US20100058292A1 (en) * 2004-05-11 2010-03-04 Nattinger Darren M Automatically Correcting Problems Found During Programmatic Analysis of a Graphical Program
US7650574B2 (en) * 2004-05-11 2010-01-19 National Instruments Corporation Visually indicating problems found during programmatic analysis of a graphical program
US8327280B2 (en) 2004-05-11 2012-12-04 National Instruments Corporation Programmatic analysis of graphical sub-programs within a graphical program
US20050257203A1 (en) * 2004-05-11 2005-11-17 National Instruments Corporation Visually indicating problems found during programmatic analysis of a graphical program
US20120011441A1 (en) * 2005-04-16 2012-01-12 Eric Larsen Visually encoding nodes representing stages in a multi-stage video compositing operation
US7720662B1 (en) * 2005-12-02 2010-05-18 The Mathworks, Inc. Visual representation of model execution results contributing to a failure condition in a model
US20080104525A1 (en) * 2006-10-31 2008-05-01 Agilent Technologies, Inc. Modeless Watch Window in an Iconic Programming System
US9477399B1 (en) * 2015-05-19 2016-10-25 Synack, Inc. Automated interaction for mobile applications

Similar Documents

Publication Publication Date Title
US8281242B2 (en) Editable data tooltips
GB2272314A (en) Control sequencer in an Iconic Programming System
JP4188684B2 (en) Processing web for data processing on digital oscilloscopes or similar equipment
US6396517B1 (en) Integrated trigger function display system and methodology for trigger definition development in a signal measurement system having a graphical user interface
US6282699B1 (en) Code node for a graphical programming system which invokes execution of textual code
US6684385B1 (en) Program object for use in generating application programs
US5261043A (en) Input and output data constraints on iconic devices in an iconic programming system
US7827532B2 (en) Finite state model-based testing user interface
US6714883B1 (en) System and method for displaying operator-generated annotations of a trigger specification in a signal measurement system
US8539443B2 (en) Edit time analyzer in a loosely typed textual language
US8291390B2 (en) Testing a graphical program intended for a programmable hardware element
EP0264199A1 (en) Status driven menu system
US5390131A (en) Apparatus and method for displaying wafer test results in real time
US5400263A (en) Apparatus and method for specifying the flow of test execution and the binning for a testing system
JPH05127852A (en) Method for dynamically generating user panel
US5293476A (en) System for entering and modifying variable names for terminals of icons in an iconic programming system
KR20030033972A (en) Test executive system with tree structure for summarizing results
US6952655B2 (en) User defined processing function
US6862030B1 (en) Method for showing the execution trail of objects in a graphical programming language
US20060136156A1 (en) Systems and methods for operating a measurement and testing instrument
US6993749B2 (en) Conditional debug monitors
US5381344A (en) Apparatus and method for obtaining a list of numbers of wafers for integrated circuit testing
US6234689B1 (en) Apparatus and method for mapping a custom routine to an interface button
US20020138227A1 (en) Data computation apparatus and method for using the data computation apparatus for adjustment of electronic controller
JPH07219810A (en) Module testing method and device therefor

Legal Events

Date Code Title Description
AS Assignment

Owner name: HEWLETT-PACKARD COMPANY, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BACHMANN, JAMES T.;REEL/FRAME:009324/0070

Effective date: 19980626

AS Assignment

Owner name: HEWLETT-PACKARD COMPANY, COLORADO

Free format text: MERGER;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:010759/0049

Effective date: 19980520

AS Assignment

Owner name: AGILENT TECHNOLOGIES INC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:010977/0540

Effective date: 19991101

FPAY Fee payment

Year of fee payment: 4

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20130301