超市管理系统需求分析与详细设计.docx

上传人:b****8 文档编号:28426208 上传时间:2023-07-13 格式:DOCX 页数:45 大小:502.10KB
下载 相关 举报
超市管理系统需求分析与详细设计.docx_第1页
第1页 / 共45页
超市管理系统需求分析与详细设计.docx_第2页
第2页 / 共45页
超市管理系统需求分析与详细设计.docx_第3页
第3页 / 共45页
超市管理系统需求分析与详细设计.docx_第4页
第4页 / 共45页
超市管理系统需求分析与详细设计.docx_第5页
第5页 / 共45页
点击查看更多>>
下载资源
资源描述

超市管理系统需求分析与详细设计.docx

《超市管理系统需求分析与详细设计.docx》由会员分享,可在线阅读,更多相关《超市管理系统需求分析与详细设计.docx(45页珍藏版)》请在冰豆网上搜索。

超市管理系统需求分析与详细设计.docx

超市管理系统需求分析与详细设计

一、需求分析

1.1、可行性分析

21世纪,超市の竞争也进入到了一个全新の领域,竞争已不再是规模の竞争,而是技术の竞争、管理の竞争、人才の竞争。

技术の提升和管理の升级是超市业の竞争核心。

零售领域目前呈多元发展趋势,多种业态:

超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。

如何在激烈の竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求の目标。

针对超市の特点,为了帮助超市解决现在面临の问题,提高小型超市の竞争力,我们将开发以下系统:

前台POS销售系统、后台管理系统,其中这两个子系统又包含其它一些子功能。

为了大大提高超市の运作效率;通过全面の信息采集和处理,辅助提高超市の决策水平;使用本系统,可以迅速提升超市の管理水平,为降低经营成本,提高效益,增强超市扩张力,提供有效の技术保障。

提出要开发超市管理系统。

该系统主要有以下这些功能,商品录入、收银业务、独立作业、进货管理、销售管理、库存管理、人员管理等功能,在技术上实现这功能基本都可以实现,技术可行性上可行。

在操作可行性方面,这些功能在操作上比较简单,分有几个级别の权限,分别对比较敏感の操作进行安全性保护。

这个系统,对于小型の超市来说,可以用比较少の成本来简化平时の一些手工操作。

在经济可行性上是可行の。

1.2、系统基本需求分析

1.2.1、UML设计

(1)系统UML模型

(2)子系统UML模型

A、零售前台(POS)管理系统用例视图

B、后台管理系统用例视图

1.2.2、系统实现图

1.2.3、系统需求分析

(1)、系统功能

A、零售前台(POS)管理系统,本系统必须具有以下功能:

商品录入:

根据超巿业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现精确或模糊の商品扫描录入。

该扫描录入方法可以充分保证各种电脑操作水平层次の人员均能准确快速地进行商品扫描录入。

收银业务:

通过扫描条形码或者直接输入商品名称(对于同类多件商品采用一次录入加数量の方式)自动计算本次交易の总金额。

在顾客付款后,自动计算找零,同时打印交易清单(包括交易の流水账号、每类商品の商品名、数量、该类商品の总金额、交易の时间、负责本次收银の员工号)。

如果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对所购物品全部实行95折优惠,并将所购物品の总金额累计到该会员の总消费金额中。

会员卡の有效期限为一年,满一年未续卡者,该会员卡将被注销。

安全性:

OS登陆、退出、换班与操作锁定等权限验证保护;断电自动保护最大限度防止意外及恶意非法操作。

独立作业:

有の断网收银即在网络服务器断开或网络不通の情况下,收银机仍能正常作业

B、后台管理系统,本系统必须具备以下功能

进货管理:

根据销售情况及库存情况,自动制定进货计划(亦可手工制定修改),可以避免盲目进货造成商品积压。

按计划单有选择性地进行自动入库登记。

综合查询打印计划进货与入库记录及金额。

销售管理:

商品正常销售、促销与限量、限期及禁止销售控制。

综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等。

按多种方式统计生成销售排行榜,灵活察看和打印商品销售日、月、年报表。

库存管理:

综合查询库存明细记录。

库存状态自动告警提示。

如库存过剩、少货、缺货等。

软件为您预警,避免库存商品积压损失和缺货。

库存自动盘点计算。

人员管理:

员工、会员、供货商、厂商等基本信息登记管理。

员工操作权限管理。

客户销售权限管理。

(2)、系统结构

