数据建模项目管理数据库设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据建模
数据库设计——项目管理
1.逻辑数据库设计
1.1 项目管理
1.1.1 数据需求
1.顾问公司
一个顾问公司有很多需要管理的项目。
2.项目
每个项目的详细信息包括项目编号、项目名称、计划开始日期、计划截止日期、实际开始日期、实际截止日期、工程计划费用、工程实际费用、客户编号、经理员工号。每个项目有一个用户和一个经理。在整个项目中,项目编号是唯一的。
3.客户
客户信息包括客户编号、客户姓名、客户地址(由城市、街道、州和邮政编码组成)、客户电话号、客户传真号、客户网址、联系人姓名、联系人电话、联系人传真号。其中客户编号唯一。
4.工作包
工作包信息包括工作包编号、计划开始日期、计划截止日期、实际开始日期、实际截止日期、工程计划费用、项目实际费用、项目号。其中,工作包编号是唯一的。
5.员工
员工中每个成员的详细信息包括员工号、角色开始日期、姓名、地址(街区、城市、州、邮编)、工作电话号码、家庭电话号码、传真号、职位、性别、薪水、入职日期、角色号。在整个项目中,员工号是唯一的。员工包括经理、普通员工。
6.角色
角色由角色编号、角色描述、单价。其中,角色编号唯一。
7.文档
文档编号、文档题目、文档日期、版本号、工作包号、撰写员工号。其中文档编号唯一。
8.文档作者
撰写文档的员工包括文档号和员工号。其中文档号和员工号唯一。
9.费用
费用包含信息为费用编号、支出日期、费用描述、花费金额、工作包号、员工号、费用类型号。其中费用编号为主键。
10. 费用类型
费用类型包含信息为费用类型号、费用类型描述。其中,费用类型号是唯一的。
11. 时间
时间信息包含信息为工作包号、员工号、开始工作时间、结束工作时间、工作时间。其中工作包号和员工号唯一。
12. 经理
是员工种类的一种,管理项目,下属很多员工。包含信息为员工号、姓名、地址(街区、城市、州、邮编)、工作电话号码、家庭电话号码、传真号、职位、性别、薪水、入职日期。在整个业务中,员工号是唯一的。
1.1.2 事务需求
1.数据库应该支持下述事务
(a) 创建和维护记录各项目的详细信息和每个员工的记录。
(b) 创建和维护记录客户的详细信息和记录。
(c) 创建和维护员工的详细信息。
(d) 创建和维护记录文档的详细信息和详细记录。
(e) 创建和维护记录角色的信息。
(f) 创建和维护记录工作包的详细信息。
(g) 创建和维护记录费用类型的信息。
(h) 创建和维护记录文档作者的详细信息和详细记录。
2.数据应该能够支持下述查询事务
(a) 以表单形式列出项目名字、经理名字、客户号、客户电话,按项目编码排序。
(b) 以表单形式列出员工的姓名、号码、角色、工作时间,以及他们的项目的详细信息。
(c) 以报表形式列出项目的费用以及费用类型。
(d) 以报表形式列出项目的文档以及文档作者。
1.2使用逻辑数据库设计方法
1.2.1 步骤1.1: 标识实体
逻辑数据库设计的第一个步骤是标识在数据库中必须表述的主实体。有上面的描述,可以标识如下实体:
Project(项目)Document(文档)
Client(客户)DocumentAuther(文档作者)
WorkPackage(工作包)Expense(费用)
Employee(员工)
1.2.2 步骤1.2:标识关系
标识完实体后,下一步就是标识存在于这些实体间的所有关系。对于房屋租赁公司的实体关系,如图所示。
1.确定关系的多样性约束
标识完要创建的关系后,现在应该确定每个关系的多样性约束。
Client 1..1 Place Project 1..*
Project 1..1
1..1 Has
Has
Employee
Client
1..*
1..*
Employee 1..1
1..1
1..1
1..1
1..* Leader
Has
Manage
Approve
WorkOn
Employee
Manager
Project
Document
WorkPackage
1..*
1..*
1..*
0..*
1..1
Document 1..1 writtenBy DocumentAuthor 1..*
WorkPackage 1..*
1..1 Cause
Produce
Expense
Document
1..1
0..*
DocumentAuthor 1..* Write Document 1..1 Expense 1..1 Caused WorkPackage 1..1
图2
2.使用实体-关系(ER)建模
在数据库设计阶段,将创建几个ER模型。其中员工有自身的一对多的关系,员工和项目是多对多的管理关系,客户和项目是一对多的任命关系,员工和文档通过工作包具有多对多的关系其中工作包产生文档,工作包和费用是一对一的产生关系,文档作者和文档是一对多的编写的关系。故有如下ER图。
图3
1.2.3 步骤1.3:标识实体或关系的有关属性
下一个步骤是标识与已经标识的实体或关系有关的属性。对于项目管理而