educoder结构化分析方法-实体-联系图

第1关:实体联系图-画出实体

实体-联系图(E-R图)的概念

实体-联系图(Entity Relationship Diagram,ERD),E-R图是进行需求分析、归纳、整理、表达和优化现实世界数据及其联系的重要工具。E-R图是用来建立数据模型的工具。数据模型是一种面向问题的数据模型,是按照用户的观点对数据建立的模型。它描述了从用户角度看到的数据,反映了用户的现实环境,而且与在软件系统中的实现方法无关。数据模型中包含3种相互关联的信息:数据对象(实体)、数据对象的属性及数据对象彼此间相互连接的关系。

  1. 数据对象(实体)
    数据对象: 是对软件必须理解的复合信息的抽象。
  • 复合信息: 是指具有一系列不同性质或属性的事物,仅有单个值的事物(例如,宽度)不是数据对象。
  • 可以由一组属性来定义的实体都可以被认为是数据对象。如:外部实体、事物、行为、事件、角色、单位、地点或结构等。
  • 数据对象彼此间是有关联的。

例如:在该机票预定系统中存在多个实体,如旅客、航空公司等。

  1. 属性
    属性定义了数据对象的性质。必须把一个或多个属性定义为“标识符”,当我们希望找到数据对象的一个实例时,用标识符属性作为“关键字”(通常简称为“键”)。

例如:在该机票预定系统中,顾客具有姓名、性别、身份证号码、工作单位、旅行目的地、旅行时间等属性。

  1. 联系
    数据对象彼此之间相互连接的方式称为联系,也称为关系。联系可分为以下3种类型:
  • 一对一联系(1∶1)

把身份证看成一个实体,身份证与顾客的联系是一对一的,一位顾客只能拥有一个身份证,并且每个身份证只对应于一位顾客。

  • 一对多联系(1∶N)

把机票看成一个实体,顾客与机票之间存在一对多的联系,即每个顾客可以购买多个机票,但每张机票必须由一位顾客所拥有。

  • 多对多联系(M∶N)

航空公司与第三方售票平台之间存在着多对多的联系,第三方售票平台可提供多家航空公司的机票信息,航空公司的机票也可以在多个售票平台进行售卖。

实体-联系图的符号

ER图中包含了实体(即数据对象)关系和属性等3种基本成分:
通常用矩形框代表实体;
用连接相关实体的菱形框表示关系;
用椭圆形或圆角矩形表示实体(或关系)的属性;
并用直线把实体(或关系)与其属性连接起来;

闯关要求

旅客订票前需要完善自己的身份信息和旅行信息,包括姓名性别身份证号码工作单位旅行目的地旅行时间等;通常机票包括时间价格等级等信息;航空公司来自不同的国家地区;旅客可订购多张机票,但一张机票只能属于一位旅客;航空公司可以出售多张机票,但一张机票只能属于一家航空公司。请根据以上描述画出该机票预定系统的E-R图。

测试说明

请按照描述画出机票预定系统E-R图中的旅客机票航空公司三个实体。请将文件保存至“/home/headless/Desktop/workspace/myshixun/ER图/submit/step_detail_1/”目录下,文件命名为“step1.mdj”。

注意事项

  1. 案例描述中的加粗部分即是E-R图中的各种元素,请注意甄别。
  2. StarUML工具中的ER图的符号表示与上述描述有些差别,请注意区分。属性的添加方法:右键点击实体->点击Add->点击Column->填入属性。
  3. 使用桌面上的StarUML工具来进行作图。画E-R图的具体流程:打开软件->点击File->点击New->在界面右侧的Model Explorer中右键点击Model->点击Add Diagram->点击ER Diagram->在界面左侧的Entity-Relationship中即可看到绘图所需的元素。

开始你的任务吧,祝你成功!

答案:

第2关:实体联系图-画出属性

测试说明

请按照描述画出机票预定系统E-R图中的旅客机票航空公司三个实体的属性。请将文件保存至“/home/headless/Desktop/workspace/myshixun/ER图/submit/step_detail_2/”目录下,文件命名为“step2.mdj”。

答案同上。

第3关:实体联系图-画出联系

测试说明

请按照描述画出机票预定系统E-R图中的旅客机票航空公司三个实体之间的联系。请将文件保存至“/home/headless/Desktop/workspace/myshixun/ER图/submit/step_detail_3/”目录下,文件命名为“step3.mdj”。

答案同上。

若出现测试不能通过可能edu自己的bug造成。

  • 19
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值