文章目录
- 除09-15
- 20上-结构化分析
- 20上-数据库分析
- 20上-面向对象分析与设计
除09-15
20上-结构化分析
问题1:
问题2:
问题3:
问题4:
回答1:
E1=检测设备; E2=管理员;E3=检测业务员;E4=监控人员;
问题2:
D1=模型信息;D2=检测信息;D3=基础信息;
# D1=模型信息表;D2=检测信息表;D3=基础信息表;
问题3:
数据流-检测信息 起点:D2 终点:P3
数据流-监控规则 起点:D3 终点:P5
数据流-基础信息 起点:D3 终点:P6
数据流-检测结果信息 起点:D2 终点:P5 错误
# 数据流-检测信息 起点:P2 终点:P3
# 数据流-远程控制命令 起点:E3 终点:P5
问题4:
根据检测模型和检测质量标准对图像采集收到的所有产品的检测信息中的所有图像进行检测;
if 一个产品的的一个图像检测不合格
该产品不合格;
检测结果包括:产品型号和不合格类型;
else
该产品合格;
###
接收到产品检测信息
对所有图像进行检测
if 一个产品的一张图像不合格
then 该产品不合格
不合格的产品检测结果包括:产品型号和不合格类型
endif
20上-数据库分析
问题1:
问题2:
问题3:
问题4:
回答1:
分公司:经理 联系1 = 1:1;
分公司:业务部 联系2 = 1:n;
业务部:主管 联系3 = 1:1;
业务部:职员 联系4 = 1:n;
问题2:
a = 经理号、电话;
b = 地址、分公司编号;
c = 所属业务部编号;
# b = 地址、分公司编号、主管编号;
问题3:
分公司关系模式:主键=分公司编号,外键=经理号;
业务部关系模式:主键=业务部编号,外键=分公司编号;
# 业务部关系模式:主键=业务部编号,外键=分公司编号、主管号;
问题4:
职员关系模式中,每个职员多名家属成员,也就是一个职员会对应多条记录;
解决方式:该表的主键改由职员号、所属业务部门、家庭成员共同决定;
# 职员关系模式存在数据冗余,修改异常,插入异常,删除异常等情况;
数据冗余表现:家庭成员信息与职员信息关联,该情况下同一个职员的不同家庭成员信息所对应的职员信息将被重复存储;
插入异常:若职员尚无家庭成员信息,但数据库又要求至少一个成员信息,则会产生异常;
修改异常:当某个职员的家庭成员信息发生变化时,例如添加新的家庭成员、修改已有的家庭成员信息或删除不再相关的家庭成员,需要对每一个涉及的家庭成员进行更新操作,容易引发一致性问题。
删除异常:若需删除某位职员信息,则该职员的家庭成员信息也一并删除,可能丢失重要的统计数据;
应将“职员”关系模式进行分解,分解为:
职员1(职员号、姓名、岗位、所属业务部编号、电话)
职员2(职员号、家庭成员姓名、成员关系)
20上-面向对象分析与设计
问题1:
问题2:
问题3:
回答1:
A1=房产经纪 A2=系统管理员
U1=删除房产信息 U2=修改房产信息 U3=审核售出和停售的房产信息
# U1=审批授权 U3=删除房产信息
# U1内容在材料中并没有展示出来;
a=扩展关系 b=泛化关系
# 修改房产信息 a 导出房产信息
# 删除房产信息 b 归档
# a <<include>> b<<extend>>
问题2:
C1=Property C2=House C3=Cando
C4=User C5=Manager C3=Agent
问题3:
AgentList主要属性:姓名、家庭住址、联系电话、受雇的起止时间、 房产证明、房产的起始时间和终止时间;
# xhj分析:这里书写的内容是Agent的属性,而不是AgentList的属性;
# AgentList在Agent和Property中间,应该是联系两者的一个属性;
# AgentList主要属性:房产经纪负责该房产的起始时间和终止时间;