JISE


  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]


Journal of Information Science and Engineering, Vol. 38 No. 6, pp. 1089-1108


Using User-Defined Domain-Specific Visual Languages to Modularize Programs for Conducting Experiments


YUNGYU ZHUANG1,+, JUI-HSIANG KAO2, KUAN-SHANG LIU1 AND CHIA-YU LIN1
1Department of Computer Science and Information Engineering
National Central University
Taoyuan, 32001 Taiwan
E-mail: yungyu@ncu.edu.tw
+; {106525011; 106522124}@cc.ncu.edu.tw
2Department of System Engineering and Naval Architecture
National Taiwan Ocean University
Keelung, 202301 Taiwan
E-mail: jhkao@mail.ntou.edu.tw


Experimental programs for conducting related scientific computing or engineering simulations often share common steps but differ in their workflows. Although switching between different workflows within a single program is possible, those switches prevent from understanding the individual experimental workflows. To domain experts, it is usually tricky to modularize experimental programs for maintenance and comprehension. Suppose common steps in these workflows can be wrapped up as components in a tiny visual language. The experiments can be expressed as programs written in that language and even constructed by drag-and-drop. It not only hides implementation details in each step but also improves program comprehension. However, existing domain-specific visual languages (DSVLs) are not targeted for full customization so far as we know. We propose customizing a user-defined DSVL to represent different experimental workflows and follow Dijkstra’s sequencing discipline in structured programming to develop a proof-of-concept framework. For discussion, a tiny DSVL for running wind turbine system simulation was then built upon as an example, and a comparison with existing visual frameworks was made based on diagram style, component set, and program construction. Our approach can help domain experts to express the experimental concern and quickly construct programs for running related experiments. Supporting complex syntax and parallel computing are included in our future work.


Keywords: domain-specific language, visual programming language, code modularity, workflow management system, flowchart

  Retrieve PDF document (JISE_202206_01.pdf)