📄 报账系统实例.mdl
字号:
(object Petal
version 50
_written "Rose 8.2.0311.2600"
charSet 134)
(object Design "Logical View"
is_unit TRUE
is_loaded TRUE
attributes (list Attribute_Set
(object Attribute
tool "Java"
name "IDE"
value "Internal Editor")
(object Attribute
tool "Java"
name "UserDefineTagName1"
value "")
(object Attribute
tool "Java"
name "UserDefineTagText1"
value "")
(object Attribute
tool "Java"
name "UserDefineTagApply1"
value "")
(object Attribute
tool "Java"
name "UserDefineTagName2"
value "")
(object Attribute
tool "Java"
name "UserDefineTagText2"
value "")
(object Attribute
tool "Java"
name "UserDefineTagApply2"
value "")
(object Attribute
tool "Java"
name "UserDefineTagName3"
value "")
(object Attribute
tool "Java"
name "UserDefineTagText3"
value "")
(object Attribute
tool "Java"
name "UserDefineTagApply3"
value ""))
quid "46261C710261"
enforceClosureAutoLoad FALSE
defaults (object defaults
rightMargin 0.250000
leftMargin 0.250000
topMargin 0.250000
bottomMargin 0.500000
pageOverlap 0.250000
clipIconLabels TRUE
autoResize TRUE
snapToGrid TRUE
gridX 3
gridY 3
defaultFont (object Font
size 12
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
showMessageNum 3
showClassOfObject TRUE
notation "Unified")
root_usecase_package (object Class_Category "Use Case View"
quid "46261C710263"
exportControl "Public"
global TRUE
logical_models (list unit_reference_list
(object Association "$UNNAMED$0"
quid "46261ED101A5"
roles (list role_list
(object Role "$UNNAMED$1"
quid "46261ED1031C"
supplier "Use Case View::报账系统用例模型::Use Cases::登录系统"
quidu "46261D1D031C"
is_navigable TRUE)
(object Role "$UNNAMED$2"
quid "46261ED1031E"
supplier "Use Case View::报账系统用例模型::Actors::每个用户"
quidu "46261D1101F4")))
(object Class_Category "报账系统用例模型"
quid "46261F23038A"
exportControl "Public"
logical_models (list unit_reference_list
(object Class_Category "Actors"
quid "46261F59004E"
exportControl "Public"
logical_models (list unit_reference_list
(object Class "人事管理数据库"
quid "46261EE4009C"
stereotype "Actor")
(object Class "经理"
quid "46261E120242"
stereotype "Actor")
(object Class "每个用户"
quid "46261D1101F4"
stereotype "Actor")
(object Class "员工"
quid "46261E060242"
stereotype "Actor")
(object Class "内部电子邮件系统"
quid "4626B96A035B"
stereotype "Actor")
(object Class "报销系统管理员"
quid "4626B9C20109"
stereotype "Actor")
(object Class "财务人员"
quid "4626B9E500FA"
stereotype "Actor")
(object Class "系统时钟"
quid "4626BA0202FD"
stereotype "Actor")
(object Class "银行系统"
quid "4626BA1D004E"
stereotype "Actor"))
logical_presentations (list unit_reference_list))
(object Class_Category "Use Cases"
quid "46261F750261"
exportControl "Public"
logical_models (list unit_reference_list
(object UseCase "审核报销申请"
quid "46261E86034B")
(object UseCase "登录系统"
quid "46261D1D031C")
(object UseCase "调整策略"
quid "46261E6203D8")
(object UseCase "结算当月报销费用"
quid "46261EBD0186")
(object UseCase "批复报账系统"
quid "46261E4203C8")
(object UseCase "审核借款申请"
quid "46261EAE01E4")
(object UseCase "提交报销申请"
quid "46261E2101D4"
documentation
|基本事件序列(Basic Flow)
|1.打开报销单
|[员工]:员工选择进入"报销申请"功能。
|[系统]:如果该员工当月报销单存在,系统将取出相应信息并展示给员工。
|2.添加报销记录
|[员工]:员工要求添加一条报销记录
|[系统]:系统显示条空白的报销记录。
|3.填写报销记录
|[员工]:员工开始填写报销记录,每条报销记录包括的信息有:业务活动发生的时间、地点、客户名称(可选)、原因以及费用金额和种类(交通、餐饮、会议、通信和杂项)。
|[系统]:系统显示并记录员工输入的信息。为了让员工方便而准确地输入相关信息,除了客户名称、业务活动原因和金额之外,其他信息域提供相应的下拉式选择列表。
|(重复以上针对每一条报销记录的活动,直至所有记录填写完毕)
|4.验证报销单
|[员上]:员工填写完毕所有报销记录之后,要求系统验证这些记录的合理性。
|[系统]:报销记录的初始状态为"未验证",每当一条报销记录被验证为合理,系统将该报销记录的状态设置为"已验证",系统在验证所有报销记录(为"已验证")之后提示用户可以提交本月的报销单。验证为合理的记录必须满足几种条件:第一,不同种类的费用不超过相应的限额:第二,报销费用的类型要和员工的职能匹配。
|5.提交报销单
|[员工]:所有报销记录经过验证之后,员工提交当月的报销单。
|[系统]:系统保存这张报销单,将报销单的状态设置为"已提交"并记录提交日期,同时这张报销单被设为"只读"。系统要从人事管理数据库中获知该员工及其经理(负担该员工当月开销者)的电子邮件地址。
|为了及时通知相关人员,系统将自动生成份以当前报销单为内容的电子邮件发送到该员工及其经理的信箱中。当邮件成功发送后,员工得到一个确认信息。
|备选事件序列组(Alternative Flows)
|A1创建当月报销单
|[起始位置]:基本事件序列中,员工进入报销申请程序并准备打开当月报销单。
|[触发条件]:该员工的当月报销单不存在。
|[具体内容]:系统为该员工创建一张当月报销单。
|[返回位置]:基本事件序列中的"打开报销单"步骤
|A2删除报销记录
|[起始位置]:在提交报销单之前任意时间点。
|[触发条件]:员工希望删除某一条报销记录。
|[具体内容]:系统删除由员工指定的某一条报销记录。
|[返回位置]:同"起始位置"。
|A3更新报销记录
|[起始位置]:在提交报销单之前任意时间点。
|[触发条件]:员工希望更新某一条报销记录。
|[具体内容]:系统根据员工重新输入的内容更新相应的一条报销记录。将该报销记录状态设置为"未验证"
|[返回位置]:同"起始位置'。
|A4保存当月报销单
|[起始位置]:该Use Case允许员工在事件流中的任意时间点保存当月的报销单。
|[触发条件]:员工希望将已经录入的报销记录保存在报帐系统中。
|[具体内容]:系统保存该员工的当月报销单,并给出确认信息。员工可以在保存当月报销单之后直接退出系统。
|[返回位置]:同"起始位置"。
|A5报销记录不合理
|[起始位置]:基本事件序列中,"验证报销单"步骤中对每一条报销记录验证结束之后。
|[触发条件]:报销记录未通过验证,有两种情形:第一,某报销记录的金额超出了其对应类型费用的上限,己知有三种:请客户用餐人均超过300元,出差时每天住宿费超过800元,移动电话费在无特殊说明情况下超过800元;第二,报销费用的类型和员工所处的部门及职能不匹配,己知的情形是业务部门的员工申请加班补助。
|[具体内容]:告知员工不合理的报销记录编号,以及未通过验证的原因。
|[返回位置]:基本事件序列中的"填写报销单"步骤,目的是史正有问题的报销记录。
|A6人事管理数据库不可用
|[起始位置]:基本事件序列中,"提交报销单"步骤的结尾
|[触发条件]:当报帐系统向人事管理数据库索取信息而该数据库没有正常的响应。
|[具体内容]:告知员工"人事管理数据库不可用,报帐单没有提交成功"。
|[返回位置]:Use Case执行结束。
|A7邮件未及时发出
|[起始位置]:基本事件序列中,"提交报销单"步骤的结尾,成功地从人事管理数据库获得相关信息之后。
|[触发条件]:报帐系统要求发送相关邮件时,邮件系统没有及时的响应。
|[具体内容]:系统将以提示信息的方式告知员工,"邮件没有及时发出,但是报销单在系统内己经提交成功,待邮件系统恢复后,相关邮件会自动发出。"
|[返回位置]:Use Case执行结束。
|特殊需求列表(专属于该Use Case)
|暂无。
|启动条件
|员工成功登录系统,通过身份验证。被系统提示进入"报销申请"或者"借款申请"功能。
|结束状态(组)
|如果该Use Case顺利执行,员工的报销申请单将被建立、更新、保存或者提交:否则,系统的状态应该保持和该Use Case执行之前相同。
|
)
(object UseCase "提交借款申请"
quid "46261E2E036B")
(object UseCase "完成日常维护"
quid "46261E6E031C")
(object UseCase "制作报表"
quid "46261E5402CE")
(object Association "$UNNAMED$3"
quid "4626BA3801D4"
roles (list role_list
(object Role "$UNNAMED$4"
quid "4626BA3A01E4"
supplier "Use Case View::报账系统用例模型::Use Cases::提交报销申请"
quidu "46261E2101D4"
is_navigable TRUE)
(object Role "$UNNAMED$5"
quid "4626BA3A01E6"
supplier "Use Case View::报账系统用例模型::Actors::员工"
quidu "46261E060242")))
(object Association "$UNNAMED$6"
quid "4626BA3D0196"
roles (list role_list
(object Role "$UNNAMED$7"
quid "4626BA3E00CB"
supplier "Use Case View::报账系统用例模型::Use Cases::提交借款申请"
quidu "46261E2E036B"
is_navigable TRUE)
(object Role "$UNNAMED$8"
quid "4626BA3E00DA"
supplier "Use Case View::报账系统用例模型::Actors::员工"
quidu "46261E060242")))
(object Association "$UNNAMED$9"
quid "4626BA520242"
roles (list role_list
(object Role "$UNNAMED$10"
quid "4626BA53037A"
supplier "Use Case View::报账系统用例模型::Use Cases::批复报账系统"
quidu "46261E4203C8"
is_navigable TRUE)
(object Role "$UNNAMED$11"
quid "4626BA53037C"
supplier "Use Case View::报账系统用例模型::Actors::经理"
quidu "46261E120242")))
(object Association "$UNNAMED$12"
quid "4626BA62036B"
roles (list role_list
(object Role "$UNNAMED$13"
quid "4626BA6302CE"
supplier "Use Case View::报账系统用例模型::Use Cases::制作报表"
quidu "46261E5402CE"
is_navigable TRUE)
(object Role "$UNNAMED$14"
quid "4626BA6302D0"
supplier "Use Case View::报账系统用例模型::Actors::报销系统管理员"
quidu "4626B9C20109")))
(object Association "$UNNAMED$15"
quid "4626BA6800AB"
roles (list role_list
(object Role "$UNNAMED$16"
quid "4626BA6803B9"
supplier "Use Case View::报账系统用例模型::Use Cases::调整策略"
quidu "46261E6203D8"
is_navigable TRUE)
(object Role "$UNNAMED$17"
quid "4626BA6803C8"
supplier "Use Case View::报账系统用例模型::Actors::报销系统管理员"
quidu "4626B9C20109")))
(object Association "$UNNAMED$18"
quid "4626BA6D02CE"
roles (list role_list
(object Role "$UNNAMED$19"
quid "4626BA6E0242"
supplier "Use Case View::报账系统用例模型::Use Cases::完成日常维护"
quidu "46261E6E031C"
is_navigable TRUE)
(object Role "$UNNAMED$20"
quid "4626BA6E0244"
supplier "Use Case View::报账系统用例模型::Actors::报销系统管理员"
quidu "4626B9C20109")))
(object Association "$UNNAMED$21"
quid "4626BA7801E4"
roles (list role_list
(object Role "$UNNAMED$22"
quid "4626BA78036B"
supplier "Use Case View::报账系统用例模型::Use Cases::审核报销申请"
quidu "46261E86034B"
is_navigable TRUE)
(object Role "$UNNAMED$23"
quid "4626BA78036D"
supplier "Use Case View::报账系统用例模型::Actors::财务人员"
quidu "4626B9E500FA")))
(object Association "$UNNAMED$24"
quid "4626BA7B004E"
roles (list role_list
(object Role "$UNNAMED$25"
quid "4626BA7B02DE"
supplier "Use Case View::报账系统用例模型::Use Cases::审核借款申请"
quidu "46261EAE01E4"
is_navigable TRUE)
(object Role "$UNNAMED$26"
quid "4626BA7B02E0"
supplier "Use Case View::报账系统用例模型::Actors::财务人员"
quidu "4626B9E500FA")))
(object Association "$UNNAMED$27"
quid "4626BA880186"
roles (list role_list
(object Role "$UNNAMED$28"
quid "4626BA8803C8"
supplier "Use Case View::报账系统用例模型::Use Cases::结算当月报销费用"
quidu "46261EBD0186"
is_navigable TRUE)
(object Role "$UNNAMED$29"
quid "4626BA8803D8"
supplier "Use Case View::报账系统用例模型::Actors::系统时钟"
quidu "4626BA0202FD")))
(object Association "$UNNAMED$30"
quid "4626BA99038A"
roles (list role_list
(object Role "$UNNAMED$31"
quid "4626BA9A0271"
supplier "Use Case View::报账系统用例模型::Use Cases::登录系统"
quidu "46261D1D031C"
is_navigable TRUE)
(object Role "$UNNAMED$32"
quid "4626BA9A0273"
supplier "Use Case View::报账系统用例模型::Actors::人事管理数据库"
quidu "46261EE4009C"
is_navigable TRUE)))
(object Association "$UNNAMED$33"
quid "4626BAA200BB"
roles (list role_list
(object Role "$UNNAMED$34"
quid "4626BAA5000F"
supplier "Use Case View::报账系统用例模型::Use Cases::提交报销申请"
quidu "46261E2101D4"
is_navigable TRUE)
(object Role "$UNNAMED$35"
quid "4626BAA50011"
supplier "Use Case View::报账系统用例模型::Actors::人事管理数据库"
quidu "46261EE4009C"
is_navigable TRUE)))
(object Association "$UNNAMED$36"
quid "4626BAB90167"
roles (list role_list
(object Role "$UNNAMED$37"
quid "4626BABA0177"
supplier "Use Case View::报账系统用例模型::Use Cases::提交报销申请"
quidu "46261E2101D4"
is_navigable TRUE)
(object Role "$UNNAMED$38"
quid "4626BABA0179"
supplier "Use Case View::报账系统用例模型::Actors::内部电子邮件系统"
quidu "4626B96A035B"
is_navigable TRUE)))
(object Association "$UNNAMED$39"
quid "4626BAC501E4"
roles (list role_list
(object Role "$UNNAMED$40"
quid "4626BAC60232"
supplier "Use Case View::报账系统用例模型::Use Cases::提交借款申请"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -