仓库管理系统设计说明书.doc
【精品文档】如有侵权,请联系网站删除,仅供学习与交流仓库管理系统设计说明书.精品文档.仓库管理系统设计说明书 发布信息² 作者² 发布范围² 版本² 发布日期 修改记录² 发布日期² 版本² 说明² 作者 目录 1引言4 1.1编写目的4 1.2读者对象4 1.3项目背景4 1.4参考资料4 2系统总体设计5 2.1系统结构模式5 2.2系统运行流程5 3系统详细设计5 3.1问题域部分的设计6 3.2人机交互部分的设计8 3.3任务管理部分的设计12 3.4数据管理部分的设计131引言l 仓库管理系统设计说明书,是在分析中小型企业库存管理流程资料的基础上,根据仓库管理系统需求说明书而编写的。l 本说明书为2004级军人本科学员信息系统原理与工程的课程设计作业产品的一部分,项目由国防科技大学信息系统与管理学院学员四队指挥自动化工程专业课程设计作业第四小组负责组织实施。1.1编写目的编写该设计说明书的目的是为了给该系统的使用者和开发者提供:l 软件总体需求:向用户描述仓库人事管理系统的基本功能。l 功能要求和数据结构:开发人员进行详细设计和编码的基础。l 软件综合测试的依据:第三方进行软件测试的指南和参考。1.2读者对象该设计说明书的读者为:小型企业公司相关人员、项目组成员及辅导教员。1.3项目背景软件系统名称:仓库管理系统仓库管理系统是企业信息系统中一个相当重要的组成部分。仓库管理系统的好坏直接影响企业物流管理效果,并直接影响企业的经济效益。其主要作用是帮助企业的仓库管理人员建立物料管理账目、规范物料出入库手续、分析库存物料利用及资金占用情况,并为物料采购供应、生产计划、销售部门提供必要的库存数据。1.4参考资料l 张维明,戴长华,陈卫东,信息系统原理与工程,电子工业出版社,北京,2004年7月(第2版).l Curtis HK Tsang, Clarence SW Lau, Ying K Leung, 面向对象技术使用VP-UML实现图到代码的转换, 清华大学出版社,北京,2007年2月(第1版).l 肖卫东等,信息系统原理与工程课程设计之仓库管理系统,2007年10月.2系统总体设计2.1系统结构模式鉴于C/S 结构模式响应速度快,操作界面多样、可以充分满足个性化要求、具有较强的事务处理能力等特点,且用户操作环境相对固定,本仓库管理系统拟采取C/S结构模式,三层结构方式开发:用户层业务层(bussiness)数据访问层(data access)数据对象层(common/data)返回数据返回数据返回数据请求请求请求图 1. 总体设计结构2.2系统运行流程(1) 验证登录系统。(2) 欢迎界面提示,简单介绍系统环境及各功能模块的基本功能。(3) 根据登陆权限,选择不同的操作或功能选项,完成各项仓库管理业务。(4) 用户暂时离开时,为保障系统安全可手动或自动锁定系统。(5) 注销或退出登录。3系统详细设计面向对象的系统设计应包括如下几个方面:l 问题域部分的设计l 人机交互部分的设计l 数据管理部分的设计l 任务管理部分的设计它们四者的关系如下图所示:图 2. 面向对象的系统详细设计3.1问题域部分的设计面向对象分析(OOA)的结果,可以抽象出22个类,各个类及其基本关系如下图所示:图 3. OOA结果:领域类模型从OOA到OOD不是一个突变的过程, OOA的结果符合OOD的问题域部分(PDC),OOD是在对OOA的结果作深入研究的基础上的改动和增补,这是一个循序渐进的过程。问题域部分的设计需要对OOA的结果加以增补和具体化:(1)针对编程语言支持能力进行调整:使用面向对象较好的C+语言编写程序,不需要对OOA的结果进行大的改动。(2)增加一般类,提供共同协议:用一个一般类集中地给出多个类的实现都要使用的属性和服务。这里,我们考虑增加表格等一般类,提供各类报表的基本属性和方法,方便继承和重用。(3)为实现复用采取的设计策略:软件的复用分为直接复用和通过继承复用,这里主要使用通过继承来复用。当然,我们使用的 MFC在一定意义上也是对微软基础类库的直接复用。(4)提高性能:对象之间具有高度繁忙的消息流通的情况下,这种高度耦合可能需要把两个或更多的类进行合并,我们把22个类分为六个小包,分别来考虑其属性和方法。在类及对象中扩充一些保存临时结果的属性,并使用友元等方法,在特殊的时候允许友元类的服务直接从其它对象中强行获得属性值。(5)提供数据管理部分:每个对象把自己传送给数据管理部分,让数据管理部分来存储对象自己。具体做法如下:通知一个对象保存自己;每个对象知道为了保存自己的状态应该传送什么消息到数据管理部分,增加一些结果属性和保存服务以完成此事。(6)完善对象细节:在这部分里,我们弥补了OOA模型的不足,解决了OOA阶段推迟考虑的问题,细化设计了对象的属性和服务。通过上述步骤,我们具体定义了各个类及其之间的关系,得到如下所示的系统分析类图。图 4. 分析类图3.2人机交互部分的设计根据用户选用的图形用户界面系统(GUI)和特定用户对人机界面的要求而设计的系统使用界面。3.2.1主界面菜单(命令层)设计库存管理(S) 采购管理(B) 领料管理(D) 财务管理(F) 资料管理(I) 系统管理(S) 帮助(H)其中,库存管理(S)库存明细(D)入库单(I)库存汇总(M)盘点库存(C)资金占用(N)采购管理(B)物料需求()采购计划(P)到货通知(A)物料验收(C)领料管理(D)领料明细(B)领料单(M)领料汇总(C)财务管理(F)发票(I)入库通知(T)核对资金占用(C)资料管理(I)物料基本信息()用户信息(U)系统管理(S)增加用户(A)修改权限()锁定系统(K)注销(L)帮助(H)仓库管理系统 帮助(H)关于 仓库管理系统()3.2.2人机交互界面设计示例图 5. 用户登录界面说明:l 通过此界面,根据用户的不同权限登陆,显示不同的登陆欢迎界面,使用不同权限的系统功能。l 输入“用户名”和“密码”,系统验证正确后,方可使用系统。l 点击“忘记密码”,可通过合适的方式取回或重置密码。图 6. 系统主界面说明:l 欢迎界面,点击菜单栏中的各项菜单,弹出不同的下拉菜单(活动菜单项将随用户的权限不同而不同),用户选择需要的可用操作即可。l 如点击“库存管理(S)>库存明细(D)”,进入如下图所示的库存明细界面,可以查、增、删、改库存明细,并能方便地进行汇总、打印等相关功能。图 7. 数据库访问界面示例说明:l 通过单据号、日期、摘要等字段查询数据库。l 查询结果显示在下方子窗口中,选择具体条目可进行更多相关操作。图 8. 表单界面示例说明:l 填写表单各项,各项栏目对应于实际表单的项目。l 填写完毕后,可保存如数据库,或取消,或进行直接打印。l 默认项目将由系统自动填写。图 9. 打印预览界面示例3.2.3出错处理设计(1)出错提示原则l 本系统中所用操作系统的出错显示形式不变,界面错误提示内容不变,错误编码保持不变。l 本系统中所用数据库及其工具的出错显示形式不变,界面错误提示内容不变,错误编码保持不变。l 本系统中所用其它系统工具软件,错误提示信息及编码保持原系统形式不变。(2)错误提示信息设计l 显示错误信息形式根据所选用的开发工具设计统一的画面形式,内容包括出错内容及后续操作提示。l 边界条件限制出错提示和后续操作提示。l 系统操作说明书中将备有对应出错信息的详细解释及处理方法。3.2.4本系统人机界面设计的主要特点有:l 对菜单命令设置了快捷键,方便高级用户的使用;l 对常用菜单命令增加了工具栏按钮,减轻用户记忆和操作步骤;l 可以对操作进行撤销,有一定的容错性;l 对无法撤销等操作,及时对用户做出提示和确认;l 对于固定数据或历史操作数据,采用下拉菜单的形式供用户选择,减少重复输入。3.3任务管理部分的设计用于定义系统中需要并发执行的各个任务,包括任务的定义、通信和协调,以及硬件分配、外部系统及设备约定。()辨认事件驱动任务,如物料采购部门必须根据企业物料需求情况和库存物料汇总报表来制订当月的物料采购计划,因而有物料需求表库存汇总表物料采购需求。还包括:l 采购计划审批采购计划l 到货通知验收物料等l 验收合格单+发票入库通知l 入库通知+验收合格但办理入库手续l 领料单审批领料单l 已审批领料单发放物料、签字l 已发领料单记账l 库存资金占用+领料汇总核对资金占用情况()辨认时钟驱动任务,如仓库管理部门每月末定期向企业有关管理部门报送库存物料汇总报表和库存物料资金占用报表,则系统就在时钟驱动下,每月月末提醒仓库管理部门制作汇总表。还包括:l 填写物料需求l 领料情况汇总l 盘点库存l 核对资金占用情况()辨认优先任务和关键任务,仓库管理过程中,物料的入库和领料等直接影响库存的事件在本系统中都是优先关键任务。(4)协调、审查和定义每个任务,即说明任务的性质、摘要、通信等。具体的设计结果见图4.3.4数据管理部分的设计按选定的数据管理系统而设计的负责对象的存储及检索的系统组成部分。数据管理部分提供了在数据管理协调中存储和检索东西的基本结构,它与物理的数据管理方法无关,可以是普通文件、带标记语言的文件、关系型数据库、面向对象数据库等。我们选用较熟悉的关系数据库来实现数据管理部分,适用已有的成熟数据库访问控件来访问关系数据库。图 10. 关系数据库框架3.3.1 ER模型设计根据关系数据库的基本原理,建立仓库管理系统的ER模型,画出ER图如下所示。共涉及基本表16张,每张基本表显示顺序从上到下依次为“表名”“主键”“属性”,属性的类型包括数值类型、字符类型、时间类型。图 11. ER模型3.3.2基本表结构设计由上ER模型,可以方便得到关系数据库的表结构设计,关系数据库中的部分主要表结构设计如下。(1) 物料基本信息表 1. 物料基本信息表结构表名MatInfor列名数据类型(精度范围)空/非空约束条件其它说明MatNumvarchar(10)非空主键MatNumvarchar(20)非空MatTypevarchar(20)非空MatSpecint非空ProdAreavarchar(20)非空Pricefloat非空MatUnitvarchar(2) 非空补充说明(2) 发票表 2. 发票表结构设计表名MatInvo列名数据类型(精度范围)空/非空约束条件其它说明InvoNumint非空主键MatNumvarchar(20)非空外键MatAmountint非空MatProdAreavarchar(20)非空MatPricefloat非空Totalfloat非空Dealervarchar(20) 非空Datedate非空补充说明(3) 物料验收单表 3. 物料验收单标结构设计表名MatCheck列名数据类型(精度范围)空/非空约束条件其它说明MatCheckNumint非空主键MatNumvarchar(20)非空外键MatAmountint非空ContNumint非空Total_minfloat非空Total_capvarchar(20)非空Purchaservarchar(2) 非空Checkervarchar(20)非空Custosvarchar(20)非空Datedate非空补充说明(4) 入库通知表 4. 入库通知表结构设计表名InNotice列名数据类型(精度范围)空/非空约束条件其它说明InNotNumint非空主键MatNumvarchar(20)非空外键MatAmountint非空Financevarchar(20)非空Accountvarchar(20)非空Custosvarchar(20)非空Datedate非空补充说明(5) 物料需求表 5. 物料需求表结构设计表名MatReq列名数据类型(精度范围)空/非空约束条件其它说明MatNumvarchar(20)非空主键;外键MatAmountint非空Departvarchar(20)非空主键Timedate非空主键补充说明(6) 库存明细账表 6. 库存明细账表结构设计表名StockDetail列名数据类型(精度范围)空/非空约束条件其它说明BillNumint非空主键;外键MatNumvarchar(20)非空主键;外键Abstractvarchar(20)非空Datedate非空Sumfloat非空Balancefloat非空Dealervarchar(20)非空补充说明(7) 领料汇总表 7. 领料汇总表结构设计表名DrawCollect列名数据类型(精度范围)空/非空约束条件其它说明Timedate非空主键MatNumint非空外键MatSumint非空Makervarchar(20)非空补充说明(8) 领料明细表 8. 领料明细表结构设计表名DrawDetail列名数据类型(精度范围)空/非空约束条件其它说明Datedate非空主键DrawBillNumint非空主键;外键Accountint非空补充说明(9) 领料单表 9. 领料单表结构设计表名DrawBill列名数据类型(精度范围)空/非空约束条件其它说明DrawBillNumint非空主键MatNumVarchar(20)非空外键DepartVarchar(20)非空PrincipalVarchar(20)非空DrawerVarchar(20)非空CustosVarchar(20)非空Datedate非空补充说明(10) 到货通知表 10. 到货通知表结构设计表名ArriNotice列名数据类型(精度范围)空/非空约束条件其它说明InvoiNumint非空主键;外键MatNameVarchar(20)非空外键ArriTimedate非空MakerVarchar(20)非空补充说明(11) 入库单表 11. 入库单表结构设计表名InBill列名数据类型(精度范围)空/非空约束条件其它说明InBillNumint非空主键InNoticeint非空外键MatNumVarchar(20)非空外键MatCheckNumint非空外键Totalfloat非空Datedate非空补充说明(12) 物料采购计划表 12. 物料采购计划表结构设计表名PurchPlan列名数据类型(精度范围)空/非空约束条件其它说明MatNameVarchar(20)非空主键;外键Timedate非空主键MatTotalint非空ExpPricefloat非空PrincipalVarchar(20)非空MakerVarchar(20)非空补充说明(13) 库存物料汇总表 13. 库存物料汇总表结构设计表名StockCollect列名数据类型(精度范围)空/非空约束条件其它说明Timedate非空主键MatNameVarchar(20)非空外键MatAmountInt非空PrincipalVarchar(20)非空MakerVarchar(20)非空补充说明(14) 库存资金占用汇总表 14. 库存资金占用表结构设计表名CapCollect列名数据类型(精度范围)空/非空约束条件其它说明Timedate非空主键MatNameVarchar(20)非空外键MatAmountInt非空CapTotal_rfloat非空PrincipalVarchar(20)非空MakerVarchar(20)非空补充说明(15) 账面资金占用汇总表 15. 账面资金占用表结构设计表名CapCollect列名数据类型(精度范围)空/非空约束条件其它说明Timedate非空主键MatNameVarchar(20)非空外键DrawAmountint非空CapTotal_bfloat非空Balancefloat非空AccountVarchar(20)非空补充说明(16) 用户列表表 16. 用户列表结构设计表名User列名数据类型(精度范围)空/非空约束条件其它说明UserNumint非空主键UserIDVarchar(10)非空Authorityint非空NameVarchar(20)非空Rankint非空DepartVarchar(20)非空AuthorizationVarchar(20)非空补充说明