Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
hekate:hekate_process [2009/08/17 15:38]
gjn
hekate:hekate_process [2019/06/27 15:49] (current)
Line 89: Line 89:
   * Wikipages: ​   * Wikipages: ​
     * //​hekate_case_NAME:​ard_design//​     * //​hekate_case_NAME:​ard_design//​
-  * Files with appropriate VARDA calls+  * Files
 +    * //​hekate_case_NAME:​hekate_case_NAME-mdl.pl//​ the main Varda file used to build the model
     * //​hekate_case_NAME:​hekate_case_NAME-[1-90-9]-ard.{png,​dot,​pdf}//​ (separate levels in three formats)     * //​hekate_case_NAME:​hekate_case_NAME-[1-90-9]-ard.{png,​dot,​pdf}//​ (separate levels in three formats)
     * //​hekate_case_NAME:​hekate_case_NAME-[1-90-9]-tph.{png,​dot,​pdf}//​ (separate levels in three formats)     * //​hekate_case_NAME:​hekate_case_NAME-[1-90-9]-tph.{png,​dot,​pdf}//​ (separate levels in three formats)
Line 107: Line 108:
      * compare VARDA with HJEd      * compare VARDA with HJEd
  
 +**HOWTO**
 +
 +There is a script that generates the file //​hekate_case_NAME:​ard_design//​
 +
 +To use it, try:
 +  cd hekatecases/​hekate_case_mycase ; ../​wikigen-ard
 +
 +It generates the page to the stdout, you can paste it to the wiki using a webbrowser.
  
 ==== General Conceptual Design ==== ==== General Conceptual Design ====
 In a general case, the ARD diagram is built using the vocabulary previously identified. In a general case, the ARD diagram is built using the vocabulary previously identified.
  
 +This is a case where no explicit original rules where present.
  
 ==== Directed Conceptual Design ==== ==== Directed Conceptual Design ====
Line 132: Line 142:
   * Input: previous ard design, the hekate_case_NAME:​hekate_case_NAME-ard.hml file prepared with VARDA   * Input: previous ard design, the hekate_case_NAME:​hekate_case_NAME-ard.hml file prepared with VARDA
   * Files: ​   * Files: ​
-    * hekate_case_NAME:​hekate_case_NAME-atts.hml+    * //hekate_case_NAME:​hekate_case_NAME-att.hml//
   * Output: physical att specs in HML   * Output: physical att specs in HML
   * Remarks: ​   * Remarks: ​
Line 139: Line 149:
  
 Currently (as of 09.2009) the only tool support is with HQEd. Currently (as of 09.2009) the only tool support is with HQEd.
-So the file generated with VARDA should be loaded to HQED, the attribute domains, etc. should be specified, and the new file should be saved and uploaded/​submitted.+So the file generated with VARDA should be 
 +  - loaded to HQED,  
 +  - //​warning//:​ conceptual atts should be removedsince the are not present in the xtt itself 
 +  - types need to be defined! 
 +  - attributes need to be assigned to the new domains 
 +  - and the new file should be saved and uploaded/​submitted.
  
 Please note: at this stage some general attributes can be provided. Please note: at this stage some general attributes can be provided.
 So having the ''​thermostat_setting''​ one can define ​ a named type ''​temperature''​ which is a numeric with a given domain, and then define the ''​thermostat_setting''​ having the type ''​temperature''​. So having the ''​thermostat_setting''​ one can define ​ a named type ''​temperature''​ which is a numeric with a given domain, and then define the ''​thermostat_setting''​ having the type ''​temperature''​.
  
