System Analysis and Design
Final Assignment
软件学院 2015 级
第 00 组
1
一、设计方法(design approach)
用面向对象的设计策略。用 UML 工具完成主要的系统分析设计。
1、确定设计的目的。
2、分析要达到这些目的系统需要完成哪些功能,在此基础上画用例图并写出用例规约。
3、画出类图,分析各个类之间的关系。
4、画出顺序图。
5、根据所确定的类和类之间的联系确定数据库的设计。
6、完成各个界面的大体设计。
二、设计目的和原则(design objectives and principles)
设计一个简单的体育竞赛注册系统。省联盟登记联盟信息和比赛队伍信息,查询并打印出
席比赛组的顶级信息,并可以登记比赛组完成缴费,或者取消比赛组获得退款。全国竞赛组
织可以查询并打印所有信息。
三、需求分析(requirements captured)
省联盟在注册期间需完成下列操作:
1.输入省联盟信息,如省联盟名称,地址等资料
2.登记比赛组。选择类别和级别来指定选择注册的比赛组
3.使用授权信用卡时缴纳注册费
4.注册成功后将会收到联盟编号
省联盟在注册完成后期间可以进行下列操作:
1.添加任何比赛组,并缴纳费用
2.删除任何比赛组,并在此期间退还注册费
3.省联盟都可以在登记后随时打印出席比赛组的登记记录
注:1.联盟只能取消整个(所有比赛组),只能收到原注册费半退。一旦比赛开始,将
不会退款。
2.信用卡公司与竞赛组织者使用的银行系统接口。因此,当支付费用时,资金将从信用
卡公司转入银行系统。取消登记时,如果适用,您的银行将退还给信用卡公司。在您的设计
中,确定您的系统接口与信用卡公司的两个系统和会议组织者使用的银行。(比较特别的是,
在中国,信用卡公司和银行是一体的,所以本组在设计的时候将信用卡公司与银行设计成一
个银行支付平台)
体育竞赛组织者的登记管理能够查询和打印出以下信息:
1.省联盟注册时填写的详细内容
2.省联盟登记的比赛组的详细情况以及比赛组的裁判,包括类别和级别
3.裁判所分配的比赛组
四、用例图
2
五、用例描述
注册联盟信息 用例:
用例描述:注册联盟信息
基本事件:
1、 省联盟管理者进入注册系统
2、 省联盟管理者选择注册联盟
3、 系统根据时间判断是否可以注册
4、 省联盟管理者输入联盟名称、联盟地址(文字)等信息
5、 登记比赛组信息
6、 缴纳注册费
5、 系统更新记录
6、 分配联盟 ID
7、 系统显示注册成功
备选事件:3a、系统关闭,不可注册(比赛结束,系统关闭,下同)
4a、已注册的联盟不可重复注册
6a、注册费未缴纳,注册失败
登记比赛组 用例:
用例描述:联盟管理员确认系统分配的比赛组,并通过缴费后完成比赛组的登记。
基本事件:
1、 省联盟管理者登录注册系统
2、 省联盟查看系统匹配的比赛组信息
3、 省联盟管理者选择缴费
4、 系统跳转到第三方平台等待支付
5、 省联盟管理者完成缴费
3
6、 第三方支付平台反馈支付成功
7、 分配裁判
8、系统显示登记成功
备选事件:3a、系统关闭,不可登记
6a、未完成支付反馈支付失败跳转到 3
8a、系统显示登记失败跳转到 3
--------------------------------------------------------------------------------------------------------------------------
取消比赛组 用例:
用例描述:联盟管理员取消已登记的比赛组,根据系统时间返还一定的注册费用。
基本事件:
1、 省联盟管理者登录注册系统
2、 省联盟查看已登记的比赛组信息
3、 省联盟管理者取消比赛组
4、 系统根据时间判断返还金额
5、 系统跳转到支付平台
6、 支付平台返还金额给联盟管理者
7、 系统更新记录
8、系统取消成功
备选事件:
3a、系统关闭,不可取消
4a、比赛前一个月之前,返还全部金额
4b、比赛前一个月,返还一般金额
4c、比赛开始后,不返还金额 跳转到 8a
8a、系统显示取消失败
--------------------------------------------------------------------------------------------------------------------------
查询联盟信息 用例:
用例描述:这个是查询用例。竞赛组织者或联盟管理员登入,系统根据 ID 显示相关信
息,竞赛组织者或联盟管理员可选是否打印这些信息。
基本事件:
1、 竞赛组织者或联盟管理员或裁判登入
2、 系统根据其 ID 呈现相关信息
备选事件:2a、竞赛组织者 ID 可以显示所有联盟登记信息
2b、联盟管理员 ID 可以显示本联盟登记信息、已登记参赛队、已登记参赛
组等信息
2c、裁判 ID 可以显示所有裁判主持的比赛组信息
拓展事件:竞赛组织者或联盟管理员可选则是否打印所选信息
六、类图
4
这是类图,共包含了 8 个类。其中省联盟有联赛名称、联赛 ID、联赛地址、联盟会员名称
等属性,又由于有打印登记记录功能而和登记记录类相关;有指定比赛组注册信息而与比赛
组相关。登记记录包含比赛组,裁判以及一系列费用信息,所以他与裁判类、比赛组类以及
银行支付方面都相关,当然,他本身还能提供所需信息的查询。比赛组包含组数以及比赛级
别和类别等属性;在这里,又单独给比赛类别进行了类的独立化,以使他的信息更加明显清
晰,其中,比赛级别包括初级、中级、高级三种。裁判类包含自己地址、名称,分配比赛组
和组织等信息。至于银行支付平台类,他作为第三方工具,主要涉及资金交易工程中的一系
列问题,在这里,不再作赘述。
七、顺序图
5
注册联盟信息:
登记比赛组:
取消比赛组:
6
竞赛组织者查询联盟信息:
八、Persistence data
7