仓库管理系统设计说明书.docx
《仓库管理系统设计说明书.docx》由会员分享,可在线阅读,更多相关《仓库管理系统设计说明书.docx(25页珍藏版)》请在冰豆网上搜索。
仓库管理系统设计说明书
仓库管理系统设计说明书
发布信息
✧作者
✧发布范围
✧版本
✧发布日期
修改记录
✧发布日期
✧版本
✧说明
✧作者
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数据管理部分的设计13
1
引言
●仓库管理系统设计说明书,是在分析中小型企业库存管理流程资料的基础上,根据《仓库管理系统需求说明书》而编写的。
●本说明书为2004级军人本科学员《信息系统原理与工程》的课程设计作业产品的一部分,项目由国防科技大学信息系统与管理学院学员四队指挥自动化工程专业课程设计作业第四小组负责组织实施。
1.1编写目的
编写该设计说明书的目的是为了给该系统的使用者和开发者提供:
●软件总体需求:
向用户描述仓库人事管理系统的基本功能。
●功能要求和数据结构:
开发人员进行详细设计和编码的基础。
●软件综合测试的依据:
第三方进行软件测试的指南和参考。
1.2读者对象
该设计说明书的读者为:
小型企业公司相关人员、项目组成员及辅导教员。
1.3项目背景
软件系统名称:
仓库管理系统
仓库管理系统是企业信息系统中一个相当重要的组成部分。
仓库管理系统的好坏直接影响企业物流管理效果,并直接影响企业的经济效益。
其主要作用是帮助企业的仓库管理人员建立物料管理账目、规范物料出入库手续、分析库存物料利用及资金占用情况,并为物料采购供应、生产计划、销售部门提供必要的库存数据。
1.4参考资料
●张维明,戴长华,陈卫东,信息系统原理与工程,电子工业出版社,北京,2004年7月(第2版).
●CurtisHKTsang,ClarenceSWLau,YingKLeung,面向对象技术——使用VP-UML实现图到代码的转换,清华大学出版社,北京,2007年2月(第1版).
●肖卫东等,《信息系统原理与工程》课程设计之仓库管理系统,2007年10月.
2
系统总体设计
2.1系统结构模式
鉴于C/S结构模式响应速度快,操作界面多样、可以充分满足个性化要求、具有较强的事务处理能力等特点,且用户操作环境相对固定,本仓库管理系统拟采取C/S结构模式,三层结构方式开发:
图1.总体设计结构
2.2系统运行流程
(1)验证登录系统。
(2)欢迎界面提示,简单介绍系统环境及各功能模块的基本功能。
(3)根据登陆权限,选择不同的操作或功能选项,完成各项仓库管理业务。
(4)用户暂时离开时,为保障系统安全可手动或自动锁定系统。
(5)注销或退出登录。
3
系统详细设计
面向对象的系统设计应包括如下几个方面:
●问题域部分的设计
●人机交互部分的设计
●数据管理部分的设计
●任务管理部分的设计
它们四者的关系如下图所示:
图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)
物料需求(R)
采购计划(P)
到货通知(A)
物料验收(C)
领料管理(D)
领料明细(B)
领料单(M)
领料汇总(C)
财务管理(F)
发票(I)
入库通知(T)
核对资金占用(C)
资料管理(I)
物料基本信息(M)
用户信息(U)
系统管理(S)
增加用户(A)
修改权限(M)
锁定系统(K)
注销(L)
帮助(H)
仓库管理系统帮助(H)
关于仓库管理系统(A)
3.2.2人机交互界面设计示例
图5.用户登录界面
说明:
●通过此界面,根据用户的不同权限登陆,显示不同的登陆欢迎界面,使用不同权限的系统功能。
●输入“用户名”和“密码”,系统验证正确后,方可使用系统。
●点击“忘记密码”,可通过合适的方式取回或重置密码。
图6.系统主界面
说明:
●欢迎界面,点击菜单栏中的各项菜单,弹出不同的下拉菜单(活动菜单项将随用户的权限不同而不同),用户选择需要的可用操作即可。
●如点击“库存管理(S)—>库存明细(D)”,进入如下图所示的库存明细界面,可以查、增、删、改库存明细,并能方便地进行汇总、打印等相关功能。
图7.数据库访问界面示例
说明:
●通过单据号、日期、摘要等字段查询数据库。
●查询结果显示在下方子窗口中,选择具体条目可进行更多相关操作。
图8.表单界面示例
说明:
●填写表单各项,各项栏目对应于实际表单的项目。
●填写完毕后,可保存如数据库,或取消,或进行直接打印。
●默认项目将由系统自动填写。
图9.打印预览界面示例
3.2.3出错处理设计
(1)出错提示原则
●本系统中所用操作系统的出错显示形式不变,界面错误提示内容不变,错误编码保持不变。
●本系统中所用数据库及其工具的出错显示形式不变,界面错误提示内容不变,错误编码保持不变。
●本系统中所用其它系统工具软件,错误提示信息及编码保持原系统形式不变。
(2)错误提示信息设计
●显示错误信息形式根据所选用的开发工具设计统一的画面形式,内容包括出错内容及后续操作提示。
●边界条件限制出错提示和后续操作提示。
●系统操作说明书中将备有对应出错信息的详细解释及处理方法。
3.2.4本系统人机界面设计的主要特点有:
●对菜单命令设置了快捷键,方便高级用户的使用;
●对常用菜单命令增加了工具栏按钮,减轻用户记忆和操作步骤;
●可以对操作进行撤销,有一定的容错性;
●对无法撤销等操作,及时对用户做出提示和确认;
●对于固定数据或历史操作数据,采用下拉菜单的形式供用户选择,减少重复输入。
3.3任务管理部分的设计
用于定义系统中需要并发执行的各个任务,包括任务的定义、通信和协调,以及硬件分配、外部系统及设备约定。
(1)辨认事件驱动任务,如物料采购部门必须根据企业物料需求情况和库存物料汇总报表来制订当月的物料采购计划,因而有物料需求表+库存汇总表=>物料采购需求。
还包括:
●采购计划=>审批采购计划
●到货通知=>验收物料等
●验收合格单+发票=>入库通知
●入库通知+验收合格但=>办理入库手续
●领料单=>审批领料单
●已审批领料单=>发放物料、签字
●已发领料单=>记账
●库存资金占用+领料汇总=>核对资金占用情况
(2)辨认时钟驱动任务,如仓库管理部门每月末定期向企业有关管理部门报送库存物料汇总报表和库存物料资金占用报表,则系统就在时钟驱动下,每月月末提醒仓库管理部门制作汇总表。
还包括:
●填写物料需求
●领料情况汇总
●盘点库存
●核对资金占用情况
(3)辨认优先任务和关键任务,仓库管理过程中,物料的入库和领料等直接影响库存的事件在本系统中都是优先关键任务。
(4)协调、审查和定义每个任务,即说明任务的性质、摘要、通信等。
具体的设计结果见图4.
3.4数据管理部分的设计
按选定的数据管理系统而设计的负责对象的存储及检索的系统组成部分。
数据管理部分提供了在数据管理协调中存储和检索东西的基本结构,它与物理的数据管理方法无关,可以是普通文件、带标记语言的文件、关系型数据库、面向对象数据库等。
我们选用较熟悉的关系数据库来实现数据管理部分,适用已有的成熟数据库访问控件来访问关系数据库。
图10.关系数据库框架
3.3.1ER模型设计
根据关系数据库的基本原理,建立仓库管理系统的ER模型,画出ER图如下所示。
共涉及基本表16张,每张基本表显示顺序从上到下依次为“表名”“主键”“属性”,属性的类型包括数值类型、字符类型、时间类型。
图11.ER模型
3.3.2基本表结构设计
由上ER模型,可以方便得到关系数据库的表结构设计,关系数据库中的部分主要表结构设计如下。
(1)物料基本信息
表1.物料基本信息表结构
表名
MatInfor
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
MatNum
varchar(10)
非空
主键
MatNum
varchar(20)
非空
MatType
varchar(20)
非空
MatSpec
int
非空
ProdArea
varchar(20)
非空
Price
float
非空
MatUnit
varchar
(2)
非空
补充说明
(2)发票
表2.发票表结构设计
表名
MatInvo
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
InvoNum
int
非空
主键
MatNum
varchar(20)
非空
外键
MatAmount
int
非空
MatProdArea
varchar(20)
非空
MatPrice
float
非空
Total
float
非空
Dealer
varchar(20)
非空
Date
date
非空
补充说明
(3)物料验收单
表3.物料验收单标结构设计
表名
MatCheck
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
MatCheckNum
int
非空
主键
MatNum
varchar(20)
非空
外键
MatAmount
int
非空
ContNum
int
非空
Total_min
float
非空
Total_cap
varchar(20)
非空
Purchaser
varchar
(2)
非空
Checker
varchar(20)
非空
Custos
varchar(20)
非空
Date
date
非空
补充说明
(4)入库通知
表4.入库通知表结构设计
表名
InNotice
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
InNotNum
int
非空
主键
MatNum
varchar(20)
非空
外键
MatAmount
int
非空
Finance
varchar(20)
非空
Account
varchar(20)
非空
Custos
varchar(20)
非空
Date
date
非空
补充说明
(5)物料需求
表5.物料需求表结构设计
表名
MatReq
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
MatNum
varchar(20)
非空
主键;外键
MatAmount
int
非空
Depart
varchar(20)
非空
主键
Time
date
非空
主键
补充说明
(6)库存明细账
表6.库存明细账表结构设计
表名
StockDetail
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
BillNum
int
非空
主键;外键
MatNum
varchar(20)
非空
主键;外键
Abstract
varchar(20)
非空
Date
date
非空
Sum
float
非空
Balance
float
非空
Dealer
varchar(20)
非空
补充说明
(7)领料汇总
表7.领料汇总表结构设计
表名
DrawCollect
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
Time
date
非空
主键
MatNum
int
非空
外键
MatSum
int
非空
Maker
varchar(20)
非空
补充说明
(8)领料明细
表8.领料明细表结构设计
表名
DrawDetail
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
Date
date
非空
主键
DrawBillNum
int
非空
主键;外键
Account
int
非空
补充说明
(9)领料单
表9.领料单表结构设计
表名
DrawBill
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
DrawBillNum
int
非空
主键
MatNum
Varchar(20)
非空
外键
Depart
Varchar(20)
非空
Principal
Varchar(20)
非空
Drawer
Varchar(20)
非空
Custos
Varchar(20)
非空
Date
date
非空
补充说明
(10)到货通知
表10.到货通知表结构设计
表名
ArriNotice
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
InvoiNum
int
非空
主键;外键
MatName
Varchar(20)
非空
外键
ArriTime
date
非空
Maker
Varchar(20)
非空
补充说明
(11)入库单
表11.入库单表结构设计
表名
InBill
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
InBillNum
int
非空
主键
InNotice
int
非空
外键
MatNum
Varchar(20)
非空
外键
MatCheckNum
int
非空
外键
Total
float
非空
Date
date
非空
补充说明
(12)物料采购计划
表12.物料采购计划表结构设计
表名
PurchPlan
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
MatName
Varchar(20)
非空
主键;外键
Time
date
非空
主键
MatTotal
int
非空
ExpPrice
float
非空
Principal
Varchar(20)
非空
Maker
Varchar(20)
非空
补充说明
(13)库存物料汇总
表13.库存物料汇总表结构设计
表名
StockCollect
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
Time
date
非空
主键
MatName
Varchar(20)
非空
外键
MatAmount
Int
非空
Principal
Varchar(20)
非空
Maker
Varchar(20)
非空
补充说明
(14)库存资金占用汇总
表14.库存资金占用表结构设计
表名
CapCollect
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
Time
date
非空
主键
MatName
Varchar(20)
非空
外键
MatAmount
Int
非空
CapTotal_r
float
非空
Principal
Varchar(20)
非空
Maker
Varchar(20)
非空
补充说明
(15)账面资金占用汇总
表15.账面资金占用表结构设计
表名
CapCollect
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
Time
date
非空
主键
MatName
Varchar(20)
非空
外键
DrawAmount
int
非空
CapTotal_b
float
非空
Balance
float
非空
Account
Varchar(20)
非空
补充说明
(16)用户列表
表16.用户列表结构设计
表名
User
列名
数据类型(精度范围)
空/非空
约束条件
其它说明
UserNum
int
非空
主键
UserID
Varchar(10)
非空
Authority
int
非空
Name
Varchar(20)
非空
Rank
int
非空
Depart
Varchar(20)
非空
Authorization
Varchar(20)
非空
补充说明
注:
合同范本有风险,使用需谨慎,法律是经验性极强的领域,范本无法思考和涵盖全面,最好找专业律师起草或审核后使用,谢谢您的关注!