Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 700

Warning: Invalid argument supplied for foreach() in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 701

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 705

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/clients/fc00b35069112567fd28baa9a60aff76/web/mediawikidev/includes/MagicWord.php on line 722
Metis Smart Modeling - Debug - Metis Documentation

Metis Smart Modeling - Debug

From Metis Documentation

Jump to: navigation, search
Line 1: Line 1:
-
A debugger or debugging tool is included in Metis Smart Modeling. It is used to test and debug Models. The debugger also offer more sophisticated functions such as running a model step by step (single-stepping or program animation), stopping (breaking) (pausing the program to examine the current state) at some event or specified instruction by means of a breakpoint, and tracking the values of some [[Metis_Smart_Modeling_-_Variables|variables]].
+
A debugger or debugging tool is included in Metis Smart Modeling. It is used to test and debug [[Metis_Smart_Modeling_-_Models|models]]. The debugger also offer more sophisticated functions such as running a [[Metis_Smart_Modeling_-_Models|model]] step by step (single-stepping or program animation), stopping (breaking) (pausing the program to examine the current state) at some event or specified instruction by means of a breakpoint, and tracking the values of some [[Metis_Smart_Modeling_-_Variables|variables]].
-
The importance of a debugger in Metis Smart Modeling cannot be overstated. Indeed, the existence and quality of such a tool supports precise and technically valid models within the environment. The tool expands over the two main applications in the Metis Environment. This means that a model can be executed in Metis Smart Quotes and afterwards debugged in Metis Smart Modeling.
+
The importance of a debugger in Metis Smart Modeling cannot be overstated. Indeed, the existence and quality of such a tool supports precise and technically valid [[Metis_Smart_Modeling_-_Models|models]] within the environment. The tool expands over the two main applications in the Metis Environment. This means that a [[Metis_Smart_Modeling_-_Models|model]] can be executed in Metis Smart Quotes and afterwards debugged in Metis Smart Modeling.
Line 10: Line 10:
Example of errors or problems which can be detected using the debugger :
Example of errors or problems which can be detected using the debugger :
* Incorrect results :
* Incorrect results :
-
Use the "Output Values & Watchdogs" list in order to determine at the end of the execution process the values which should be "calculated" through the used models. To solve this type of issues, validate all rules which will generate output and add-ons.
+
Use the "Output Values & Watchdogs" list in order to determine at the end of the execution process the values which should be "calculated" through the used [[Metis_Smart_Modeling_-_Models|models]]. To solve this type of issues, validate all rules which will generate output and add-ons.
* Incorrect intermediate values :
* Incorrect intermediate values :
-
During the execution of a model, the values for [[Metis_Smart_Modeling_-_Variables|variables]] and positions may change based on the rules. This could mean that throughout the execution, such object may receive a value that is not planned or wished. Verify thoroughly all rules which use identical object that see if incoherence may appears during the execution. For example, create temporary [[Metis_Smart_Modeling_-_Variables|variable]] which will only be used during an execution.
+
During the execution of a [[Metis_Smart_Modeling_-_Models|model]], the values for [[Metis_Smart_Modeling_-_Variables|variables]] and positions may change based on the rules. This could mean that throughout the execution, such object may receive a value that is not planned or wished. Verify thoroughly all rules which use identical object that see if incoherence may appears during the execution. For example, create temporary [[Metis_Smart_Modeling_-_Variables|variable]] which will only be used during an execution.
* Execution order issues :
* Execution order issues :
-
Within a model the order of the various groups of rules which are executed is key. Errors may occur if groups are executed in the wrong order. Verify all the processes to be executed within a model to ensure that the order is relevant.
+
Within a [[Metis_Smart_Modeling_-_Models|model]] the order of the various groups of rules which are executed is key. Errors may occur if groups are executed in the wrong order. Verify all the processes to be executed within a [[Metis_Smart_Modeling_-_Models|model]] to ensure that the order is relevant.
* Rights on defined objects :
* Rights on defined objects :
-
The results of the debugger is dependent on the rights and profiles applicable to the user logged in Metis Smart Quotes. This means that the availability of certain [[Metis_Smart_Modeling_-_Attributes|attributes]], price categories, variants or hierarchies will have a great influence of the calculated results. The cause of such issue may just be that the end-user doesn't have access to part of the objects used in the model.
+
The results of the debugger is dependent on the rights and profiles applicable to the user logged in Metis Smart Quotes. This means that the availability of certain [[Metis_Smart_Modeling_-_Attributes|attributes]], price categories, variants or hierarchies will have a great influence of the calculated results. The cause of such issue may just be that the end-user doesn't have access to part of the objects used in the [[Metis_Smart_Modeling_-_Models|model]].
Line 101: Line 101:
== Using Metis Smart Quote ==
== Using Metis Smart Quote ==
-
The main concept within the debug tool included in Metis Smart Modeling is to be able to execute a model within Metis Smart Quotes, observe an issue and to be able to execute the same model with the same input value within Metis Smart Modeling in order to catch possible errors.
+
The main concept within the debug tool included in Metis Smart Modeling is to be able to execute a [[Metis_Smart_Modeling_-_Models|model]] within Metis Smart Quotes, observe an issue and to be able to execute the same [[Metis_Smart_Modeling_-_Models|model]] with the same input value within Metis Smart Modeling in order to catch possible errors.
Line 108: Line 108:
{{Note
{{Note
-
| Because the debugger within Metis Smart Modeling uses an execution of a model within Metis Smart Quotes, it is possible to for Metis Smart Quotes users to send to model developers a faulty execution for debugging. This fonctionnality can be activated on a profile basis.
+
| Because the debugger within Metis Smart Modeling uses an execution of a [[Metis_Smart_Modeling_-_Models|model]] within Metis Smart Quotes, it is possible to for Metis Smart Quotes users to send to [[Metis_Smart_Modeling_-_Models|model]] developers a faulty execution for debugging. This fonctionnality can be activated on a profile basis.
}}
}}
To begin, open an existing project and an existing offer in Metis Smart Quotes. The selected offer has been configured in the design menu.  
To begin, open an existing project and an existing offer in Metis Smart Quotes. The selected offer has been configured in the design menu.  
-
The model has automatically been executed when clicking on the price menu.  
+
The [[Metis_Smart_Modeling_-_Models|model]] has automatically been executed when clicking on the price menu.  
A debug file can now be generated from the Price menu.
A debug file can now be generated from the Price menu.
Click on the “More” button and select “Debug Mode.” An explorer window opens with the created debug file. This file can now be read in Smart Modeling.
Click on the “More” button and select “Debug Mode.” An explorer window opens with the created debug file. This file can now be read in Smart Modeling.
Line 119: Line 119:
An explorer window opens where the debug file can be selected and then opened.
An explorer window opens where the debug file can be selected and then opened.
Once opened, the debug sub-menu appears. Under the top table, click on “expand all.”  
Once opened, the debug sub-menu appears. Under the top table, click on “expand all.”  
-
Information about the price category, the models or the rules is displayed. It is possible to see the details about a rule. For example, select the rule “Configure basic hardware based on CPU choice (low).”
+
Information about the price category, the [[Metis_Smart_Modeling_-_Models|models]] or the rules is displayed. It is possible to see the details about a rule. For example, select the rule “Configure basic hardware based on CPU choice (low).”
Preview the rule by either clicking on the “Rule Preview” button or by double clicking on the selected rule.
Preview the rule by either clicking on the “Rule Preview” button or by double clicking on the selected rule.
The rule window opens showing details about the rule. Close this window.
The rule window opens showing details about the rule. Close this window.
-
In the second table below, the first tab “Output Values and Watchdogs,” lists all output [[Metis_Smart_Modeling_-_Variables|variables]] and positions used by the models.  
+
In the second table below, the first tab “Output Values and Watchdogs,” lists all output [[Metis_Smart_Modeling_-_Variables|variables]] and positions used by the [[Metis_Smart_Modeling_-_Models|models]].  
-
The user can also set a “watchdog” to a position or a [[Metis_Smart_Modeling_-_Variables|variable]]. A “watchdog” can be considered as a breakpoint. When executing the model using the “Start” and “Next Break point” buttons, the process continues until the “watchdog” position or [[Metis_Smart_Modeling_-_Variables|variable]] is encountered.
+
The user can also set a “watchdog” to a position or a [[Metis_Smart_Modeling_-_Variables|variable]]. A “watchdog” can be considered as a breakpoint. When executing the [[Metis_Smart_Modeling_-_Models|model]] using the “Start” and “Next Break point” buttons, the process continues until the “watchdog” position or [[Metis_Smart_Modeling_-_Variables|variable]] is encountered.
The second tab lists the input values which were defined in the mask in Smart Quotes.
The second tab lists the input values which were defined in the mask in Smart Quotes.
-
Click on the “Start” button to execute the model. Click on the next button to execute the rules of the model, step by step.  
+
Click on the “Start” button to execute the [[Metis_Smart_Modeling_-_Models|model]]. Click on the next button to execute the rules of the [[Metis_Smart_Modeling_-_Models|model]], step by step.  
The result values associated with the execution of the rules are displayed in the table “output values and watchdogs” below.
The result values associated with the execution of the rules are displayed in the table “output values and watchdogs” below.
-
Clicking on the “Stop” button stops the model execution and the values disappear.
+
Clicking on the “Stop” button stops the [[Metis_Smart_Modeling_-_Models|model]] execution and the values disappear.
Line 133: Line 133:
{{Video
{{Video
| <mediaplayer width='400' height='300' image='http://www.xpert-technologies.ch/mediawikidev/images/f/f3/VID_DebugTool.PNG'>File:Debug Tool OK.mp4</mediaplayer>
| <mediaplayer width='400' height='300' image='http://www.xpert-technologies.ch/mediawikidev/images/f/f3/VID_DebugTool.PNG'>File:Debug Tool OK.mp4</mediaplayer>
-
| Using Metis Smart Quotes to test a full model, importing the environment in Metis Smart Modeling and running the step-by-step execution on the it.
+
| Using Metis Smart Quotes to test a full [[Metis_Smart_Modeling_-_Models|model]], importing the environment in Metis Smart Modeling and running the step-by-step execution on the it.
}}
}}
Line 149: Line 149:
=== Using breakpoints ===
=== Using breakpoints ===
-
The debugger tool included in Metis Smart Modeling allows to set breakpoints throughout the execution of an imported Metis Smart Quotes environment. Those breakpoints can be used to stop a step-by-step execution at a specific place or time of the offer. For example at the beginning of one of the [[Metis_Smart_Modeling_-_Systems|systems]] included in the offer or when a specific [[Metis_Smart_Modeling_-_Variables|variable]] changes value. This can be very useful to pinpoint a problem in a model based on certain values.
+
The debugger tool included in Metis Smart Modeling allows to set breakpoints throughout the execution of an imported Metis Smart Quotes environment. Those breakpoints can be used to stop a step-by-step execution at a specific place or time of the offer. For example at the beginning of one of the [[Metis_Smart_Modeling_-_Systems|systems]] included in the offer or when a specific [[Metis_Smart_Modeling_-_Variables|variable]] changes value. This can be very useful to pinpoint a problem in a [[Metis_Smart_Modeling_-_Models|model]] based on certain values.
Line 156: Line 156:
1. '''In the execution steps'''
1. '''In the execution steps'''
-
In the Metis Smart Modeling debugger window, the top table shows the complete content of the imported environment (Offer, [[Metis_Smart_Modeling_-_Systems|system]] and applications, models used, group of rules and rules which are executed). Each line listed in the table represents one of the steps of the execution process. Break-point can be set of any of those lines simply by clicking once the leftmost "grayed" column of the table. this add a small red dot to the line showing the user that the step-by-step will stop before executing this line in the process.
+
In the Metis Smart Modeling debugger window, the top table shows the complete content of the imported environment (Offer, [[Metis_Smart_Modeling_-_Systems|system]] and applications, [[Metis_Smart_Modeling_-_Models|models]] used, group of rules and rules which are executed). Each line listed in the table represents one of the steps of the execution process. Break-point can be set of any of those lines simply by clicking once the leftmost "grayed" column of the table. this add a small red dot to the line showing the user that the step-by-step will stop before executing this line in the process.
In order to jump from one break-point the other, use the "Next Break-point" button.
In order to jump from one break-point the other, use the "Next Break-point" button.

Revision as of 13:00, 19 December 2011

Personal tools