论文部分内容阅读
随着计算机技术的快速发展,实时系统变得越来越复杂,因此面向对象技术在实时系统设计领域得到普遍推广。UML(统一建模语言)是面向对象建模领域的工业标准。UML具有表达系统能力强、效率高的优点,但在语义精确性方面有一些不足,也难以用数学工具对模型进行直接验证。实时系统对时效性、健壮性和安全性有极高的要求,因此必须保证利用UML建立的模型的正确性。Petri网作为软件系统建模的工具,既是图形化的,又可由数学工具精确定义。因此,许多人努力将UML模型和Petri网模型结合起来,用户首先使用UML进行系统建模,然后利用Petri网对系统模型进行分析和验证,从而达到扬长避短,充分发挥各自的优势。
UML的视图有多种,其中顺序图和状态图是描述系统动态行为的主要图形,本文从这两种视图出发讨论基于UML和Petri网模型的实时系统的分析。要建立UML—Petri网模型,首先是研究从UML模型到Petri网模型的转换规则。目前,针对实时系统来讨论这两种模型之间的转换的研究还不多,本文要做的工作就是围绕实时系统中对时间的处理、同步异步消息的机制以及并发等特点,分别归纳出从UML顺序图和状态图转换为Petri网模型的规则。
UML的顺序图和状态图从不同的视角看待系统,尽管它们描述的是同一系统,但是要直接分析这两种视图建立的模型在语义上的一致性并不是一件容易的事情。本文根据UML元模型中消息、转换、事件以及动作之间关系,对从顺序图转换而来的Petri网进行扩展,并把从各对象状态图转换而来的Petri网进行连接以获得一个系统级的Petri网模型,最后通过对两种Petri网进行分析比较,从而验证顺序图和状态图之间的语义是否一致。
可达性分析是一种最基础也是应用最广泛的对Petri网进行分析的技术。本文在基本可达树的基础上,针对时间Petri网中的时间属性,引进时钟状态类的概念,对可达树进行一定改进并应用到时间Petri网的分析中,从而了解系统模型是否符合实时系统的要求。文章最后给出一个实时系统的实例,利用本文提出的方法对该实例进行建模和分析。