软件项目开发课程设计-超市收银系统设计说明书
*******************
实践教学
*******************
计算机与通信学院
2011年秋季学期
软件开发综合训练课程设计
题 目: 超市收银系统
专业班级: 08级计算机科学与技术(3)班
姓 名: 王 渊
学 号: 08240304
指导教师: 张 红
成 绩:
0
目录
摘 要 ............................................................................................................................................... 1 序 言 ............................................................................................................................................... 2 1、可行性分析 ................................................................................................................................. 3
1.1问题描述 ............................................................................................................................. 3
1.2可行性分析研究 ................................................................................................................. 3
1.2.1技术可行性 ............................................................................................................ 3
1.2.2经济可行性 ............................................................................................................ 3
1.2.3操作可行性 ............................................................................................................ 4 2、项目开发计划 ............................................................................................................................. 5
2.1编写目的 ............................................................................................................................. 5
2.2项目背景 ............................................................................................................................. 5
2.3项目概述 ............................................................................................................................. 5
2.4项目开发计划 ..................................................................................................................... 6
2.5交付期限 ............................................................................................................................. 6 3、需求分析 ..................................................................................................................................... 7
3.1任务需求分析 ..................................................................................................................... 7
3.2数据流图、数据字典 ......................................................................................................... 8
3.2.1数据流图 ................................................................................................................ 8
3.2.2数据字典 .............................................................................................................. 10 4、系统概要设计 ........................................................................................................................... 13
4.1总体设计 ........................................................................................................................... 13
4.2数据库概念设计 ............................................................................................................... 13
4.2.1数据项和数据结构 .............................................................................................. 13
4.2.2实体联系E-R图 .................................................................................................. 14 5、详细设计 ................................................................................................................................... 15
5.1系统功能模块图 ............................................................................................................... 15
5.2各子系统功能模块图 ....................................................................................................... 15
5.3程序流程图 ....................................................................................................................... 18
5.4数据库逻辑结构设计 ....................................................................................................... 19
5.5连接数据库的特点 ........................................................................................................... 22
5.6用户界面设计 ................................................................................................................... 23
5.6.1一般交互设计 ...................................................................................................... 23
5.6.2信息显示设计 ...................................................................................................... 24
5.6.3数据输入界面设计 .............................................................................................. 24
5.7软件测试 ........................................................................................................................... 25
5.7.1测试的方法和步骤 .............................................................................................. 25
5.7.2测试用例 .............................................................................................................. 26 设计总结 ......................................................................................................................................... 28 参考文献 ......................................................................................................................................... 29 致 谢 ........................................................................................................................................... 30
0
摘 要
随着小超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。超市时时刻刻都需要对商品各种信息进行统计分析。而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率。
超市管理系统主要包含以下几个模块:系统权限的设定、原始数据录入、数据的汇总及查询等。从而,实现对进货、销售及员工信息等实现全面、动态、及时的管理。本文系统的分析了软件开发的背景以过程;首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:数据库的设计、各个模块的设计和实现,以及具体界面的设计和功能。
关键词: 超市收银, 管理系统, Visual Basic,SQLserver2000
1
序 言
超市需要处理大量的库存信息,还要时刻更新产品的销售信息,不断添加商品信息。面对不同种类的信息,需要合理的数据库结构来保存数据信息,需要有效的程序结构支持各种数据操作的执行。商店自动化的产品管理在欧美等国家早已经实现,也是零售业管理的基础。它最主要的特点是能够实时的和准确的控制店内的销售情况。如果可以能够实时掌握销售流程及销售情况,则可以有效地加速商品的周转率并提高服务质量,而且可以减少产品售价不符等所产生的问题。顾客的消费要求的是希望在超市购物中能基本上都能购得所需的商品,并且还要既保证商品质量还要享受优质,方便的服务。
2
1、可行性分析
1.1问题描述
超市零售管理系统是小型超市商品销售及货物管理的主要控制部分,直接影响销售的方便性及管理的
性。随着信息时代的发展,对效率的要求日益提高,因而软件控制销售和管理已经取代了传统全手工方式。小型超市具有自身的特点:商品要求一般齐全,进出货关系较为简单,员工人数种类不多;在软件角度看,数据较少,对存储和速度要求不高。但正由于员工较少,使用软件控制成为 必须。
1.2可行性分析研究
1.2.1技术可行性
技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬、软件配置能否满足开发者需要等。目前各宾馆均建有局域网,并且采用PC机作为工作台,其容量、速度能满足系统要求。
根据客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目 标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。
1.2.2经济可行性
因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上完全是可行的。 (1)超市有能力承担系统开发费用
开发新系统的工作是一项间距复杂的工作,它的投资主要是人力和物力的投
3
资。对于本系统的开发者来说,其主要投资还是在人力和物力两个方面。如果是企业自己安排人手开发系统的话,其主要的投资还是在人力资源上,从系统的业务需求调查到系统的分析编码制作都是需要巨大的人力投入的。软件企业作为一个简短的高科技产业,其员工要求都比一般企业的要求要高,而且对系统开发及软件产业了解比较多,所以在自我开发管理系统的过程中,企业自己比较容易安排人手,这样就可以为企业借阅大部分的额外开支。同时软件就其它产品来属于高端行业,无论是产品的价格还是质量都比较高,而经营产品的经销商或者是商家都要求有雄厚的资金支持。所以,在系统的开发过程中,企业完全有能力承担开发费用。
(2)新系统将为企业带来经济效益
管理系统是一个信息化、智能化和先进管理理念的集合体。而管理是一个动态过程,在其运行过程中要采取多项措施。所以在管理中获得经济效益是一个综合效益,要对它进行直接定量的分析是比较困难的。一般新系统带来的经济效益是简介的,其最主要的表现就是减少了企业管理费用和人力开支。而其它一些繁琐的食物都通过新系统来加以分析解决,不仅节省了大量的时间,还为企业的各项决策提供了宝贵的资料,为企业带来巨大的经济效益。
1.2.3操作可行性
本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个超市管理系统采用最友好的交互界面,简介明了,不需要对数据库进行深入的了解。
由此,该系统的操作是可行的,有必要开发该系统。
综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上。因此,可以设计该系统的数据流程图,建立数据字典。
经过认真地全面地可行性研究,系统基本上做到了在技术、经济、运行、法律上的可行。因此,相信在按照计划上实施的前提下,全系统的设计将会按时、高质量完成。所以,系统研制和开发是可以马上进行的。
4
2、项目开发计划
2.1编写目的
经过项目的可行性分析,得出项目可进一步进行下去的结论,在软件继续进一步的开发之前首先给出此软件项目计划。
2.2项目背景
21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。技术的提升和管理的升级是超市业的竞争核心。零售领域目前呈多元发展趋势,多种业态:超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标。
项目分析单位在接到项目分析员给出的项目可行性分析
后,在本系统,即仓库进货管理系统开发主管部门的统一下制定用于软件实质开发的软件项目计划,以使软件开发单位理解软件开发要求,进行开发。
2.3项目概述
本系统主要包括:仓库管理、货架管理和收银管理。
1)仓库管理主要包括:生成库存报告、生成缺货报告、录入更新数据。在需要时(可每隔一个时间段查询一次) 生成商品库存情况报告,实时报告商品库存情况,如库存量不足(小于某一自定的数量) 时,可生成缺货报告,并提供商品种类,来源等商品属性信息,方便采购人员进行商品采购。采购员采购商品后,及时录入商品信息等数据,在数据库中进行数据更新。
2)货架管理主要包括: 货架上商品卖到一定数量时,实时生成提货报告,并提供商品的库存信息,剩余信息。
3)收银管理主要包括:随时录入卖出商品信息,如名称,数量,单价等,及时更新数据库数据。
5
2.4项目开发计划
1、任务分解
分三个大的阶段进行开发第一阶段完成本系统的数据流图跟E-R图。第二阶段完成概要设计跟详细设计。第三阶段书写文档。
2、预算
软件资金投入较少,具体预算分配简略。
3、关键问题
各模块之间的联系和后台数据库的完成。使用目前的设备与现有开发技术完全可以开发出该系统,总的来说该项目没有较大的技术难点与其他的一些风险因素。对于出现的一些小难点总都能得到解决。
2.5交付期限
所要开发的系统较简单,所有开发工作用户要求要在3周内完成,完成项目的最迟时间为2011年8月18日。
6
3、需求分析
3.1任务需求分析
前台POS销售系统(基本功能):
1. 商品录入:根据超巿业务特点制定相关功能,可以通过输入唯一编号、扫
描条形码、商品名称等来实现精确或模糊的商品扫描录入。该扫描录入方
法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品
扫描录入。
2. 收银业务:通过扫描条形码或者直接输入商品名称(对于同类多件商品采
用一次录入加数量的方式)自动计算本次交易的总金额。在顾客付款后,
自动计算找零,同时打印交易清单(包括交易的流水账号、每类商品的商
品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号)。
如果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对
所购物品全部实行95折优惠,并将所购物品的总金额累计到该会员的总
消费金额中。 会员卡的有效期限为一年,满一年未续卡者,该会员卡将
被注销。
3. 安全性。POS登陆、退出、换班与操作锁定等权限验证保护;断电自动保
护最大限度防止意外及恶意非法操作。
4. 独立作业。特有的断网收银即在网络服务器断开或网络不通的情况下,收
银机仍能正常作业。
后台管理系统(基本功能):
1. 进货管理: 根据销售情况及库存情况,自动制定进货计划(亦可手工制
定修改),可以避免盲目进货造成商品积压。 按计划单有选择性地进行自
动入库登记。 综合查询打印计划进货与入库记录及金额。 2. 销售管理: 商品正常销售、促销与限量、限期及禁止销售控制。 综合查
询各种销售明细记录、各地收银员收银记录以及交结账情况等。 按多种
7
方式统计生成销售排行榜,灵活察看和打印商品销售日、月、年报表。
3. 库存管理: 综合查询库存明细记录。 库存状态自动告警提示。如库存过
剩、少货、缺货等。软件为您预警,避免库存商品积压损失和缺货。 库
存自动盘点计算。
4. 人员管理:员工、会员、供货商、厂商等基本信息登记管理。员工操作权
限权利、客户销售权限管理。
3.2数据流图、数据字典
3.2.1数据流图
数据流图由四种基本的元素构成:数据流(Data Flow),处理(Process),数据 存储和数据源(数据终点)。
数据流(Data Flow):为具有名称且有流向的数据,用标有名称的箭头表示,一个数据可以是记录、组合项或基本项。
处理(Process):表示对数据所进行的加工和变换,在图中用矩形框表示。指向处理数据流为该处理的输入数据,离开处理的数据为处理的输出数据。
数据存储:表示用文件方式或数据库形式所存储的数据,堆砌进行的存取分别以指向或离开数据存储的箭头表示。
数据源及数据终点:表示数据的来源或数据的去向,可以是一个组织或人员。
8
库存信息查询
库存信息清单进货信息请求
1:查
询
库存信息检索结果发出库存检索请求
库存清单
已进货信息销售信息
销售信息查询
1:更
图3.1 库存管理部分第1层DFD图 新
销售清单销售单
2:查询
销售清单
前台销售信息库存信息
2:更新
图3.2 销售管理部分第1层DFD图
9
已进货信息新供货商信息
进货信息清单
进货信息查询
采购单3:查询
库存信息清单进货信息请求发出进货/采购清单查询进货/采购清单检索结果进货清单采购清单
3:更新
进货信息请求进货单
图3.3 进货管理部分第1层DFD图
3.2.2数据字典
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
(1)已进货信息=进货单号+供货商号+商品名称+进货价+进货数量+进货日期+备注
(2)销售信息=销售单号+商品编号+销售数量+销售日期
文件条目:
(1)文件名:职工清单
组成:{职工编号+姓名+性别+籍贯+学历+类别+工资+联系电话+联系地址+身份证号+聘用日期+编制日期+备注}
10
组织:按职工编号递增排列
(2)文件名:商品清单
组成:{商品编号+供货商号+名称+条形码+计量单位+类别+产地+单价+备
注}
组织:按商品编号递增排列
(3)文件名:供货商清单
组成:{供货商号+名称+联系人+联系电话+联系地址+开户行+银行帐号+备
注}
组织:按供货商编号递增排列
(4)文件名:进货清单
组成:{进货单号+商品编号+供货商号+进货价+数量+金额+进货日期+备注}
组织:按进货单编号递增排列
(5)文件名:销售清单
组成:{销售单号+商品编号+销售数量+销售日期} 组织:按销售单编号递增排列
(6)文件名:库存清单组成:{商品编号+库存数量} 组织:按商品编号递增排列
加工说明:
(1)加工名:查询
加工逻辑:根据要查询的库存信息,检索出库存信息明细表 输入流:库存信息查询,发出库存信息请求
输出流:库存信息清单,进货信息请求
(2)加工名:更新
根据进货信息或销售信息更新库存信息
输入流:已进货信息,销售信息
输出流:发出库存检索请求
(3)加工名:查询
根据要查询的销售信息,检索出销售信息明细表 输入流:销售信息查询
11
输出流:销售清单,销售单
(4)加工名:更新
加工逻辑:根据销售信息更细销售清单
输入流:前台销售信息,库存信息
输出流:更新库存清单
(5)加工名:查询
加工逻辑:根据要查询的进货信息,检索出进货信息明细表
输入流:进货信息查询,发出进货/采购清单查询
输出流:库存信息清单,已进货信息,新供货商信息,进货单信息清单,采购单,进货信息请求,进货/采购清单检索结果
(6)加工名:更新
加工逻辑:根据进货信息更新进货清单
输入流:进货信息请求,进货单
输出流:发出进货/采购清单查询
(7)加工名:查询
加工逻辑:根据输入要查询的职工信息或供货商信息,检索出相应的结果
输入流:职工信息查询,供货商信息查询,发出职工/供货商清单查询
输出流:已有供货商信息,供货商信息清单,职工信息清单,职工/供货商清单检索结果
商品清单:
输入流:职工信息,新供货商信息清单,职工/供货商清单检索结果
12
4、系统概要设计
4.1总体设计
通过这个阶段的工作将划分出组成系统的物理元素。
系统概要设计的基本目的是用比较抽象的概括方式确定系统如何完成预定的任务,也就是要确定系统的配置物理
。软件结构设计时应该遵循的最主要的原理是模块独立,让模块彼此间的接口关系应该尽量简单。 4.2数据库概念设计
数据库一般分为三级模式:外模式、概念模式和内模式。外模式也就是不同用户所对的数据视图,它将数据库内部抽象的数据及其互相之间的关系表示为简单、直观的应用界面。概念模式是数据库中全部数据的逻辑结构和特征描述,通常以某种数据模型为基础。内模式是对数据的物理结构和存储方式的描述。 4.2.1数据项和数据结构
在这里我们将要设计的是数据库的概念模式,通过对超市管理系统的内容和数据流程分析及E-R图,设计如下数据项和数据结构。
a) 商品信息表(商品编号,商品名称,价格,条形码,促销价格,促销起
日期,促销至日期,允许打折,库存数量,库存报警数量,计划进货数,
允许销售,厂商编号,供货商编号)
b) 用户表(用户编号,用户名称,用户密码,用户类型)
c) 会员表(会员编号,会员卡号,累积消费金额,注册日期)
d) 销售表(销售编号,商品编号,销售数量,销售金额,销售日期)
e) 交易表(交易编号,用户名称,交易金额,会员卡号,交易日期)
f) 进货入库表(入库编号,入库商品编号,入库数量,单额,总额,入库
日期,计划进货日期,入库状态)
g) 供货商表(供货商编号,供货商名称,供货商地址,供货商电话)
13
h) 厂商表(厂商编号,厂商名称,厂商地址,厂商电话) 4.2.2实体联系E-R图
根据对数据流图和数据字典的分析,我们可以确定该应用中的实体,属性和实体之间的关系,并画出如下所示的E-R图。
超市管理系统E-R模型,如图4.1所示:
销售单号 姓名 性别
n
职工编号 客户 销售 职工/用户 m
m 数量 销售日期
进货 进货单号
供货商编号 进货日期
n 商品编号 名称
n 供商品 地址 名称 供货商 货
m
电话
价格
供货日期 条形码
图4.1 系统ER图说明
1) 商店中的所有用户(员工)可以销售多种商品,每种商品可由不同用户
(员工)销售;
2) 每个顾客可以购买多种商品,不同商品可由不同顾客购买;
3) 每个供货商可以供应多种不同商品,每种商品可由多个供应商供应。 视图设计
1) 交易视图(v_Dealing)——用于查询交易情况的视图;
2) 计划进货视图(v_PlanStock)——用于查询进货计划的视图;
3) 销售视图(v_Sale)——用于查询销售明细记录的视图;
入库视图(v_Stock)——用于查询入库情况的视图
14
5、详细设计
详细设计阶段的根本目标是确定应该如何具体地实现所要求的系统,包括了用户界面设计、程序过程设计等步骤。
5.1系统功能模块图
可以根据模块独立原理对软件结构进行精化。为了合理的分解,得到尽可能高的内聚、尽可能松散的耦合,最终要的是,为了得到一个易于实现、易于测试和易于维护的软件结构,应该对模块进行再分解或合并。
系统功能模块图如下图5.1所示
小型超市收银系统
前台pos系统 后台管理系统
商 收 进 销 库人
品银货 售 存 员 录 业 管 管 管 管
入 务 理 理 理 理
图5.1 系统功能模块图
本系统共包括两大模块,分别是前台POS销售系统和后台管理系统。前台POS销售系统又分为商品录入子系统和收银业务子系统。后台管理系统分为进货管理模块、销售管理模块、人员管理模块和库存管理模块。
5.2各子系统功能模块图
1.商品录入子系统
15
商品录入
快支 速持
商条描 品形
录码 入扫
图5.2 商品录入子系统 功能描述:商品录入子系统要求能快速录入商品,因此必须支持条形码扫描。
2.收银业务子系统
收银业务
交打支
易印持 总交会
额易员
计清卡 算 单 打
折 图5.3 收银业务子系统 功能描述:收银业务子系统能计算交易总额,打印交易清单,并根据会员卡
打折。
3.进货管理子系统
进货管理
自自查
动动询
制入打
定库印
进登计
货 记 划
图5.4 进货管理子系统
16
功能描述:进货管理子系统可以根据库存自动指定进货计划,进货时自动等级,以及提供查询和打印计划进货与入库记录的功能。
4.销售管理子系统
销售管理
商查生 品询成
销打销
售印售 控销排
制 售 行
图5.5 销售管理子系统
功能描述:销售管理子系统可以控制某商品是否允许销售,查询每种商品的销售情况并产生年、月、日报表,同时可以生成销售排行榜。
5.库存管理子系统
库存管理
查库自 询存动
库状盘
存态点 明告计
细 警 算
图5.6 库存管理子系统
功能描述:库存管理子系统提供查询库存明细记录的基本功能,并根据库存的状态报警,以及自动盘点计算。
6.人员管理子系统
功能描述:人员管理子系统提供基本信息登记管理,员工操作权限管理,客户销售权限管理的功能。
17
人员管理
基员客
本工户
信操销
息作售
记权权
录 限 限
图5.7 人员管理子系统
5.3程序流程图
程序流程图的优点是对控制流程的描绘很直观,易于掌握。通过对系统的调查和可行性分析,画出程序的流程图如下所示,程序过程设计主要是在借助过程设计工具的情况下,对程序的具体实现过程进行设计。程序的主要部分设计在这个环节完成。其主要包括以下几个部分:
18
超市总经理与供货商浅谈
进货
是否是新供货是旧供应商新商品引进流程商
否
新供应商新商品引进流程
订货管理作业
流程
收获工作流程
超市进行销售
管理
采购部与店面共同分析是否有滞销或质采购部处理解是量问题决否
采购部分析经营是否有是退货管理流程问题
否
信息部:新商品试销是否已
经到期
新商品转正流程
图5.8 程序流程图 供应商分析淘汰流
程需
5.4数据库逻辑结构设计
是否新供应
商在数据库设计中相当重要的一步就是将概念模型转化为计算机上DBMS所
不需
19 结算流程
支持的数据模型,例如,将E-R图模型转化为关系模型,道理很简单,我们设计概念模型基本上都是一些抽象的关系,在再数据库设计的实现过程中,在计算机上有效地表示出这些关系就成了数据库设计的关键。根据超市管理系统的功能要求,选取Visual Basic 6(0作为后台数据库。
一、在上面的实体和实体之间的E-R图设计基础上,形成数据库中的
及表格之间的关系。
表5-1数据库表索引
表名 中文名
MerchInfo 商品信息表
User 用户表
Menber 会员表
Sale 销售表
Dealing 交易表
Stock 进货入库表
Provide 供货商表
Factory 厂商表
表5-2 商品信息表(MerchInfo)
字段名 字段类型 长度 主/外键 字段值约束 对应中文名 MerchID int 4 P Not null 商品编号 MerchName Varchar 50 Not null 商品名称 MerchPrice Money 4 Not null 价格 MerchNum Int 4 Not null 库存数量 CautionNum Int 4 Not null 库存报警数量 PlanNum Int 4 null 计划进货数 BarCode Varchar 50 Not null 条形码 SalesProPrice Money 4 促销价格 SalesProDateS Datetime 8 促销起日期 SalesProDateE Datetime 8 促销止日期 AllowAbate Int 4 Not null 允许打折 AllowSale Int 4 Not null 允许销售 FactoryID Varchar 10 F Not null 厂商编号 ProvideID Varchar 10 F Not null 供货商编号
20
表5-3用户表(User)
字段名 字段类型 长度 主/外键 字段值约束 对应中文名 UserID varchar 10 P Not null 用户编号 UserName Varchar 25 Not null 用户名称 UserPW Varchar 50 Not null 用户密码 UserStyle Int 4 Not null 用户类型
表5-4会员表(Menber)
字段名 字段类型 长度 主/外键 字段值约束 对应中文名 MemberID Varchar 10 P Not null 会员编号 MemberCard Varchar 20 Not null 会员卡号 TotalCost Money 4 Not null 累积消费金额 RegDate Datetime 8 Not null 注册日期
表5-5销售表(Sale)
字段名 字段类型 长度 主/外键 字段值约束 对应中文名 SaleID Varchar 10 P Not null 销售编号 MerChID Varchar 10 F Not null 商品编号 SaleDate Datetime 8 Not null 销售日期 SaleNum Int 4 Not null 销售数量 SalePrice Money 4 Not null 销售单额
表5-6交易表(Dealing) 字段名 字段类型 长度 主/外键 字段值约束 对应中文名 DealingID Varchar 10 P Not null 交易编号 DealingPrice Money 4 Not null 交易金额 DealingDate Money 4 Not null 交易日期 MemberID Varchar 10 会员卡号 UserName Varchar 10 F Not null 用户名称
21
表5-7入库记录表(Stock) 字段名 字段类型 长度 主/外键 字段值约束 对应中文名 StockID Varchar 10 P Not null 入库编号 MerchID Varchar 10 F Not null 入库商品编号 MerchNum Int 4 Not null 入库数量 MerchPrice Money 4 Not null 单额 TotalPrice Money 4 Not null 总额 StockDate Datetime 8 Datetime 入库日期 PlanDate Datetime 8 Datetime 计划进货日期 StockState Int 4 Not null 入库状态
表5-8供货商表(Provide)
字段名 字段类型 长度 主/外键 字段值约束 对应中文名 ProvideID varchar 10 P Not null 供货商编号 ProvideName Varchar 50 Not null 供货商名称 ProvideAddress Varchar 250 供货商地址 ProvidePhone Varchar 25 供货商电话
表5-9厂商表(Provide)
字段名 字段类型 长度 主/外键 字段值约束 对应中文名 FactoryID varchar 10 P Not null 厂商编号 FactoryName Varchar 50 Not null 厂商名称 FactoryAddress Varchar 250 厂商地址 FactoryPhone Varchar 25 厂商电话 5.5连接数据库的特点
当开发环境通过连接到数据库上之后,在设计中使用数据库画笔可实现对该数据库中表格,视图等的操作,如创建表,修改表,删除表,增加/删除记录。
设计中设计数据窗口的时候,通过对话框实现与数据的连接。在应用程序中则一般是在应用程序对象中书写连接数据库的程序代码,使得应用程序开始运行并实现与数据库的连接。
22
5.6用户界面设计
5.6.1一般交互设计
一般交互涉及信息显示、数据输入、和系统整体控制等方面。 1、一致性
为客户交互界面中的菜单选择、命令输入、数据显示以及众多的其他功能,使用一致的格式。
在设计的过程中,基本上保持了系统的格式一致。
2、信息的反馈
向用户及时提供视觉和听觉的信息反馈,以保证在用户和系统之间及时地建立双向通信。
在本系统设计过程中,基本做到了信息的及时反馈,在信息显示的大部分窗体中包括了刷新按钮,会对数据库中的数据进行及时地显示。另外,在进行错误操作是,会弹出提示窗口并发出警告提示音。
3、执行有较大影响的操作前提示用户确认
在设计过程中,如果用户要执行删除操作,以及对数据库的读写操作时,都会有窗体弹出询问继续操作或者予以提示。
4、减少两次操作间需要记忆的内容
为了避免用户为下一步操作而记忆大量数据,所以在设计过程中在需要数据传递的窗体中设置全局变量,来传递数据。例如在入账和入库的模块的操作中都用到了这样的方法。
5、对话、移动和思考的效率
尽量减少用户击键的次数,在设计时考虑到了用户屏幕的布局以减少用户鼠标移动的距离,尽量避免用户在操作中发生疑问的情况。
6、允许错误
允许用户的误操作尽量不对系统造成伤害。
7、按功能对动作分类,并据此设计屏幕布局
屏幕布局尽量将软件所具有的所有功能在主页面展示,界面一目了然。
23
5.6.2信息显示设计
应当尽量为用户提供的界面显示时完整的、明确的和容易理解的。这样才能满足用户的需求。使用不同的方式显示信息:用文字、图形、声音,按位置、移动和大小,使用颜色和省略等方式传达信息。
1、只显示与当前工作有关的信息
在用户操作有关系统的特定功能的信息时,不必看到与之无关的数据、菜单和图形。
2、使用便于用户迅速吸收数据的方式来表示数据
在系统设计的过程中,较多地使用了图表的形式表示数据,例如在分析中就使用了柱状图的形式表现了复杂的数据。这样,用户可以直观的体会到图表所表示的含义。
3、使用一致的标记、标准的缩写和可预知的颜色
为了使系统所表达的含义准确、无误,就必须适用一致的标记、标准的缩写和可以预知的缩写,这样用户就无需参照其他信息源就能理解,而正确地适用软件。
4、产生有意义的错误信息
对于系统在运行过程中产生的错误尽量给用户返回一个容易理解的错误信息,以使用户保持对系统的信任,和系统的可用性。
5、使用窗口分隔不同类型的信息
使用不同的窗口显示、保存不同类型的信息。
6、高效率的使用显示屏
当使用多窗口时,应该有足够的空间使得每个窗口至少都能显示出一部分。此外,屏幕的大小应该选得和应用系统的类型相配套。
在各个显示数据的窗口中,由于数据窗体项目较多,所以在数据窗体空间中较多的是用了垂直和水平滚动条,以保证信息的全面正确显示。 5.6.3数据输入界面设计
用户的大部分时间用在选择菜单命令、键入数据和向系统提供输入。在系统中,键盘是主要的输入介质,但是鼠标等设备的也是重要的输入手段,所以,对
24
于他们的数据输入操作有如下约定:
1、保持信息显示和数据输入间的一致性
为了方便用户的使用,鼠标应当尽量减少操作的幅度。
2、保持显示信息和输入信息之间的一致性
对于用户来说,要保证其输入的数据在显示上与其他显示的视觉特征(例如:文字大小、颜色、位置等)要一致。
对于不同类型的用户在登录到系统后,由于有不同的权限,所以在主界面中会有一些项目受到限制而无法使用,所以要使这些项目不发生作用,以保证系统安全。
5.7软件测试
软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。
第二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。
第三软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。 5.7.1测试的方法和步骤
软件的测试方法有两种,一种是黑盒测试(功能测试),另外一种是白盒测试(结构测试)。
黑盒测试把程序看作一个黑盒子,完全不考虑程序的内部结构和处理过程。也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当的接受输入数据并产生正确的输出信息,程序运行过程中能否保持外部信息的完整性。
白盒测试的前提是可以把程序看成装在一个透明的白盒子里,测试者完全知道程序的结构和处理算法。这种方法按照程序内部的逻辑测试程序,检测程序中
25
的主要执行通路是否能按预定的要求正确工作。
在本次软件的测试工作中,由于水平的限制,仅仅对软件的各个功能模块进行了测试,并对各个模块之间的接口进行了详细的测试(用黑盒测试法)。
测试的步骤
由于该系统是一个小系统,可以把整个系统作为一个单独的实体来测试。当然,在测试的过程中可以分模块、分阶段来进行。大型软件系统通常是有若干个子系统组成,且每个子系统由由许多模块组成,因此,软件的测试过程基本上由以下步骤组成:
, 模块测试
, 子系统测试
, 系统测试
, 验收测试
, 平行运行
5.7.2测试用例
本次设计主要模块有查询模块、修改模块、输入模块和删除模块等,这里只列出以下模块的测试用例。当然,在实际的测试中应尽可能的对每个功能,都能测试到。
1、 登录测试
1) 输入空账号
2) 输入不存在的账号密码
3) 输入正确的账号和错误的密码
4) 输入正确账号和空密码
2 添加员工测试
5) 添加一个已存在的员工
6) 添加一个不存在的员工
3、 删除员工测试
26
7) 删除一个不存在的员工
8) 删除一个已存在的员工
4、 查询员工测试
9) 查询一个不存在的员工
10) 查询一个存在的员工
11) 查询员工的各种奖惩记录
27
设计总结
在课程设计当中我了解到,在开发一个项目时一定要先做好规划,按照软件的开发过程,详细地写好每一个必要的文档。软件的概念就是:程序+文档,程序就是文档,文档集成在程序中。它要求在选择开发环境时不仅要考虑环境对设计、开发的完美支持,而且要考虑对维护、文档的支持;它要求软件人员在设计、开发过程中要考虑维护问题、文档问题;它要求程序与文档存储在同一位置、同一系统中;它要求使用相同工具进行程序与文档的书写、检索;它要求在编写和维护程序的同时形成文档,在书写文档时编写、维护程序。程序与文档合一的概念不仅存在于系统的设计、开发阶段而且存在于系统的维护阶段,它贯穿软件的生命周期。
和传统管理模式相比较,使用本系统,毫无疑问会大大提高超市的运作效率,辅助提高超市的决策水平,管理水平,为降低经营成本,提高效益,减少差错,节省人力,减少顾客购物时间,增加客流量,提高顾客满意度,增强超市扩张能力, 提供有效的技术保障。
由于开发者能力有限,加上时间较为紧迫,本系统难免会出现一些不足之处,例如:
, 本系统只适合小型超市使用,不能适合中大型超市使用;
, 超市管理系统涉及范围宽,要解决的问题多,功能复杂,实现困难,但由于限于时间,本系统只能做出其中的一部分功能;
对于以上出现的问题,我还有待去学习改正,进一步扩充我的知识面,等有时间了再次完善该系统。由于能力有限,尚未发现的不足或错误之处肯定还有,恳请老师给予批评和指正。
28
参考文献
[1]初小璐(完全掌握SQL Server 2000 [M] 机械工业出版社,2004
[2]Jeraod V.Post.数据库管理系统(英文版.第三版)[美]清华大学出版
社,2006.1
[3]张海藩.软件
导论[M].北京:清华大学出版社,1998.1
[4]萨师煊,王珊.数据库系统概论[M].北京:高等教育出版社,2002.2
[5]张海藩,李劲,谢兆阳.SQL Server2000数据库设计与系统管理[M].北京:清华
大学出版社,2000.9
[6]王福成等.Visual Basic 6.0数据库开发指南[M].清华大学出版社 2002.6
[7]于书举,许向众.数据库设计与开发教程[M].北京:电子工业出版社,2003.11
[8]安海忠,李文斌,林旭新.商业网站建设与管理[M].北京:人民交通出版
社,2006.8
[9]T.Umeda and S.Hagiwara.web-based database for EPR centers in semiconductors[J].BPhysica B:Condensed Matter,3(7),249-252,2006.3 [10]Yih-Ling Hedley,Muhammad Younas.Sampling,information extraction and summarisation of Hidden Web databases[J].Data & Knowledge Engineering,In
Press,Uncorrected Proof,Available online 10 March 2006.2 [11]郭振波编著.深入浅出Visual Basic 6.0中文版[M].人民邮电出版社 2003.3
[12]林永等编著.Visual Basic 6.0用户编程手册[M].人民邮电出版社 2002.11
[13]刘炳文等编著.Visual Basic 6.0 程序设计教程[M] ,清华大学出版社
2000.7
[14]赛奎春主编.Access 数据库开发实例解析[M],机械工业出版社 2006.1
29
致 谢
经过将近三周时间的努力,终于完成了本次课程设计的任务,基本达到了这次课程设计的要求。本次课程设计之所以能够较为顺利地完成,首先要感谢《软件工程》老师张聚礼,感谢他将我领进软件工程学的大门,帮我夯实了软件工程的基础知识,使我对软件工程的思想有些许感性的认识。其次,感谢在本次课程设计中给予了我不少指导和帮助的指导老师张红。最后,感谢我的同学,特别是舍友,他们在本次课程设计中给了我不少很具建设性的意见和建议,并且对我的程序做了一定的测试工作。
30