论文部分内容阅读
近几年,为了缩短软件的开发周期和提高软件的开发质量,柔性的软件开发模式被提出。柔性软件开发模式能灵活和快速地响应用户需求的变更。其主要特点有以下四点:模型是可模拟的;开发过程中建模过程自顶向下,模拟修改由底向上地进行;在验证模型正确的基础上生成代码;支持代码到模型的逆向变换,将原有的代码转化成模型,进行再次分析。Petri网具有直观、模拟能力强、具有严密的数学验证等优点,因此Petri可以较好地满足柔性软件开发的建模需求。但是,其中Petri网与程序间的转换问题仍然没有得到有效的解决。论文主要研究Petri网模型到程序代码的自动转换过程中C_net到可编译表达式的映射方法部分。在分析关联矩阵的基础上,给出了C_net结构中变迁序列的确定算法,实现了C_net到结构表达式的具体转换。结合C_net中数据的读写关系,设计了C_net结构表达式到C_net程序表达式的转换算法。通过对ATM机中各个功能建立C_net模型为例,验证论文研究设计的映射方法的可行性。另外,C_net是对系统局部功能的建模,为了满足增量式软件开发模式的需求,论文研究了C_net组合后的正确性判定问题,分别给出无读写冲突、考虑读写冲突和含有逻辑“或”结构时组合C_net正确性判定定理。论文中定义的C_net程序表达式是计算机可识别编译的表达式,是连接C_net模型及其所对应的程序的桥梁。C_net表达式的可编译性,为C_net到程序的自动转换提供了一种可能的途径。C_net程序表达式与C_net和程序具有一一对应性,C_net模型、C_net程序表达式和程序之间可以相互转换,使得系统模型的反复验证成为可能。研究具有一定的理论意义和实践价值,有利于推动基于柔性的软件开发模式的进一步发展。