UML是集多种面向对象方法的优点于一身的统一建模语言,通过UML可以解决开发过程中存在的一些问题。包括解决人员交流的障碍,响应需求的变化,利于构件的复用,保证软件项目开发周期等。采用 UML进行需求分析,主要是通过用例模型来捕获和组织用户的需求,通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。
2006年5月,我参与了某区贸工局的电子政务系统的开发,在需求分析过程中采用了基于用例的需求分析方法,取得了良好的效果。在用例建模过程中,通过识别系统参与者合并需求获得用例并绘制用例图,进行用例分解及细化用例描述等步骤,及各步骤间的循环反复,成功完成了需求分析,需求描述也得到用户的认可。当然,由于使用该方法还不很成熟,各种方法及工具的集成度还不高,未能充分发挥其作用。在项目中,我担任系统分析员,主要负责系统分析和系统设计工作。
2006年5月,我参与了某区贸工局的电子政务系统的开发,项目历时七个月,于 2007年 1月正式上线。项目组成员共7人,在项目中,我担任系统分析员,主要负责系统分析和系统设计工作。
区贸工局已有近十年的信息系统使用经验,在本系统开发时,该局除一套采用 VB+SQLServer2000开发的二层c/s 结构的核心业务管理系统外还有多套业务系统和数据交换系统,主要有:外资审批管理系统、加工贸易电子数据交换平台、加工贸易联网监管电子数据交换系统以及电子公文交换等。上述各系统基本是相互独立的,只在数据库端实现初步的数据共享,但应用的集成性很差。
区贸工局的电子政务系统是一个基于知识管理的全新的集成的管理系统,其应用范围涉及办公自动化、审批业务管理、档案管理、数据交换、互联网站等各个方面。该系统由门户网站、办公自动化和业务管理三个子系统构成。与原有的业务系统相比,区别主要体现在三个方面:一是全新的体系结构,二是集成性,全面集成原有的各业务系统及数据交换系统,三是以知识管理为主要特征的应用层次上的全面提升,对业务审批的全过程进行监督管理,引入审批要点对相关业务进行智能辅助审批。
在核心的业务管理子系统的开发过程中,考虑到传统结构化开发方法的局限性和软件本身的易复用性、易扩展性和可维护性,以及可能面对的需求变化,我们在开发时采用了面向对象的方法。UML是集多种面向对象方法的优点于一身的统一建模语言,它使用统一的表示法,呈现一致的风格,通过 UML可以解决开发过程中存在的一些问题。首先,UML解决了人员交流的障碍。它提供了一套通用的思维方式和交流的语言,既有助于分析人员与用户的交流,又有助于分析人员与设计人员的交流。其次,利于响应变化。分析人员可以将对象作为构筑系统的基本单位,将容易发生变化的属性和操作封装在对象之内,对象之间通过接口联系,使得需求变化的影响尽可能限制在对象的内部。其次,便于构件的复用。集成UML思想构建的系统模型能很好地支持软件复用,类可以派生子类,类又可以产生实例对象,而对象具有封装性和信息隐蔽性,这就实现了对象类的数据结构和操作代码的软构件的复用。最后,因开发人员的方法、工具及经验的差异,往往造成较大型或是较复杂的软件项目开发周期得不到保证。
若运用 UML 进行系统的分析设计,利用规范化的表达方式及优秀的 CASE 工具,问题可以得到较好的解决。采用UML 进行需求分析,主要是通过用例模型来捕获和组织用户的需求,通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。在用例建模过程中,首先是识别系统参与者,然后合并需求获得用例,并绘制用例图,最后进行用例分解及细化用例描述。
1.识别参与者。我们从三个方面分析系统的参与者,一是系统的直接使用者,二是系统的管理维护人员,三是外部相关的软硬件系统或人员。
系统直接使用者即是使用业务系统的相关业务人员。根据业务岗位,分别有收文、录入、打印、窗口(一级)审批、科长(二级)审批、局长(三级)审批等角色,另外还有派单(针对个别不由系统自动分派任务的情况)、审批检查、查询统计和科室管理(执行科室内人中角色的分派、业务智能审批定义等)角色。
系统管理维护人员,主要进行科室管理员的角色分派以及系统相关初始数据的设定等工作。
外部相关的软硬件系统,即与业务系统进行交互的一些外部系统。包括了外资审批管理系统、加工贸易电子数据交换平台、加工贸易联网监管电子数据交换系统、电子监察系统、门户网站、办公自动化系统以及系统时钟等,其中门户网站和办公自动化系统虽是整个电子政务系统的一部分,但相对于业务子系统来说属于外部系统。外部相关人员即申办各类业务的企业办事人员
2.合并需求获得用例,绘制用例图。
在确定了参与者后,分析每一个参与者希望系统提供什么样的功能,为参与者确定用例。之后画出用例图,通过用例图描述系统包含的参与者、用例以及两者之间的对应关系。
3.用例分解及细化用例描述。
绘制初步的用例图后,还需对用例予以细化,编写用例规约,或是根据情况进行用例分解。用例规约规定了系统需要完成哪些步骤才能实现用例的功能,主要包括前置条件、后置条件和事件流。前置条件指明了执行用例之前系统须处于的状态,后置条件指明用例执行完毕后系统可能处于的一组状态。事件流描述用例执行的步骤,它又包括基流、分支流和替代流。基流描述用例执行的基本步骤,没有分支和选择,分支流描述用例在执行中根据不同条件或不同选择而可能执行的步骤,替代流描述用例在执行中因异常或偶尔发生的一些情况而执行的相应替代步骤。其中基流是必需的,分支流和替代流是可选的。
整个用例的分析及用例图的绘制,需循环执行上述各步。通过参与者及其需求识别用例,通过用例(图)反过来印证识别出的参与者,对用例进行细化描述,如该描述较复杂则对用例进行分解。这样识别参与者和识别用例交替进行,并结合用例的细化与分解,直到识别出的用例能够涵盖用户需求,且用例的细化粒度以在用户较容易理解的范围。下面以较典型的“外商投资企业设立”模块的用例图加以说明。
首先根据参与者及相关业务需求,识别出“业务收文”“业务审批”“业务指派”“信息录入”“查询”“数据写监察系统”“外资审批管理系统数据读写”等七个用例接着又对照系统参与者检查每一个用例,我们发现在“业务收文”漏了与门户网站子系统的交互,即企业先在网站预录入资料的收文受理没有考虑,因此加入了“门户网站子系统”这一参与者,并添加相关事件(分支)流。然后,根据用户需求,对部分用例进行细化与分解,从“业务收文”中又进一步分出“补交资料受理”(即首次收文时资料不全或不全要求时企业补交资料的受理),“信息录入”中进一步分出“企业资料存档”(即企业负责人签名等若干重要原始资料的扫描存档)“业务审批”细分为“一级审批”“二级审批”“三级审批”,“一级审批”当中再分解出“补交告知”“数据写监察系统”用例的事件流则最复杂,分别与“业务收文”(发送“受理”状态及可选的“补交受理”状态)“一级审批”(发送“承办”状态及可选的“补交告知”状态)“外资审批管理系统数据读写”(在外资系统打印批文后,发送“审核”“批准”“办结”状态)等三个用例相关。
我们使用基于UML的需求分析方法,取得了比较好的效果,特别是相对于传统的需求分析与描述方法其优点是明显的。但由于我们使用该开发方法还不很成熟,在开发过程中也出现了一些问题。一是 UML 各图形的组合使用问题。用例分析的方法和用例图无疑是需求分析的有力工具,但光是进行用例分析还不足够,如能很好地结合类图和活动图等图形,则会对需求的分析和描述起到很好的辅助作用。另外就是UML与相关工具及开发方法的结合使用问题。UML 并不是一套独立的方法或工具,要充分发挥 UML 的效用,还须结合统一开发过程以及 ROSE 等相关CASE 工具,而在此方面我们还有明显的不足。由于开发大型项目较少,因此还很少使用统一开发过程,CASE 工具的使用也还未达到系统化,这都限制了UML方法的效果。另外,由于传统的结构化开发方法的思维习惯,我们在用例识别过程中
有时还会按照DFD图的思维进行思考。针对在项目开发过程中暴露出的问题,我们以渐进的方式改进我们的开发过程,向统一开发过程靠拢,改善开发环境,逐步购置、逐步消化使用 CASE 工具,提高个人的开发水平,深入学习掌握面向对象思想和方法及 UML等各类相关CASE 工具。我们不能指望通过一两个项目就完全掌握相关工具和方法,不论组织还是开发者个人,使用先进方法和工具的过程都是一个循序渐进的过程
编写于:2024/11/8 13:44:57
发布 IP 属地:广东省深圳市
版权声明
阅读:66 点赞:0 留言:0
UML是集多种面向对象方法的优点于一身的统一建模语言,通过UML可以解决开发过程中存在的一些问题。包括解决人员交流的障碍,响应需求的变化,利于构件的复用,保证软件项目开发周期等。采用 UML进行需求分析,主要是通过用例模型来捕获和组织用户的需求,通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。
2006年5月,我参与了某区贸工局的电子政务系统的开发,在需求分析过程中采用了基于用例的需求分析方法,取得了良好的效果。在用例建模过程中,通过识别系统参与者合并需求获得用例并绘制用例图,进行用例分解及细化用例描述等步骤,及各步骤间的循环反复,成功完成了需求分析,需求描述也得到用户的认可。当然,由于使用该方法还不很成熟,各种方法及工具的集成度还不高,未能充分发挥其作用。在项目中,我担任系统分析员,主要负责系统分析和系统设计工作。
2006年5月,我参与了某区贸工局的电子政务系统的开发,项目历时七个月,于 2007年 1月正式上线。项目组成员共7人,在项目中,我担任系统分析员,主要负责系统分析和系统设计工作。
区贸工局已有近十年的信息系统使用经验,在本系统开发时,该局除一套采用 VB+SQLServer2000开发的二层c/s 结构的核心业务管理系统外还有多套业务系统和数据交换系统,主要有:外资审批管理系统、加工贸易电子数据交换平台、加工贸易联网监管电子数据交换系统以及电子公文交换等。上述各系统基本是相互独立的,只在数据库端实现初步的数据共享,但应用的集成性很差。
区贸工局的电子政务系统是一个基于知识管理的全新的集成的管理系统,其应用范围涉及办公自动化、审批业务管理、档案管理、数据交换、互联网站等各个方面。该系统由门户网站、办公自动化和业务管理三个子系统构成。与原有的业务系统相比,区别主要体现在三个方面:一是全新的体系结构,二是集成性,全面集成原有的各业务系统及数据交换系统,三是以知识管理为主要特征的应用层次上的全面提升,对业务审批的全过程进行监督管理,引入审批要点对相关业务进行智能辅助审批。
在核心的业务管理子系统的开发过程中,考虑到传统结构化开发方法的局限性和软件本身的易复用性、易扩展性和可维护性,以及可能面对的需求变化,我们在开发时采用了面向对象的方法。UML是集多种面向对象方法的优点于一身的统一建模语言,它使用统一的表示法,呈现一致的风格,通过 UML可以解决开发过程中存在的一些问题。首先,UML解决了人员交流的障碍。它提供了一套通用的思维方式和交流的语言,既有助于分析人员与用户的交流,又有助于分析人员与设计人员的交流。其次,利于响应变化。分析人员可以将对象作为构筑系统的基本单位,将容易发生变化的属性和操作封装在对象之内,对象之间通过接口联系,使得需求变化的影响尽可能限制在对象的内部。其次,便于构件的复用。集成UML思想构建的系统模型能很好地支持软件复用,类可以派生子类,类又可以产生实例对象,而对象具有封装性和信息隐蔽性,这就实现了对象类的数据结构和操作代码的软构件的复用。最后,因开发人员的方法、工具及经验的差异,往往造成较大型或是较复杂的软件项目开发周期得不到保证。
若运用 UML 进行系统的分析设计,利用规范化的表达方式及优秀的 CASE 工具,问题可以得到较好的解决。采用UML 进行需求分析,主要是通过用例模型来捕获和组织用户的需求,通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。在用例建模过程中,首先是识别系统参与者,然后合并需求获得用例,并绘制用例图,最后进行用例分解及细化用例描述。
1.识别参与者。我们从三个方面分析系统的参与者,一是系统的直接使用者,二是系统的管理维护人员,三是外部相关的软硬件系统或人员。
系统直接使用者即是使用业务系统的相关业务人员。根据业务岗位,分别有收文、录入、打印、窗口(一级)审批、科长(二级)审批、局长(三级)审批等角色,另外还有派单(针对个别不由系统自动分派任务的情况)、审批检查、查询统计和科室管理(执行科室内人中角色的分派、业务智能审批定义等)角色。
系统管理维护人员,主要进行科室管理员的角色分派以及系统相关初始数据的设定等工作。
外部相关的软硬件系统,即与业务系统进行交互的一些外部系统。包括了外资审批管理系统、加工贸易电子数据交换平台、加工贸易联网监管电子数据交换系统、电子监察系统、门户网站、办公自动化系统以及系统时钟等,其中门户网站和办公自动化系统虽是整个电子政务系统的一部分,但相对于业务子系统来说属于外部系统。外部相关人员即申办各类业务的企业办事人员
2.合并需求获得用例,绘制用例图。
在确定了参与者后,分析每一个参与者希望系统提供什么样的功能,为参与者确定用例。之后画出用例图,通过用例图描述系统包含的参与者、用例以及两者之间的对应关系。
3.用例分解及细化用例描述。
绘制初步的用例图后,还需对用例予以细化,编写用例规约,或是根据情况进行用例分解。用例规约规定了系统需要完成哪些步骤才能实现用例的功能,主要包括前置条件、后置条件和事件流。前置条件指明了执行用例之前系统须处于的状态,后置条件指明用例执行完毕后系统可能处于的一组状态。事件流描述用例执行的步骤,它又包括基流、分支流和替代流。基流描述用例执行的基本步骤,没有分支和选择,分支流描述用例在执行中根据不同条件或不同选择而可能执行的步骤,替代流描述用例在执行中因异常或偶尔发生的一些情况而执行的相应替代步骤。其中基流是必需的,分支流和替代流是可选的。
整个用例的分析及用例图的绘制,需循环执行上述各步。通过参与者及其需求识别用例,通过用例(图)反过来印证识别出的参与者,对用例进行细化描述,如该描述较复杂则对用例进行分解。这样识别参与者和识别用例交替进行,并结合用例的细化与分解,直到识别出的用例能够涵盖用户需求,且用例的细化粒度以在用户较容易理解的范围。下面以较典型的“外商投资企业设立”模块的用例图加以说明。
首先根据参与者及相关业务需求,识别出“业务收文”“业务审批”“业务指派”“信息录入”“查询”“数据写监察系统”“外资审批管理系统数据读写”等七个用例接着又对照系统参与者检查每一个用例,我们发现在“业务收文”漏了与门户网站子系统的交互,即企业先在网站预录入资料的收文受理没有考虑,因此加入了“门户网站子系统”这一参与者,并添加相关事件(分支)流。然后,根据用户需求,对部分用例进行细化与分解,从“业务收文”中又进一步分出“补交资料受理”(即首次收文时资料不全或不全要求时企业补交资料的受理),“信息录入”中进一步分出“企业资料存档”(即企业负责人签名等若干重要原始资料的扫描存档)“业务审批”细分为“一级审批”“二级审批”“三级审批”,“一级审批”当中再分解出“补交告知”“数据写监察系统”用例的事件流则最复杂,分别与“业务收文”(发送“受理”状态及可选的“补交受理”状态)“一级审批”(发送“承办”状态及可选的“补交告知”状态)“外资审批管理系统数据读写”(在外资系统打印批文后,发送“审核”“批准”“办结”状态)等三个用例相关。
我们使用基于UML的需求分析方法,取得了比较好的效果,特别是相对于传统的需求分析与描述方法其优点是明显的。但由于我们使用该开发方法还不很成熟,在开发过程中也出现了一些问题。一是 UML 各图形的组合使用问题。用例分析的方法和用例图无疑是需求分析的有力工具,但光是进行用例分析还不足够,如能很好地结合类图和活动图等图形,则会对需求的分析和描述起到很好的辅助作用。另外就是UML与相关工具及开发方法的结合使用问题。UML 并不是一套独立的方法或工具,要充分发挥 UML 的效用,还须结合统一开发过程以及 ROSE 等相关CASE 工具,而在此方面我们还有明显的不足。由于开发大型项目较少,因此还很少使用统一开发过程,CASE 工具的使用也还未达到系统化,这都限制了UML方法的效果。另外,由于传统的结构化开发方法的思维习惯,我们在用例识别过程中
有时还会按照DFD图的思维进行思考。针对在项目开发过程中暴露出的问题,我们以渐进的方式改进我们的开发过程,向统一开发过程靠拢,改善开发环境,逐步购置、逐步消化使用 CASE 工具,提高个人的开发水平,深入学习掌握面向对象思想和方法及 UML等各类相关CASE 工具。我们不能指望通过一两个项目就完全掌握相关工具和方法,不论组织还是开发者个人,使用先进方法和工具的过程都是一个循序渐进的过程
编写于:2024/11/8 13:44:57
发布 IP 属地:广东省深圳市
版权声明
本站内容均来自网络转载或网友提供,如有侵权请及时联系我们删除!本站不承担任何争议和法律责任!
每一个童年的梦想都值得用青春去捍卫!