超市作为人们日常生活不可或缺的一部分,而且随着经济的发展,超市的规模越来越大,商品的种类也越来越纷杂,一个高效实用的超市管理系统至关重要。超市管理系统能帮助管理人员快速有效的管理进货,销售,库存,商品进销结算等各项业务,能极大的提高超市管理的高效性,实时性,安全性,科学性和智能化程度,从而降低营业成本和增加收益。
本系统大致可实现以下功能(模块):
1.系统管理:包括密码验证和系统的登录与退出,还有密码修改等功能。
2.信息查询:包括进货信息和出货信息的查询,还有商品库存信息,资金结算信息查询等。
3.进出货管理:即超市日常进出货操作,包括进货和前台销售两个子管理系统。
4.商品信息管理:包括商品进出售的信息,销售商品的定价等。能够执行添加,修改,删除,查询等操作。
本章将简要地说明本文档的目的、范围、参考文件和术语定义。
1.1目的
本文档的目的在于给出“超市进销存管理系统”(以下简称本平台)的功能说明。
1)向用户描述“超市进销存管理系统”的功能;
2)为编制后续各阶段的文档提供基本依据;
3)提供给用户确认或本地化修改的基本文件;
4)作为日后软件确认测试和系统验收之参考依据;
5)作为日后系统维护工作基准文件。
本文档的内容涵盖了本系统的总体结构设计、软件运行环境设计、处理流程设计和软件功能设计等。
本文档的使用者包括本系统用户、需求分析人员、项目管理人员、软件设计人员、软件质量控制人员以及软件维护人员。
1.2范围
软件产品名称:超市进销存管理系统V1.0
通过使用本软件产品,能完成如下功能:
1.采购员能实时得知库存不足的商品列表,方便进行采购
2.经理能得到实时的营业分析,查看商品销售和采购情况,实时调整经营策略
3.系统能对销售和采购单据进行有效管理,支持用户随时进行查询和统计
4.前台POS系统能对售出的商品进行方便快捷的结算,且能与会员管理系统进行联接,支持会员功能
5.管理员(业务员)能实时查看商品的库存动态,实时设置商品信息。
6.能对系统用户进行有效管理,安全性有保障
系统不足:
1.系统定位小型超市,对商品的库存管理这一块做的不够好,不支持多仓库商品调度
2.营业分析模块对营业状况的度查询支持不够,功能比较简单。
软件系统应用后能产生的预期收益和目标:
1.改变传统的人工管理方式,实现日常管理信息化。
2.通过对库存和销售信息的快速查询和处理,提高商品采购的速度和科学性
3.提升超市管理水平,降低经营成本,提高工作效率。
1.3术语表
术语 | 所指对象或含义 |
商品条形码 | 也是系统内部商品编号,每种商品具有唯一的条形码,对于某些价格一样的商品,可以使用自定义条形码。 |
前台(POS)管理系统 | 顾客买完商品后进行结算的系统,由收银员给出商品信息(条形码,数量),系统完成结算,并产生小票 |
系统管理员 | 是一个对平台具有管理权限的帐号(可以有多人来使用),能查询各种信息,并能设置多种信息(商品售价,会员折扣,帐户等) |
数据流图(DFD) | 描绘数据在系统中各逻辑功能模块之间的流动和处理过程, 是一种功能模型 |
1.4参考文献
《软件工程:实践者的研究方法(原书第5版)》 | 作者: (美)普雷斯曼,梅宏 译 出版日期:2004-3-1 出版社:机械工业出版社 |
《软件工程-理论、方法与实践》, | 作者: 孙家广、刘强 出版日期:2006年5月 出版社:高等教育出版社 |
2.1产品描述
背景和起源:随着经济的发展,超市的规模越来越大,传统的人工管理已不能适应当前超市的需要,为了提高超市的超市管理水平,降低经营成本,提高工作效率,实现日常管理信息化,故我们开发了此系统。
目标客户:由于系统功能,本系统主要目标客户是各个中小型超市
客户业务需求:对本系统的客户(超市)来说,他们希望通过本系统达到以下目标:
1.改变传统的人工管理方式,实现日常管理信息化。
2.通过对库存和销售信息的快速查询和处理,提高商品采购的速度和科学性
3.提升超市管理水平,降低经营成本,提高工作效率。
由于现有同类系统早已存在,所以我们的系统应该定位为现有程序的替代产品
本系统总体框架:
2.2用户分类及其功能需求
使用本系统的都是超市的工作人员:经理,采购员,收银员,业务员(系统管理员)
经理需要通过此系统对超市的经营情况进行统计,从而进行营业分析。
采购员通过查询商品库存信息,再加上系统能自动产生库存不足商品的列表,能实时的把握采购信息。
收银员只要在顾客结账时将商品进行结算,POS前台子系统能够在收银员给出商品的条形码和数量后计算出顾客的应付款额。
系统管理员能对系统的帐户进行管理,还得设置商品信息,同时还可以进行单据查询。
顾客虽然不是系统的保用者,但要求打出的小票能详细,准确。
2.3功能需求
超市经理:
查询统计报表(包括销售报表,采购报表等),各种数据分析,了解经营状况
能随时查询商品信息,了解超市商品动态
系统管理人员:
信息查询:包括库存信息,各种类商品基本信息,商品销售和采购信息。
商品基本信息设置:商品分类,商品基本信息设置,能进行删除,添加和修改等操作,还能对会员折扣进行设置。
帐户和密码管理:对其他用户的帐户和密码进行管理,包括新建,删除和密码修改等操作。
超市采购人员:
采购人员能即时查看库存和销售信息。
系统能自动产生库存不足商品列表,让采购员进行采购。
前台POS机(收银员):
收银员在给出待结算商品的信息(包括商品的编号,数目,是否会员信息等)后,系统能给出结算清单(包括商品的详细信息,应付款额等)。
顾客:
能得到其选购商品的结算清单,从而进行核对和付款。
2.4非功能需求
经理:
查询报表和数据分析时响应速度要在20秒钟以内
操作界面要简洁,实用,易于操作
系统管理人员:
系统要简单易用,维护要相对简单
响应速度要控制在20秒钟之内
登陆帐号和密码要加密传输
系统可靠率要控制在99%以上
超市采购人员:
查询库存等信息时响应速度应在20秒钟之内
要随时能对库存不足商品列表进行查询
前台POS机(收银员):
计算详细清单的时间要在3秒钟之内
计算要准确可靠
顾客:
清单上的内容要尽可能的详细,从而方便进行核对
2.5设计与实现上的约束
1. 项目管理平台为基于GForge的年度创新项目管理网站。
2. 开发环境为NetBean 6.5(IDE)
3.语言使用java
4.数据库为Microsoft SQL Sever 2005
5.必须使用三层架构,以方便以后修改
6.平台必须能在Windows操作系统上正常运行
7.平台要遵守TCP/IP网络协议
CPU | 酷睿双核3.66 GHz |
内存 | 4G |
硬盘 | 200G |
网卡 | 1000M |
9.数据转换格式无要求
10.与其他系统之间的接口无要求(本平台是于其他平台开发的)
2.6运行环境(来源于CP2的“设计约束”)
CPU | 奔四1.66 GHz或以上 |
内存 | 1G或以上 |
硬盘 | 80G或以上 |
网卡 | 百兆以上 |
操作系统 | Windows XP或以上 |
数据库系统 | Microsoft SQL Sever 2005 |
CPU | 赛扬1.66 GHz或以上 |
内存 | 256M或以上 |
硬盘 | 无要求 |
网卡 | 10M或以上 |
操作系统 | 无要求 |
2.7业务规则
由于系统的的业务主要是针对顾客,而顾客又分为会员和非会员,一般来说,同一商品可能对会员有一定的折扣,系统能让管理员在商品信息表中为商品设置一个会员折扣,从而在会员顾客结帐时获得优惠。
2.8未来的需求
由于现在的系统不能支持仓库管理,而现实中的大超市一般都是连锁的,有很多的子超市和很多的仓库,所以未来我们可能加上多超市多仓库的连锁管理和商品调度,同时有进行营业分析时也能更细化,支持更度查询,可能到时系统改变会很大。
3需求描述
3.1结构化需求分析
3.1.1子系统1
3.1.1.1数据流图(DFD)
3.1.1.2外部实体
经理
3.1.1.3加工过程
●输入数据流
采购和销售单据
●内部处理逻辑(结构化英语、判定树)
1.1采购统计:
对符合条件的采购单据进行统计
if(还有符合统计条件的采购单){
采购单数加1;
采购数量=原采购数量+这张采购单上的采购商品数量;
采购金额=原金额+这张采购单上的总金额;
把单据详细信息加入到统计报表中输出;
}
1.2 销售统计
对符合条件的销售单据进行统计
if(还有符合统计条件的销售单){
销售单数加1;
销售数量=原销售数量+这张销售单上的销售商品数量;
销售金额=原金额+这张销售单上的销售额;
把单据详细信息加入到统计报表中输出;
}
1.3 库存信息查询
对符合条件的商品信息进行查询
If (还有符合查询条件的商品){
商品种类加1;
商品总库库存量=原总量+此种商品库存量;
库存商品总价值=原总价+此种商品库存总价值;
把详细信息输出;
}
●输出数据流
采购统计报表和销售统计报表,库存商品信息
3.1.1.4数据流
1.采购单
数据流名称:采购单
别名:无
简述:采购部门采购完商品后填写的单据
来源:采购记录
去向:加工1.1“采购统计”
组成:采购单编号+供货商+采购日期+总金额+采购员编号+经办人编号+{商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
采购单编号=年+月+日+“0000”..”9999”
供货商={汉字|英文字母|数字}0-10
采购日期=年+月+日
总金额=浮点数
采购员编号=”a”+”00”..”99”
经办人编号=”b”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
商品数目=整数
单价=浮点数
总额=浮点数
备注={汉字|英文字母|数字}0-30
频率:大约20条/天
2.销售单
数据流名称:销售单
别名:无
简述:前台POS机销售商品后产生的单据
来源:销售记录
去向:加工1.2“销售统计”
组成:销售单编号+开单日期+总金额+收银员编号+ {商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
销售单编号=年+月+日+“0000”..”9999”
开单日期=年+月+日
总金额=浮点数
收银员编号=”c”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
商品数目=整数
单价=浮点数
总额=浮点数
备注={汉字|英文字母|数字}0-30
频率:大约3000条/天
3.商品信息
数据流名称:商品信息
简述:用来描述商品
来源:商品信息记录
去向:加工1.3库存信息统计
组成:商品编号+商品类别+商品名称+生产厂商+单位+当前库存+库存下限+上次采购单价+预售单价+会员折扣+备注}
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
当前库存=整数
库存下限=整数
上次采购单价=浮点数
预售单价=浮点数
会员折扣=[1..100]
备注={汉字|英文字母|数字}0-30
4.销售统计报表
数据流名称:销售统计报表
来源:加工1.2“销售统计”
去向:经理
组成:销售单数+销售数量+销售总额+{销售单}
销售单数=整数
销售数量=整数
销售总额=浮点数
5.采购统计报表
数据流名称:采购统计报表
来源:加工1.1“采购统计”
去向:经理
组成:采购单数+采购数量+采购总额+{采购单}
采购单数=整数
采购数量=整数
采购总额=浮点数
6.库存商品信息
数据流名称:库存信息
来源:加工1.3“库存统计”
去向:经理
组成:商品种类数+库存总数量+库存商品总金额+{商品信息}
商品种类数=整数
库存总数量=整数
库存商品总金额=浮点数
3.1.1.5数据存储
1.采购记录
数据存取名称:采购记录
简述:用来记录采购单据的信息
组成:采购单编号+供货商+采购日期+总金额+采购员编号+经办人编号+{商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
采购单编号=年+月+日+“0000”..”9999”
供货商={汉字|英文字母|数字}0-10
采购日期=年+月+日
总金额=浮点数
采购员编号=”a”+”00”..”99”
经办人编号=”b”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
商品数目=整数
单价=浮点数
总额=浮点数
备注={汉字|英文字母|数字}0-30
组织方式:索引文件,以采购单编号为主码
查询要求:能随时查询其中的每一张单据
2.销售记录
数据存取名称:销售记录
简述:用来记录商品销售单据的信息
组成:销售单编号+开单日期+总金额+收银员编号+ {商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
销售单编号=年+月+日+“0000”..”9999”
开单日期=年+月+日
总金额=浮点数
收银员编号=”c”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
商品数目=整数
单价=浮点数
总额=浮点数
备注={汉字|英文字母|数字}0-30
组织方式:索引文件,以销售单编号为主码
查询要求:能随时对其中的每一张单据进行查询
3. 商品信息记录
数据存取名称:商品信息记录
简述:用来记录商品详细信息
组成:商品编号+商品类别+商品名称+生产厂商+单位+当前库存+库存下限+上次采购单价+预售单价+会员折扣+备注}
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
当前库存=整数
库存下限=整数
上次采购单价=浮点数
预售单价=浮点数
会员折扣=[1..100]
备注={汉字|英文字母|数字}0-30
组织方式:索引文件,以商品编号为主码
查询要求:能随时对其中的每一种商品进行查询
3.1.2子系统2
3.1.2. 1层数据流图(DFD)
3.1.2. 2 外部实体(external entity)
顾客,收银员
3.1.2.3 加工过程(operation process)
3.1.2.3.1 输入数据流
商品名称与价格信息
3.1.2.3.2 内部处理逻辑(结构化英语)
2.1会员卡识别:
利用刷卡机读取会员卡信息;
将该会员卡的折扣数目交给结算系统;
2.2 详单结算:
While(仍有商品)
{
接收条形码识别器提交的商品名称与价格信息;
将商品价格显示在LED上;
If(!顾客对商品价格存在疑问并想撤销对当前商品的购买) then
{
商品价钱总额=商品价钱总额+当前扫描商品价格 * 数量;
将商品名称、价格与数量打印在小票上;
}
Else 收银员将商品收回;
}
商品价钱总额=商品价钱总额 * 折扣信息;
向收银员显示收费总额信息;
接收到顾客付款信息;
找零金额=付款金额-商品价钱总额;
向收银员显示找零总额信息;
打印小票;
2.3 条形码识别器
识别当前条形码;
将条形码与数量信息交予商品信息记录库;
接收商品信息记录库的商品名称与价格信息;
将商品名称与价格信息交与详单结算系统;
3.2.3.3 输出数据流
商品条形码与数量信息
销售单据/小票
3.1.2.4 数据流(data entity)
1.商品名称与价格信息
数据流名称:商品名称与价格信息
别名:无
简述:商品信息记录库根据条形码向条形码识别器提交的商品信息,条形码识别器向详单结算系统提交的商品信息
来源:商品信息记录库,条形码识别器
去向:条形码识别器,详单结算系统
组成:商品名称+商品价格
商品名称={汉字|英文字母|数字}2-10
2. 商品条形码与数量信息
数据流名称:商品条形码与数量信息
别名:无
简述:条形码识别器向商品信息记录库提交的商品条形码与数量信息
来源:条形码识别器
去向:商品信息记录库
组成:商品条形码+商品数量
商品条形码={数字}10
3. 销售单据
数据流名称:销售单据
别名:小票
简述:在所有商品扫描完毕后,结算出总金额,并将详单打印出存入单据记录库和交与顾客核实
来源:详单结算系统
去向:销售单据记录库,顾客
组成:销售单编号+开单日期+总金额+收银员编号+ {商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
销售单编号=年+月+日+“0000”..”9999”
开单日期=年+月+日
总金额=浮点数
收银员编号=”c”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
商品数目=整数
单价=浮点数
总额=浮点数
备注={汉字|英文字母|数字}0-30
3.1.2.5 数据实体(data entity)
1.销售记录
数据存取名称:销售记录
简述:用来记录商品销售单据的信息
组成:销售单编号+开单日期+总金额+收银员编号+ {商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
销售单编号=年+月+日+“0000”..”9999”
开单日期=年+月+日
总金额=浮点数
收银员编号=”c”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
商品数目=整数
单价=浮点数
总额=浮点数
备注={汉字|英文字母|数字}0-30
组织方式:索引文件,以销售单编号为主码
查询要求:能随时对其中的每一张单据进行查询
2 商品信息记录
数据存取名称:商品信息记录
简述:用来记录商品详细信息
组成:商品编号+商品类别+商品名称+生产厂商+单位+当前库存+库存下限+上次采购单价+预售单价+会员折扣+备注}
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
当前库存=整数
库存下限=整数
上次采购单价=浮点数
预售单价=浮点数
会员折扣=[1..100]
备注={汉字|英文字母|数字}0-30
组织方式:索引文件,以商品编号为主码
查询要求:能随时对其中的每一种商品进行查询
3.1.3子系统3
3.1.3. 1层数据流图(DFD)
3.1.3.2 外部实体(external entity)
采购员
3.1.3.3 加工过程(operation process)
3.3.3.1 输入数据流
库存不足商品列表以及当前商品信息
3.3.3.2 内部处理逻辑(结构化英语)
3.1 统计库存不足商品
While(仍有商品未经过检查)
{
读取当前商品的数量;
If(当前商品数量<最小应储备量)
{
将该商品加到需采购商品列表中;
在需采购商品列表中添加应采购数量等信息;
}
}
打印并交由采购员;
3.2 查询库存信息
根据当前商品形势确定最小应储备量;
For(每种商品)
{
If(当前商品储存量<最小应储备量)
{
将该商品加到需采购商品列表中;
在需采购商品列表中添加应采购数量等信息;
}
}
打印并交由采购员;
3.3 处理采购单
While(仍有未处理采购单)
{
If(采购单撒谎那个的商品购买成功)
{
采购单标记并存档;
根据采购单内容更新当前商品信息记录(即库存);
}
else 重返采购单;
}
3.1.3.3.3 输出数据流
采购信息
3.1.3.4 数据流(data entity)
1. 商品存储信息
数据流名称:商品储存信息
简述:用来记录商品储存等详细信息
来源:当前商品信息记录即当前库存
去向:统计计算
组成:商品编号+商品类别+商品名称+生产厂商+单位+当前库存+库存下限+上次采购单价+预售单价+会员折扣+备注}
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
当前库存={0…….9}2-20
库存下限={0…….9}2-20
备注={汉字|英文字母|数字}0-30
2. 库存不足商品
数据流名称:库存不足商品信息
简述:用来记录库存不足商品信息
来源:当前存储信息
去向:采购员
组成:商品编号+商品类别+商品名称+生产厂商+单位+当前库存+库存下限+需采购数量
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
当前库存={0…….9}2-20
库存下限={0…….9}2-20
需采购数量={0……9}2-20
3.采购单
数据流名称:采购单
别名:无
简述:采购部门采购完商品后填写的单据
来源:采购员
去向:采购单储存单元
组成:采购单编号+供货商+采购日期+总金额+采购员编号+经办人编号+{商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
采购单编号=年+月+日+“0000”..”9999”
供货商={汉字|英文字母|数字}2-10
采购日期=年+月+日
采购员编号=”a”+”00”..”99”
经办人编号=”b”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
商品数目={0……9}2-20
单价={0…..9}.{0……9}
备注={汉字|英文字母|数字}2-30
频率:大约20条/天
3.1.3.5 数据实体(data entity)
1.采购单记录
数据项名称:采购单
别名:无
简述:采购部门采购完商品后填写的单据储存后以便查询
组成:采购单编号+供货商+采购日期+总金额+采购员编号+经办人编号+{商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
采购单编号=年+月+日+“0000”..”9999”
供货商={汉字|英文字母|数字}2-10
采购日期=年+月+日
采购员编号=”a”+”00”..”99”
经办人编号=”b”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
商品数目={0……9}2-20
单价={0…..9}.{0……9}
备注={汉字|英文字母|数字}2-30
频率:大约20条/天
组织方式:索引文件,以商品编号为主码
查询要求:能随时对其中的每一种商品进行查询
2.当前商品信息记录
数据存取名称:商品信息记录
简述:用来记录商品详细信息
组成:商品编号+商品类别+商品名称+生产厂商+单位+当前库存+库存下限+上次采购单价+预售单价+会员折扣+备注}
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
备注={汉字|英文字母|数字}2-30
组织方式:索引文件,以商品编号为主码
查询要求:能随时对其中的每一种商品进行查询
3.1.4子系统4
3.1.4.1 1层数据流图(DFD)
3.1.4.2 外部实体(external entity)
管理员
3.1.4.3 加工过程(operation process)
3.1.4.3.1 输入数据流
账户查询条件;
更新的账户信息;
商品查询条件;
更新的商品信息;
单据查询条件;
3.1.4.3.2 内部处理逻辑(结构化英语)
4.1查询账户信息
If(收到账户条件查询请求)
{
从文件读入账户信息;
按照查询条件组成列表打印给管理员;
}
4.2设置账户信息
If(收到账户设置信息)
{
按照设置条件更新账户记录并将改变写入文件;
从文件读入新的账户记录,将其中更改的项目展示给管理员;
}
4.3查询商品信息
If(收到商品条件查询请求)
{
从文件读入商品信息;
按照查询条件组成列表打印给管理员;
}
4.4设置商品信息
If(收到商品设置信息)
{
按照设置条件更新商品记录并将改变写入文件;
从文件读入新的商品记录,将其中更改的项目展示给管理员;
}
4.5查询单据信息
If(收到商品条件查询请求)
{
If(是采购单据查询)
{
从采购单据文件读入采购信息;
按照查询条件组成列表打印给管理员;
}
Else
{
从销售单据文件读入采购信息;
按照查询条件组成列表打印给管理员;
}
}
3.1.4.3.3 输出数据流
符合条件的账户信息列表;
更改后的账户信息列表;
符合条件的商品信息列表;
更改后的商品信息列表;
符合条件的单据信息列表;
3.1.4.4 数据流(data entity)
3.1.4.4.1 数据流类型
1.账户查询条件
数据流名称:账户查询条件
简述:管理员输入的针对账户的条件查询
来源:管理员
去向:4.1查询账户信息
组成:(账户ID)+(账户昵称)+(账户类型)+ (账户是否在线) +(账户年龄) + (账户性别)+ (薪水)
账户ID={0..9}10
账户昵称={汉字|英文字母|数字|_}2-10
账户类型=管理员|经理|收银员|采购员
账户是否在线=是|否
账户年龄=16..99
账户性别=男|女
薪水=整数
2.更新的账户信息
数据流名称:更新的账户信息
简述:管理员输入针对某些用户的更新,可能是添加用户,也可能是对已有的用户作修改
来源:管理员
去向:4.2设置账户信息
组成:账户ID +(账户昵称)+(账户密码)+ 账户类型 +(账户年龄) + (账户性别)+ 薪水 +(备注) 。
账户ID={0..9}10
账户昵称={汉字|英文字母|数字|_}2-10
账户密码={0..9}8
账户类型=管理员|经理|收银员|采购员
账户是否在线=是|否
账户年龄=16..99
账户性别=男|女
薪水=整数
备注={汉字|英文字母|数字|_|空格|标点符号}2-30
3.商品查询条件
数据流名称:商品查询条件
简述:管理员输入针对某些商品的更新。
来源:管理员
去向:4.3查询商品信息
组成:(商品编号)+(商品类别)+(商品名称)+(生产厂商)+(单位)+(当前库存)+(库存下限)+(上次采购单价)+(预售单价)+(销售单价)+ (会员折扣) +(备注)
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
当前库存={0…….9}2-20
库存下限={0…….9}2-20
上次采购单价=数字
预售单价=数字
销售单价=数字
会员折扣=数字
备注={汉字|英文字母|数字|_|空格|标点符号}1-100
4.更新的商品信息
数据流名称:更新的商品信息
简述:管理员输入的针对账户的更新
来源:管理员
去向:4.4设置商品信息
组成:商品编号 +(商品类别)+(商品名称)+(生产厂商)+(单位)+(当前库存)+(库存下限)+(上次采购单价)+(预售单价)+(销售单价)+ (会员折扣) +(备注)
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
当前库存={0…….9}2-20
库存下限={0…….9}2-20
上次采购单价=浮点数
预售单价=浮点数
销售单价=浮点数
会员折扣=浮点数
备注={汉字|英文字母|数字|_|空格|标点符号}1-100
5. 单据查询条件
数据流名称:单据查询条件
简述:管理员输入的单据的条件查询
来源:管理员
去向:4.5查询单据
组成:单据类型+[((销售单编号)+(开单日期)+(总金额)+(收银员编号)+(商品编号A))|((采购单编号)+(供货商)+(采购日期)+(总金额)+(采购员编号)+(经办人编号)+(商品编号B)]
单据类型=[采购单据|销售单据]
销售单编号=年+月+日+“0000”..”9999”
开单日期=年+月+日
总金额=浮点数
收银员编号=”c”+”00”..”99”
商品编号A={0..9}10
采购单编号=年+月+日+“0000”..”9999”
供货商={汉字|英文字母|数字}0-10
采购日期=年+月+日
总金额=浮点数
采购员编号=”a”+”00”..”99”
经办人编号=”b”+”00”..”99”
商品编号B={0..9}10
6.符合条件的账户信息列表
数据流名称:符合条件的账户信息列表
简述:管理员账户查询的结果
来源:4.1查询用户信息
去向:管理员
组成:账户ID +账户昵称+账户密码+ 账户类型 +账户年龄 + 账户性别+ 薪水 +备注
账户ID={0..9}10
账户昵称={汉字|英文字母|数字|_}2-10
账户密码={0..9}8
账户类型=管理员|经理|收银员|采购员
账户是否在线=是|否
账户年龄=16..99
账户性别=男|女
薪水=浮点数
备注={汉字|英文字母|数字|_|空格|标点符号}2-30
7.更改后的账户信息列表
数据流名称:更改后的账户信息列表
简述:被管理员修改的账户条目
来源:4.2设置用户信息
去向:管理员
组成:账户ID +账户昵称+账户密码+ 账户类型 +账户年龄 + 账户性别+ 薪水 +备注
账户ID={0..9}10
账户昵称={汉字|英文字母|数字|_}2-10
账户密码={0..9}8
账户类型=管理员|经理|收银员|采购员
账户是否在线=是|否
账户年龄=16..99
账户性别=男|女
薪水=浮点数
备注={汉字|英文字母|数字|_|空格|标点符号}2-30
8.符合条件的商品信息列表
数据流名称:符合条件的商品信息列表
简述:符合管理员条件的条目
来源:4.3查询商品信息
去向:管理员
组成:商品编号 +商品类别+商品名称+生产厂商+单位+当前库存+库存下限+上次采购单价+预售单价+销售单价+ 会员折扣 +备注
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
当前库存={0…….9}2-20
库存下限={0…….9}2-20
上次采购单价=浮点数
预售单价=浮点数
销售单价=浮点数
会员折扣=浮点数
备注={汉字|英文字母|数字|_|空格|标点符号}1-100
9.更改后的商品信息列表
数据流名称:更改后的商品信息列表
简述:更改后的商品信息条目
来源:4.4设置商品信息
去向:管理员
组成:商品编号 +商品类别+商品名称+生产厂商+单位+当前库存+库存下限+上次采购单价+预售单价+销售单价+ 会员折扣 +备注
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
当前库存={0…….9}2-20
库存下限={0…….9}2-20
上次采购单价=浮点数
预售单价=浮点数
销售单价=浮点数
会员折扣=浮点数
备注={汉字|英文字母|数字|_|空格|标点符号}1-100
10.符合条件的单据信息列表
数据流名称:符合条件的单据信息列表
简述:符合条件的单据条目
来源:4.5查询单据
去向: 管理员
组成:单据类型+[销售单编号+开单日期+总金额+收银员编号|采购单编号+供货商+采购日期+总金额+采购员编号+经办人编号]
单据类型=[采购单据|销售单据]
销售单编号=年+月+日+“0000”..”9999”
开单日期=年+月+日
总金额=浮点数
收银员编号=”c”+”00”..”99”
采购单编号=年+月+日+“0000”..”9999”
供货商={汉字|英文字母|数字}0-10
采购日期=年+月+日
总金额=浮点数
采购员编号=”a”+”00”..”99”
经办人编号=”b”+”00”..”99”
3.1.4.5 数据实体(data entity)
3.1.4.5.1 数据属性名称与含义
1.账户信息记录
数据存取名称:账户信息记录
简述:存放账户信息
组成:账户ID +账户昵称+账户密码+ 账户类型 +账户年龄 + 账户性别+ 薪水 +备注
账户ID={0..9}10
账户昵称={汉字|英文字母|数字|_}2-10
账户密码={0..9}8
账户类型=管理员|经理|收银员|采购员
账户是否在线=是|否
账户年龄=16..99
账户性别=男|女
薪水=浮点数
备注={汉字|英文字母|数字|_|空格|标点符号}2-30
组织方式:索引文件,以账户ID为主码
查询要求:能随时对其中的每一个账户进行查询
2.商品信息记录
数据存取名称:商品信息记录
简述:用来记录商品详细信息
组成: 商品编号+商品类别+商品名称+生产厂商+单位+当前库存+库存下限+上次采购单价+预售单价+会员折扣+备注
商品编号={0..9}10
商品类别={汉字}2-5
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
当前库存=整数
库存下限=整数
上次采购单价=浮点数
预售单价=浮点数
会员折扣=[1..100]
备注={汉字|英文字母|数字|_|空格|标点符号}2-30
组织方式:索引文件,以商品编号为主码
查询要求:能随时对其中的每一种商品进行查询
3.采购单据记录
数据存取名称:采购单据记录
简述:用来记录采购单据的信息
组成:采购单编号+供货商+采购日期+总金额+采购员编号+经办人编号+{商品编号+商品名称+生产厂商+单位+商品数目+单价+总额+备注}
采购单编号=年+月+日+“0000”..”9999”
供货商={汉字|英文字母|数字}0-10
采购日期=年+月+日
总金额=浮点数
采购员编号=”a”+”00”..”99”
经办人编号=”b”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
商品数目=整数
单价=浮点数
总额=浮点数
备注={汉字|英文字母|数字|_|空格|标点符号}2-30
组织方式:索引文件,以采购单编号为主码
查询要求:能随时查询其中的每一张单据
4.销售单据记录
数据存取名称:销售单据记录
简述:用来记录商品销售单据的信息
组成:销售单编号+开单日期+总金额+收银员编号+ {商品编号+商品+生产厂商+单位+商品数目+单价+总额+备注}
销售单编号=年+月+日+“0000”..”9999”
开单日期=年+月+日
总金额=浮点数
收银员编号=”c”+”00”..”99”
商品编号={0..9}10
商品名称={汉字|英文字母|数字}2-10
生产厂商={汉字|英文字母|数字}2-20
单位={汉字|字母}1-2
商品数目=整数
单价=浮点数
总额=浮点数
备注={汉字|英文字母|数字|_|空格|标点符号}2-30
组织方式:索引文件,以销售单编号为主码
查询要求:能随时对其中的每一张单据进行查询
3.2面向对象的需求分析(本部分来源于CP4的提交物)
3.2.1用例图
3.2.1.1用例1
用例:查询采购统计报表
1描述:本用例允许经理输入统计条件,获取符合条件的采购单据的统计
2参与者:经理
3事件流:
(1)系统要求用户选择一个或多个统计条件(起止日期,采购员编号)
(2)系统显示一个统计报表
(3)用户可选择其中任一采购单据进行详细信息查看
4前提条件:用户能在登陆后的任意时刻执行此用例
5后置条件:统计满足查询日期内的所有采购单据并输出和显示
3.2.1.2用例2
用例:查询销售统计报表(起止日期,采购员编号)
1描述:本用例允许经理输入统计条件,获取符合条件的销售单据的统计
2参与者:经理
3事件流:
(1)系统要求用户选择一个或多个统计条件(起止日期,收银员编号)
(2)系统显示一个统计报表
(3)用户可选择其中任一销售单据进行详细信息查看
4前提条件:用户能在登陆后的任意时刻执行此用例
5后置条件:统计满足查询日期内的所有销售单据并输出和显示
3.2.1.3用例3
用例:查询商品信息
1描述:本用例允许用户输入查询条件,获取满足条件的所有商品的详细信息
2参与者:经理,采购员,系统管理员
3事件流:
3.1常规流程
(1)系统要求用户输入一个或多个查询条件(商品类别,商品名等)
(2)系统显示满足条件的商品的详细信息
3.2备选流程
(1)满足条件的商品不存在
在第(2)步,若没有满足条件的商品,系统显示“没有满足查询条件的商品”,用例结束
4前提条件:用户能在登陆后的任意时刻执行此用例
5后置条件:对满足查询条件的所有商品显示
3.2.1.4用例4
用例:登陆系统
1描述:本用例允许用户输入用户名和密码后登陆系统
2参与者:经理,收银员,系统管理员,采购员
3事件流:
3.1常规流程
(1)系统要求用户输入用户名和密码
(2)用户登陆系统
3.2备选流程
(1)帐户名或密码错误
在第(2)步用户名或密码错误,系统显示“用户名或密码错误,请重新输入”,再进入常规流程执行
4前提条件:同一用户不能重复登陆
5后置条件:用户名和密码正确后用户能成功登陆
3.2.1.5用例5
用例:查询以往采购单据(只能查询自己的采购单据)
1.描述:本用例允许采购员对已经处理过的采购单据进行查询,获得每笔采购的详细信息
2.参与者:采购员
3.事件流
3.1 常规流程
(1)采购员登陆,输入一个或者几个查询的条件。(如若要查询某一时间段的所有采购单,则可以输入起始时间和截止时间)。
(2)采购员输入查询条件后,系统根据其输入的条件,输出一系列采购单据以供查询。
(3)采购员可以按时间,金额等信息进行排序。
3.2 备选流程
在第二步时,如果系统找不到满足条件的清单,则显示“无法找到”,用例结束。
4.前提条件
采购员必须在登陆进行身份确认之后才可进行此用例,同时,一旦确认成功,将随时支持此用例。
5.后置条件
如果用例执行成功,系统将所有的满足条件的采购单序列展现在采购员面前。
3.2.1.6用例6
用例:新建采购单据
1.描述:通过本用例,在每次采购完成之后,采购员能够将本次采购单上的内容进行存储,以便今后的查询之用
2.参与者:采购员
3.时间流
3.1常规流程采购员登陆后,将新建一个采购单储存项。
(1)系统接受新建要求,并且返回成功提示,并要求录入具体信息。
(2)采购员得到成功建立信息之后,将逐条的输入采购单内容。并且最后进行输入完成确认。
(3)系统收到确认后,将储存输入信息,并将整理好的新采购单显示出来,供采购员最终确认。
(4)采购员对生成的采购单进行确认。
3.2 备选流程
在第五步中,若有问题则删除此次新建,重新从第一步来过。
4.前提条件
本用例时建立在采购员完成一次采购行为的基础之上,对本次采购的单据进行储存。
5.后置条件
如果本用例执行成功,那么将意味着本次采购行为的终止,采购单统计表将被更新,储存的采购单将一直保存以便今后查询统计。
3.2.1.7用例7
用例:查询库存不足商品
1.描述:本用例可以使采购员随时对库存不足商品信息进行查处,以便采购,防止货物短缺。
2.参与者:采购员
3.事件流
3.1 常规流程
(1)采购员登陆后,进行对库存不足商品信息的查询提出。
(2)系统接收到查询申请之后,将当前的库存不足商品信息显示出来。
3.2 备选流程
在第二部中,如果没有商品不足,则显示“无”。
4.前提条件
采购员需在登陆的情况下进行查询,并且支持随时将进行查询。
5.后置条件
本用例结束后,采购员将得到需要购买的商品信息。以此为根据进行采购,并生成采购单。
3.2.1.8用例8
用例:售出商品结算
1.描述:本用例是顾客购完物后,收银员对商品进行结算
2.参与者:收银员
3.事件流
3.1常规流程
(1)收银员将售出商品的编号和数量信息,顾客会员标志信息输入
(2)系统自动计算顾客的应付款值
(3)收银员收款后将顾客的实付款值输入
(4)系统计算出找零值
(5)打印小票
(6)系统自动产生一张销售单,并修改商品信息中的库存值
4.前提条件:收银员成功登陆
5.后置条件:产生销售单据,相关商品的库存值被修改
3.2.1.9用例9
用例:新建账户
1.描述:系统管理员可以新建系统的账户。
2.参与者:系统管理员
3.事件流
3.1常规流程
(1)输入新建账户的用户名
(2)输入新建账户的密码
(3)再输入账户密码作为核对
(4)输入用户类型等一系列用户信息
(5)系统显示成功新建。
3.2备用流程
(1)用户名已存在
在(1)步中,新建的用户名已经存在。系统将显示“用户已存在,请更换用户名。”
(2)密码不一致
在(3)步中,第二次输入的密码和第一次的不一样。系统将要求管理员重新输入密码。
4.前提条件:管理员成功登陆
5.后置条件:如果该用例成功,系统中将产生一个新用户。
3.2.1.10用例10
用例:删除账户
1.描述:系统管理员可以删除系统的账户。
2.参与者:系统管理员
3.事件流
3.1常规流程
(1)输入账户的条件查询
(2)系统返回符合条件的用户列表
(3)删除列表上的用户
(4)系统返回此次删除的用户
3.2备用流程
(1)用户名已经登陆
在第三步中用户已经登陆在系统中,系统显示“删除XXX用户步成功,请稍后再试。”。
4.前提条件:管理员成功登陆
5.后置条件:如果该用例成功,系统中将删除用户。
3.2.1.11用例11
用例:修改账户信息
1.描述:系统管理员可以修改系统的账户信息。
2.参与者:系统管理员
3.事件流
3.1常规流程
(1)输入账户的条件查询
(2)系统返回符合条件的用户列表
(3)修改列表上的用户的信息(一项影响一批)
(4)系统显示“修改成功”
4.前提条件:管理员成功登陆
5.后置条件:如果该用例成功,系统中指定用户的信息将被修改。
3.2.1.12用例12
用例:新建商品记录
1.描述:系统管理员可以新建商品记录
2.参与者:系统管理员
3.事件流
3.1常规流程
(1)输入新建的商品的各项信息
(2)确认新建
(3)显示新建成功信息
3.2备用流程
(1)商品已经存在
在第(2)步时,系统发现商品已存在,便显示“该商品已存在无需新建”
4.前提条件:管理员成功登陆
5.后置条件:如果该用例成功,系统中将新加入商品
3.2.1.13用例13
用例:删除商品记录
1.描述:系统管理员可以删除商品记录
2.参与者:系统管理员
3.事件流
3.1常规流程
(1)管理员输入商品查询条件
(2)系统返回符合条件的商品列表
(3)系统管理员确认删除
(4)系统显示本次操作的结果
4.前提条件:管理员成功登陆
5.后置条件:如果该用例成功,系统中将新加入商品
3.2.1.14用例14
用例:修改商品记录
1.描述:系统管理员可以修改商品记录
2.参与者:系统管理员
3.事件流
3.1常规流程
(1)管理员输入商品查询条件
(2)系统返回符合条件的商品列表
(3)系统管理员对商品信息作修改,此动作将影响列表上的所有商品
(4)系统显示本次操作的结果
4.前提条件:管理员成功登陆
5.后置条件:如果该用例成功,特定的商品信息将被修改
3.2.1.15用例15
用例:查询销售单据
1.描述:本用例允许管理员查询已存在的销售单据
2.参与者:管理员
3.事件流
3.1 常规流程
(1)管理员登陆,输入一个或多个查询条件(起止日期,收银员编号)。
(2)系统输出符合条件的单据列表。
(3)可对某一单据进行详细信息查看。
(4)可输入新的查询条件,可对列表中单据进行二次查询
3.2 备选流程
在第二步时,如果系统找不到满足条件的清单,则显示“无法找到”,用例结束。
4.前提条件
管理员必须在登陆进行身份确认之后才可进行此用例,同时,一旦确认成功,将随时支持此用例。
5.后置条件
如果用例执行成功,系统将所有的满足条件的销售单展现在采购员面前。
3.2.1.16用例16
用例:查询采购单据
1.描述:本用例允许管理员查询已存在的采购单据
2.参与者:管理员
3.事件流
3.1 常规流程
(1)管理员登陆,输入一个或多个查询条件(起止日期,收银员编号)。
(2)系统输出符合条件的单据列表。
(3)可对某一单据进行详细信息查看。
(4)可输入新的查询条件,可对列表中单据进行二次查询
3.2 备选流程
在第二步时,如果系统找不到满足条件的清单,则显示“无法找到”,用例结束。
4.前提条件
管理员必须在登陆进行身份确认之后才可进行此用例,同时,一旦确认成功,将随时支持此用例。
5.后置条件
如果用例执行成功,系统将所有的满足条件的采购单展现在采购员面前。
3.2.2静态结构模型
3.2.2.1分析类图(简化)
3.2.2.2分析类图(详细)
详细1:
详细2:
边界类:
1.采购统计边界类:表示经理进行采购统计时的操作界面。
采购统计():对符合条件(起止日期,采购员)的采购单据进行统计,并输出单据列表。
查看列表中任一单据():对列表中的任一单据进行点击,能查看其详细信息
2.查询采购单据边界类:采购员和管理员查询采购单据的操作界面
查询单据列表():查询符合条件的采购单,以列表形式输出
查询任一单据详细信息():将单据详细信息输出
二次查询():对输出列表中的单据和输入的查询条件进行再一次查询
3.新建采购单边界类:采购员新建采购单的操作界面
新建采购单():采购员新建一采购单,并输入采购信息
4.销售统计边界类:表示经理进行销售统计时的操作界面
销售统计():对符合条件的销售单据进行统计,以列表形式输出
查看列表中任一单据详细信息():点击列表中任一单据可查看其详细信息
5.查询销售单据边界类:表示查询销售单据时的操作界面
查看单据列表():查询符合条件的销售单据,以列表形式输出
查询任一单据详细信息():将单据详细信息输出
二次查询():对输出列表中的单据和输入的查询条件进行再一次查询
6.售出商品结算边界类:表示收银员进行商品结算的操作界面
售出商品清算():收银员输入商品编号和数量,系统计算出应收款
资金结算():处理找零
生成销售单():结算后产生一销售单,系统保留
7.库存不足商品查询边界类:表示采购员查看库存不足商品时的操作界面
库存不足商品查询():系统产生出一个当前库存值小于下限值的商品列表
8.商品信息查询边界类:进行商品信息查询时的操作界面
所有商品信息查询():查看所有商品列表
查询分类商品():查看某一分类的商品的详细信息
查询任意商品的详细信息():查看任一商品的详细信息
9.商品信息管理边界类:表示对商品信息进行管理的操作界面
新建商品信息():在商品信息表中新建一商品记录
删除商品信息():对已存在的商品记录进行删除
修改商品信息():对已存在的商品记录进行修改
10.帐户信息管理边界边界类:表示进行帐户管理时的操作界面
新建帐户():新建一帐户
删除帐户():删除已存在的帐户
修改帐户():对已存在的帐户信息进行修改
控制类
1.采购单据管理类:负责采购单据的操作
采购统计():对符合条件(起止日期,采购员)的采购单据进行统计,并输出单据列表。
查看列表中任一单据():对列表中的任一单据进行点击,能查看其详细信息
查询单据列表():查询符合条件的采购单,以列表形式输出
查询任一单据详细信息():将单据详细信息输出
二次查询():对输出列表中的单据和输入的查询条件进行再一次查询
2.销售单据管理类:负责销售单据的操作
销售统计():对符合条件(起止日期,收银员)的销售单据进行统计,并输出单据列表。
查看列表中任一单据():对列表中的任一单据进行点击,能查看其详细信息
查询单据列表():查询符合条件的销售单,以列表形式输出
查询任一单据详细信息():将单据详细信息输出
二次查询():对输出列表中的单据和输入的查询条件进行再一次查询
3.商品信息管理类:负责对商品信息的操作
售出商品清算():收银员输入商品编号和数量,系统计算出应收款
库存不足商品查询():系统产生出一个当前库存值小于下限值的商品列表
所有商品信息查询():查看所有商品列表
查询分类商品():查看某一分类的商品的详细信息
查询任意商品的详细信息():查看任一商品的详细信息
新建商品信息():在商品信息表中新建一商品记录
删除商品信息():对已存在的商品记录进行删除
修改商品信息():对已存在的商品记录进行修改
4.帐户信息管理类:负责操作帐户管理
新建帐户():新建一帐户
删除帐户():删除已存在的帐户
修改帐户():对已存在的帐户信息进行修改
3.2.2.3领域类图(类及其之间的关系)
实体:用户
属性---用户名:登陆名
密码:用来验证登陆
操作---登陆():执行系统登陆
修改信息():修改密码
实体:商品信息
属性---商品编号:商品标识,条形码
商品名称:中英文进行名字的标识
生产厂商:标识商品的产地
当前库存量,库存下限:标识商品地库存信息
预售价格,会员折扣:针对不同顾客地销售价格
备注:该商品地简要说明
操作---新建():新建商品记录
修改():修改商品记录
查询():输出商品信息
实体:采购单
属性---编号:本次采购单地标识
供货商:采购商品的来源
日期:本次采购的日期
总金额:本次采购的合计金额
采购员:经办此次采购地采购员编号
采购上商品列表:具体的商品采购明细
操作---新建采购单():新建一个采购单,以便存储
修改采购单():修改一个采购单
新建采购单项():针对一个采购单,新建明细
修改采购单项():针对一个采购单,修改其中的明细
删除采购单项():针对一个采购单,删除一个或几个明细
修改商品信息():每次采购之后,更新当前商品库存状况等信息
查询():查询当前所的采购单据,以便统计整理
实体:采购单项
属性---商品编号:个体商品的编号,条形码等
序号:本次采购该商品的序号
商品名称,生产厂商:该商品的基本信息
商品数目:该商品采购的数目
单价:该商品的采购单价
总额:商品数目*单价
备注:本商品的说明性信息
操作---新建():新建一个采购单项
修改():修改一个采购单项
查询():查询本商品的基本信息
实体:销售单
属性---编号:本次销售的流水号
日期:本次销售的日期
总金额:本次销售的总金额
收银员编号:经办本次销售的收银员标识
销售单项:针对本次销售的个体商品明细
操作---新建销售单():新建一个销售单
修改销售单():修改一个销售单
新建销售单项():针对一个销售单,新建明细
修改销售单项():针对一个销售单,修改其中的明细
删除销售单项():针对一个销售单,删除一个或几个明细
修改商品信息():每次销售之后,更新当前商品库存状况等信息
查询():查询当前所的销售单据,以便统计整理
实体:销售单项
属性---序号:个体上商品的销售序号
商品编号:该商品的标识,条形码等
商品名称,生产厂商:该商品的基本信息
商品单价:该商品本次销售的单价
商品数目:该商品本次销售的数目
金额:商品单价*商品数目
备注:该商品是说明性信息
操作---新建():新建一个销售单项
修改():修改一个销售单项
查询():查询本商品的基本信息
实体:采购统计表
属性---起始日期:本次需统计的采购单的起始日期
截止日期:本次需统计的采购单的截止日期
采购员编号:需统计的采购单的经办采购员
统计日期:本次统计的日期
采购商品总数:本次统计的采购单所采购商品的总数目
采购商品总价:本次统计的采购单所采购商品的总价格
采购单列表:本次统计的所有采购单的明细
操作---新建():新建一次新的统计
实体:采购统计表项
属性---序号:采购单的本身标识
采购单:采购单的各项信息
操作---查询单据详细信息():查询该单据的明细
实体:销售统计表
属性---起始日期:本次需统计的销售单的起始日期
截止日期:本次需统计的销售单的截止日期
销售员编号:需统计的销售单的经办销售员
统计日期:本次统计的日期
销售商品总数:本次统计的销售单所采购商品的总数目
销售商品总价:本次统计的销售单所采购商品的总价格
销售单列表:本次统计的所有销售单的明细
操作---新建():新建一次新的统计
实体:销售统计表项
属性---序号:销售单的本身标识
采购单:销售单的各项信息
操作---查询单据详细信息():查询该单据的明细
3.2.3动态行为模型
3.2.3.1 用例1的时序图
用例:查询采购统计
3.2.3.2 用例2的时序图
用例:查询销售统计报表
3.2.3.3 用例3的时序图
用例:商品信息查询
3.2.3.4用例4的时序图
用例:系统登陆
3.2.3.5用例5的时序图
用例:查询以往采购单据
3.2.3.6 用例6的时序图
用例:新建采购单据
3.2.3.7 用例7的时序图
用例:查询库存不足商品
3.2.3.8 用例8的时序图
用例:售出商品结算
3.2.3.9用例9的时序图
用例:新建帐户
3.2.3.10 用例10的时序图
用例:删除帐户
3.2.3.11 用例11的时序图
用例:修改帐户信息
3.2.3.12 用例12的时序图
用例:新建商品记录
3.2.3.13 用例13的时序图
用例:删除商品记录
3.2.3.14 用例14的时序图
用例:修改商品记录
3.2.3.15用例15的时序图
用例:销售单据查询
3.2.3.16用例16的时序图
用例:采购单据查询
3.3外部接口需求
本平台与外部环境要素之间的接口信息如下:
硬件接口:本平台支持Win32的处理器和操作系统,端口号为8080,通信协议为TCP/IP协议。
CPU | 奔四1.66 GHz或以上 |
内存 | 1G或以上 |
硬盘 | 80G或以上 |
网卡 | 百兆以上 |
软件接口:本平台使用SQL Sever2005作为数据库系统 , Windows XP Professional 操作系统作为测试平台的操作系统。
系统用户通过公司局域网和登陆器就可以访问本系统,除此之外无别的特殊要求。
通讯接口:本平台使用TCP/IP协议,所有数据传输不进行加密以提高访问速度,页面符合超文本协议,数据传输率依网络情况不定。
3.4数据模型(IDEF1X图)