王超龙 嵌入式软件的形式化方法研究(4)

2019-08-20 18:12

千秋;第三,虽然不同的建模语言大多雷同,但仍存在某些细微的差别,极大地妨碍了用户之间的交流。因此在客观上,极有必要在精心比较不同的建模语言优缺点及总结面向对象技术应用实践的基础上,组织联合设计小组,根据应用需求,取其精华,去其糟粕。经h和Jacobson三人的共同努力,于1996年6月和10月分别发布了两个新的版本,即UML 0.9和UML 0.91,并将UM重新命名为UML(Unified Modeling Language)。

UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它融入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。

面向对象技术和UML的发展过程可用上图来表示,标准建模语言的出现是其重要成果。在美国,截止1996年10月,UML获得了工业界、科技界和应用界的广泛支持,已有700多个公司表示支持采用UML作为建模语言。1996年底,UML已稳占面向对象技术市场的85%,成为可视化建模语言事实上的工业标准。1997年11月17日,OMG采纳UML 1.1作为基于面向对象技术的标准建模语言。

图聚集了相关的事物及其关系的组合,是软件系统在不同角度的投影。图由代表事物的顶点和代表关系的连通图表示。下面对常用的几类图[2-12]进行简单介绍。

(1)类图。展现了一组对象、接口、协作和它们之间的关系。类图描述的是一种静态关系,在系统的整个生命周期都是有效的,是面向对象系统的建模中最常见的图

(2)对象图。展现了一组对象以及它们之间的关系。对象图是类图的实例,几乎使用与类图完全相同的标示。

(3)用例图。展现了一组用例、参与者(actor)以及它们之间的关系。用例图从用户角度描述系统的静态使用情况,用于建立需求模型。

(4)交互图。用于描述对象间的交互关系,由一组对象和它们之间的关系组成,包含它们之间可能传递的消息。交互图又分为序列图和协作图,其中序列图描述了以时间顺序组织的对象之间的交互活动;协作图强调收发消息的对象的结构组织。

(5)状态图。由状态、转换、事件和活动组成,描述类的对象所有可能的状态以及事件发生时的转移条件。通常状态图是对类图的补充,仅需为那些有多个状态的、行为随外界环境而改变的类画状态图。

(6)活动图。一种特殊的状态图,展现了系统内一个活动到另一个活动的流程。活动图有利于识别并行活动。

(7)组件图。展现了一组组件的物理结构和组件之间的依赖关系。部件图有助于分析和理解组件之间的相互影响程度。

(8)部署图。展现了运行处理节点以及其中的组件的配置。部署图给出了系统的体系结构和静态实施视图。它与组件图相关,通常一个节点包含一个或多个构建。

需要指出的是,UML并不限定仅使用这9种图,开发工具可以采用UML来提供其他种类的图,但到目前为止,这9种图在实际应用中最常用的。

4.7 应用

目前,UML已成功应用于电信、金融、政府、电子、国防、航天航空、制造与工业自动化、医疗、交通、电子商务等领域中。在这些领域中,UML的建模包括大型、复杂、实时、分布式、集中式数据或者计算,以及嵌入式系统等,而且还用于软件再生工程、质量管理、过程管理、配置管理的各方面。在软件无线电技术中,UML的应用是可行的,而且具有优势。

建模语言可被不同种类的无线电通信和H/S(Hardware/Software)描述语言所应用。软件无线电的对象需要具有可配置性及组件可重用性。系统设计阶段对语言的要求表现在功能和结构两个方面。与UML相比,一些建模语言有其自身的缺陷。比如SDL在传统意义上缺乏模块性,VHDL对软件建模来说效率不高等。

进行联合设计的UML在序列图、状态图、合作图以及实时扩展的帮助下,能很好地为组件和模块之间的相互联系构造模型,而且能在整个设计周期中使用,以帮助设计者缩短设计时间、降低改进成本并使软/硬件分割最优。功能设计需要一种对通信规范进行建模的语言,而结构设计要求一种对软件和硬件组件进行建模的语言。软件无线电可以选择许多语言,一般来讲,UML的性能在面向对象和适应性方面是较好的。UML将硬件和软件作为一个整体来进行建模。例如,由于规范的不稳定性,设计者可以从硬件移动一些协议到软件。在UML的帮助下,硬件组件和软件组件之间将会有更大的透明度。便携性和综合效率将会增加。

