第03讲:形式化方法及SA的形式化描述.ppt

  1. 1、本文档共168页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CSP起源 Hoare,1978 解决序列化的进程描述以及这些进程并行执行时的交互问题 理论成形 Hoare,Brookes,Roscoe,1984 以事件为基础的理论模型,构建动态的描述结构,并提出了进程间通讯的一些范式和准则 C.A.R Hoare, 1980年图灵奖获得者 CSP简介 … Computation = … 用CSP精确描述 [反复从端口Input读入数据,并将数据依次写入端口Output1,Output2,……] source?x?output1!x?output2!x?…?Computation CSP的精确描述 事件(Event) 引发其它事件或者被其它事件引发的情况,是CSP中最基本的单位 事件集(Alphabet) 对某一系统进行某种描述时所有相关的事件名称组成的集合。如果系统名为S,则事件集表示为αS 进程(Process) 连续交互发生的一组事件的整体。有一个特殊的进程叫STOP,表示系统停机 前缀(Prefixing) 由指定事件触发某一进程的关系,表示为e→P 选择行为(Alternative) 在某种情况下,可以有多种进程发生。具体哪一种发生由环境决定 不确定行为(Nondeterminism) 在某种情况下,可以有多种进程发生。具体哪一种发生有进程自身决定 CSP的基本概念 定义系统名称 SVM(简单自动售货机) 定义事件 coin:投一枚硬币 choc:得到一块巧克力 定义本系统的事件集 αSVM = {coin, choc} 系统简化 本描述只和顾客投币并获取巧克力相关,忽略对其它的事件的描述 事件发生的精确时间被忽略 无须区分一个对象本身触发和外界触发的事件 CSP的实例-描述自动售货机的行为 当顾客投一个硬币,自动售货机停止工作 SVM = (coin → STOP ) 当两个顾客分别投一个硬币后,均得到一块巧克力,之后再投币,自动售货机停止工作 SVM = (coin → (choc → (coin → (choc → STOP )))) 当第一个和第二个硬币投下后,巧克力出来之前,不可以再投入新的硬币;巧克力出来之后,不投入新硬币,不会再有巧克力出来:即不可能有多于一个的硬币被连续投入,也不可能有多于一块的巧克力连续出来 CSP前束操作符有右结合性,所以上式等价于 SVM =coin → choc → coin → choc → STOP 事件 前缀 进程 CSP表现SVM行为 现实当中有些对象在正常情况下的行为是永不停机的,可用递归定义来描述这种情况 对于系统SVM 进程描述:SVM = coin → choc → SVM CSP的递归定义 成功完成 CSP中的STOP仅仅意味着系统停机,没有成功或者失败的意味。在体系结构描述中引入事件“成功完成” 的概念,用√表示。WRIGHT定义§= √? STOP 事件可伴随数据。通常e?x表示输入一个参数;e!x表示输出一个参数 作用域(Scope) 存在于某一作用域中的进程仅在这个作用域中有效 标签(Lable) 标签可以限定事件或者进程的归属者。其中对于某一单个事件的标签使用“.”,例如l.e;对于某一进程中的所有事件使用“:”,例如l:P 通常使用∑来表示所有通用的事件,如l:∑表示所有通用的事件加上l这个标签 CSP描述体系结构行为 其他的可选方案 Petri网、SDL、I/O自动机、状态图等 在CSP中可以区分Alternatives和Nondeterminisms,即由内部进行的决策和外部进行的决策是分开的 CSP中有并行进程组合机制,可以表达一个符合多个进程描述的进程 CSP拥有成熟的工具支持 缺点 CSP中,时间是不被考虑的 CSP中,进程之间只存在触发关系 CSP的优势和劣势 The End * * * 采用属性文法(AG)来形式化描述软件体系结构 传统的属性文法是在上下文无关文法G=(VN,VT,P,Z)上附加上下文有关的属性和规则 VN是非终结符号集;VT是终结符号集;P是产生式集;Z是开始符号 假设G是规范的上下文无关文法,P中的产生式为: p: Xp,0→Xp,1…Xp,np, np≥1,表示的右部所含符号的长度 Xp,0∈VN,Xp,i∈V;V= VN∪VT; 1≤i≤np DSADL针对分布式软件的特征引入了并行描述机制 、特殊的终结符号、条件产生式 几种ADL简介-DSADL 采用Z语言形式化描述软件体系结构。其中Z语言是基于一阶逻辑和集合论的一种数学语言 OOADL以OO范例作为核心,增加了“a_kind_of”、 “a_part_of”和“an_instance_of”等关键字来表示OO范例中的概括、聚集和实例化关系 几种ADL简介-OOADL WRIGHT将软件理解为构件、连接器、

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档