1、 课程设计(论文) 课程名称: 数据库系统分析与设计 题 目:管理信息系统数据库设计与实现 院 (系): 管理学院 专业班级: 信管1201 姓 名: 李昱郿 学 号: 120440127 指导教师: 张新生 骆正山 2014年 1 月 9 日 西安建筑科技大学课程设计(论文)任务书 专业班级: 信管1201 学生姓名: 李昱郿 指导教师(签名):
2、 一、课程设计(论文)题目 库存管理系统数据库设计与实现 二、本次课程设计(论文)应达到的目的 数据库系统分析与设计课程设计是信息管理与信息系统专业集中实践性环节之一,是学习完《数据库数据库系统原理及技术》及《数据库系统分析与设计》课程后进行的一次全面的综合练习。其目的在与加深对数据库基础理论和基本知识的理解,掌握借助PowerDesigner开发和设计一个小型数据库系统时设计数据库系统模型的基本方法,提高运用数据库解决实际问题的能力。 三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技术参数、设计要求等)
3、要求学生能独立完成一个数据库模型的设计与实现,包括: 1) 数据库系统需求分析; 2) 数据库概念模型设计; 3) 数据库逻辑模型设计; 4) 数据库物理模型的实现; 5) 完成不少于6000字的课程设计报告撰写。 四、应收集的资料及主要参考文献: [1] 王珊, 萨师煊. 数据库系统概论(第4版). 北京:高教出版社,2006年5月. [2] 赵韶平等.PowerDesigner系统分析与建模(第2版). 北京:清华大学出版社,2010. [3] Data Modeling and Relational Database Design.
4、Oracle Inc. 2001. 五、审核批准意见 教研室主任(签字) 设计总说明 库存管理系统是典型的信息管理系统(MIS),在库存的管理中,如果通过使用计算机可以减少大量的手工操作,提高工作效率。库存管理系统过去采用人工处理方式,由于工作量非常之大,为了提高工作效率,方便管理,因此需要开发一个库存管理系统。其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立一个数据一致性和完整性强、数据安全性好的数据库;而对于后者则要求应用程序具有功能完备、易使用等特点。 由于本次是学习完《数据库数据库系统原理及技术》及《
5、数据库系统分析与设计》课程后进行的一次全面的综合练习。其目的在与加深对数据库基础理论和基本知识的理解,掌握借助PowerDesigner开发和设计一个小型数据库系统时设计数据库系统模型的基本方法,提高运用数据库解决实际问题的能力。所以本次只运用PowerDesigner对库存管理系统做出分析与设计最后做出需求分析、概念模型设计、逻辑模型设计、物理模型实现。 关键字:库存管理,PowerDesigner,需求分析,概念模型,逻辑模型,物理模型。 目 录 1 绪论 1 1.1系统简介 1 1.2设计目的 1 1.3设计内容 2 2 需求分析 2 2.1 .需求
6、分析的任务 2 2.2 系统数据流程分析 4 2.3 数据字典 5 3 概念模型设计 8 3.1 概念模型设计的方法和步骤 8 3.2 系统概念模型 14 4 逻辑模型设计 15 4.1 逻辑模型设计的方法 15 4.2 逻辑模型实现 19 4.3 数据完整性约束定义 20 5 物理数据库模型设计与实现 21 5.1 物理数据库模型的图示 21 5.2 物理数据库模型的详细表示 27 5.3 物理数据库模型的实现 29 总结 34 参考文献 34 1 绪论 1.1系统简介 对于每个企业来说,随着企业规模的不断扩大,产品数量的急剧增加,所生产的产品种类
7、也会不断的变化没有管产品的各种信息量也会成倍增长。面对庞大的信息量,如何有效的管理库存产品,对企业来说非常重要。仓库的库存管理是整个物资供应管理的核心,传统的库存管理靠人工完成,需要大量的人力物力,人工管理方式有许多缺点和不便的地方,易出错,不能及时地把物资及库存信息反映出来,大量的文件和数据不利于查找更新和维护。利用信息技术开发信息管理系统对商品库存进行管理,可以方便地实现快速查询,入库出库方便,可靠性高。因此有必要开发一套独立的库存管理系统提高企业的工作效率,对物资进行优化存储、管理,从而提高企业的科学管理水平,节省开支,使企业在竞争中立于不败之地。而所使用的这套库存管理系统是企业生产经营
8、活动中的核心,此系统必须可以用来控制合理的库存费用、适时适量的库存数量,使企业生产活动效率最大化。通过对这些情况的仔细调查,我设计了下面的库存管理系统。 1.2设计目的 目的:设计商品库存管理系统,使库存管理的工作系统化、规范化和自动化,从而达到提高管理效率的目的。 (1)利用计算机系统实现商品库存管理。 (2)流程符合商品库存要求。 (3)查询方便,无论是按商品编号、名称、类别、产地其中任一项都可以进行有效询。 1.3设计内容 库存管理系统,它的主要功能是先通过用户身份验证,然后即可登录库存管理系统,然后通过操作对库存进行管理和维护。本次设计的内容主要有: 1.对
9、库存管理系统作出分析。 2.作出需求分析。 3.设计概念模型。 4.设计逻辑模型。 5.实现物理模型。 2 需求分析 2.1 .需求分析的任务 进行整个数据库设计必须准确了解与分析用户需求(包括数据和处理)。需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。作为地基的需求分析是否做得充分与准确,决定了在其上构建数据库大厦的速度和质量。 需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。 随着经济全球化的推进以及企业激烈的竞争,改善企业内部及整个供应
10、链各环节的管理、调度及资源配置,迅速适应客户的新需求和市场新机遇,是企业赢得竞争胜利的决定性因素。而这就需要企业内部各业务高效率化,其中最重要的就是物资管理这块。仓库的库存管理是整个物资供应管理的核心,传统的库存管理靠人工完成,需要大量的人力物力,人工管理方式有许多缺点和不便的地方,易出错,不能及时地把物资及库存信息反映出来,大量的文件和数据不利于查找更新和维护。利用信息技术开发信息管理系统对商品库存进行管理,可以方便地实现快速查询,入库出库方便,可靠性高。因此有必要开发一套独立的库存管理系统提高企业的工作效率,对物资进行优化存储、管理,从而提高企业的科学管理水平,节省开支,使企业在竞争中立于
11、不败之地。而所使用的这套库存管理系统是企业生产经营活动中的核心,此系统必须可以用来控制合理的库存费用、适时适量的库存数量,使企业生产活动效率最大化。 需求分析调查的重点是“数据”和“处理”,通过调查、收集和分析,获得用户对数据库的如下需求: (1)信息需求。指用户需要从数据库中获得信息的内容与性质。由信息要求可以导出数据要求,即在数据库中需要存储哪些数据。 (2)处理要求。指用户需要完成什么处理功能。明确用户对数据有什么样的处理要求,从而确定数据之间的相互关系。 (3)安全性与完整性要求。 功能模块分析: 1. 货物认证管理模块: 该模块实现的功能:对用户权限的设置、对系统进行初
12、始化处理、保障了系统的安全。 2. 货物出库管理模块: 该模块功能:对货物出库进行管理、回收其存储仓位、为将来进行再分配,并生成出库单进行保存,作为该次行为的凭证。 3. 金额查询模块: 该模块实现的功能:通过对流通物资的数量,单价等属性处理,生成金额报表。 4. 仓位查询模块: 该模块实现的功能:对仓库已分配仓位进行查询,查询各仓位物资存储情况,并为下次货物存储预分仓位。 5. 订单查询模块: 该模块实现的功能:创建订单生成表单进行储存,并能按要求检索出相应的订单和订单相关物资的库存情况。 2.2 系统数据流程分析 1)基本业务调查 可以通过网路检索、调查、开座谈会、跟
13、班作业等方法,对所设计系统的业务进行调查,明确其基本功能和流程。 2)数据流程图 顶层数据流程图: 图2-1顶层数据流程图 符号定义: 图2-2符号定义 数据存储 外部实体 处 理 数据流 详细数据流程图: 图2-3详细数据流程图 2.3 数据字典 在数据流程图中,数据信息和处理过程需要通过数据字典才能描述清楚,因此在数据字典中主要对数据流程图中的数据流、数据存储和处理过程给出更详细、更准确的说明。 1) 数据流定义 可以通过表
14、格的形式给出数据流程图的主要数据流,如表2.1所示。 表2.1 库存管理系统主要数据流定义 序号 名称 位置 结构定义 最大数据流量 1 订货单 F-01 货物名称+货物编号+订货日期+订货数量+交货日期 10份/小时 2 发货通知 F-02 货物名称+货物编号+订货日期+订货数量 20份/小时 3 出库单 F-03 货物名称+货物编号+订货日期+订货数量+到货日期 25份/小时 4 查询 F-04 货物名称+货物编号 +货物数量 15份/小时 入库单 F-05 货物名称+货物编号+货物数量+货物单价 20份/小时 2)数据
15、存储定义 可以采用如下表格的形式给出系统的主要数据定义,如表2.2所示。 表2.2 XX系统主要数据存储定义 编号 名称 输入 输出 数据量 存取频度 存取方式 说明 D1 货物表 货物编号 查看货物的信息 25000条 1000次/天 联机处理;检索和更新;随即检索 货物编号唯一且非空 D2 进货单 货物编号 查看进物的信息 25000条 1000次/天 联机处理;检索和更新;随即检索 货物编号唯一且非空 D3 订货表 订单编号 查看订单的信息 25000条 1000次/天 联机处理;检索和更新;随即检索 订单编号唯一且
16、非空 D4 销售表 货物编号 查看销售信息 25000条 1000次/天 联机处理;检索和更新;随即检索 货物编号唯一且非空 3)处理过程 可以采用如下表格的形式给出系统的主要处理过程定义,如表2.3所示。 表2.3 XX系统主要处理过程定义 序号 处理过程名称 输入 输出 处理说明 P1.1 入库处理 入库单 输出的数据流 查收要入库的货物,登记货物的各种信息 P1.2 销售分配处理 发货单 发货通知和查询 判断库存的量是否可满足发货单的量 P1.3 出库处理 出库单 出库数据 登记要出库的货物的信息 P1.4 发货处理 发
17、货通知 出库单 对货物进行审核,通过后做发货处理 P1.5 签订合同 出库单 出库单 核对出库单,签订销售合同,准备销售 P1.6 销售统计 出库单 对销售情况进行统计,待以后分析 P1.7 订单处理 订货单 发货单 核对订货单,准备发货 P1.8 采购 采购单 将采购回来的货物入库 3 概念模型设计 3.1 概念模型设计的方法和步骤 1.根据分析得出13个实体:管理员、采购员、采购、报损单、销售员、报损、订单、供应商、货物、客户、入库、出库、仓库。 2.建立实体: 管理员(工号、姓名、性别、联系方式、权限) 采购员(采购员号、姓名、
18、性别、采购单号、业绩、年龄) 报损单(报损单号、货物代码、数量、日期、经手人) 销售员(销售员号、性别、姓名、订单号、业绩、年龄) 采购(采购单号、供应商号、单价、日期、数量、采购员号、货物代码) 报损(货物代码、报损单号) 订单(订单号、销售员号、客户号、货物代码、订单量、日期、订单金额) 供应商(供应商号、名称、地址、联系电话) 货物(货物代码、供应商号、型号、名称、型态、最低库存量、最高库存量、单价) 客户(客户号、名称、联系人、账户、订单号、联系人电话) 入库(入库单号、供应商号、仓位号、货物代码、日期、数量) 出库(出库单、仓位号、货物代码、日期、数量、经手人)
19、 仓库(仓位号、名称、地址、负责人) 图3-1概念模型实体图 3.定义属性: 图3-2概念模型属性定义图 4.建立联系: 图3-3概念模型联系图 5.检错Tools->Check Model: 图3-4-1概念模型检错图 图3-4-2概念模型检错图 图3-4-3概念模型检错图
20、 3.2 系统概念模型 图3-5概念模型E-R图 4 逻辑模型设计 4.1 逻辑模型设计的方法 1.由以上的概念模型生成逻辑模型Tools->GenerateLogicalDataModel: 图4-1-1逻辑模型生成图 图4-1-2逻辑模型生成图 2.检错Tools->Check Model: 图4-2-1逻辑模型检错图 图4-2-2逻辑模型检错图 4.2 逻
21、辑模型实现 图4-3逻辑模型图 4.3 数据完整性约束定义 根据上面的关系模式,数据库的完整性约束如下所示: 1) 实体完整性约束 属性‘入库单号’是基本关系‘入库’的主属性所以‘入库单号’上所有分量不为空。 入库(入库单号、供应商号、仓库号、入库日期、货物名称、入库数量、仓库号、货物代码、签收人) 2)参照完整性约束 入库(入库单号、供应商号、仓库号、入库日期、货物名称、入库数量、仓库号、货物代码、签收人) 仓库(仓库号、入库单号、出库表单编号、仓库名称、地址、负责人) 3)用户自定义完整性约束 5 物
22、理数据库模型设计与实现 5.1 物理数据库模型的图示 1. 由CDM生成PDM Tools->GeneratePhysicalDataMondel: 图4-1-1物理模型生成图 图4-1-2物理模型生成图 2. 检错Tool->CheckMondel: 图4-2-1物理模型检错图 图4-2-2物理模型检错图 图4-2-3物理模型检错图 3
23、 物理模型: 图4-3物理模型实现图 5.2 物理数据库模型的详细表示 1.表的清单 表5-1表的清单 名称 代码 仓库 仓库 供应商 供应商 入库 入库 出库 出库 客户 客户 报损 报损 报损单 报损单 管理员 管理员 订单 订单 货物 货物 采购 采购 采购员 采购员 销售员 销售员 2. 引用的清单 表5-2引用的清单 名称 代码 父表格 子表格 外键列 父角色 子角色 下单 下单 客户 订单 客户号2 买卖 买卖 出库
24、 客户 出库单号 供应 供应 供应商 入库 供应商号2 入库 入库 入库 货物 入库1 入库1 入库 仓库 取出 取出 仓库 出库 售出 售出 货物 出库 处理 处理 订单 销售员 损失 损失 报损 货物 管理1 管理1 管理员 仓库 管理员号 管理2 管理2 管理员 货物 管理员号 统计 统计 报损单 报损 报损单号2 购买 购买 采购 货物 采购 采购 采购员
25、采购 采购员号2 采购1 采购1 供应商 采购 供应商号2 5.3 物理数据库模型的实现 insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('GE7SVO', 'AQN72287A4', ' G', 17, 5) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('38MDJX', 'LQV6BQ5 FM', '
26、 H', 9, 11) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('Y7PBX6', '5CCA0OVHNG', ' I', 11, 9) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('9ILFKR', 'F1LHXP4XB5', ' ', 4, 2) go insert into 采购员 ("CAI-
27、ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('AC 0JT', 'QTC4RFVONL', ' 0', 3, 14) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('MXFH8K', 'I79WMPVN62', ' 1', 6, 6) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "
28、CAI-SEX") values ('J6QT4Y', 'FGICJCLQJJ', ' 2', 14, 17) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('IGD1 M', 'K9M9JG473W', ' 3', 7, 18) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('QNLCCY', 'N Q9NMG7Y8',
29、 ' 4', 16, 10) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('E9P2R5', 'YJLFI6RPVS', ' 5', 13, 15) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('F0EYGB', '8EOOQFBG2D', ' 6', 18, 19) go insert into 采购员
30、"CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('MN3KX6', 'PF64D WXV1', ' 7', 19, 0) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values (' CADNY', 'YJ0UFL04T4', ' 8', 2, 3) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YE
31、JI", "CAI-SEX") values ('3F58MJ', '7TIV0MPO1D', ' 9', 15, 16) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('DBIEHR', '6I4DB8 430', ' A', 8, 12) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('LA3S55', 'KDH17H
32、P 8R', ' B', 12, 4) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('LSVTGG', 'R6GQSE6YW3', ' C', 10, 7) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('3BE7CQ', 'LDV8ABHE76', ' D', 1, 1) go insert into 采购
33、员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('XTIKQK', 'PEC1XF8U3C', ' E', 0, 8) go insert into 采购员 ("CAI-ID", "CAI-NAME", "CAIGOU-ID", "CAI-YEJI", "CAI-SEX") values ('XOB0N9', '9UMDFC90FQ', ' F', 5, 13) go insert into 报损单 ("BAO-ID", "BAO-COUNT", "HUOWU-ID", "BAO-
34、DATE", "BAO-MAN") values ('EMVCI8', 7, 'HPDGW7', '1-1-1 0:0:0', 'QENS7E0F68') go insert into 报损单 ("BAO-ID", "BAO-COUNT", "HUOWU-ID", "BAO-DATE", "BAO-MAN") values ('UPN NT', 19, 'R753O5', '667-12-27 2:28:53', '6CRL5TO540') go insert into 报损单 ("BAO-ID", "BAO-COUNT", "HUOWU-ID", "BAO-DATE"
35、 "BAO-MAN") values ('TDJB1E', 12, '5UMAXN', '1789-4-12 8:9:59', 'VK8OQYP442') go insert into 报损单 ("BAO-ID", "BAO-COUNT", "HUOWU-ID", "BAO-DATE", "BAO-MAN") values ('NMFEGH', 10, 'NFPJ6R', '74-6-3 0:36:38', 'PJQ35SNLW0') go 总结 作为计算机应用的一部分,使用计算机对库存信息
36、进行管理,具有传统方式所我发比拟的优点。能够极大地提高库存管理的效率,减轻苦从管理人员的工作负担,也是企业的科学化、正规化管理与系统接轨的重要条件。本次课程设计虽只是对库存管理系统的分析与设计,但整个过程体验了一个系统的开发流程。从系统的需求分析、建立概念模型、建立逻辑模型到实现物理模型整个过程掌握了很多以前较为陌生的知识,对物资管理有了一定程度的了解,扩大了知识面。本次试验运用到的软件有:PowerDesigner,熟悉了PowerDesigner软件的一些功能。 同时在本次试验中发现自己的很多不足,对一些辅助设计软件和语言不能很好地运用。在以后的学习中我会加强练习,弥补这些不足。 参考
37、文献 [1] 王珊, 萨师煊. 数据库系统概论(第4版). 北京:高教出版社,2006年5月. [2] 赵韶平等.PowerDesigner系统分析与建模(第2版). 北京:清华大学出版社,2010. [3] Data Modeling and Relational Database Design. Oracle Inc. 2001. [4] 黄梯云.管理信息系统.北京:高等教育出版社,2004. [5] 萨师煊.数据库系统概论. 北京:高等教育出版社,2005. 《数据库系统分析与设计》课程设计成绩评定 资料收集整理 (10) 设计工作量 (10) 需求分析 (10) 概念设计 (10) 逻辑设计 (10) 物理设计 (10) 数据库实现 (10) 编程 (10) 方案制订 (10) 设计说明书(10) 总分(满分100分) 指导教师(签名): 年 月 日
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818