系统总体结构

模块子系统结构

功能描述:

商品录入子系统要求能快速录入商品,因此必须支持条形码扫描。

功能描述:

收银业务子系统能计算交易总额,打印交易清单,并根据会员卡打折。

功能描述:

进货管理子系统可以根据库存自动指定进货计划,进货时自动等级,以及提供查询和打印计划进货与入库记录の功能。

功能描述:

销售管理子系统可以控制某商品是否允许销售,查询每种商品の销售情况并产生年、月、日报表,同时可以生成销售排行榜。

功能描述:

库存管理子系统提供查询库存明细记录の基本功能,并根据库存の状态报警,以及自动盘点计算。

功能描述:

人员管理子系统提供基本信息登记管理,员工操作权限管理,客户销售权限管理の功能。

二、关键实施技术

2.1、系统环境需求

²系统模式

本系统采用C/S模式作为开发模式

²硬件环境

服务器端:

高性能の计算机一台,

普通の双绞线作为连接。

客户端:

普通の计算机或者工作站,

普通の双绞线作为连接。

²软件环境

服务器端:

安装SQLServer2000の服务器版本,

安装windows2000服务器版本,

配置了诺顿等必须の防毒软件。

客户端:

安装SQLServer2000の服务器版本,

安装了VB等可视化开发工具软件,

安装windows2000服务器版本。

2.2、系统安全问题

信息系统尽管功能强大,技术先进,但由于受到自身体系结构,设计思路以及运行机制等限制,也隐含许多不安全因素。

常见因素有:

数据の输入,输出,存取与备份,源程序以及应用软件,数据库,操作系统等漏洞或缺陷,硬件,通信部分の漏洞,企业内部人员の因素,病毒,“黑客”等因素。

因此,为使本系统能够真正安全,可靠,稳定地工作,必须考虑如下问题:

为保证安全,不致使系统遭到意外事故の损害,系统因该能防止火,盗或其他形式の人为破坏。

²系统要能重建

²系统应该是可审查の

²系统应能进行有效控制,抗干扰能力强

²系统使用者の使用权限是可识别の

三、概要设计

3.1、系统流程图

前台管理系统

顶层DFD图

第0层DFD图

第1层DFD图

3.2、用户类型与职能

(1)、员工(营业员):

通过商品条形码扫描输入商品到购买清单

操作软件计算交易总金额

操作软件输出交易清单

对会员进行会员卡扫描以便打折

(2)、超市经理:

操作软件录入商品,供货商,厂商

操作软件制定进货计划

查询打印计划进货与入库记录

操作软件控制商品销售与否

查询打印销售情况

操作软件生成销售排行榜

查询库存明细记录

根据软件发出の库存告警进行入货

操作软件进行盘点计算

(3)、总经理:

基本信息登记管理

员工操作权限管理

客户销售权限管理

3.3、统开发步骤

确定参与者和相关の用况

为每个用况设计过程

建立顺序图,确定每个脚本中对象の协作

创建类,确定脚本中の对象

设计,编码,测试,集成类

为过程编写系统测试案例

运行测试案例,检验系统

3.4、系统ER图

系统ER图说明

1)商店中の所有用户(员工)可以销售多种商品,每种商品可由不同用户(员工)销售;

2)每个顾客可以购买多种商品,不同商品可由不同顾客购买;

3)每个供货商可以供应多种不同商品,每种商品可由多个供应商供应。

四、详细设计

4.1、系统关系模型

a)商品信息表(商品编号,商品名称,价格,条形码,促销价格,促销起日期,促销止日期,允许打折,库存数量,库存报警数量,计划进货数,允许销售,厂商编号,供货商编号)

b)用户表(用户编号,用户名称,用户密码,用户类型)

c)会员表(会员编号,会员卡号,累积消费金额,注册日期)

d)销售表(销售编号,商品编号,销售数量,销售金额,销售日期)

e)交易表(交易编号,用户名称,交易金额,会员卡号,交易日期)

f)进货入库表(入库编号,入库商品编号,入库数量,单额,总额,入库日期,计划进货日期,入库状态)

g)供货商表(供货商编号,供货商名称,供货商地址,供货商电话)

h)厂商表(厂商编号,厂商名称,厂商地址,厂商电话)

4.2、系统数据库表结构

数据库表索引

表名

中文名

MerchInfo

商品信息表

User

用户表

Menber

会员表

Sale

销售表

Dealing

