◆陈少晖
用例建模在校园E淘系统需求分析中的应用研究
◆陈少晖
需求分析是软件系统开发中至关重要的一个阶段,它关系到整个项目的成败。本文以校园E淘系统为例,采用UML技术中用例建模技术对系统需求进行建模,展示系统的功能需求,为后续的设计与实现阶段提供参考依据。
需求分析;UML;用例建模
需求分析是软件系统开发中至关重要的一个阶段,它关系到整个项目的成败。需求分析的任务是确定系统提供什么功能,能够为用户解决什么问题,需求分析阶段形成的需求分析规格说明,是后续的系统设计与实现起到指导作用,因此,需求分析是软件开发过程中不可缺少的一个环节,也是起到关键性的一个关节。本文以校园E淘网系统为例,使用UML建模技术中用例建模对系统功能需求进行建模,以用例图来展示系统的功能及用例之间的交互关系,以用例规约来对用例进行描述说明。
UML(Unified Modeling Language),是用来对软件系统进行图形化描述的一种语言,它支持从软件需求分析到设计实现的整个过程,每个过程提供了不同的模型化和可视化支持[1],如需求分析阶段可以采用用例图建立系统功能模型;设计阶段可以用类图来描述系统中的类、接口以及他们之间的静态结构关系,因此类图是显示系统的静态结构模型;状态图是描述实体在某个事件的作用下而做出相应反应的动态行为。这些模型图从不同的角度描述了系统的各个行为状态[2]。
用例(Use Case)即指功能,用于描述系统提供的功能服务。使用用例来描述系统功能需求的过程称为用例建模[3]。用例建模是从用户的角度分析考虑问题,系统分析人员通过调查与分析,获取用户的需求描述并详细记录下来,整个过程不考虑系统的内部结构设计,做到需求与设计分离,目的在于系统分析人员与用户之间建立需求的共同理解,排除一些用户模糊不清的、不可实现的需求,进一步达到准确无误地描述需求。
用例建模主要包括用例图和用例规约。用例图用于描述系统的功能,用例规约用于对用例图中的每个用例进行详细的文本说明。
用例图包含参与者、用例和它们之间的关系。下面是用例图中的各个元素的介绍。
(1)参与者(Actor)。参与者是与被定义系统发生交互的外部实体(指人、事物或者其他系统扮演的角色),代表系统的使用者或使用环境,它们以某种方式参与用例的过程。
(2)用例(Use Case)。用例表示一个或多个参与者为实现特定目标而执行的操作,它是对系统的用户需求(主要是功能需求)的描述,表达了系统的功能和提供的服务。
(3)用例间关系。用例除了与其参与者发生关联外,还可以与用例存在泛化、包含和扩展关系。用例泛化类似于类间的泛化,子用例表示父用例的特殊形式。包含关系是指包含提供者用例的行为到客户用例的事件中。扩展关系是把新行为插入到已有用例的方法。
用例图是整体上描述了系统提供的功能服务,对于每个功能服务的详细说明需要通过用例规约来说明,用例规约主要包括以下描述内容:用例简要说明、前置条件、事件流和后置条件。
用例简要说明是介绍用例的作用和目的。
前置条件是执行该用例之前系统应处于的状态。
事件流是执行用例的一系列活动步骤,用于相应参与者的服务请求。
后置条件是执行完该用例系统进入的下一状态。
3.1需求描述。每一年各高校离校大学生众多,留下了很多资源,这些资源如果管理不妥当,将会造成资源的浪费,还给环保带来负面影响。例如路由器、鼠标、键盘、书籍、服饰等,毕业生在离校时为了减轻行李的负担,往往会处理掉这些物件,高校到毕业季时校园路边会出现一些摆摊,卖方不仅有毕业生,还有在校生因为对时髦、新潮产品有强烈的追求,新产品的不断更新刺激了消费需求,现有的产品迅速变为二手商品而急于出售。摆摊不仅影响到校园交通舒畅,夏天的炎热天气会让人感觉很不舒服,如果不摆摊售卖物品,有存在“留之无用,弃之可惜”,同时将其丢弃将会造成资源浪费,如果想要送人又不知道谁需要,因此,需要这样的一个平台,能够将这些物件发布在平台上并留下联系方式,有需要的同学可以浏览该平台,找到需要的用品。校园E淘网给学生提供了这样一个便利的平台,能帮助学生处理物品,减少不必要的资源浪费。
校园E淘网除了能帮助学生处理二手物品之外,还能给师生们提供方便快捷购物平台。该平台提供品种众多的商品,满足师生日常生活消费需求。在平台上面交易双方可以选择网上订购,线下验货、线下支付。
校园E淘网是一款为满足校园师生日常生活消费需求和社交需求的开放式购物平台,该平台将广大师生与周边商家紧密联系起来,为师生提供一个方便快捷的信息获取和网上购物平台。
3.2用例图。下面以校园E淘网为例,描述用例建模的过程。
校园E淘网的主要参与者有卖家和买家(主要由师生构成)以及管理员,不同的参与者给予不同的权限,下面就学生买家为例,买家登录系统后,在浏览网站查看商品信息,可以通过搜索功能寻找想要买的商品,并能查看商品详情,对于需要更深入了解的商品可以咨询卖家,满意的商品加入购物车或直接下单,用户可以对已购买的商品进行评价。对应的用例图如下所示:
图1 买家购买商品用例图
3.3用例规约。以搜索商品用例为例,编写用例规约如下:用例名:搜索商品。
参与者:买家、卖家。
用例简述:该用例规定了买家和卖家通过在搜索栏中输入商品相关信息寻找商品的处理过程。
涉众及兴趣:买家和卖家希望能快速找到想寻找的商品。
前置条件:买家和卖家通过账号和密码验证成功登录进入系统。
事件流:
基本流:①买家和卖家(下称为用户)在登录进入系统后,选择在搜索栏中输入寻找商品的相关信息后,点击搜索按钮;②系统响应点击事件,显示搜索的商品信息界面。
备选流:如果在用户输入的商品信息不存在,则显示未搜到商品。
后置条件:显示搜索结果页面。
用例建模是面向对象建模中常用的一种技术,是帮助用户与系统分析人员达成共识的一种工具,本文结合校园E淘网中的应用阐述了用例建模的过程,使用用例图来描述系统提供的功能服务,使用用例规约来对用例进行补充说明。
[1]张海藩.软件工程导论(第5版) [M].清华大学出版社, 2009.
[2]UML基础与rose建模教程,蔡敏等著,人民邮电出版社,2006.
[3]谢星星.UML基础与Rose建模实用教程.清华大学出版社,2011.
(作者单位:海南软件职业技术学院)