计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

一、历史背景 多年来一直困扰程序技术研究领域(3)

2013-07-03 01:06
导读:由于图形的二维直观性,近年来图形程序设计环境在软件工程领域十分流行 XYZ系统中也提供一图形环境以支撑(I)所示的逐步求精方法,其核心为下面二类

  由于图形的二维直观性,近年来图形程序设计环境在软件工程领域十分流行 XYZ系统中也提供一图形环境以支撑(I)所示的逐步求精方法,其核心为下面二类图形环境连接面成,(a)设计数据流图的环境XYZ/DFD,(b)设计算法程序的图形环境XYZ/CFC及XYZ/PAD,后者是前者的结构化形式,其图形为结构化程序流图PAD与Petrl阿的结合体。
  用户先通过XYZ/DFD进行数据流图分析与设计,并可在每一步对图中表示进程的节点进一步分解成子数据流图。这环境具有如下特色.第一,其数据流图中每一节点的输入输出端隐含着同步机制。所以,由此作出的数据流图事实上是通讯进程的图形 第二,每设计出一个层次的数据流图后,只要给出进程节点的语义信息(事实上是前置条件与后续条件),系统即可自动生成该图用XYZ/E表示的操作语义文本(即XYZ/E程序,并由此可进一步自动生成C语言程序)。每次对其中节点进行分解成子数据流图后,可根据分解前后生成的XYZ/E程序,严格地验证或测试分懈前后语义是否一致。第三,这里所谓验证,即验证分解后的描述是否可推出分解前的描述。这种验证可以手工方式进行也可以在计算机上以交互方式进行。
  为了支撑后一种验证,XYZ系统中实现了一关于时序逻辑公式及XYZ程序的验证系统XYZ/VERI。因程序验证是一繁重的工作,并非每一程序都需用这种途径来评估其正确性。为此,XYZ系统中又提供了另一测验程序的途径,其子系统XYZ/PROT事实上是将每一步设计出的抽象描述作为速成原型用PROLOG予以执行的系统。利用此系统执行每一步分解前后的抽象描述,即可测试其语义是否一致。
  在程序设计过程中应用XYZ/DFD进行通讯进程分解到一定程序后,卵不必再作此种分解,而转入XYZ/PAD,用PAD图进行算法程序设计,这系统提供的图形工具功能比单纯作结构比程序流图PAD要强一些,它也可以逐步求精将其中算法节点分解成子PAD图,而且它还可作Petri网以表示具有共享变量的并发进程。与XYZ/DFD一样,每一步设计出这种PAD图后,亦可自动生成其XYZ/E程序,并验证或测试(作速成原型执行)正确性。 (科教范文网 lw.nSeAc.com编辑发布)
  与(I)那种按用户决定逐步求精方法相应.XYZ系统还提供一设计可重用程序的环境XYZ/SPEC 其中,一个工具XYZ/SDL辅助用户从决定的非形式描述到形式化描述的过渡{另一工具XYZ/REUSE用来存放每一步设计的描述, 以备重用或者检索过去曾设计过的描述看是否可重用,并纪录全设计过程的历史}每一步描述既可作为速成原型执行亦可验证前后步描述的一致性。由于这种描述中可能包含通讯信息,用PROLOG已不能胜任,为此,XYZ系统中提供另一功能更强的速成原型工具XYZ/RULE,它可执行通讯进程的抽象描述。xvz/SPEC系统不咀可增强程序的可重用性,而且可使抽象描述易写、易读、易证。因如一程序的抽象描述用一个式子一次写出,其中必应表示所有各种决定包含的信息,这样的描述必然非常复杂,因此写、读、证都将很困难 而XYZ/SPEC所依据的方法论是将整个设计过程分懈为一连串逐步求精的步骤’, 每一步只作一个决定,因此,每一步的描述比上一步只增加一个决定的信息。而且各次决定构成的历史均有案可查,每步的设计意图清晰, 自然就容易书写与理解。这是此方法论的优点所在至于不同语言的形式转换,是由两个子系统组成的,首先,源语盲的静态语义分析系统XYZ/GPAE,这是一属性文法计算系统,不过它可根据-级文法对属性进行分块以减少内存开销·在对源语言进行静态检查(如类型一致性、辖域规则等)后,系统将作一些替换以消除源程序中的与上下文相关信息(如嵌套辖域中定义的同名量等)。这部分事实上还包含一语法分析器YAYACC,其用户界面为YACC,但所处理的文法是LR(1),且极大程度上进行状态优化及加速。其次,源语言的动态语义转换系统XYZ/CC~S,用源语言XYZ/ML表示将源语言的操作语义转换成XYZ/E程序的替换规则,这系统运行的结果即将源程序转换成XYZ/E程序.而由XYZ/E转换成任何常见算法语言都非常简单·这两部分连接起来即可将一源语言程序以XYZ/E为中介转换成另一源语言。因此,XYZ系统不但能接受XYZ/E中各子语言及相应的多种图形语言,而且还能实现其它常见语言的转换与沟通。
上一篇:摘要:随着高等教育的大众化,大学生面临的社 下一篇:没有了