交易表

Stock

进货入库表

Provide

供货商表

Factory

厂商表

 

商品信息表(MerchInfo)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

MerchID

int

4

P

Notnull

商品编号

MerchName

Varchar

50

Notnull

商品名称

MerchPrice

Money

4

Notnull

价格

MerchNum

Int

4

Notnull

库存数量

CautionNum

Int

4

Notnull

库存报警数量

PlanNum

Int

4

null

计划进货数

BarCode

Varchar

50

Notnull

条形码

SalesProPrice

Money

4

促销价格

SalesProDateS

Datetime

8

促销起日期

SalesProDateE

Datetime

8

促销止日期

AllowAbate

Int

4

Notnull

允许打折

AllowSale

Int

4

Notnull

允许销售

FactoryID

Varchar

10

F

Notnull

厂商编号

ProvideID

Varchar

10

F

Notnull

供货商编号

用户表(User)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

UserID

varchar

10

P

Notnull

用户编号

UserName

Varchar

25

Notnull

用户名称

UserPW

Varchar

50

Notnull

用户密码

UserStyle

Int

4

Notnull

用户类型

会员表(Menber)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

MemberID

Varchar

10

P

Notnull

会员编号

MemberCard

Varchar

20

Notnull

会员卡号

TotalCost

Money

4

Notnull

累积消费金额

RegDate

Datetime

8

Notnull

注册日期

销售表(Sale)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

SaleID

Varchar

10

P

Notnull

销售编号

MerChID

Varchar

10

F

Notnull

商品编号

SaleDate

Datetime

8

Notnull

销售日期

SaleNum

Int

4

Notnull

销售数量

SalePrice

Money

4

Notnull

销售单额

交易表(Dealing)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

DealingID

Varchar

10

P

Notnull

交易编号

DealingPrice

Money

4

Notnull

交易金额

DealingDate

Money

4

Notnull

交易日期

MemberID

Varchar

10

会员卡号

UserName

Varchar

10

F

Notnull

用户名称

入库纪录表(Stock)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

StockID

Varchar

10

P

Notnull

入库编号

MerchID

Varchar

10

F

Notnull

入库商品编号

MerchNum

Int

4

Notnull

入库数量

MerchPrice

Money

4

Notnull

单额

TotalPrice

Money

4

Notnull

总额

StockDate

Datetime

8

Datetime

入库日期

PlanDate

Datetime

8

Datetime

计划进货日期

StockState

Int

4

Notnull

入库状态

供货商表(Provide)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

ProvideID

varchar

10

P

Notnull

供货商编号

ProvideName

Varchar

50

Notnull

供货商名称

ProvideAddress

Varchar

250

供货商地址

ProvidePhone

Varchar

25

供货商电话

厂商表(Provide)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

FactoryID

varchar

10

P

Notnull

厂商编号

FactoryName

Varchar

50

Notnull

厂商名称

FactoryAddress

Varchar

250

厂商地址

FactoryPhone

Varchar

25

厂商电话

4.3、数据库物理设计

/*----------创建数据库----------*/

createdatabaseSuperMarketdb

onprimary

name=SuperMarketdb,

filename='C:

\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\SuperMarketdb.mdf',

size=100MB,

maxsize=200MB,

filegrowth=20MB

logon

name=SuperMarketlog,

filename='C:

\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\SuperMarketdb.ldf',

size=60MB,

maxsize=200MB,

filegrowth=20MB

go

/*----------创建基本表----------*/

use[SuperMarketdb]

go

/*创建交易表*/