-FIXME provide xslt for wiki export (WTF!)+**Types Best Practices** 
 +  * types' names should be different from attribute names! 
 +  * types' names can have plural form, e.g. type "​weekdays"​ might be used for the attribute "​day"​ 
 +  * types' names should be meaningful!
  
 +BETA version of XSLT translator from HML 2 wiki table is provided in CVS - [[hekate:​cases:​howto#​attribute_specification|HOWTO description]]
  
 ===== Prototyping ===== ===== Prototyping =====
  
 Using a partial output of the [[:​hekate:​hekate_process#​conceptual design]] Using a partial output of the [[:​hekate:​hekate_process#​conceptual design]]
-that is only the apropriate ​[[hekate markup language|ARDML]] dependencies.+that is only the appropriate ​[[hekate markup language|ARDML]] dependencies.
  
 In this stage a fully or semi automated generation of the XTT table schemas (rule prototypes) is performed. In this stage a fully or semi automated generation of the XTT table schemas (rule prototypes) is performed.
Line 158: Line 177:
 The //output// of this stages is the XTT schemes structure with the use of the HML. The //output// of this stages is the XTT schemes structure with the use of the HML.
  
-  * Input: previous ard design in hml, //​hekate_case_NAME:​hekate_case_NAME-atts.hml//+  * Input: previous ard design in hml, //​hekate_case_NAME:​hekate_case_NAME-att.hml//
   * Files: ​   * Files: ​
-    * //​hekate_case_NAME:​hekate_case_NAME-prot.hml//+    * //​hekate_case_NAME:​hekate_case_NAME-prt.hml//
     * //​hekate_case_NAME:​hekate_case_NAME-prt.{png,​dot,​pdf}// ​     * //​hekate_case_NAME:​hekate_case_NAME-prt.{png,​dot,​pdf}// ​
   * Output: xtt tabs prototypes   * Output: xtt tabs prototypes
   * Remarks: ​   * Remarks: ​
     * compare xtt proto generation by varda and hqed! -> report any differences in the wiki, report bugs in CVStrac, if any.     * compare xtt proto generation by varda and hqed! -> report any differences in the wiki, report bugs in CVStrac, if any.
 +
 +**HINT**: as of now, simply link the prt files produced automatically by VARDA, try to build a proto with HQED - report differences if they exist.
 +
  
 ===== Logical design ===== ===== Logical design =====
Line 175: Line 197:
   * Files: ​   * Files: ​
     * //​hekate_case_NAME:​hekate_case_NAME-xtt.hml//​     * //​hekate_case_NAME:​hekate_case_NAME-xtt.hml//​
-    * //​hekate_case_NAME:​hekate_case_NAME-rt.pl// (with callbacks!) +    * //​hekate_case_NAME:​hekate_case_NAME-clb.pl// HMR file generated by HQEd that includes callbacks ​(HQEd does not support ​callbacks ​deffinitons,​ so they have to be defined '​manually'​). For GUI callbacks see this {{:hekate:​callbackslibrary.zip|NetBeans project}}, take a look at {{:​hekate:​hekatecases:​hekate_case_thermostat:​hekate_case_thermostat-clb.pl|ThermostatCalbacks}} to see how to use them. Also you will have to install JPL extension to launch Java code from within HMR. See [[https://ai.ia.agh.edu.pl/​wiki/​student:​msc2009_xtteng:​jpl?​s[]=jpl&​s[]=quest|this]] for Howto. 
-    * //​hekate_case_NAME:hekate_case_NAME-cb.pl// (callbacks FIXME please verify if callbacks can be kept in the same file as the rt) +    * //​hekate_case_NAME:​hekate_case_NAME-xtt.png//​ (screenshot,​ xtt struct only (no editor window!), B/W View+ File->​Export_scene_view->​PNG,​ hqed export sets no compression!,​ try to compress the fily siply by ''​convert hqedscene.png newfile.png''​
-    * //​hekate_case_NAME:​hekate_case_NAME-xtt.png//​ (color screenshot, xtt struct only (no editor window!)) +    * //​hekate_case_NAME:​hekate_case_NAME-hqd.png//​ (hqed color screenshot, with the xtt struct (with editor window!), try //​printscreen//​ in GNOME)
-    * //​hekate_case_NAME:​hekate_case_NAME-hqd.png//​ (hqed color screenshot, with the xtt struct ​only (with editor window!))+
   * Output:   * Output:
     * The //output// of this stages is the full XTT structure [[:​hekate:​hekate_process#​encoding|encoded]] with the use of the [[HML]].     * The //output// of this stages is the full XTT structure [[:​hekate:​hekate_process#​encoding|encoded]] with the use of the [[HML]].
Line 184: Line 205:
     * while making screenshots try to minimize their size (in terms of unused screen space), maximize readability ​     * while making screenshots try to minimize their size (in terms of unused screen space), maximize readability ​
     * where callbacks are written?     * where callbacks are written?
 +
 +REMARK: if you design several versions, variants of the XTT structure, store them with the above names with numbers or _comment before the file extension. \\
 +8-) HQEd allow for image compression:​ Tools->​Settings->​XTT Options->​Scene. The default compresion level is 0%:!:
  
 ===== Formal Analysis ===== ===== Formal Analysis =====
Line 192: Line 216:
   * HalVA (verification)   * HalVA (verification)
  
-  * Input: full xtt design+  * Input: full xtt design, //​hekate_case_NAME:​hekate_case_NAME-xtt.hml//​
   * Files: ​   * Files: ​
     * //​hekate_case_NAME:​hekate_case_NAME-hva[1-90-9].hml//​ (differnet cases) files with anomalies that HalVA detects     * //​hekate_case_NAME:​hekate_case_NAME-hva[1-90-9].hml//​ (differnet cases) files with anomalies that HalVA detects
     * //​hekate_case_NAME:​hekate_case_NAME-hva[1-90-9].txt//​ (differnet cases) files with HalVA reports     * //​hekate_case_NAME:​hekate_case_NAME-hva[1-90-9].txt//​ (differnet cases) files with HalVA reports
 +    * //​hekate_case_NAME:​hekate_case_NAME.tex//​ the full XTT description in LaTeX
   * Output: reports?   * Output: reports?
   * Remarks: ​   * Remarks: ​
- 
 ===== Physical Design ===== ===== Physical Design =====
 The executable design generation. The executable design generation.
Line 206: Line 230:
  
  
-  * Input: full xtt design+  * Input: full xtt design, //​hekate_case_NAME:​hekate_case_NAME-rt.pl//​
   * Files: ​   * Files: ​
-    * hekate_case_NAME:​hekate_case_NAME-rt.pl ​FIXME +    * FIXME, at least basic input callbacks 
-    hekate_case_NAME:hekate_case_NAME.tex +  To launch<​code>​gox(<​state>,​ [<​tables>​],​ <​inference process>​).</​code>​ e.g. <​code>​gox(init,​ ['​Table2',​ '​Table3'​],​ ddi).</​code>​ 
-  * Output: ​reports?+  * Output: ​Trajectories projections. Trajectory is the system inference path. After every inference process invocation new trajectory is generated. The trajectory can be identified by ID, to obtain ID of recently generated trajectory use //​traj_id(ID)//​ predicate. The ID variable will be unified with an ID of the last trajectory. To save trajectory projection to a file use //​io_export_trajectory(Filename,​ TrajID)// predicate. If you want to save most recent trajectory type this in Prolog console: <​code>​ traj_id(ID),​io_export_trajectory('​file.txt',​ ID).</​code>​
   * Remarks: FIXME   * Remarks: FIXME
     * different inference modes?     * different inference modes?
 +
 +
 +===== Integration =====
 +This stage involves integrating the XTT logic with the environment with:
 +  * callbacks
 +  * knowledge encodings, translations
 +  * UML representation
 +  * Java serialization
 +  * other?
 +
 +FIXME
 +
 +==== Callbacks ====
 +A minimal step here is to write callback for HeaRT in Prolog, XPCE, Java, Python.
  
  
Line 230: Line 268:
   * LLK: Drools   * LLK: Drools
  
-====== Integration ====== +==== Encoding ====
-The stages are integrated with: +
-  * knowledge encodings +
-  * transformations +
-  * other? +
- +
-FIXME +
-This needs filling! +
- +
-===== Encoding ​=====+
 Currently XML encodings to be used: Currently XML encodings to be used:
   * ATTML   * ATTML
Line 246: Line 275:
 The are now integrated into //HML// the [[Hekate Markup Language]]. The are now integrated into //HML// the [[Hekate Markup Language]].
  
-===== Knowledge Markups ​=====+==== Knowledge Markups ====
 Aspects: Aspects:
   * ATTML <-> RDF   * ATTML <-> RDF
Line 255: Line 284:
   * ontologies <-> ARDML   * ontologies <-> ARDML
  
-===== Transformations ===== 
 FIXME FIXME
 HatHoR HatHoR
 +
 +===== Summary =====
 +In this stage designer experiences and observations should be captured.
 +
 +Some of the questions to be answered might be:
 +  * was the case easy to model, if not, why
 +  * was the HeKatE methodology helpfull, how, if not, why
 +  * is it possible to suggest some improvements to the methodology
 +  * was the HeKatE designed simplified compared to the original one
 +  * what are the benefits of the HeKatE approach in this case
  
 ====== Tools ====== ====== Tools ======
-Current tools: +Current tools, see [[:hekate:​HaDEs]].
-  * VARDA +
-  * HJEd +
-  * HQEd +
-  * HeaRT +
-  * HaThoR+
  
  
 ====== Case Template ====== ====== Case Template ======
- +See [[:​hekates:​cases:​hekate_case_skel:​start|skeleton case]]
-<​code>​ +
-====== Introduction ====== +
- +
-===== Description ===== +
- +
-===== Conceptualization ===== +
- +
-==== Vocabulary ==== +
- +
-==== Original Rules ==== +
- +
-===== Analysis ===== +
- +
-===== Conceptual design ===== +
- +
-==== General Conceptual Design ==== +
- +
-==== Directed Conceptual Design ==== +
- +
-=== Full ARD Model === +
- +
-==== Refined Conceptual Design ==== +
- +
-===== Physical Attribute Specification ===== +
- +
-===== Structuralization ===== +
- +
-===== Logical design ===== +
- +
-</​code>​+
hekate/hekate_process.1250516339.txt.gz · Last modified: 2019/06/27 16:00 (external edit)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0