通过识别的参与者,对需求进一步分析,将业务需求进行分解,获得每个参与者的使用用例。在本例中,我们可以得到以下用例:
1.书籍借出:提供借阅物理书刊的功能。
2.书籍归还:提供归还物理书刊的功能。
3.读者办卡:提供为读者办理借阅卡的功能。
4.预定书刊:提供对某一个种类的书刊的预约功能。
5.取消预定:提供对预定进行取消的功能。
6.书籍查询:为读者提供网上的书籍查询功能。
7.信息查询:为读者提供信息查询的功能。
8.读者信息维护:提供读者信息的录入、修改、查询、删除的功能。
9.书刊信息维护:提供物理书刊的录入、修改、查询、删除的功能。
10.条目信息维护:提供书刊条目的录入、修改、查询、删除的功能。
11.系统信息维护:提供对系统的参数的设置。
12.登录:管理员需要先登录才能进入系统。
并且,可以画出如下系统用例图:
通过用例图,可以对系统功能有一个大概的了解,对于复杂系统,我们可以结合IDEF方法,通过分层分解,逐步细化的方法来描述系统的功能。对于用例图,建议不要画的过于复杂,特别是用例之间的关系,因为复杂的用例图不仅不能让需求分析人员与客户之间更好的沟通,反而是制造了一种沟通障碍。
下一步就是编制每一个用例的详细说明,对用例说明的主要信息包括有:用例名称、编号、用例的简短描述、用例的参与者、与其他用例的管理、用例启动的前提条件、用例结束后的事后条件、用例的输入、输出、用例的执行事件流等。在实际项目中,我们并不一定要面面俱到,而是根据实际情况对用例描述进行裁减。其中有几点重要信息是不能裁减的:用例名称、描述、输入、输出、执行事件流、参与者。另外,如果实际情况需要,还可以使用MS Visio等工具画出界面的示意图来。
如上例所述,我们对每一个用例都进行详细的描述,建立当前系统的功能用例模型。需求沟通与分析是一个迭代的过程,通过与用户的不断沟通,最终达成对目标系统的一致理解。如果用户确认了需求分析的成果,一般是需求规格说明书之后,项目开始进入系统分析设计阶段,也就是开始构造目标系统的逻辑模型。
为了让系统设计能够以结构、组织方式和代码重用的形式表现出来,要对系统进行设计规划,设计阶段应该与分析阶段交迭。需求是不断地发展,而设计本身也会推动需求的发展(反之亦然) 。在图书馆管理系统的建模设计中,以下3个方面的问题是要关注的:业务对象的表示、业务服务的实现、用户界面的组织。
业务对象的表示
在图书馆管理系统系统中,业务对象主要是数据库和数据实体类的表示方式。建模时,可以构造出系统的静态模型,也就是系统类图来表示。如下图则描述了借书这一用例的静态结构图。为了体现类之间的关系,在下图中没有显示出每一个类的属性和基本操作。
业务服务的实现
业务服务的实现需要完成的功能是各种业务规则和逻辑的实现,如借书处理的业务逻辑。每个模块的信息录入、修改、删除、查询等。业务规则和逻辑的实现基本相似,没有太多的规律可循。采用UML来进行业务服务的建模,可以使用UML 的序列图、状态图、活动图。这个部分的工作,通常通过一系列的类之间的交互来完成。为了在更动态的层面上描述系统,UML 提供了许多其他类型的图。
对于B/S系统设计而言,情节图(Scenario Diagram) 特别有用。情节图分成两种:协作图(Collaboration Diagram) ,序列图(Sequence Diagram) 。UML 建模工具Rational Rose 能够从协作图生成序列图也可以从序列图生成协作图。例如,借阅书刊的业务过程可以采用如下序列图来描述:
借阅书刊过程主要包括:管理员选择“借阅书刊”菜单,弹出对话框,管理员输入书刊信息和用户信息,系统查找数据库,是否存在该种物理书刊,如果不存在,显示提示信息,用例结束;是否存在借阅者信息,如果不存在,显示提示信息,用例结束;否则,管理员单击确认按钮后,该图书借阅给该借阅者,系统存储借阅信息到数据库。
文章来源于领测软件测试网 https://www.ltesting.net/