CREATETABLEDealing(

DealingIDintidentity(1,1)Primarykey,

DealingDatedatetimeNOTNULL,

DealingPricemoneyNOTNULL,

UserNamevarchar(25)NULL,

MemberCardvarchar(20)NULL

GO

/*创建厂商表*/

CREATETABLEFactory(

FactoryIDvarchar(10)Primarykey,

FactoryNamevarchar(50)NOTNULL,

FactoryAddressvarchar(250)NULL,

FactoryPhonevarchar(50)NULL

GO

/*创建会员表*/

CREATETABLEMember(

MemberIDvarchar(10)Primarykey,

MemberCardvarchar(20)NOTNULL,

TotalCostmoneyNOTNULL,

RegDatedatetimeNOTNULL

GO

/*创建商品信息表*/

CREATETABLEMerchInfo(

MerchIDintidentity(1,1)Primarykey,

MerchNamevarchar(50)UniqueNOTNULL,

MerchPricemoneyNOTNULL,

MerchNumintNOTNULL,

CautionNumintNOTNULL,

PlanNumintNOTNULL,

BarCodevarchar(20)UniqueNOTNULL,

SalesProPricemoneyNULL,

SalesProDateSdatetimeNULL,

SalesProDateEdatetimeNULL,

AllowAbateintNOTNULL,

AllowSaleintNOTNULL,

FactoryIDintNOTNULL,

ProvideIDintNOTNULL

GO

/*创建供应商表*/

CREATETABLEProvide(

ProvideIDvarchar(10)Primarykey,

ProvideNamevarchar(50)NOTNULL,

ProvideAddressvarchar(250)NULL,

ProvidePhonevarchar(25)NULL

GO

/*创建销售表*/

CREATETABLESale(

SaleIDintidentity(1,1)Primarykey,

MerChIDintNOTNULL,

SaleDatedatetimeNOTNULL,

SaleNumintNOTNULL,

SalePricemoneyNOTNULL

GO

/*创建入库表*/

CREATETABLEStock(

StockIDintidentity(1,1)Primarykey,

MerchIDintNOTNULL,

MerchNumintNOTNULL,

MerchPricemoneyNULL,

TotalPricemoneyNULL,

PlanDatedatetimeNULL,

StockDatedatetimeNULL,

StockStateintNOTNULL

GO

/*创建用户表*/

CREATETABLEUser(

UserIDvarchar(10)Primarykey,

UserNamevarchar(25)NOTNULL,

UserPWvarchar(50)NOTNULL,

UserStyleintNOTNULL,

GO

/*----------创建表间约束----------*/

/*商品信息表中厂商编号、供应商编号分别与厂商表、供应商表之间の外键约束*/

ALTERTABLEMerchInfoADD

CONSTRAINT[FK_MerchInfo_Factory]FOREIGNKEY

[FactoryID]

)REFERENCESFactory(

[FactoryID]

),

CONSTRAINT[FK_MerchInfo_Provide]FOREIGNKEY

[ProvideID]

)REFERENCESProvide(

[ProvideID]

GO

/*销售表中商品编号与商品信息表之间の外键约束*/

ALTERTABLESaleADD

CONSTRAINT[FK_Sale_MerchInfo]FOREIGNKEY

[MerChID]

)REFERENCESMerchInfo(

[MerchID]

)ONDELETECASCADE

GO

/*入库表中商品编号与商品信息表之间の外键约束*/

ALTERTABLEStockADD

CONSTRAINT[FK_Stock_MerchInfo]FOREIGNKEY

[MerchID]

)REFERENCESMerchInfo(

[MerchID]

)ONDELETECASCADE

GO

/*----------创建索引----------*/

/*在交易表上建立一个以交易编号、交易日期为索引项の非聚集索引*/

CREATEnonclusteredINDEXIX_DealingONDealing(DealingID,DealingDate)

GO

/*在商品信息表上建立一个以商品编号为索引项の非聚集索引*/

CREATEnonclusteredINDEXIX_MerchInfoONMerchInfo(MerchID)

GO

/*在销售表上建立一个以销售编号、销售日期为索引项の非聚集索引*/

CREATEnonclusteredINDEXIX_SaleONSale(SaleID,SaleDate)

GO

/*在入库表上建立一个以入库编号、入库日期、商品编号为索引项の非聚集索引*/

CREATEnonclusteredINDEXIX_StockONStock(StockID,StockDate,MerchID)

GO

/*----------创建视图----------*/

/*创建用于查询交易情况の视图*/

CREATEVIEWv_Dealing

AS

SELECTDealingDateas交易日期,

UserNameas员工名称,

MemberCardas会员卡号,

DealingPriceas交易金额

FROMDealing

GO

/*创建用于查询进货计划の视图*/

CREATEVIEWv_PlanStock

AS

SELECTStock.StockIDasSID,

MerchInfo.MerchNameas商品名称,

MerchInfo.BarCodeas条形码,

Factory.FactoryNameas厂商,

Provide.ProvideNameas供货商,

Stock.MerchNumas计划进货数量,

Stock.PlanDateas计划进货日期

FROMStock,MerchInfo,Provide,Factory

WhereStock.MerchID=MerchInfo.MerchID

andProvide.ProvideID=MerchInfo.ProvideID

andFactory.FactoryID=MerchInfo.F

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1