试题一(25分,)面向对象建模(UML用例、类图、时序图)
某公司的人事部门拥有一个地址簿(AddressBook)管理系统(AddressBookSystem),用于管理公司所有员工的地址记录(PersonAddress)。员工的地址记录包括:姓名、住址、城市、省份、邮政编码以及联系电话等信息。
管理员可以完成对地址簿中地址记录的管理操作,包括:
(1)管理地址记录。根据公司的人员变动情况,对地址记录进行添加、修改、删除等操作。
(2)排序。按照员工姓氏的字典顺序或邮政编码对系统中的所有记录进行排序。
(3)打印地址记录。以邮件标签的格式打印一个地址单独的地址簿。
系统会对地址记录进行管理,为便于管理,管理员在系统中为公司的不同部门及不同兴趣小组建立员工的地址簿的操作,包括:
(1)创建地址簿。新建一个地址簿并保存。
(2)打开地址簿。打开一个已有的地址簿。
(3)修改地址簿。对打开的地址簿进行修改并保存。
系统将提供一个GUI(图形用户界面)实现对地址簿的各种操作。系统除了管理员会用到,部门经理和员工也可能用到,部门经理可用系统查看自己部门的员工地址信息,员工则只能查看自己的信息。
现采用面向对象方法分析并设计该地址簿管理系统,得到如图1所示的用例图和图2所示的类图。
【问题4】(9分)下面是用户从系统获取地址信息的顺序图,请根据题意,将其补充完整。
参考答案(标准时序流程):
1. 用户(管理员/经理/员工)发起查看地址请求;
2. GUI界面接收请求,调用系统业务接口;
3. 系统进行身份权限校验;
4. 权限通过后,AddressBook 查询对应的 PersonAddress 记录;
5. 返回地址数据至前端界面展示;
6. 权限不通过则返回拒绝访问提示。
权限规则:管理员可查看全部、部门经理仅本部门、普通员工仅本人信息。