2 MIS 系统基本理论的介绍
2.1 MIS 系统的概念
MIS(Management Information System) 管理信息系统 [2] , 是用来管理人员和决策提供计算机硬件 , 系统软件 , 数据库 , 通信 , 人员和应用程序的集合 ,MIS 的对象是信息 , 系统由输入 , 处理输出 , 反馈 , 控制等要素组成 , 管理信息由信息的采集 , 传递 , 储存 , 加工 , 维护和使用等五方面组成。
2.2 MIS 系统的开发过程
MIS 系统的开发包括:系统规划,开发前准备,系统调查,可行性分析,系统分析,系统设计,系统实施,测试,维护及系统评价等。
(1) 系统开发前准备
主要包括提出开发要求,成立项目开发小组,制定开发计划等内容。
(2) 系统调查
新系统的系统分析和系统设计工作要建立在对现行系统调查的基础上,调查的主要内容包括:现行系统的基本概况,系统中信息处理的概况,系统的资源情况,系统各类人员对信息系统的态度。
(3) 系统设计
系统设计又称系统物理设计,系统设计要根据系统分析报告中的系统逻辑模型综合考虑各种约束,利用一切可用的技术手段和方法进行各种具体设计,确定新系统的实施方案,解决“如何做”的问题。
(4) 系统实现
本系统主要实现对商品库存进行有效地管理,包括“数据信息”,“数据管理”,“库存操作”,“记录查询”和“系统管理”这五个部分。其中“库存操作”模块是系统的核心模块,用来进行对商品的入库和出库的查询操作等。
3 需求分析
需求分析 [1] 是系统开发早期的一个重要阶段,是任一软件开发工作成功的基础。目的是确定用户对系统的需求。按照对数据进行管理的不同方式,计算机应用系统可以分为基于普通文件的应用系统和基于数据库的应用系统两大类。所谓数据库应用系统,就是对后一类系统的简称。在一切计算机中,成批的数据总是用文件来存储的,高级语言和数据库语言都能向用户程序提供数据文件。
3.1 系统的功能需求
通过需求分析,对商品库存进行有效的管理,使之形成完善的应用系统。数据库设计中要合理设置商品信息和库存信息等,用来实现商品信息的新增,修改、删除等功能,使得商家有较详细的数据统计与分析。
下面就介绍一下商品库存管理系统应基本具有如下的功能:
(1) 数据信息:对商品类别、商品产地、商品单位进行设置。
(2) 数据管理:对商品信息管理、客户信息管理、供货商信息管理。
(3) 库存操作:商品入库操作、商品出库操作。
(4) 记录查询:有入库记录查询、出库记录查询、入库结算查询、出库结算查询等。
(5) 系统管理:修改密码、系统退出。
3.2 系统的性能要求
(1) 可*性:有一个稳定可*的系统是确保整个系统正常运行的关键;
(2) 安全性:整个系统不应由于操作失误,或恶意攻击而遭到破坏;
(3) 通用性:界面简洁美观、通俗易懂;
(4) 灵活性:系统应易扩充、易修改,对功能的变化和环境的变化具有较强的适应性。
3.3 系统流程图
4 系统的总体设计
本部分主要介绍系统要实现的功能,搭好设计的总体框架,使我们对要开发的系统有一个系统、全面、确切的认识。
4.1 系统功能模块图
本系统在设计时采用结构化程序的设计方法,系统的总体结构采用菜单来调用表单,利用表单来对信息进行管理、数据录入、信息查询、系统管理等工作。
4.2 系统功能说明
本系统主要有如下五个功能模块 :
(1) 数据信息 : 主要是对商品的类别、单位、产地进行分类,同时也可以对商品的类别、单位、产地进新增、修改等,在商品出库、入库时自动选择,方便操作。
(2) 数据管理 : 对商品信息、客户信息、供货商信息进行新增、修改、删除、等。
(3) 库存操作 : 商品入库操作、商品出库操作。
(4) 记录查询 : 有入库记录查询、出库记录查询、入库结算查询、出库结算查询等。
(5) 系统管理 : 修改密码、系统退出。
5 详细设计与实现
详细设计 [1] 阶段的任务是要设计出程序的“蓝图”,再根据这个蓝图写出这个程序的代码。因此详细设计的结果基本上决定了最终的程序代码的质量。 详细设计是为系统中的每一个模块确定使用的算法和块内数据结构。并描述每个模块的具体实现细节。其中数据的操作分为录入、查询、更新及删除。都用 Visual Foxpro 编程语言来实现的。在该系统的设计实现中,运用了 Command 控件,使得整个系统界面清楚、易于操作。同时运用了组合框控件等 , 用户选择便可实现操作。
5.1 数据库设计
5.1.1 概念设计 E-R 模型
概念设计 [8] 的具体任务 : 识别系统中的实体、实体的属性、实体的关键字和实体间的联系,采用实体关系建模技术来描述客户信息的实体、属性及关系,从而达到为系统建立良好的数据模型的目的。实体联系方法是 P.P.S.Chen 在 1976 年首先提出的用 E-R 图来描述现实世界中数据之间联系的有效方法,现在己成为在数据库概念设计阶段描述系统概念模型的主要工具。 E-R 图直观易懂,是设计人员和用户之间进行沟通的有效工具。
(1) 供货商信息实体图如下 :
图 3 供货商信息实体图
(2) 商品信息实体图如下 :
商品编号
(3) 客户信息实体图如下 :
图 5 客户信息实体图
5.2 具体模块的设计
5.2.1 数据信息模块
数据信息有商品的类别子模块,是将杂乱无章的商品进行分门类别,如将所有的家用电器分为一类,所有的饮料分为一类,办公用品放在一类等;商品单位子模块,每一件商品都有相应的单位,以便在出库、入库的时候可以进行相对映地选择,不致于出错;商品产地子模块,是用来存放商品产地信息的,因为不同的地方有可能生产同一种产品的情况,所以对商品的产地也是进行分类。以上三个子模块都具有新增信息,修改信息,和删除信息等功能。
5.2.2 数据管理模块
数据管理模块是对商品信息、客户信息、供货商信息,进行管理、增添、修改、删除的操作。商品信息管理子模块,是用来对商品信息进行管理,单击新增按钮,就会弹出新增对话框,此时就可以录入新进的商品,输入商品名称,选择商品类别、单位、产地,输入库存下限、商品单价,再保存录入的信息;供货商信息管理子模块、客户信息子模块和商品信息管理子模块相似的,用的都有是同一个控件操作。
5.2.3 库存操作模块
库存操作模块是对商品入库操作、商品出库操作进行操作,是系统中的核心模块,是用进行商品的入库出库操作。在商品入库时要填写商品编号、名称、商品单价、单位、进货数量、进货单价以及供货商信息的填写;商品出库时也是这样操作的。商品的出库入库表单如下 ( 见图 6,7) 。
图 6 商品入库表单
如果是零食或饮料类商品应该考虑到保质期的问题,这就需要输入食品的保质期,保质期的时间为天,输入表单为:
图 7 输入商品保质期表单
在进货操作完毕之前弹出一个信息框,主要是统计进这笔货需要付多少钱的问题,这就是将进货单价与进货数量相乘的结果,如下图所示:
图 8 金额合计对话框
这样进货操作就完成了,这时也会弹出一个信息框:
图 9 进货操作完成对话框
确定保存信息。
图 10 商品出库表单
5.2.4 记录查询模块
记录查询模块是用来查询库存操作时所产生的记录,包括入库记录,出库记录、入库结算、出库结算记录、库存记录的查看。记录的查看可以按照任何一项来查询,如:入库记录,可以按时入库编号,商品编号、商品名称、商品类别、商品产地任何一个条件都可以查询,库存记录查询表单如下(见图 8 )。
图 11 库存记录查询
5.2.5 系统管理模块
系统管理模块是用来修改系统密码和系统退出功能。
5.3 用户登录的设计与实现
5.3.1 用户登录界面
用户在登录界面上需要输入用户名然后输入密码.若验证合格便可以进入系统,如果输入的用户名或密码不正确.将会弹出信息提示框,提示三次,不再提示。当输入都正确后.单击登录按钮,便可以进入系统主界面(见图 9 )。
5.3.2 系统主界面 用户通过输入用户名和密码登录到系统主界面,系统主界面主要包括菜单数据信息、数据管理、库存操作、记录查询和系统管理,可以单击进行操作,菜单栏下面的是工具栏,以方便用户操作。系统主界面如下(见图 10 ):
6 系统的测试与维护
6.1 系统开发及运行环境
(1) 系统开发平台: Microsoft Visual FoxPro 6.0 简体中文版。
(2) 运行平台: Windows 2000/ Windows 2003/Windows XP 或更高版本。
(3) 最佳分辨率 :1024*768 。
6.2 系统测试
软件测试阶段的主要任务是发现并排除在分析、设计、编程阶段中产生的各种类型的错误,以得到可使用的软件系统。从用户和软件开发人员不同的角度看,进行软件测试的目的是完全不同的。用户往往是通过测试暴露出软件所存在的错误和缺陷,以考虑是否能接受该产品;而软件开发人员则希望通过测试来证实软件产品不存在任何错误和缺陷,验证该软件已满足了用户的需求,从而提高用户使用该软件产品的信心。因此,软件开发人员往往会选择那些导致程序失败概率小的测试数据去测试软件。显然,这样的测试对完善和提高软件质量毫无价值。因此,测试的目的应该是从软件包含有错误这一前提出发,通过测试查出并改正尽可能多的错误,不断提高软件的质量和可*性 [1] 。因此,为了确保本系统的质量,作者对系统进行了全面的测试和调试。作者还特意邀请了本专业的部分同学,对系统进行反复使用,发现了不少问题并得到了很好的解决。
软件测试分为动态测试和静态测试。按产生测试数据的不同方式,动态测试可分为功能测试和结构测试,即黑盒测试和白盒测试。本系统采用的是黑盒测试。所谓黑盒测试是把测试对象视为一个黑盒子,测试人员只着眼于软件的外部特性,而不考虑软件的内部的逻辑结构,是在软件接口上进行的测试。本系统的测试用例如下:在商品入库表单中输入商品编号 000007 ,名称 TCL 彩电,商品单价为 3000 元,进货数量为 50 台,供货商编号为 0005 ,供货商名称为安徽省 TCL 电视机厂,这些信息都写入,单击添加,再单击保存,接下来来查看一下,点击添加,这些信息在入库信息表单里可以看见,单击的是保存,那么这些信息就保存到了库存记录表中了。进行多次反复测试,系统基本上没有什么错误了。
在开发该系统之前,我经过详细的调查,搜集大量的相关资料,并征求指导老师的意见,并得到指导教师的批准,再进行该系统设计,设计时,我严格按照软件工程的思想,从需求分析、可行性分析、总体设计、最后到详细设计。本系统我认为最出色的地方,就是几乎都是采用类控件设计的,因为采用该设计有便于统一外观,简化操作,给用户带极大的方便,但本系统也有不足之处,就是没有实现网络化,不过根据我在市场调查,目前还有很多小型企业尚未达到利用网络化的要求,他们存放的商品也并不太多,所以,根据市场的情形,就只实现单机系统也就足够了。当然,在开发的过程中,我也遇到了很多技术上的问题,我查阅了很多相关资料,再向指导老师征求意见,终于解决了一道道难题,通过这次毕业设计,使我把以前所学的零散的知识进行了一次大的综合,对软件开发也有一个总体的认知,并产生了浓厚的兴趣,也为在以后的软件开发打下了坚实的基础。
致谢
经过几个月的毕业设计即将结束了 , 在这一段时间里 , 我们在指导教 师徐 老师的精心指导下 , 顺利完成了设计。在大三的暑假 , 徐 老师就要求我们看一些书籍 , 为这次设计做些准备性工作 , 也把几年来学过的知识全面地复习了一次。毕业设计也是对以前所学知识一次检验 , 使我深深感受到毕业设计的重要性。在整个设计期间得到了 徐 老师的耐心指导 , 为我提出了许多宝贵意见和建议 , 还有班级同学也给了我许多帮助 , 使我的毕业设计得以顺利完成。在此 , 我对 徐 老师和同学表示衷心的感谢与崇高的敬意!
参考文献 :
[1] 曾建潮 . 软件工程 [M] .武汉理工大学出版社, 2002:20-25.
[2] 刘瑞新 .Visual Basic 管理信息系统开发毕业设计指导及实例 [M]. 机械工业出版社 ,2005:3-8.
[3] 杨开英 . 数据库系统概论 [M] .武汉理工大学出版社, 2002:43-45.
[4] 李春葆. Visual Foxpro 程序设计 [M] .清华大学出版社, 2005:65-68.
[5] 李贤志 . Visual Foxpro 程序设计教程 [M]. 中国科学技术大学, 2003:12-15.
[6] 求是科学 .Visual Foxpro 数据库通用模块及典型系统开发实例 [M] ,人民邮电出版社, 2006:78-82.
[7] 曹云鹏 . 商场商品库存管理系统的设计与实现 [J], 《商场现代化 >>2006 年 3 月 ( 上旬刊 ) 总第 460 期
[8] 周迪民 . 库存管理信息系统的研究与开发 [J], 湖南科技学院学报 ,2006 年 11 月 , 第 27 卷 , 第 11 期
[9] 甘宁 . 一个商品库存管理系统的设计与实现技术 [J], 计算机与数字工程 ,2001 年 7 月 , 第五期
[10] 贾振元 . 中小型企业库存管理系统数据管理 [J] ,管理信息化, 2006
[11]P.M.Swamidass , Safety Stock[M] , Springer US , 2006
[12] D. Denis, Stock management, influence on manual materials handling in two warehouse superstores[J],International Journal of Industrial Ergonomics ,2006