论文部分内容阅读
标准建模语言UML2.0是一套支持面向对象技术的表记方法,UML2.0用一种统一的基本表示来组织数据和它专有的处理,能够无痕地支持OOA、OOD各阶段的工作特征,使传统软件开发的两条鸿沟消失。因此,UML2.0的出现是面向对象技术发展的重要成果,代表了面向对象方法的软件开发技术的发展方向。从系统的需求分析到系统的设计和实现,UML2.0都提供了一套连续的可视化表示符号,可以方便地实现模型之间的无缝转换。UML2.0建模的在初始阶段使用“USE CASE”图来刻画用户需求,强调了系统相关的角色和这些角色在系统中完成的主要功能,忽略了各个角色与功能之间的联系及其它细节。通过“USER CASE”图,用户和开发者对系统功能一目了然,注意力集中到弄清系统要干什么。在详细分析阶段,UML2.0用交互图,包括顺序图、合作图和活动图来描述“USE CASE”相关对象之间的消息传递、协作关系。进一步经过设计,用对象模型来表示整个系统。UML2.0围绕对象来建立系统模型,使系统结构更加清晰,也使系统更加稳定。UML2.0各阶段模型的可视化表示,也使得人们对问题的理解更容易。
1.社保系统中的UML2.0应用分析
UML2.0建模语言采用图形表示法。在社保系统设计中,笔者利用UML2.0技术手段实现了保险管理信息系统领域建模的基本过程,大大提高软件开发周期各阶段之间表示的一致性,缩小开发各阶段之间的间隙。UML2.0以对象为单位进行分割、包装,提高了组件重用率,使整个社保系统的可重组性明显增加。
在社保管理信息系统的UML2.0建模中,经过了开始、细化、构造和交接等几个阶段。在UML2.0建模的开始阶段,根据用户提出的需求产生角色及使用案例,并采用使用案例框图进行可视化描述,清晰的表达了用户系统的真实目标;在细化阶段,首先要进一步分析开始阶段产生的使用案例模型,对使用案例低层要求进行详细描述,包括使用案例的处理流程,使用案例中涉及的角色、对象,并用交互框图描述出所有角色对象之间的详细交互活动及对象本身的状态变化,用类框图显示要建立的类对象及其相互关系;构造阶段和细化阶段类似,是围绕使用案例来进行的。该阶段根据已有的工作基础,设计出组件和组件框图,自下而上建立一个完整的系统模型,并通过一系列迭代过程来构造实际可用的系统。每一次迭代开发都是一个小项目,每一个小项目完成后,就向用户演示,并完成局部系统测试,证明已正确实现了用例要求的功能。待全部小项目完成时,进行整体的测试集成。移交阶段的任务是将设计完成的软件产品交给用户,接受用户的检测,并完善设计文档的存档。
2.UML2.0在社保系统中的使用案例模型
根据UML2.0建模的几个基本阶段划分,可以看出,使用案例是系统建模的关键。下面给出社保系统利用UML2.0建模时,使用案例模型的相关分析。
本节分析UML2.0建模中的第一类图,即用例图,它包括用例(USERCASE)和角色(ACTOR),是用来从用户角度描述系统的功能,并指出系统各功能的操作者。USE CASE是UML2.0的核心,也是使用案例模型的重点。在传统的面向对象的系统模型中,很难明确地说明系统是怎样完成其目标的,这是由于系统在执行特定的任务时,并没有一条主线。而在UML2.0中,因为USE CASE定义了系统的行为,它实际上就是一条这样的主线。USE CASE在软件开发的需求、分析、设计、实现、测试几个核心流程中扮演着非常重要的角色。其中用例图描述的社保系统一共包括38个使用案例和29个角色。图1所示为社保系统中参保人员就诊与费用结算处理的USE CASE模型框图。
图1描述了社保系统中的5个用例和3个角色。5个用例是:看病、参保身份验证、处方单费用计算、药品准入验证、付款和欠费处理,而其中的参保身份验证和药品准入验证属于《Use》用例,欠费处理则是《Extends》用例。3个角色是就诊者、医生和支付系统。
3.社保系统中相关对象的顺序图、合作图和活动图模型
本节分析UML2.0建模中的第三类图,即交互图和活动图。交互图包括顺序图和合作图,用来描述对象间的交互关系。其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互。合作图与顺序图相似,也描述对象间的协作关系与动态合作关系。但两者有侧重,如果强调时间顺序,则使用顺序图,如果强调上下级关系,则选择合作图。
活动图,用来描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态,以及事件发生时状态的转移条件,它是对类图的补充。在实用上,往往并不需要为所有的类画状态图,通常仅为那些有多个状态且其行为受到外界环境的影响而发生改变的类画状态图。由于活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别、表达和进行活动。
社保系统中共有顺序图、合作图和活动图50多张。其中对象之间动态协作关系的顺序图描述如图1所示。
顺序图模型非常直观地展示了对象之间传送消息的时间顺序,反映了对象之间的一次特定的交互过程。在本系统中,就诊者对象向医院门诊发送参保身份验证的消息,门诊完成身份验证后便向医生对象发送就诊人看病的消息,医生看病开处方单后,向处方单对象发出保存处方单的消息,处方单对象完成保存工作,并同时对处方单进行药品准入验证,然后向支付系统发送处方单费用计算的消息。支付系统完成处方单费用计算后,通知就诊人付款。整个过程是顺序完成的。其它交互图描述从略。
4.社保系统的类图模型
类图,是静态图的一种。而静态图是UML2.0建模中的第二类图。类图通常显示了一组类、接口和协作以及它们之间的相互关系。类图在面向对象的建模设计中是很常用的。类图能有效表示系统中的类以及类与类之间的关系,它是对系统静态结构的描述。因此,我们常利用类图来阐明系统的静态设计。类与类之间有多种连接方式(或称关系),比如关联(彼此间的连接)、依赖(一个类使用另一个类)、通用化(一个类是另一个类的特殊化)或打包(多个类聚合成一个基本元素)。
由于类图描述系统中类的静态结构,表达了系统在一个稳态必须满足的对象间的关系。所以,类图描述的这种静态关系,在系统的整个生命周期都是有效的。
对象图也是静态图的一种,它是类图的实例,几乎使用与类图完全相同的标识,不同点在于对象图显示的是类的多个对象实例,而不是实际的类。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。
静态图还有一种结构形式是所谓的包图,包图由包或类组成,表示包与包之间的关系。包图用于描述系统的分层结构,是将大系统拆分为小系统的工具,可以帮助理解与维护系统。
社保系统中的类图模型之一,即帐务管理部分的类图模型如图3.3所示。社保系统中的帐务管理部分一共包含基金总帐、实收帐、应收帐、住院基金、风险基金、个人帐户、住院费用单以及门诊费用单、购药费用单、参保职工、参保单位、缴费凭证等12类对象。其中的类对象实收帐和应收帐都是基金总帐的一部分,它们之间的关系是整体与部分的关系,是一种组成关系。同样的,住院基金、风险基金和个人帐户与实收帐之间的关系也是一种组成关系。住院基金和住院费用单是一种带约束的一对多关系,即如果费用单金额之和超过定额支付数,则只支付定额数。同样的,风险基金和住院费用单的关系也是一种带约束的关系。
(作者单位:廊坊师范学院)
1.社保系统中的UML2.0应用分析
UML2.0建模语言采用图形表示法。在社保系统设计中,笔者利用UML2.0技术手段实现了保险管理信息系统领域建模的基本过程,大大提高软件开发周期各阶段之间表示的一致性,缩小开发各阶段之间的间隙。UML2.0以对象为单位进行分割、包装,提高了组件重用率,使整个社保系统的可重组性明显增加。
在社保管理信息系统的UML2.0建模中,经过了开始、细化、构造和交接等几个阶段。在UML2.0建模的开始阶段,根据用户提出的需求产生角色及使用案例,并采用使用案例框图进行可视化描述,清晰的表达了用户系统的真实目标;在细化阶段,首先要进一步分析开始阶段产生的使用案例模型,对使用案例低层要求进行详细描述,包括使用案例的处理流程,使用案例中涉及的角色、对象,并用交互框图描述出所有角色对象之间的详细交互活动及对象本身的状态变化,用类框图显示要建立的类对象及其相互关系;构造阶段和细化阶段类似,是围绕使用案例来进行的。该阶段根据已有的工作基础,设计出组件和组件框图,自下而上建立一个完整的系统模型,并通过一系列迭代过程来构造实际可用的系统。每一次迭代开发都是一个小项目,每一个小项目完成后,就向用户演示,并完成局部系统测试,证明已正确实现了用例要求的功能。待全部小项目完成时,进行整体的测试集成。移交阶段的任务是将设计完成的软件产品交给用户,接受用户的检测,并完善设计文档的存档。
2.UML2.0在社保系统中的使用案例模型
根据UML2.0建模的几个基本阶段划分,可以看出,使用案例是系统建模的关键。下面给出社保系统利用UML2.0建模时,使用案例模型的相关分析。
本节分析UML2.0建模中的第一类图,即用例图,它包括用例(USERCASE)和角色(ACTOR),是用来从用户角度描述系统的功能,并指出系统各功能的操作者。USE CASE是UML2.0的核心,也是使用案例模型的重点。在传统的面向对象的系统模型中,很难明确地说明系统是怎样完成其目标的,这是由于系统在执行特定的任务时,并没有一条主线。而在UML2.0中,因为USE CASE定义了系统的行为,它实际上就是一条这样的主线。USE CASE在软件开发的需求、分析、设计、实现、测试几个核心流程中扮演着非常重要的角色。其中用例图描述的社保系统一共包括38个使用案例和29个角色。图1所示为社保系统中参保人员就诊与费用结算处理的USE CASE模型框图。
图1描述了社保系统中的5个用例和3个角色。5个用例是:看病、参保身份验证、处方单费用计算、药品准入验证、付款和欠费处理,而其中的参保身份验证和药品准入验证属于《Use》用例,欠费处理则是《Extends》用例。3个角色是就诊者、医生和支付系统。
3.社保系统中相关对象的顺序图、合作图和活动图模型
本节分析UML2.0建模中的第三类图,即交互图和活动图。交互图包括顺序图和合作图,用来描述对象间的交互关系。其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互。合作图与顺序图相似,也描述对象间的协作关系与动态合作关系。但两者有侧重,如果强调时间顺序,则使用顺序图,如果强调上下级关系,则选择合作图。
活动图,用来描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态,以及事件发生时状态的转移条件,它是对类图的补充。在实用上,往往并不需要为所有的类画状态图,通常仅为那些有多个状态且其行为受到外界环境的影响而发生改变的类画状态图。由于活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别、表达和进行活动。
社保系统中共有顺序图、合作图和活动图50多张。其中对象之间动态协作关系的顺序图描述如图1所示。
顺序图模型非常直观地展示了对象之间传送消息的时间顺序,反映了对象之间的一次特定的交互过程。在本系统中,就诊者对象向医院门诊发送参保身份验证的消息,门诊完成身份验证后便向医生对象发送就诊人看病的消息,医生看病开处方单后,向处方单对象发出保存处方单的消息,处方单对象完成保存工作,并同时对处方单进行药品准入验证,然后向支付系统发送处方单费用计算的消息。支付系统完成处方单费用计算后,通知就诊人付款。整个过程是顺序完成的。其它交互图描述从略。
4.社保系统的类图模型
类图,是静态图的一种。而静态图是UML2.0建模中的第二类图。类图通常显示了一组类、接口和协作以及它们之间的相互关系。类图在面向对象的建模设计中是很常用的。类图能有效表示系统中的类以及类与类之间的关系,它是对系统静态结构的描述。因此,我们常利用类图来阐明系统的静态设计。类与类之间有多种连接方式(或称关系),比如关联(彼此间的连接)、依赖(一个类使用另一个类)、通用化(一个类是另一个类的特殊化)或打包(多个类聚合成一个基本元素)。
由于类图描述系统中类的静态结构,表达了系统在一个稳态必须满足的对象间的关系。所以,类图描述的这种静态关系,在系统的整个生命周期都是有效的。
对象图也是静态图的一种,它是类图的实例,几乎使用与类图完全相同的标识,不同点在于对象图显示的是类的多个对象实例,而不是实际的类。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。
静态图还有一种结构形式是所谓的包图,包图由包或类组成,表示包与包之间的关系。包图用于描述系统的分层结构,是将大系统拆分为小系统的工具,可以帮助理解与维护系统。
社保系统中的类图模型之一,即帐务管理部分的类图模型如图3.3所示。社保系统中的帐务管理部分一共包含基金总帐、实收帐、应收帐、住院基金、风险基金、个人帐户、住院费用单以及门诊费用单、购药费用单、参保职工、参保单位、缴费凭证等12类对象。其中的类对象实收帐和应收帐都是基金总帐的一部分,它们之间的关系是整体与部分的关系,是一种组成关系。同样的,住院基金、风险基金和个人帐户与实收帐之间的关系也是一种组成关系。住院基金和住院费用单是一种带约束的一对多关系,即如果费用单金额之和超过定额支付数,则只支付定额数。同样的,风险基金和住院费用单的关系也是一种带约束的关系。
(作者单位:廊坊师范学院)