一种基于UML的面向对象的软件需求分析方法.docx

上传人:b****6 文档编号:5586945 上传时间:2022-12-28 格式:DOCX 页数:8 大小:701.53KB
下载 相关 举报
一种基于UML的面向对象的软件需求分析方法.docx_第1页
第1页 / 共8页
一种基于UML的面向对象的软件需求分析方法.docx_第2页
第2页 / 共8页
一种基于UML的面向对象的软件需求分析方法.docx_第3页
第3页 / 共8页
一种基于UML的面向对象的软件需求分析方法.docx_第4页
第4页 / 共8页
一种基于UML的面向对象的软件需求分析方法.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

一种基于UML的面向对象的软件需求分析方法.docx

《一种基于UML的面向对象的软件需求分析方法.docx》由会员分享,可在线阅读,更多相关《一种基于UML的面向对象的软件需求分析方法.docx(8页珍藏版)》请在冰豆网上搜索。

一种基于UML的面向对象的软件需求分析方法.docx

一种基于UML的面向对象的软件需求分析方法

一种基于UML的面向对象的软件需求分析方法

1引言

UML(Unified-ModelingLanguage,统一建模语言)又称标准建模语言,其为软件开发的所有阶段提供模型化与可视化支持,可应用于面向对象开发系统产品的说明、可视化与编制文档过程。

该语言于1994年由GradyBooch、JimRumbaugh、IvarJacobson联合开发,因其定义良好、易于表达、功能强大等特性,已成为OMG(ObjectManagementGroup,对象管理组织)的一项标准[1]。

软件需求分析阶段是软件开发的第一步,也是最重要的一步。

该阶段应明确系统目标,将用户对于软件的一系列意图、想法转变为软件开发人员所需要的有关软件的技术规格,并由此实现用户和开发人员之间的有效通信。

传统的软件需求分析通过结构化方式,通过功能分解描绘整个系统的组成,将各功能分解为相应功能模块,如图1所示。

其主要缺点为:

(1)缺少用户与系统交互行为的描述;

(2)设计和需求容易混淆;

(3)系统功能所在的应用环境被分割,无法直接描述系统功能之间关联。

UML作为一种沟通工具,可以应用于软件开发的整个流程中,包括需求分析阶段、系统分析与设计阶段、系统开发阶段及系统测试阶段等,供用户、需求分析师、设计人员、程序员和测试人员等相关人员共同使用。

在使用UML进行需求分析时,将信息抽象成对象进行分析,从而直观、形象、严谨地描述出业务概念、业务流程、用户的期望和需求,为需求分析及相关人员提供更清晰、明确的目标,从而建立其与用户沟通的良好桥梁。

UML具有以下优点:

(1)便于系统相关人员之间的无障碍交流,提高沟通效率;

(2)易于响应变化,在发生需求变更时,快速、清晰地识别出影响点;

(3)能够为软件设计提供良好支持,使设计成品与业务流程更加连贯、合理、有逻辑性,模块及功能之间的耦合关联更加清晰。

2UML图形工具

UML中常用的图有九种,包括用例图、类图、对象图、顺序图、协作图、状态图、活动图、构件图和部署图等,在需要分析阶段主要用到用例图、活动图、序列图等。

2.1用例图

该类图从用户角度描述系统的静态使用情况,展现用例、参与者(或角色)、系统以及其之间的关系。

该类图从用户角度描述系统的功能,并指出各个功能的执行者,有助于分析人员理解系统的行为,从而实现对系统功能宏观的、整体的描述。

该类图用参与者、系统边界、用例、关联等元素进行表达。

2.2活动图

该类图是一种表述过程基理、业务过程以及工作流的技术。

其本质是一种流程图,用于描述一个活动到另一个活动的控制流,通过展现参与行为的类的活动或动作,实现对业务过程、工作流的图形化建模。

该类图用起点、判断、并发线程、活动状态、状态转移、终点等元素来表达。

图1:

结构化软件需求分析方法

图2:

针对非法入侵人员的业务用例

2.3序列图

该类图是一种以时间为序的表示方法,其将用户的交互方式表示为二维图,用于描述对象之间的时间顺序。

序列图的主要用途是把用例表达的需求细化为一个或多个序列图,实现需求的更加正式层次的精细表达,并能够在设计系统功能的同时记录新系统与存在系统的对象的交互。

3UML的应用

软件需求分析过程分为需求调研、业务建模、需求定义三个阶段。

下面以本人参与的某AI周界监控系统为例,详细介绍利用UML进行面向对象的需求分析的过程。

阶段1:

需求调研阶段,该阶段通过与系统用户沟通,通过文档研究、问卷调查、访谈、观察、开会等方式分析系统涉及的问题领域,并通过原型法的方式明确系统运行的主要任务。

表1:

系统业务执行者表

表2:

系统执行者表

图3:

针对非法攀爬围栏活动的现状业务序列图

图4:

改进的业务序列图

图5:

系统用例图

图6:

非法人员入侵告警处置活动图

在本阶段,该AI周界监控系统的需求分析人员通过与用户访谈、开会获取了用户的业务需求背景,具体如下:

该系统应用部署于周界监控场景,利用部署于周界的光学摄像头进行实时监控,自动识别人、车等异常目标,及时对非法入侵现象进行报警,并将报警信息实时回传至值班室;同时,系统还应具备视频回看功能,存储相关现场视频与图像,供值班室工作人员迅速定位回溯相关视频节点,对报警现象进行人工确认。

目前现存系统的问题为:

主要依靠人工巡视和人工查看监控视频等方式发现异常情况,存在监控盲区和人工视觉疲劳状况,易造成不明身份人、车等目标闯入禁区但未被及时发现的现象。

在了解业务背景和业务场景后,通过和用户沟通,需求分析人员进一步明确了业务需求,并将其转换为算法需求,实现对系统能力需求的扩展。

在本过程中,由于AI识别算法的性能与样本特点、目标类型、样本量紧密,相关需求分析人员对算法需求进行了明确:

将用户提的需求“识别人、车辆目标”确定为人、车识别及车辆类型识别需求,并明确车辆类型包括:

小汽车、面包车、公交车、卡车等4类;将用户提的需求“非法入侵现象报警”的需求明确为3类:

(1)人员、车辆进入禁区;

(2)人员攀爬周界围栏;

(3)人员翻越周界围栏。

通过算法需求的明确,实现了用户需求和系统任务的进一步确认。

阶段2:

业务建模阶段,该阶段主要通过识别业务执行者(即组织之外与组织交互的其他组织)、业务用例,并利用活动图、时序图详述业务用例,建立业务对象模型。

(1)识别业务执行者。

在本系统确定业务执行者过程中,需求分析人员通过分析确定本系统的组织为XX周界管理组织,通过聚焦组织边界外部确定了业务执行者,包括:

入侵人员、入侵车辆等,其与业务系统之间为被动交互;同时,通过聚焦组织内部确定了业务工人,包括监控值班人员和巡逻值班人员等。

具体见表1。

(2)识别业务用例。

业务用例图的研究对象为用户组织,参与者为业务执行者,主要用于在业务建模阶段从用户的角度定位系统应该提供的价值。

本系统中,在确定系统业务执行者的基础上,需求分析人员识别确认了业务用例,其中,针对入侵人员的业务用例如图2所示。

(3)建立业务对象模型。

该过程通过构建现状业务序列图,分析确定当前业务处理的痛点,并明确对现状的改进之处,得到改进的业务序列图。

在本系统中,需求分析人员对系统的现状业务序列图进行了分析。

其中,针对非法入侵人员非法攀爬周界围栏活动的现状业务序列图如图3所示。

通过分析可知,针对非法攀爬围栏活动的业务处理痛点为:

当前的监控系统自动化程度太低,人工参与告警、处置过程全靠人工参与,因此,对该业务序列图进行改进,如图4所示。

阶段3:

需求定义阶段,识别系统执行者,并根据系统执行者确定系统用例,通过系统用例组织需求,并通过关系调整用例。

系统用例图主要是用于系统建模的阶段,目的是从系统的角度来定位系统应该提供的价值,系统用例图研究的对象是甲方系统,其参与者是系统执行者,即系统外与系统发生功能性交互的其他系统(或人)。

在本AI周界监控系统中,系统执行者分析结果如表2所示。

其中,根据系统业务序列图分析,系统用例图如图5所示。

基于系统用例和系统愿景,需求分析人员完成用例的细化,在此不在赘述;进而利用活动图进行每个用例的细化,本AI监控系统对非法人员入侵告警活动图如图6所示。

通过对每个系统用例进行细化,完成对系统用例的需求分析。

在此基础上,需求分析人员综合分析结果完成需求文档的编写。

4总结

在某AI周界监控系统的需求分析过程,基于UML的面向对象软件的需求分析步骤和方法,通过采用UML的多种技术,使分析人员能从业务的角度完整地把握客户的需求,并于客户达成共识。

通过该分析过程,能有效地保证需求工作的质量,大大提高沟通的效率和深度,并减少需求变更带来的影响。

在此基础上,需求分析人员可以方便快速地编写需求分析文档,完成需求分析过程。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1