论文部分内容阅读
摘要:UML作为软件工程领域的标准建模语言得到了业界的广泛支持,并日渐成为系统分析中的一种标准建模语言。建模就是用图表从技术层次表达系统的各个方面功能。实时统一建模代表着雷达软件设计的一个发展方向,该文介绍了UML工具并使用了UML的用例图、活动图以及类图对雷达信号发分选系统的软件设计进行了分析建模,给出了雷达信号发分选系统的软件设计的用例模型、静态模型和动态模型。
关键词:UML;分析建模;雷达信号分选;图
中图分类号:TP872文献标识码:A文章编号:1009-3044(2007)12-21609-03
UML and it's Application to the Analysis Modeling of Radar Signal Sorting System
YONG Yuan-hong1,LI Li-ping1,LIU Nai-qi2
(1.School of E.E, UESTC, Chengdu 610054,China;2.School of C.S.E, UESTC, Chengdu 610054,China)
Abstract:UML (unified modeling language) is widely supported by software industry nowadays as a kind of standard modeling language in field of software engineering. It becomes more and more popular in systems analysis. Modeling is that people use diagrams to technically express functions of all aspects of system. Real-time UML represents one of development trends of radar software design. This paper briefly introduces UML and makes use of using case diagrams and activity diagrams of UML to process analysis modeling of software design of radar signal sorting system and to establish using case model, static model and dynamic model of software design of radar signal sorting system.
Key words:UML;analysis modeling;radar signal sorting system;diagram
1 引言
在现代战争中,雷达的大量使用形成了复杂的电磁环境。电子侦察的电磁环境的复杂、密集使雷达信号分选所遇到的挑战越来越大,雷达信号分选的实时性和识别的正确性是雷达信号分选遇到的最大挑战。这使信号分选软件设计的复杂程度也随之不断增加,而研发周期却在缩短。如何及时地开发出优质、高效、满足要求的系统性的软件是每个软件设计人员都面临的难题。此外,随着系统复杂性急剧增加,C语言对应的传统结构化设计方法已不能满足软件设计和开发的需要,能不能把面向对象开发与C语言的优点结合起来?对这个问题,已经有人提出过一些方法。主要集中在用C语言来实现C++的语法,如用结构来模拟类,用函数指针来表示成员函数。这些方法使得本来语法就已经很复杂的C语言更加麻烦,同时没有了C语言快速、高效的优点。这里提出一种新的方法,用面向对象方法进行分析和设计,最后直接用C语言进行编码。正是基于这一点,本文从软件工程学的角度将UML(Unified Modeling Language)应用到信号分选系统软件分析设计中来提高我们的开发效率,缩短研发周期。
2 UML概述
UML 通过事物、关系和图来描述建模内容。UML中有3种基本构造块。分别是事物、关系和图。事物分结构事物(包括类、接口、协作、用况、主动类、构件和节点)、行为事物(包括交互和状态机)、分组事物和注释事物。UML中有四种关系,分别是:依赖(表明对象之间的依赖性)、关联(表明对象与对象之间有联系)、泛化(一般元素和特殊元素之间的分类关系)和实现关系(规格说明与实现之间的关系)。通过事物和关系来描述客观事物的抽象。图是UML的核心;图是软件系统在不同角度上的投影;图是包含事物及其关系的组合。 UML采用多视图表示模型的不同侧面,表示各种元素和概念之间的划分,而每一类视图使用一种或两种特定图来可视化地表示视图中的概念。在UML中共定义五类、九种模型图。静态结构图(其中包括类图和对象图和用例图)、顺序图、协作图、状态图、活动图、实现图(其中包括构件图和配置图)。在开发过程中,可根据不同阶段的具体要求,选择不同的图形来描述系统的静态结构模型或者动态行为模型。
3 UML在分析建模中的优势
在工程分析与设计过程中,建模是促进开发人员对需求更好的理解、更清晰的设计、更容易维护的系统的最佳途径。它是从复杂信息中提取本质抽象的过程。而这种抽象指引着项目的方向、决定项目的成功。基于UML的分析建模,可以帮助设计和分析人员对问题的描述,以达到相同的理解,使分析的正确性得到保障。统一建模语言UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言,主要适用于分析与设计阶段的系统建模。UML总结了以往建模技术的经验并吸收当今优秀成果的标准建模方法。UML能够描述系统的静态结构和动态行为,是一个绘制软件概念图的图形化记法。人们可以用它绘制图形,来表示一个计划进行的软件设计的问题域,或者用这些图来表示一个已经完成的软件实现。目前, UML作为可视化、详述和构造、文档化的通用建模语言得到了界的广泛支持,并日渐成为系统分析中的一种标准建模语言。UML在建模中的優势主要表现在:
(1)UML 适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域的建模包括大型的、复杂的、实时的、分布式的、集中式数据或计算的、嵌入式的系统;
(2)在实现编程语言和开发平台方面。 UML可应用于运行各种不同的编程实现语言和开发平台的系统。其中包括程序设计语言、数据库、4GL、组织文档及固件等。在各种情况下,前部分工作应当相同或相似,后部分工作因各种开发媒介的不同而有某种程度上的不同。
(3)UML溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。UML最主要的特点是表达能力丰富,便于人员之间的交流,利于理清系统软件各部分之间的关系,减少语义差异。
4 UML在选系统软件设计中分析建模的应用
信号分选软件是系统性的软件,所以有必要将系统分解成多个容易被理解的块,以便能够理解和控制系统的复杂性,能从整体的角度把握一个完整的信号分选系统。我们使用UML对信号分选软件系统进行分析建模,分析建模必须清楚系统需求,这是建立软件设计的基础。因此在进行分析建模之前,给出系统的硬件结构图(如图1)以便更好地理解软件系统的设计。在信号分选系统软件设计中,实时性、并发性、健壮性和可靠性是雷达分选系统软件的特点和要求。UML2。0已经吸收了各种流行工具的优点,考虑到了实时性的要求。在分析阶段用UML对其进行建模分析能对我们更好理解分选系统软件的功能,确保软件的质量。
图1 信号分选系统EVM硬件总体框架
对软件需求的完全理解对软件开发工作的成功是至关重要的,系统需求就是明确待开发软件系统的目标和功能,雷达信号分选系统的目标和功能就是从侦察系统截获的大量交叠的脉冲流中分离出各个雷达脉冲列。在了解了分选系统的硬件框架和明确分选系统的功能和目标之后,即可进行分析建模。图2是本系统分析建模的分析过程流程图。在系统的静态和动态模型以及功能模型中,功能(用例)模型是系统的核心。它驱动着其他两个模型的开发。因此,可以采用如下建模过程:首先从系统功能需求建立用例模型,确定系统的功能;随后,利用用例模型和功能需求进行分析建立系统的静态模型,并且将系统的功能需求分解。然后,建立系统的动态模型,描述各个对象如何完成指定的功能;最后,需要对前面建立的三个模型进行一致性检验,确保系统模型的一致性。按照需求分析的过程,建模首先描述系统需求,对系统的功能进行建模,得到系统的用例模型;然后根据需求对系统静态建模,以构造系统静态结构模型;最后描述系统的行为,对系统动态建模,实现系统的行为模型。本文对在分析建模中应用的主要图形:用例图、类图和活动图,并结合信号分选系统软件的开发阐述UML在分析建模中的实践。
图2 基于的需求分析过程
4.1 建立信号分选系统软件的功能模型
在功能分析阶段,要明确雷达信号分选系统的功能,主要用UML的用例图,用例图是对一个角色使用系统的一项功能时进行的交互过程的一个描述,它形象,直观,便于交流。所有用例的集合表示了系统完整的功能。但它是一种黑盒子方法,只能看到外部的功能特征,看不到内部的实现细节。系统的功能模型用例图如图3。
4.2 建立信号分选系统软件的静态模型
创建静态模型时,主要完成数据的建模。静态模型是在功能建模的基础上从软件的体系结构角度描述系统各用例内部和之间数据的关系,由于信号分选系统软件不同与一般的商业软件,针对雷达分选系统的特点,面向对象的一些高级特性不能使用,动态创建对象、派生和多态这样的特性会大大降低系统速度并增大代码空间和数据空间。本系统采用结构化的数据模型,主要的数据类型有:就是利用到达时间(TOA)、到达方向(DOA)、脉冲宽度(PW)、脉冲重复周期(PRI)、载频(RF)、脉冲调制方式(PM)等参数形成每一部待分选雷达的脉冲描述字(PDW),控制类,显示类,环境设置类。同时建立雷达系统的已知数据库和未知数据库以及对已知数据库的更新,主要应用的是类图。UML 的标准扩展把类归为三种:边界类、控制类、实体类。这三种构造型化的类从本质上来说是三层体系结构思想的体现。配置性能参数,用静态类图建立系统的静态模型。静态类图如图4。
图3 信号分选系统的用例图
定义 4 个类及类中的方法和操作:
用户类:SystemManager
边界类:ConfigUI、
控制类:ConfigWorkflow
实体类:ConfigPerformanceParaDisposal
类中衍生的表 Config Table&performanceConfigTable
图4 系统的静态类图
4.3 建立信号分选系统软件的动态模型
系统的行为模型可在系统功能和整体结构模型基本确定之后即可建立。在UML中,用来表示动态模型的图形有状态转换图、顺序图、协作图、活动图等。本文选择用活动图建立动态模型,活动图描述系统中的各种活动,实质上是一种流程图,只不过表现的是从一个活动到另一个活动的控制流。活动图描述活动的序列,并且支持并发行为和条件行为。图5给出了用活动图表达的系统动态模型。
5 结论
UML作为软件工程学的一个重要的应用工具,其分析模型的可视化和直观性得到了广泛的认同,使分析的正确性得到保障。在商业性软件的开发方面得到了广泛的应用。但在一些特定的行业的应用还不是很多,使得分选系统的软件需求,系统不同模块的功能以及系统各模块的数据关系有了一个清晰的认识。在保证软件的正确性和健壮性起到了很大的作用。由于雷达信号分选软件的特殊性和复杂性,为了成功地开发出满足要求的软件,必须有好的建模工具帮助我们对对系统功能及其数据关系有清晰,完整的认识。以UML代表的软件建模技术代表着当今软件开发的发展趋势,它势必对提高雷达软件设计的质量,推动雷达软件的開发产生重要的作用。
图5 信号分选系统的活动图
参考文献:
[1]王庆育.软件工程[M].北京:清华大学出版社,2004(7)51-71.
[2]王枫,石冰心,罗莉敏.UML建模机制研究及在系统需求分析中的应用[J].计算机工程与设计,2005(4) Vol.26 No.4
[3]Ahmad,ALsaadi.A Performance Analysis Approach Based on the UML Class Diagram[J].ACM SIGSOFT Software Engineering NotesJan.2004,Vol.29 No.1
[4]A.Bertolino, E.Marchetti, R.Mirandola. Real-Time UML-based Performance Engineering to Aid Manager's Decisions in Multi-project Planning[A]. Software and Performance [C].Proceedings of the 3rd international workshop.Jul.2002;251-261.
[5]李合生, 韩宇,蔡英武, 陶荣辉.雷达信号分选关键技术研究综述[J].系统工程与电子技术,2005(12) Vol.27 No.12.
[6]刘连柱,苗秀梅.雷达信号分选、处理方法研究[J].电子对抗,2006 No.2
[7]翁力群.雷达设计的软件系统工程结构[J].现代雷达,2006(6) Vol.28 No.6.
[8]李海.基于实时UML的雷达软件设计[J].现代雷达.2006(8) Vol.28 No.8.
[9]王辉,陆荣国,秦小麟.UML在实时软件系统中的应用研究[J].计算机应用, 2004(2) Vol.24 No.2.
[10]郑孝洋,沈安文,陈光东.用UML建模开发嵌入式软件[J].单片机与嵌入式系统应用,2006(8).
“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。”
关键词:UML;分析建模;雷达信号分选;图
中图分类号:TP872文献标识码:A文章编号:1009-3044(2007)12-21609-03
UML and it's Application to the Analysis Modeling of Radar Signal Sorting System
YONG Yuan-hong1,LI Li-ping1,LIU Nai-qi2
(1.School of E.E, UESTC, Chengdu 610054,China;2.School of C.S.E, UESTC, Chengdu 610054,China)
Abstract:UML (unified modeling language) is widely supported by software industry nowadays as a kind of standard modeling language in field of software engineering. It becomes more and more popular in systems analysis. Modeling is that people use diagrams to technically express functions of all aspects of system. Real-time UML represents one of development trends of radar software design. This paper briefly introduces UML and makes use of using case diagrams and activity diagrams of UML to process analysis modeling of software design of radar signal sorting system and to establish using case model, static model and dynamic model of software design of radar signal sorting system.
Key words:UML;analysis modeling;radar signal sorting system;diagram
1 引言
在现代战争中,雷达的大量使用形成了复杂的电磁环境。电子侦察的电磁环境的复杂、密集使雷达信号分选所遇到的挑战越来越大,雷达信号分选的实时性和识别的正确性是雷达信号分选遇到的最大挑战。这使信号分选软件设计的复杂程度也随之不断增加,而研发周期却在缩短。如何及时地开发出优质、高效、满足要求的系统性的软件是每个软件设计人员都面临的难题。此外,随着系统复杂性急剧增加,C语言对应的传统结构化设计方法已不能满足软件设计和开发的需要,能不能把面向对象开发与C语言的优点结合起来?对这个问题,已经有人提出过一些方法。主要集中在用C语言来实现C++的语法,如用结构来模拟类,用函数指针来表示成员函数。这些方法使得本来语法就已经很复杂的C语言更加麻烦,同时没有了C语言快速、高效的优点。这里提出一种新的方法,用面向对象方法进行分析和设计,最后直接用C语言进行编码。正是基于这一点,本文从软件工程学的角度将UML(Unified Modeling Language)应用到信号分选系统软件分析设计中来提高我们的开发效率,缩短研发周期。
2 UML概述
UML 通过事物、关系和图来描述建模内容。UML中有3种基本构造块。分别是事物、关系和图。事物分结构事物(包括类、接口、协作、用况、主动类、构件和节点)、行为事物(包括交互和状态机)、分组事物和注释事物。UML中有四种关系,分别是:依赖(表明对象之间的依赖性)、关联(表明对象与对象之间有联系)、泛化(一般元素和特殊元素之间的分类关系)和实现关系(规格说明与实现之间的关系)。通过事物和关系来描述客观事物的抽象。图是UML的核心;图是软件系统在不同角度上的投影;图是包含事物及其关系的组合。 UML采用多视图表示模型的不同侧面,表示各种元素和概念之间的划分,而每一类视图使用一种或两种特定图来可视化地表示视图中的概念。在UML中共定义五类、九种模型图。静态结构图(其中包括类图和对象图和用例图)、顺序图、协作图、状态图、活动图、实现图(其中包括构件图和配置图)。在开发过程中,可根据不同阶段的具体要求,选择不同的图形来描述系统的静态结构模型或者动态行为模型。
3 UML在分析建模中的优势
在工程分析与设计过程中,建模是促进开发人员对需求更好的理解、更清晰的设计、更容易维护的系统的最佳途径。它是从复杂信息中提取本质抽象的过程。而这种抽象指引着项目的方向、决定项目的成功。基于UML的分析建模,可以帮助设计和分析人员对问题的描述,以达到相同的理解,使分析的正确性得到保障。统一建模语言UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言,主要适用于分析与设计阶段的系统建模。UML总结了以往建模技术的经验并吸收当今优秀成果的标准建模方法。UML能够描述系统的静态结构和动态行为,是一个绘制软件概念图的图形化记法。人们可以用它绘制图形,来表示一个计划进行的软件设计的问题域,或者用这些图来表示一个已经完成的软件实现。目前, UML作为可视化、详述和构造、文档化的通用建模语言得到了界的广泛支持,并日渐成为系统分析中的一种标准建模语言。UML在建模中的優势主要表现在:
(1)UML 适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域的建模包括大型的、复杂的、实时的、分布式的、集中式数据或计算的、嵌入式的系统;
(2)在实现编程语言和开发平台方面。 UML可应用于运行各种不同的编程实现语言和开发平台的系统。其中包括程序设计语言、数据库、4GL、组织文档及固件等。在各种情况下,前部分工作应当相同或相似,后部分工作因各种开发媒介的不同而有某种程度上的不同。
(3)UML溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。UML最主要的特点是表达能力丰富,便于人员之间的交流,利于理清系统软件各部分之间的关系,减少语义差异。
4 UML在选系统软件设计中分析建模的应用
信号分选软件是系统性的软件,所以有必要将系统分解成多个容易被理解的块,以便能够理解和控制系统的复杂性,能从整体的角度把握一个完整的信号分选系统。我们使用UML对信号分选软件系统进行分析建模,分析建模必须清楚系统需求,这是建立软件设计的基础。因此在进行分析建模之前,给出系统的硬件结构图(如图1)以便更好地理解软件系统的设计。在信号分选系统软件设计中,实时性、并发性、健壮性和可靠性是雷达分选系统软件的特点和要求。UML2。0已经吸收了各种流行工具的优点,考虑到了实时性的要求。在分析阶段用UML对其进行建模分析能对我们更好理解分选系统软件的功能,确保软件的质量。
图1 信号分选系统EVM硬件总体框架
对软件需求的完全理解对软件开发工作的成功是至关重要的,系统需求就是明确待开发软件系统的目标和功能,雷达信号分选系统的目标和功能就是从侦察系统截获的大量交叠的脉冲流中分离出各个雷达脉冲列。在了解了分选系统的硬件框架和明确分选系统的功能和目标之后,即可进行分析建模。图2是本系统分析建模的分析过程流程图。在系统的静态和动态模型以及功能模型中,功能(用例)模型是系统的核心。它驱动着其他两个模型的开发。因此,可以采用如下建模过程:首先从系统功能需求建立用例模型,确定系统的功能;随后,利用用例模型和功能需求进行分析建立系统的静态模型,并且将系统的功能需求分解。然后,建立系统的动态模型,描述各个对象如何完成指定的功能;最后,需要对前面建立的三个模型进行一致性检验,确保系统模型的一致性。按照需求分析的过程,建模首先描述系统需求,对系统的功能进行建模,得到系统的用例模型;然后根据需求对系统静态建模,以构造系统静态结构模型;最后描述系统的行为,对系统动态建模,实现系统的行为模型。本文对在分析建模中应用的主要图形:用例图、类图和活动图,并结合信号分选系统软件的开发阐述UML在分析建模中的实践。
图2 基于的需求分析过程
4.1 建立信号分选系统软件的功能模型
在功能分析阶段,要明确雷达信号分选系统的功能,主要用UML的用例图,用例图是对一个角色使用系统的一项功能时进行的交互过程的一个描述,它形象,直观,便于交流。所有用例的集合表示了系统完整的功能。但它是一种黑盒子方法,只能看到外部的功能特征,看不到内部的实现细节。系统的功能模型用例图如图3。
4.2 建立信号分选系统软件的静态模型
创建静态模型时,主要完成数据的建模。静态模型是在功能建模的基础上从软件的体系结构角度描述系统各用例内部和之间数据的关系,由于信号分选系统软件不同与一般的商业软件,针对雷达分选系统的特点,面向对象的一些高级特性不能使用,动态创建对象、派生和多态这样的特性会大大降低系统速度并增大代码空间和数据空间。本系统采用结构化的数据模型,主要的数据类型有:就是利用到达时间(TOA)、到达方向(DOA)、脉冲宽度(PW)、脉冲重复周期(PRI)、载频(RF)、脉冲调制方式(PM)等参数形成每一部待分选雷达的脉冲描述字(PDW),控制类,显示类,环境设置类。同时建立雷达系统的已知数据库和未知数据库以及对已知数据库的更新,主要应用的是类图。UML 的标准扩展把类归为三种:边界类、控制类、实体类。这三种构造型化的类从本质上来说是三层体系结构思想的体现。配置性能参数,用静态类图建立系统的静态模型。静态类图如图4。
图3 信号分选系统的用例图
定义 4 个类及类中的方法和操作:
用户类:SystemManager
边界类:ConfigUI、
控制类:ConfigWorkflow
实体类:ConfigPerformanceParaDisposal
类中衍生的表 Config Table&performanceConfigTable
图4 系统的静态类图
4.3 建立信号分选系统软件的动态模型
系统的行为模型可在系统功能和整体结构模型基本确定之后即可建立。在UML中,用来表示动态模型的图形有状态转换图、顺序图、协作图、活动图等。本文选择用活动图建立动态模型,活动图描述系统中的各种活动,实质上是一种流程图,只不过表现的是从一个活动到另一个活动的控制流。活动图描述活动的序列,并且支持并发行为和条件行为。图5给出了用活动图表达的系统动态模型。
5 结论
UML作为软件工程学的一个重要的应用工具,其分析模型的可视化和直观性得到了广泛的认同,使分析的正确性得到保障。在商业性软件的开发方面得到了广泛的应用。但在一些特定的行业的应用还不是很多,使得分选系统的软件需求,系统不同模块的功能以及系统各模块的数据关系有了一个清晰的认识。在保证软件的正确性和健壮性起到了很大的作用。由于雷达信号分选软件的特殊性和复杂性,为了成功地开发出满足要求的软件,必须有好的建模工具帮助我们对对系统功能及其数据关系有清晰,完整的认识。以UML代表的软件建模技术代表着当今软件开发的发展趋势,它势必对提高雷达软件设计的质量,推动雷达软件的開发产生重要的作用。
图5 信号分选系统的活动图
参考文献:
[1]王庆育.软件工程[M].北京:清华大学出版社,2004(7)51-71.
[2]王枫,石冰心,罗莉敏.UML建模机制研究及在系统需求分析中的应用[J].计算机工程与设计,2005(4) Vol.26 No.4
[3]Ahmad,ALsaadi.A Performance Analysis Approach Based on the UML Class Diagram[J].ACM SIGSOFT Software Engineering NotesJan.2004,Vol.29 No.1
[4]A.Bertolino, E.Marchetti, R.Mirandola. Real-Time UML-based Performance Engineering to Aid Manager's Decisions in Multi-project Planning[A]. Software and Performance [C].Proceedings of the 3rd international workshop.Jul.2002;251-261.
[5]李合生, 韩宇,蔡英武, 陶荣辉.雷达信号分选关键技术研究综述[J].系统工程与电子技术,2005(12) Vol.27 No.12.
[6]刘连柱,苗秀梅.雷达信号分选、处理方法研究[J].电子对抗,2006 No.2
[7]翁力群.雷达设计的软件系统工程结构[J].现代雷达,2006(6) Vol.28 No.6.
[8]李海.基于实时UML的雷达软件设计[J].现代雷达.2006(8) Vol.28 No.8.
[9]王辉,陆荣国,秦小麟.UML在实时软件系统中的应用研究[J].计算机应用, 2004(2) Vol.24 No.2.
[10]郑孝洋,沈安文,陈光东.用UML建模开发嵌入式软件[J].单片机与嵌入式系统应用,2006(8).
“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。”