仓库管理系统开发.docx
《仓库管理系统开发.docx》由会员分享,可在线阅读,更多相关《仓库管理系统开发.docx(11页珍藏版)》请在冰豆网上搜索。
仓库管理系统开发
文档编制序号:
[KKIDT-LLE0828-LLETD298-POI08]
仓库管理系统开发
数据库课程设计报告
-------仓库管理系统
计算机学院计算机专业
姓名:
学号:
任课教师:
一、系统开发平台
本系统为仓库管理系统,主要用于企业商品库存的管理,包括出库、入库、查询库存、员工管理,以及查看操作日志等功能。
本系统采用PowerBuilder集成开发环境,后台使用MicrosoftSQLServer2000建立数据库。
本系统开发环境的操作系统为windowsXP+windows7。
本系统可运行于windowsXP,windowsVista,windows7等环境。
二、数据库规划
任务陈述
仓库管理系统,主要用于企业商品库存的管理,包括出库、入库、查询库存、员工管理,以及查看操作日志等功能。
查询可以实现模糊查询,也可以进行条件查询。
同时也能多条件混合查询。
入库可以进行入库操作,可以添加已有的商品也可以添加新商品,同时可以添加新的类别。
出库实现商品的售出,可以批量进行出售。
提高操作性。
管理员可以对员工管理,改变员工权限和密码。
提供简单的帮助。
可以查看员工的操作日志。
本系统实现的功能模块如下图所示:
图仓库管理系统(SMIS)功能模块示意图
任务目标
经过和客户的协商,最终确定以下任务目标:
1.查询
可以实现模糊查询,也可以进行条件查询。
同时也能多条件混合查询。
2.出库
3.实现商品的售出,可以批量进行出售。
提高操作性。
4.入库
5.进行入库操作,可以添加已有的商品也可以添加新商品,同时可以添加新的类别。
6.
7.员工管理
8.管理员对员工进行权限的修改,密码的修改等操作。
9.
10.日志查询
系统支持对所有员工的操作记录进行查询,方便管理员监督员工的各种行为。
提高软件的安全性能。
6.系统的运行平台及兼容性
本系统在WINDOWSVISTA平台开发
三、系统定义
系统边界
在定义需求时,必须定义要开发的计算机系统的边界,即确定哪些是系统需求,哪些是和系统相关的操作过程的需求,哪些是在系统范围之外的需求。
需求提供者经常不大了解系统应该包含哪些内容,因此他们可能会提出不恰当的需求。
需要通过系统边界定义初步剔除那些明显在系统范围之外的需求,以免这些需求干扰后续的分析过程。
检查每项原始需求,将它们区分为系统需求、过程需求和应该拒绝的需求。
考虑如下问题:
1.某项需求是否是基于不完整的或者不可靠的信息做出的
2.某项需求的实现是否需要在系统已定义的数据库之外的信息
3.某项需求是否和系统的核心功能相关
4.某项需求是否牵涉到系统之外的功能或者设备的性能
对于问题1和问题2可以判断是否为过程需求,如果是过程需求,则要求系统的操作者提供这些信息,否则需要复审系统应该处理的数据。
对于问题3和问题4可以判断是否是系统边界以外的需求。
如果是,则它可能是不必要的,也可能是无法实现的需求。
对于于操作过程相关的需求和系统边界之外的需求,必须准备一些技术的和经济的论据,说明这些需求被拒绝的理由。
这些论据应该是基于这个组织已定义的业务目标或者系统可行性研究的结果。
系统边界的定义和需求的检验都需要通过需求的复审来进行,需求的复审之前可以定义适当的分析检验表,如:
检验表项
检验内容的描述
草率设计
该需求是否包含不成熟的设计或实现信息
组合需求
是单独的需求还是可以细分为几个不同的需求
多余需求
只是系统的装饰而不是真正必须的吗
使用非标准硬件
该需求必须使用非标准的硬件还是软件
符合业务目标
该需求是否符合已定义的业务目标
需求多义性
该需求对不同的人是否可能有不同的理解
需求可实现性
根据现有的实现技术,是否可以实现该需求
需求可测试性
测试工程师是否可以从需求的表述中导出测试已判断系统是否符合需求
经过审核,本系统确定如下系统需求:
Ø查询(包括查)
Ø出库(包括改、查)
Ø采购(包括增、改、查)
Ø员工管理(包括改、查)
Ø操作日志(包括查)
四、需求分析
用户需求说明
4.1.1数据需求
通过分析,本系统需要维护4张表,分别是:
库存(goods)、日志(log)、员工信息(admin)、商品种类(type)
4.1.2事务需求
仓库管理系统,主要用于企业商品库存的管理,包括出库、入库、查询库存、员工管理,以及查看操作日志等功能。
查询可以实现模糊查询,也可以进行条件查询。
同时也能多条件混合查询。
入库可以进行入库操作,可以添加已有的商品也可以添加新商品,同时可以添加新的类别。
出库实现商品的售出,可以批量进行出售。
提高操作性。
管理员可以对员工管理,改变员工权限和密码。
提供简单的帮助。
可以查看员工的操作日志。
本系统实现的功能模块如下图所示:
系统需求说明
经过需求分析,确定仓库管理系统的功能模块包括:
●库存查看管理
●出库管理
●采购管理
●员工管理
●操作日志查询
可以把以上模块分为3个模块结合:
1.查询模块。
包括库存的查询和日志的查询。
2.仓库操作模块。
包括采购如出库两个操作。
3.权限管理模块。
包括用户注册和人员管理,修改密码等操作。
虽然权限控制不是一个独立存在的模块,但它贯穿在整个运行过程中。
仓库管理系统系统的人员管理模块需要经过权限授权才可以使用。
权限功能模块确定用户角色由无权限、出库、采购、出库/采购、管理员组成。
其中:
●管理员享有最高权限,可以对员工的信息档案进行录入、维护和修改,并可以使用系统中所有仓库操作功能。
●出库只能进行出库操作。
●采购只能进行采购操作
●出库/采购可以进行出库和采购操作。
●无权限只可进行查看库存的操作。
五、数据库逻辑设计
ER图
数据字典
数据字典(Datadictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。
数据字典的组成:
1、数据项
2、数据结构
3、数据流
4、数据存储
5、处理过程
仓库管理系统的数据字典如下:
1.销售人员信息表
A.表名:
goods
B.表结构:
2.客户信息表
A.表名:
log
B.表结构:
3.客户预定信息表
A.表名:
admin
B.表结构:
4.产品信息表
A.表名:
type
B.表结构:
关系表
附:
UML系统建模
1.仓库管理系统的用例分析
在需求分析中,仓库管理系统的功能模块(用例)包括:
入库,采购,员工管理,日志查询,库存查询。
2.仓库管理系统的域类分析
(1)对数据对象类的确定
(2)对各类间关联的确定
仓库管理系统类图
3.仓库管理系统的设计
使用状态图描述类的对象的状态及行为,显示对象的整个生命周期。
在本系统中,有状态图的类有客户预订和客户合同,将两个类的状态图结合在一起,如下图。
状态图
使用时序图对一个实例的特定控制流进行建模。
以下是各个用例的时序图。
客户预订管理的时序图
合同信息管理的时序图
合同收支管理的时序图
客户信息管理的时序图
产品信息管理的时序图
销售人员信息管理的时序图
在进行构架设计时,将仓库管理系统设计视图中的类组织成一个标准的3级体系结构。
用户服务包(UserServices)中的元素提供了表现信息和收集的可视化界面。
业务服务包(BusinessServices)中的元素负责维护、访问和修改数据。
数据服务包(DataServices)中的元素为另两个包的元素搭桥,并包含了管理用户请求(为了执行业务上的任务)的所有类和其他元素,包括支配数据操纵策略的业务规则。
仓库管理系统的体系结构
六、数据库物理设计
索引
视图
安全机制
系统安全:
此仓库管理系统采用了权限管理机制,只有获得相应权限后才可以对相应的表进行操作。
数据安全:
系统中提供了较为完善的事务提交和回滚机制,保证操作失败时,数据库仍然能够恢复到最近的正常状态。
其他
本节可选:
引入受控冗余等。
七、应用程序设计
功能模块
本仓库管理系统主要包括以下功能模块:
查询
出库
采购
员工管理
日志查询
界面设计
本系统的设计主要考虑界面的简单易用,所以界面尽量保持统一的风格,而且每一个界面争取设计的较为精致,因为代价是图片较多。
主要界面如下:
1.登陆界面
2.主界面
3.查询界面
4.出库界面
5.采购页面
6.员工管理界面
7.日志查询界面
事务设计
本系统登录用户分为入库,出库,入库出库和管理员,管理员拥有对其他工作人员的管理权限。
在系统中,用户的员工进行的每次操作都会被记录到数据库的表log中,并且可以由员工查询操作日志。
本系统中的查询均采用模糊查询,部分代码如下
stringmyf
myf=""
ifb1then
myf=myf+"(namelike'"+"%"+name+"%"+"')"
endif
此外开发本系统遇到的最大困难在于多条件查询时条件的选择。
尝试了使用很多种方法,最后选择了根据输入的条件动态设置过滤器的方法,这也是比较人性化的方法。
主要代码如下
stringmyf参考文献
SQLServer数据库项目案例导航清华大学出版社刘大玮、马传宝、孙颖洁编着