Skip to main content
QUICK REVIEW

[论文解读] Computer Program Decomposition and Dynamic/Behavioral Modeling

Sabah Al‐Fedaghi|arXiv (Cornell University)|Sep 5, 2020
Parallel Computing and Optimization Techniques参考文献 22被引用 7
一句话总结

本文提出一种基于动态事件流的图示化方法,利用Thinging Machine(TM)模型将顺序程序分解为组件。通过在静态描述、动态表示和行为模型三个层次上建模程序,该方法实现了结构化的分解,相较于传统的C++方法在清晰度和可行性方面均有提升,尤其适用于固有顺序性算法。

ABSTRACT

Decomposition, statically dividing a program into multiple units, is a common programming technique for realizing parallelism and refining programs. The decomposition of a sequential program into components is tedious, due to the limitations of program analysis and because sequential programs frequently employ inherently sequential algorithms. This paper contributes to this area of study by proposing a diagrammatic methodology to decompose a sequential program. The methodology involves visualizing the program in terms of a conceptual model called the thinging machine (TM) model. The TM diagram-based model establishes three levels of representation (1) a static description; (2) a dynamic representation; and (3) a behavioral model. The decomposition is performed in the last phase of modeling, according to the streams of events. This method is contrasted with formal decomposition specifications and compared with the typical decomposition of a C++ program. The results point to the viability of using TM for decomposing programs.

研究动机与目标

  • 解决由于固有顺序性及程序分析能力有限而导致的顺序程序分解困难问题。
  • 提出一种可视化、三层建模方法(静态、动态、行为),用于程序分解。
  • 通过事件驱动的分解方式,提升程序的模块化程度和对并行性的支持。
  • 将基于TM的方法与形式化分解规范及传统的C++程序分解方法进行对比。
  • 验证TM模型在实际程序分解场景中的可行性和有效性。

提出的方法

  • 使用Thinging Machine(TM)模型将程序表示为一种概念框架,包含三个抽象层次:静态描述、动态表示和行为模型。
  • 动态表示基于事件流生成,支持顺序程序的事件驱动分解。
  • 分解过程发生在建模的最后阶段,基于事件流和行为模式进行。
  • 将该方法与形式化分解技术进行对比,并与典型的C++程序分解方法进行评估。
  • 使用21幅图示来说明TM模型及其在程序分解中的应用。
  • 该方法借助概念建模,克服了静态程序分析在顺序算法中的局限性。

实验结果

研究问题

  • RQ1尽管存在固有顺序性,如何有效分解顺序程序?
  • RQ2事件流分析在实现程序动态分解中起到什么作用?
  • RQ3TM模型与形式化分解规范相比,在清晰度和实用性方面有何差异?
  • RQ4基于TM的方法能否提升顺序程序的模块化程度并增强对并行性的支持?
  • RQ5与传统的C++分解方法相比,使用图示化、事件驱动建模技术在实际应用中有哪些优势?

主要发现

  • TM模型通过动态事件流分析,为顺序程序的分解提供了一种可行且结构化的途径。
  • 三层表示法(静态、动态、行为)增强了清晰度,并支持系统化的分解过程。
  • 与传统C++分解方法相比,该方法在可行性方面表现更优,尤其适用于固有顺序性算法。
  • 可视化图示方法有助于理解复杂程序行为,并促进模块化设计。
  • 研究结果表明,TM模型可作为基于形式化规范分解的实用替代方案。
  • 研究证实,通过TM模型实现的事件驱动分解在软件工程任务中具有有效性与可扩展性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。