通常来讲,对于使用UML进行硬件软件联合设计而言可以应用下面的技术[46]: (1)UML的模型特性可帮助设计者将协议分割成硬件模块和软件模块,它们之间的相互关系可以用UML的类图或组件图进行描述;

(2)UML状态图或序列图可使交互处理的通信更加简明扼要;

(3)软件综合和硬件综合可通过使用实时嵌入式UML而被建模,实时嵌入式UML以将并行任务分配给一个特定的处理器为目标,并将计算步骤分解到各个时钟周期中;

(4)一旦设计者通过使用类图或组件图获得接口和组件的信息,则不同种类规范的并发执行和联合仿真都将变得更容易。

综合来看,UML作为一种最合适的建模语言,其应用于软件无线电之中是可实现的,也是非常有前途的。UML在软件无线电中得以应用,必将极大地促进软件无线电技术的发展。

第五章 总结与展望

总结

嵌入式系统是复杂的反应式系统,一旦系统发生故障就可能导致无法估量的严重后果。因此,采用形式化方法来保证其正确性、提高其可靠性已经成为软件工程领域一个重要研究方向。本文是从实用的角度出发,来研究嵌入式软件的功能,使用形式化方法对嵌入式软件的研究,可是软件更具有稳定性、严谨性,从而大大减少了软件故障带来的各种损失,为我们提供更加高效的产品。在计算机科学和软件工程领域,形式化方法是基于数学的特种技术,适合于软件和硬件系统的描述、开发和验证。将形式化方法用于软件和硬件设计,是期望能够像其它工程学科一样,使用适当的数学分析以提高设计

的可靠性和安全性。

展望

通过对嵌入式软件的学习和研究,我们对这个方面的知识更加了解了,对未来工作进行展望:

(1)可以从事嵌入式软件的开发

(2)可以可以从事形式化方法的研究工作 (3)大大降低嵌入式软件开发的成本 (4)得到更加稳定性、安全性的软件成品

参考文件

[1] 王晓光,冯耀东,梅宏。ABC/ADL:一种基于XML的软件体系体系结构描述语言 计算机科学研究与发展。页码:41(9):1521-1531 2004

[2] 文欣秀 基于DLL实现界面组件的通用方法 吉林大学出版社 2003

[3]韩晓英、虞慧群。一种用例驱动的需求关注点分离的方法[J]。电子学报。34(12A):2498-2501 2006 [4] 三星S3C2410数据手册廖日坤. ARM嵌入式应用开发技术白金手册[M] 中国电力出版社,2005. [5] 郑灵翔.嵌入式Linux系统设计[M] 北京航空航天大学出版社, 2008. [6] 孙琼. 嵌入式Linux应用程序开发详解M]. 人民邮电出版社, 2006. [7] 薛圆圆.USB应用开发技术大全[M]. 人民邮电出版社,2007. [8] 华清远 嵌入式Linux C语言应用程序设计. 人民邮电出版社,2007.

[9] Brian W.c and Dennis M. The C Programming Language(2nd Edition)[M].美国:Prentice Hall,1988.

[10] W. Richard Stevens, Stephen A. Ro. Advanced Programming in the UNIX Environment 2nd Edition[M]. 美国:Addison Wesley,2005.

致谢

首先,真诚的感谢导师马艳芳教授的悉心指导和耐心讲解以及热心鼓励,才能让我顺利的完成本次毕业论文。马老师在学术上具有敏锐的洞察力、富有创造性的思维方式以及严谨的治学,多年来一直对我影响很大,对于这次论文的圆满的完成我由衷的说一声谢谢您我的老师。


王超龙 嵌入式软件的形式化方法研究(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:和平手段可以遏止恐怖主义二辩稿

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: