用例建模范例:账户登陆

参考:http://ld19860514.blog.163.com/blog/static/39896712201037155342/

 

首先要说明的是,游戏开发需要遵照统一软件开发过程(UDP)。它是以用例驱动的,在需求分析阶段需要进行用例建模。

用例建模是需求工程的一种形式,为对象和类提供了基本来源。它具有4个部分:参与者、用例、关系和系统边界。

网络游戏用例建模涉及寻找参与者和用例,而系统边界把系统同世界其他部分区分开来。寻找角色和用例的开始,首先必须划分游戏的边界,在此将整个游戏系统作为考虑的对象,并不考虑网络通信细节和编程开发环境及其实现细节,仅从用户需要角度来看系统的功能模块。

参与者是直接与系统交互的事物所扮演的角色,角色对于系统来说是外部的。角色可以参与一个或多个用例,它通过交换信息与用例发生交互作用。参与者的描述形式如下图(摘自《C++网络游戏建模与实现》):

 

用例建模范例:账户登陆 (转) - 吾与伦比 - 吾与伦比

用例的用途是在不揭示系统内部构造的情况下定义联贯的行为。用例描述了系统具有的行为,但是没有规定怎样实现这些行为,它是从用户的角度来看系统的特定方式。

可将用例按功能划分为3个包:

用例建模范例:账户登陆 (转) - 吾与伦比 - 吾与伦比

 

‘账户登陆’是操作包的其中一个用例。因其属于网络游戏最基本的功能,所以选取它来说明开发过程。

步骤1:描述用例及其事件流

用例描述:注册用户在官方网站帐户登陆页面上输入ID和密码登陆管理个人帐户。

 

主事件流:

1.用户点击主页上的登陆按钮,开始用例。

2.系统显示登陆页面。

3.用户输入ID和密码,然后点击登陆。

4.系统验证登陆信息和数据库一致,然后回到主页。

5.用例结束。

其他事件流A1:

如果用户点击登陆页面上的提示词按钮,系统在一个单独的对话框里显示为用户储存的提示词,用户点击确定按钮,系统页面回到登陆页。

其他事件流A2:

如果用户输入了一个系统无法识别的ID,系统显示错误信息并提示用户输入一个不同的ID。

其他事件流A3:

如果用户输入了一个不正确的密码,系统显示错误信息并提示用户输入正确的密码。

其他事件流A4:

如果用户连续3次输入错误的密码,系统显示消息告诉用户无法再连接服务器,并且冻结登陆页。

步骤2:建立对象交互图

交互图描述了系统的动态行为。绘制对象交互图,首先是确定该用例所涉及的对象。从用例说明中可以分析出包括Player、主页、登陆页、提示对话框、帐户记录这几个对象,对象之间通过发送消息进行交互。下面就是“登陆帐户”的顺序图,它其实是一张表,X轴上排列着对象,Y轴上按时间顺序排列着对象之间发送的消息,最左边标明了消息所属的事件流。

对象交互图如下所示:

用例建模范例:账户登陆 (转) - 吾与伦比 - 吾与伦比

 

 

步骤3:建立概念层类图

在划分了功能模块和执行事件流后,接着就是划分出所使用的类。在面向对象设计中,类的概念是具有相同属性和方法的一组对象的集合,为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和方法两个主要部分。类在实质上定义的是一种对象类型,描述了属于该类型的所有对象的性质。在类中封装了属性,同时对外界提供了操作类内部成员的方法。

虽然在软件开发的不同阶段都使用类图,但这些类图描述了不同层次的抽象。类图分为3个层次:概念层、说明层和实现层。在需求分析阶段,类图是所研究的问题域中的概念,对应概念层;在设计阶段,类图描述类与类之间的接口,对应说明层;而在实现阶段,类图描述软件系统中的类的实现,对应实现层。

概念层的类图:

用例建模范例:账户登陆 (转) - 吾与伦比 - 吾与伦比

 

图中标明了类的种类和关系。其中,主页、提示词对话框和登陆页都是边界类,它们处理系统环境与系统内部之间的通信,为用户或另一个系统提供了接口,作为系统与外界交换信息的媒介,将系统与系统环境中的变化隔离开来;显示、验证属于控制类,它们协调实现用例的规定行为所需要的事件,封装了特定于用例的行为,而依赖于应用程序类;帐户记录属于实体类,是模拟必须被储存的信息和关联行为的类,它独立于应用程序,并可被用于多个应用程序。

步骤4:将对象交互图深化到程序级

在确定了对象类之后,便得到标明类和方法后的“登陆帐户”时序图,消息上标明了所调用的方法。见下图:

用例建模范例:账户登陆 (转) - 吾与伦比 - 吾与伦比

 

 

步骤5:得到描述了类操作的类图

下图便是描述了类操作的“账户登陆”模块类图,类中方法可与交互图中的消息对应起来。

用例建模范例:账户登陆 (转) - 吾与伦比 - 吾与伦比至此完成了初步的程序架构。

————————————————————————————————————————

以上介绍了从描述需求到程序设计的过程。其中涉及的技能不需要系统策划掌握,但需要能够理解。系统策划写的需求,要能让系统分析师整理出正确、完整的设计用例,接下来才好做程序架构。之后的测试用例也是技术人员根据设计用例编写,系统策划虽然不用写设计用例和测试用例,但是要先做用例图,并过目确定技术人员所写的用例是否和需求一致。

下图是《DIABLO》的核心用例图(摘自《游戏开发与制作》),它属于系统策划的工作范畴。很显然,总不能连游戏玩什么都让技术人员写吧......

用例建模范例:账户登陆 (转) - 吾与伦比 - 吾与伦比

猜你喜欢

转载自windshg.iteye.com/blog/850224