资源描述
基于Web的库存管理系统设计与实现
学 生:
学 号:
指导教师:
助理指导教师:
专 业:软件工程
Design and realization of Web-based inventory management systems
Undergraduate:
Supervisor:
Assistant Tutor:
Major: software engineering
College of software
本科学生毕业设计 中文摘要
I
本科学生毕业设计 英文摘要
摘 要
在经济全球化和信息技术飞速发展的今天,企业信息化水平的高低是带动企业技术创新和各项工作升级与否的关键,企业信息化是提升管理水平和竞争实力的有力武器。目前,基于B/S (Browser/ Server)模式的MIS(Management information system)日益成熟,企业的Web从静态的HTML到动态的网页和具有完整的数据库解决方案,并且可以通过Web把企业中分散的子系统集成到一个单一的应用环境下,使系统的开发、管理和维护变得非常简单。因此,本文研究并开发了基于B/S模式的库存管理信息系统。
由于库存管理是ERP(Enterprise Resource Planning)系统非常重要的一环,本文首先介绍了有关ERP系统的内容,然后又介绍了该库存管理系统的总体方案设计,包括系统运用到的关键技术等,接着使用UML建模语言完成了对系统的分析,数据库设计,最后完成了对各模块功能的详细设计与实现。
本系统前台采用.NET,后台采用SQL Server 2000.语言采用C#。
关键词:企业资源计划,库存管理系统,统一建模
ABSTRACT
Nowadays, with the rapid development of economic globalization and of information technique, the level of information construction of enterprises is the key of impetus of technical creating and varieties working upgrade. The information construction of enterprises is a powerful weapon on upgrading management level and competitive strength.The enterprise management information system based on B/S (Browser/ Server) has become popular. It is easy to develop, manage and maintenance the web application. But there are also some problems, such as the difficulty to reuse the code and recombine the system.So, we study and exploit the inventory management information system based on B/S in this paper.
Since inventory management is important part of ERP (Enterprise Resource Planning) system,this paper first introduced the ERP system content, and then introduced the overall programme design of the inventory management systems, including systems used in key technology, Then completed a systematic analysis by useing UML modelling language and database design.finally completed the detailed design and the realization of the functional modules.
The system uses .NET as the development platform on the stage,SQL Server 2000 as the database in background and uses C# language
Keywords: Enterprise Resource Planning, Inventory management system, Unified modelling
6
重庆大学本科学生毕业设计 目录
目 录
中文摘要 I
英文摘要 II
1绪论 1
1.1课题研究背景 1
1.2库存与ERP关系 1
1.2.1库存订货点法 2
1.2.2库存与基本MRP 2
1.2.3库存与闭环MRP 2
1.2.4库存与MRP-II 3
1.2.5 库存与ERP 的形成 4
1.3课题研究目的 6
1.4本论文的主要内容 6
2系统总体方案设计 7
2.1开发方案 7
2.2开发环境 7
2.3系统总体设计方法与架构设计 8
2.4系统运用到的关键技术 9
2.4.1数据库技术 9
2.4.2Internet/Web技术 9
2.4.3C#语言、ASP.NET/ADO.NET技术/.NET技术 9
3利用UML实现库存管理系统分析 11
3.1UML介绍 11
3.2系统需求 11
3.2.1用例图 13
3.2.2顺序图 14
3.2.3类图 15
3.2.4状态图 16
3.2.5部署图 17
4 数据库设计 19
4.1数据库需求分析 19
4.2数据库概念结构设计 19
4.3数据库逻辑结构设计 22
4.4数据库物理设计 25
4.5存储过程设计 26
5 库存管理系统模块设计与实现 28
5.1用户管理模块设计与实现 28
5.2商品管理模块设计与实现 30
5.3仓库管理模块设计与实现 34
5.4出入库操作管理模块设计与实现 35
5.5出入库商品管理模块设计与实现 37
5.6库存盘点管理模块设计与实现 40
5.7统计管理模块设计与实现 42
6 结论 43
6.1课题研究总结 43
6.2存在的问题及后续工作 43
致 谢 45
参考文献 46
本科学生毕业设计 1绪论
1绪论
1.1课题研究背景[1][2]
在经济全球化的信息技术飞速发展的今天,企业信息化是带动企业各项工作创新和升级,提升管理水平和竞争实力的有力武器,信息化已成为企业增强竞争力、提升利润以及实现跨越式发展的必由之路,信息化己成为推进国民经济和社会发展的助力器,信息化水平则成为一个城市或地区现代化水平和综合实力的重要标志。信息资源已成为与材料和能源同等重要的战略资源;信息技术正以其广泛的渗透性和无与伦比的先进性与传统产业结合;信息产业已发展成为世界范围内的朝阳产业和新的经济增长点;因此,世界各国都把加快信息化建设作为国家的发展战略。
我国己经加入WTO。外资的大量涌入,给本土的企业带来相当的冲击,但同时也带来前所未有的发展机遇。面对新的形势,我国的企业已经开始意识到将要来临的新威胁。在新的形势下,企业要生存、要发展,就必须以主动的姿态参加全球市场竞争并赢得竞争,要赢得竞争,就要全面提高管理水平,ERP因此而受到了越来越多企业的青睐。尤其是作为ERP当中非常重要的组成部分-库存管理,有效的库存管理是企业为了缩短生产周期,增加产品品种,提高投资成本,增加收益,降低成本和摆脱资金不足,最终确定一个最优的物资储备量,在保证生产消费的前提下获得最佳的经济效益所必不可少的。
企业要想提高竞争力,信息化建设是必由之路。“以信息化带动产业化”,目前国民经济信息化被提到了前所未有的高度、深度和广度。信息化是实现硬化基础管理、活化综合管理、强化例外管理、优化战略管理的强有力变革工具,是企业发展的希望所在。
1.2库存与ERP关系 [3]
企业资源计划ERP(Enterprise Resource Planning)起源于20世纪60年代初,是由美国加特纳公司(Gartner Group Inc.)最早提出的一种管理理念,是建立在信息技术的基础上,用系统化的管理思想为企业决策层及员土提供决策运行手段的管理平台。
库存与ERP的关系,可以从ERP的发展历程来看。纵观ERP的发展历程,它经历了5个大的阶段:订货点法、MRP、闭环MRP, MRPⅡ和ERP系统阶段。这些阶段是随着生产发展和管理水平的不断提高而产生的一种科学的、更全面的管理思想、模式与方法。
1.2.1库存订货点法
企业为了维持均衡的生产,一般会有相应的原材料和产成品库存,作为应付异常变化的一种缓冲手段。但是。库存要占用流动资金,应该考虑机会成本;库存需要场所和管理人员,带来相关费用;库存物可能丢失、变质、贬值、淘汰,造成损失。因此表明,企业在不断地为库存付出代价。于是,如何协调生产与库存的关系、寻求合理的平衡,是企业管理者应该关心的问题。
50年代后期,美国一些企业在计算机的支持下,开始实行库存ABC分类管理,根据“经济批量”和“订货点”的原则。对生产所需的各种原材料进行采购管理,从而达到降低库存、加快资金周转速度来提高效益。订货点法依靠对库存补充周期内的需求量预测,并保持一定的安全库存储备,来确定订货点。
1.2.2库存与基本MRP
20世纪60年代,制造业为了打破发出订单然后催办的计划管理方式,设置了安全库存量,为需求与提前期提供缓冲。20世纪70年代,企业的管理者们已经清楚地认识到,真正的需要是有效的订单交货日期,产生了对物料清单的管理与利用,形成了物料需求计划MRP。
物料需求计划理论(Material Requirement Planning)是在20世纪60年代IBM公司的约瑟夫奥利佛博士提出了把对物料的需求分为独立需求与相关需求的概念:产品结构中物料的需求量是相关的,在需要的时候提供需要的数量产品结构。
1.2.3库存与闭环MRP
闭环MRP理论认为主生产计划与物料需求计划(MRP)应该是可行的,即考虑能力的约束,或者对能力提出需求计划,在满足能力需求的前提下,才能保证物料需求计划的执行和实现。在这种思想要求下企业必须对投入与产出进行控制,也就是对企业的能力进行校验、执行和控制。
具体流程如图1.1 所示:
生产规划
需求分析
主生产计划(MPS)
产能负荷分析(RCCP)
可行
作业计划与控制
(采购、车间加工)
物料需求计划(MPS)
能力需求计划(CRP)
可行
投入与产出控制
(I/O)
修改
N
必要时
修改
修改
N
调整能力数据
图1.1 闭环MRP 流程图
1.2.4库存与MRP-II
20世纪80年代,企业的管理者们又认识到制造业要有一个集成的计划,以解决阻碍生产的各种问题,而不是以库存来弥补,或缓冲时间去补偿的方法来解决问题,要以生产与库存控制的集成方法来解决问题,于是MRP-II即制造资源计划产生了。
1977年9月由美国著名生产管理专家奥列弗怀特Oliver W Wight提出了一个新概念制造资源计划(Manufacturing Resources Planning),称为MRP-II。MRP-II是对制造业企业资源进行有效计划的一整套方法。它是一个围绕企业的基本经营目标,以生产计划为主线,对企业制造的各种资源进行统一的计划和控制,使企业的物流、信息流、资金流流动畅通的动态反馈系统。
具体流程如图1.2所示:
经营规划
主生产计划
粗能力计划
可行
会计科目
成本中心
销售规划
资源清单
需求信息
客户信息
可行
物料需求计划
库存信息
物料清单
工作中心
工艺路线
应收帐款
总 帐
应付帐款
能力需求计划
可行
采购作业
车间作业
成本会计
业绩评价
供应商
路线
否
否
否
图1.2 MRPⅡ逻辑流程图
1.2.5 库存与ERP 的形成
企业之间的竞争范围的扩大,这就要求在企业管理的各个方面加强管理,要求企业的信息化建设应有更高的集成度,同时企业信息管理的范畴要求扩大到对企业的整个资源集成管理而不单单是对企业的制造资源的集成管理。企业规模扩大化,多集团、多工厂要求协同作战,统一部署,这已经超出了MRP-II的管理范围。
信息全球化趋势的发展要求企业之间加强信息交流与信息共享,企业之间即是竞争对手,又是合作伙伴,信息管理要求扩大到整个供应链的管理,这些更是MRP-II 所不能解决的。
供应链如图1.3所示:
物料流入 信息流 物料输出
供应市场
采购
加工
销售
需求市场
资金流入 信息流 资金输出
物流过程
资金流过程
图1.3 企业运作的供应链图
20世纪90 年代以来,MRP-II 发展到了一个新的阶段,企业信息处理量不断加大,企业资源管理的复杂化也不断加大,这要求信息的处理有更高的效率,传统的人工管理方式难以适应以上系统。而只能依靠计算机系统来实现,信息的集成度要求扩大到企业的整个资源的利用、管理,从而产生了新一代的管理理论与计算机系统--企业资源计划ERP。ERP总流程图如图1.4所示:
图1.4 ERP 总流程图
1.3课题研究目的
本课题研究的目的在于,鉴于当前国内外ERP技术发展趋势,提出一种采用微软公司最新的.NET技术平台的解决方案,重点研究并开发ERP系统中库存管理子系统,该系统采用基于Web的三层B/S结构。
库存管理系统的主要目的就是对所有入出库活动的管理、控制以及对有关的库存数据信息进行有效的统计、分析,从而为各类管理人员从不同侧面提供所需信息,使决策人员及早发现问题,采取相应措施,调整库存结构,缩短储备周期,加速资金周转,最大限度地降低库存占用,最终提高企业的经济效益。
1.4本论文的主要内容
①介绍了ERP的产生、库存与ERP的关系以及ERP在中国发展的现状,从而阐述了本课题的研究目的及其意义;
②查阅了大量的文献和资料,对ERP理论及其系统的实施作了深入的了解,并对其整体的设计有了较为深刻的认识;
③根据需求分析,制定出了该系统的总体设计方案、绘制了数据流程图,划分了各个功能模块;
④利用UML建模工具实现了库存管理系统分析;
⑤重点介绍了数据库设计及其各模块具体设计与实现;
⑥介绍了在软件开发过程中主要使用的.NET平台的ASP.NET,ADO.NET技术以及相应的程序开发语言C#,并列举了一些软件实现的具有特色的代码;
⑦对软件的主要功能部分演示了运行效果图并进行了说明。
本科学生毕业设计 2系统总体方案设计
2系统总体方案设计
2.1开发方案
在比较.NET平台与Java平台的优缺点的基础上,决定采用微软的.NET开发平台开发基于Web的B/S模式的ERP系统。ERP系统三层网络结构图如图2.1所示:
DBMS
服务器
Web
应用服务器
Web
客户端
企业
网络
图2.1 ERP系统三层网络结构图
该模式的优势在于系统简单、功能强大、扩展能力良好以及能够方便地跨地域操作等。在这种模式下,用户接口完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但主要事务逻辑在服务器端实现,形成所谓3-tier结构[4]。B/S模式,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript. JavaScript等)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。客户端利用浏览器通过Web服务器去访问数据库以获取必需的信息,而Web服务器与特定的数据库系统的联接可以通过专用软件实现。B/S结构无需考虑客户端的兼容性,而且后台数据库系统的改变也不会影响客户端,因此极大地方便了应用程序的开发和维护。
2.2开发环境
数据库:Microsof SQL Server 2000
技术平台:Microsoft .NET Framework1.1.4322.0版本
IIS:Internet Information Server 5.1版本
开发工具:Microsoft Visual Studio.NET 2003集成开发环境
开发语言:ASP.NET 1.1,采用C#语言实现
服务器操作系统:Window XP Professional 操作系统,系统运行服务器可以采用Windows 2000 Server或Windows 2003 Server等。
2.3系统总体设计方法与架构设计
由于开发的本系统访问数据库比较频繁,所以考虑使用了一个数据库工程(工程名为SQLHelper)来单独访问数据库的功能,这样该系统就基于该数据库工程来访问数据库了。该数据库工程包含三个文件,它们分别为SQLHelper.cs文件、SystemError.cs文件和SystemTools.cs文件。其中SQLHelper.cs文件包含系统对数据库的所有操作;SystemError.cs文件包含系统所有的错误处理操作;最后一个SystemTools.cs文件包含系统所有的通用工具。
系统总体架构设计如图2.2所示:
Web 显示层
数据访问层
数据库操作动态链接库
数据库
图2.2 系统总体架构设计图
① Web显示层即为ASP.NET页面层,为用户提供对应用程序的访问,本系统中Web显示层都以Web页面的形式实现,比如用户的登录页面Default.aspx。该层通过数据访问层访问数据库;
② 数据访问层为Web显示层提供数据服务,一般封装操作数据库的选择、添加、更新和删除等操作,同时还为Web显示层提供访问数据库的接口或函数等;
③ 数据库操作动态链接库(DLL),该层直接访问本系统的数据库,它由SQLHelper工程实现;
④ 数据库是系统最低层,它存储系统所有的数据,本系统的数据库使用SQL Server实现。
2.4系统运用到的关键技术
2.4.1数据库技术[5]
基于Web的ERP管理信息系统要协调企业内的各种资源,如果将这些资源均看成是广义上的数据的话,那么ERP系统本身就可以看成是一个数据库管理系统。现有中、高端系统无一例外地使用了某种类型的DBMS来保存ERP系统在运行过程中所生成的各种数据,如机构信息、用户信息等。ERP系统应该紧密地集成DBMS技术,而不应是作为建立在DBMS之上的一种应用程序。
Microsoft SQL Server 2000是Microsoft公司推出的关系数据库管理系统。Microsoft SQL Server 2000可以将数据库连接到Internet并通过Web浏览器显示数据操作,并与Microsoft公司的其它产品及第三方产品具有良好的兼容性。Microsoft SQL Server 2000的数据库引擎集成了对XML的支持,并且它内嵌的查询服务功能使数据库的查询、管理成为可能。
2.4.2Internet/Web技术
Internet/Web技术的迅速发展为人们提供了一个非常理想的协作环境及分布式应用平台。而Java技术的成熟以及微软.NET平台的推出更为在Web上开发高级的交互式应用程序提供了理想的开发工具。以企业Intranet计算环境为基础而建立的基于Web的ERP管理信息系统将具有比其它任何环境下的ERP系统更高的可用性。这对于实现跨国企业内及企业间的大型工作流管理具有重要的意义。
2.4.3C#语言、ASP.NET/ADO.NET技术/.NET技术[6][7][8]
C#语言是从C和C++语言演化而来,是Microsoft专门为使用.NET平台而创建的一门语言,是一种可以运行在.NET CLR上的语言。因为C#语言是近期发展起来的,所以它吸收了以前的教训,考虑了其它语言的许多优点,并解决了它们的问题。C#开发应用程序比使用C++简单,因为其语法比较简单。相对于.NET平台上使用的其它语言,C#优点是唯一为.NET Framework而设计的语言,是在移植到其它操作系统上的.NET版本中使用的主要语言。C#能使用.NET Framework代码库提供的每种功能。在本软件开发过程中,使用C#作为开发语言。
.NET是一种市场化的术语,Microsoft公司通过它来描述一种针对当今计算环境的新的软件方法。它相对以前的计算环境,.NET的目的是实现分布式计算,其任务是将COM组件制作成全球共享的XML Web服务,建立一套利用新的XML Web服务系统以及创建、部署基于以上内容的应用程序。.NET将许多新技术的新工具引入Windows平台中,其中每个都有其自己的名字和术语。
ASP.NET是微软的.NET开发平台关键的一部分,用来创建动态的Web内容和Web服务器应用程序,这些都将采用诸如HTML、XML和SOAP等Internet协议和数据格式。ASP.NET使开发者能够创建在IIS和.NET开发平台上运行的Web应用程序。ASP.NET对ASP进行了很大的改进,主要体现在三个领域:实现了事件-驱动编程模型,更好的状态管理,以及从.NET开发平台继承过来的好处。
ADO.NET是.NET中的一个核心技术,是.NET中包含的一个功能强大的数据访问类库。ADO.NET是由微软Microsoft ActiveX Data Object(ADO)升级发展而来的。ADO.NET的数据存取API提供两种数据访问方式,分别用来识别并处理两种类型的数据源,ADO.NET是.NET应用程序中处理存放在数据库中的信息首选技术,同时由于它提供了非连接的数据操作功能,所以适合于WEB应用程序开发。在本软件开发过程中,采用ADO.NET来实现对数据的操作。
3 利用UML实现库存管理系统分析
3.1UML介绍[9]
统一建模语言(UML)是一种通用的面向对象的可视化建模语言,可用于对软件
进行描述、可视化处理、构造和建立软件系统制品的文档,还可用于对系统的理解、设计、浏览、配置、维护和信息控制等。UML适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域以及各种开发工具,它是一种总结了以往建模技术的经验,并吸收当今优秀研究成果的标准建模方法。它包括概念的语义、表示法和说明以及静态的、动态的系统环境及组织结构模型。它可被交互的可视化建模工具所支持,这些工具可提供代码生成器和报表生成器。UML并没有定义一种标准的开发过程,但它适用于迭代式的开发过程,它是为支持大部分现存的面向对象开发过程而设计的。
UML描述了一个系统的静态结构和动态行为,将系统描述为一些离散的相互作用的对象,和这些对象在系统模型中所具的能为外部用户提供一定功能的模型结构。静态结构定义了系统中重要对象的属性和操作,以及这些对象之间的静态相互关系。动态行为定义了对象的时间特性和对象为完成目标而相互进行通信的机制。从不同但相互联系的角度对系统建立的模型可用于不同的目的。
3.2系统需求
管理信息系统建模的第一步,也是关键的一步,是用户需求的捕捉和分析。在需求捕捉分析中,UML采用的主要技术是用例分析技术。一个用例是指用户为了达到某种目标而系统进行的一次典型的交互过程,用例为用户和开发方之间提供了沟通的基础,一系列用例的集合,就构成了整个系统的需求,因此用例分析技术成为UML的核心。采用UML中的用例分析技术是避免或减少需求风险的主要途径。
通过深入的需求分析,得出库存管理系统业务流程图如图3.1所示:
生产部
请购单
采购部
采购订单
供应商
采购入库单
财务部
核算
仓库部
客户订单
客户退货
销售部
领料单
入库单
原材料、外构件、设备等
退货
订货
物料
器材
图3.1 库存管理系统业务流程图
根据调研分析本库存管理系统主要包括以下一些功能:
1)供应商根据采购部门下的订单,把器材交给库存管理员,库存管理员进行入库操作,输入相应的数据信息。
2)生产部根据生产情况填写领料单,库存管理员根据原材料库存情况进行出库操作,并输入相应的数据信息。
3)生产部门把生产多余的原材料入库,库存管理员进行入库操作,输入相应的数据信息。
4)销售部根据订货情况填写订货单,库存管理员根据库存情况进行出库操作,并输入相应的数据信息。
5)销售部根据顾客退货填写退货单,并把退货交给库存管理员,库存管理员进行销售退货的入库操作,并输入相应的数据信息。
6)库存管理员每隔一段时间需要对仓库进行盘点和调整处理。主要是清查仓库的实际库存情况和帐面是否吻合,如果信息不符的,库存管理员将作适当的调整处理。
7)库存管理员根据需要对库存商品进行统计,将统计信息传递给财务部。
3.2.1用例图
用例是向参与者提供重要价值的操作序列,认识它的另一种途径是:用例描述实际参与者与系统交互的方式。基本用例是一种简化、抽象且通用的用例。它以独立于技术和实现的方式描述用户的意图。基本用例是一种结构化的叙述,用应用程序领域和用户的语言来表达,它包含对任务或交互的简化、通用、抽象、与技术无关且独立于实现的描述。从担当某个(或某些)系统角色的用户的观点来看,基本用例是完整而有意义的,并且设计得很好,这就体现了交互背后的目的或意图。
用例图由两个主要元素:用例、使用者以及它们之间的关系组成。
用例(Use Case)
可以从以下几点来说明用例:
l 用例表示的是使用者的工作方法通过他/它和系统的交换过程描述来详细说明用户的真实需求;
l 用例表示的是不同的使用者对系统的应用方式;
l 用例是类,所有类的描述可以应用于用例;
l 用例是一种特殊的类:类的父子特性在使用范例中被具体化或扩展为应用(uses)和扩充(extends)。
使用者(Actor)
可以从以下几点来说明使用者
l 使用者是系统的外部用户
l 使用者不是系统的一部分
l 使用者可以是用户(人),也可以是一个在执行过程中要调用本系统的另一个应用系统。
根据需求分析,系统用例主要包括
① 入库
② 出库
③ 仓库管理
④ 商品管理
⑤ 商品种类管理
确定使用者主要包括
① 库存管理员
② 供应商
③ 生产部
④ 销售部
⑤ 财务部
系统用例图如图所示:
图3.2 系统用例图
3.2.2顺序图
顺序图用来描述对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。顺序图存在两个轴:水平轴表示不同的对象,垂直轴表示时间。在顺序图中对象用一个带垂直虚线的矩形框表示,在矩形框内标有对象名和类名。垂直虚线称为对象的生命线,它代表在对象之间的交互作用中该对象的生命期。
顺序图是一种非常简单扼要的可视化图解,可以帮助看清行为的次序。顺序图比较适合交互规模较小时可视化图解。对象很多时,交互又很频繁,则将使顺序图变得复杂起来。
下面以入库操作这个用例为例,其顺序图如下所示:
图3.3 物资入库顺序图
3.2.3类图
类加上他们之间的关系就构成了类图,类图中可以包含接口、包、关系等建模元素,也可以包含对象、链等实例。类图描述的是类和类之间的静态关系,与数据模型不同,类图不仅显示了信息的结构,同时还描述了系统的行为。
在软件开发的不同阶段使用的类图具有不同的抽象层次。一般类图可分为3个层次,概念层、说明层和实现层。概念层类图描述应用领域中的概念,一般这些概念和类有很自然的联系,但两者并没有直接的映射关系;说明层类图描述软件的接口部分,而不是软件的实现部分。这个接口可能因为实现环境、运行特性或者开发商的不同而有着多钟不同的实现;实现层类图才真正考虑类的实现问题,提供类的实现细节。
在本库存管理系统设计中,我采用了多层架构的体系结构,如图所示:
图3.4 系统体系架构图
仍以入库操作这个用例为例,其类图如图所示:
图3.5 物资入库类图
3.2.4状态图
状态图是对类所描述事物的补充说明,它显示了类的所有对象可能具有的状态,以及引起状态变化的事件。事件可以是给它发送消息的另一个对象或者某个任务执行完毕。状态的变化称作转移。一个转移可以有一个与之相连的动作,这个动作指明了状态转移时应该做些什么。
并不是所有的类都有相应的状态图。状态图仅用于具有下列特点的类:具有若干个确定的状态,类的行为在这些状态下会受到影响且被不同的状态改变。
另外也可以为系统描绘整体状态图。
仍以入库操作这个用例为例,其状态图如图所示:
图3.6 物资入库活动图
3.2.5部署图
部署图也称配置图、实施图,是对OO系统物理方面建模的两个图之一(另一个为构件图),它可以用来显示系统中计算结点的拓扑结构和通信路径与结点上运行的软构件等。一个系统模型只有一个部署图,部署图常常用于帮助理解分布式系统。
部署图主要包含两个基本元素、结点与连接。结点是存在于运行时的代表计算资源的物理元素,结点一般都具有一些内存,而且常常具有处理能力。结点可以代表一个物理设备以及运行该设备上的软件系统,如UNIX主机、PC机等。结点之间的连线表示系统之间进行交互的通信路径,该通信路径称为连接。
仍以入库操作这个用例为例,其部署图如图所示:
图3.7 系统部署图
通过上述,可以看到用UML实现建模能呈现给用户以简洁、明晰的可视化模型,开发团队的成员同客户都可利用这种精确性来加强沟通,提高对系统的需求分析。同时,软件工程中引入UML建模可以缩短开发周期,提高软件质量,更好的满足企业日益增长的需求。
本科学生毕业设计 4数据库设计
4 数据库设计
数据库是为特定目的(如搜索、排序和重新组织数据)而组织和提供的信息、表和其它对象的集合。数据库设计在系统中处于相当重要的地位,在大多数数据库应用系统中,最重要、最困难的不是应用系统设计而是数据库的设计,只有好的数据库设计、才能构造出强健稳定的系统。本部分将介绍库存管理系统的数据库设计工作。
4.1数据库需求分析
用户的需求具体体现在各种信息的提供、保存、更新和查询等方面。这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为下一步的数据库具体设计做好充分的准备。
针对本库存管理信息系统的需求,设计如下所示的数据项和数据结构:
1)商品信息:商品编号、商品名称、商品所属种类ID号、商品规格、商品计量单位、价格、数量、商品最小数量、商品最大数量、备注;
2)商品种类信息:商品种类编号、商品种类名称、上级商品种类编号、备注;
3)仓库信息:仓库编号、仓库名称、备注;
4)出入库操作信息:出入库操作编号、出入库类型、出入库总金额、存放仓库编号、出入库编号、状态(包括创建与审核)、创建日期、创建人;
5)客户信息:客户编号、客户类型、行业类型、通讯地址、邮政编码、备注;
6)员工信息:员工编号、员工名称、电话、性别、民族、生日、政治面貌;
7)出入库商品表:出入库商品编号、所属出入库操作编号、商品编号、价格、数量、类型、审核标志、备注;
8)库存盘点信息:库存盘点编号、盘点日期、商品编号、最初数量、盘点数量、盘点人、状态;
9)用户信息:用户编号、用户名称、用户密码、用户状态、用户类型。
4.2数据库概念结构设计
得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体以及它们之间的关系,为以后的逻辑结构设计打下好的基础。
在本系统中,根据上面的设计,得到以下几个基本实体:物资基本信息实体(包括商品信息实体、客户信息实体、仓库信息实体、用户信息实体等),物资入库信息实体、物资出库信息实体。
各个实体大致的E-R如下图所示:
商品信息实体
商品编号
商品价格
商品名称
商品数量
图4.2 商品信息实体E-R图
客户信息实体
客户编号
通讯地址
客户类型
邮政编码
图4.3 客户信息实体E-R图
仓库信息实体
仓库编号
仓库名称
备注
图4.4 仓库信息实体E-R图
用户信息实体
用户编号
用户密码
用户名称
用户类型
图4.5 用户信息实体E-R图
物资入库信息实体
入库编号
入库日期
入库类型
创建人
图4.6 入库信息实体E-R图
物资出库信息实体
出库编号
出库日期
出库类型
创建人
图4.7 出库信息实体E-R图
物 资
登 记
物资基本信息
物资调配
入库信息
出库信息
图4.8 实体之间关系的E-R图
4.3数据库逻辑结构设计
把上面设计好的数据库概念结构转化为SQL Server2000数据库系统所支持的实际数据库模型,即数据库的逻辑结构。
本库存管理系统数据库中各个表格的设计结果以及表之间的关系图如下面表格所示。每个表格对应于数据库中的一个表。
表4-1 商品信息表
列名
数据类型
长度
允许空
ProductID
int
4
ProNo
varchar
200
√
ProName
varchar
200
√
ProductTypeID
int
4
√
ProStyle
varchar
200
√
ProUnit
varchar
200
√
Price
money
8
√
Quantity
int
4
√
LowerSum
int
4
√
UpperSum
int
4
√
R
展开阅读全文