软件文档写作超市收银员管理系统详细设计.docx

上传人:b****6 文档编号:8057760 上传时间:2023-05-12 格式:DOCX 页数:14 大小:165.56KB
下载 相关 举报
软件文档写作超市收银员管理系统详细设计.docx_第1页
第1页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第2页
第2页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第3页
第3页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第4页
第4页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第5页
第5页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第6页
第6页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第7页
第7页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第8页
第8页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第9页
第9页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第10页
第10页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第11页
第11页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第12页
第12页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第13页
第13页 / 共14页
软件文档写作超市收银员管理系统详细设计.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

软件文档写作超市收银员管理系统详细设计.docx

《软件文档写作超市收银员管理系统详细设计.docx》由会员分享,可在线阅读,更多相关《软件文档写作超市收银员管理系统详细设计.docx(14页珍藏版)》请在冰点文库上搜索。

软件文档写作超市收银员管理系统详细设计.docx

软件文档写作超市收银员管理系统详细设计

目录

目录2

1.引言3

1.1编写目的3

1.2背景3

1.3定义3

1.4参考资料3

2.程序系统的结构5

2.1运行环境5

2.2系统功能结构图6

3.程序1(标识符)设计说明7

3.1程序描述7

3.2功能7

3.3性能8

3.4输入项8

3.5输出项8

3.6算法9

3.7流程逻辑9

3.8测试计划10

4.程序2(标识符)设计说明11

4.1程序描述11

4.2功能11

4.3性能12

4.4输入项12

4.5输出项13

4.6算法13

4.7流程逻辑18

4.8测试计划19

1.引言

1.1编写目的

本文档为《超市收银员管理系统》的详细设计书,详细记录了收银员管理系统的实现细节,本文的读者为系统设计人员和编码人员以及测试人员。

1.2背景

将要开发的软件名为《超市收银员管理系统》,本项目的任务提出者是Wind小组,而开发者也将是Wind小组负责,主要用户是各个小型超市,由超市内的多台计算机组成小型的计算机网络,来对超市信息进行操作,适用于Windows98以上的操作系统。

1.3定义

PC机:

个人计算机

中文之星:

中文之星智能狂拼简称智能狂拼,智能狂拼是一种基于CLM(中文语言模型)技术的整句输入法,是目前唯一款担当中的开发者保留着整句技术的整句输入法软件。

1.4参考资料

[1]《超市收银员管理系统》可行性分析研究报告。

[2]《超市收银员管理系统》项目开发计划报告。

[3]《超市收银员管理系统》软件需求分析报告。

[4]《超市收银员管理系统》软件概要设计报告。

[5]郑人杰,殷人昆,陶永雷,《实用软件工程》,清华大学出版社,1997。

[6]布劳德,《软件设计-从程序设计到体系结构》,电子工业出版社,2007。

 

2.程序系统的结构

2.1运行环境

2.1.1硬件环境

用户终端机:

采用XXPC机,内存2G,硬盘250GB,大屏幕液晶显示器。

主机:

XXPC机,内存4GB,高速硬盘组250GB,高速缓存,液晶显示器。

网络:

采用TCP/IP网络建立的局域网。

后台服务器支持系统硬件要求:

CPUPentiumIV3.0以上,内存容量2GB以上,硬盘500GB以上。

2.1.2软件环境

可选软件平台:

中文Windows98

Windows98、WindowsNT4.0或更高版本+中文之星2.0;

WindowsCE+中文平台

服务器:

Tomcat5.5

数据库:

MySQL

 

2.2系统功能结构图

图2-1系统功能结构图

3.程序1(标识符)设计说明

3.1程序描述

管理员子系统主要服务于管理员,管理员用来统一创建收银员登录用的用户名和密码。

管理员根据自己的用户名和密码登录《超市收银员管理系统》之后,可以进入管理员子系统,在相关页面中编辑、查询收银员的个人信息。

3.2功能

图3-1管理员子系统功能图

 

3.3性能

(1)精度

该程序在输入时时间精确到天。

(2)时间特性要求

(1)响应时间:

小于0.1s

(2)更新处理时间:

小于1s

(3)数据的转换和传输时间:

小于1s

(4)解题时间:

小于1s

(3)灵活性

(1)操作方式上的变化:

不变

(2)运行环境的变化:

不变

(3)同其他软件接口的变化:

没有

(4)精度和有效时限的变化:

可调

(5)计划的变化和改进:

可改

3.4输入项

本软件在输入上只要求用户单击界面中相应的按钮即可。

3.5输出项

对于用户单击按钮的行为,软件会做出相应的反应,将信息反馈给用户。

3.6算法

本程序没有采用特殊的算法。

3.7流程逻辑

图3-2流程逻辑图

 

3.8测试计划

(1)测试新建的信息是否加入数据库。

(2)测试选择查询信息时是否出现收银员信息列表。

(3)测试能否正确提交对收银员信息的修改和删除。

(4)测试能否正确退出。

 

4.程序2(标识符)设计说明

4.1程序描述

收银员子系统主要服务于收银员,管理员用来统一创建收银员登录用的用户名和密码。

收银员根据自己的用户名和密码登录《超市收银员管理系统》之后,可以进入收银员子系统,在相关页面中查询收银员的个人信息、交易信息、收银信息、商品信息,进行交易操作。

4.2功能

图4-1收银员子系统功能图

4.3性能

(1)精度

该程序在输入时时间精确到天。

(2)时间特性要求

(1)响应时间:

小于0.1s

(2)更新处理时间:

小于1s

(3)数据的转换和传输时间:

小于1s

(4)解题时间:

小于1s

(3)灵活性

(1)操作方式上的变化:

不变

(2)运行环境的变化:

不变

(3)同其他软件接口的变化:

没有

(4)精度和有效时限的变化:

可调

(5)计划的变化和改进:

可改

4.4输入项

输入数据类型有char型、int型、data型和money型数据,其中money型数据要求精确到小数点后两位,data精确到分钟。

4.5输出项

对于用户单击按钮的行为,软件会做出相应的反应,将信息反馈给用户。

4.6算法

(1)收银员登录对话框增加了“记住用户名”这一选项。

实现算法为:

将选项是否勾选的状态用一个bool变量表示,新建一个名为“user.dat”的文件。

每次登陆时,读取文件中的内容到“用户名”栏中。

如果选择了“记住用户名”,则将用户输入的用户名重新写到user.dat文件中,否则写入空。

(2)系统中使用了很多对话框,而且每个对话框都不相同。

我们采用了复用对话框的方式。

实现方法为:

定义状态变量

typedefenumstype{

CASHIER_ADD,CASHIER_DELETE,CASHIER_EDIT,CASHIER_QUERY,

Member_ADD,Member_DELETE,Member_EDIT,Member_QUERY,

GOODS_ADD,GOODS_DELETE,GOODS_EDIT,GOODS_QUERY,

CASHINFO_ADD,CASHINFO_QUERY,

TRADE_ADD,TRADE_QUERY

}STYPE;

在OnInitDialog()函数中,用switch-case语句来初始化不同用途的对话框。

这样,16个对话框只用1个对话框资源。

(3)为了能够实时更新系统中的时间(如交易时间,上班下班时间等等),create几个触发器用来获得系统时间。

添加新会员的时候,自动获得系统时间作为注册时间

createtriggerInsert_Member

beforeinsertonMember

foreachrow

begin

:

new.Creg:

=curdate();

end;

添加交易信息的时候,自动获得系统时间作为交易时间

createtriggerInsert_Trade

beforeinsertonTradeinfo

foreachrow

begin

:

new.Ttime:

=current_timestamp();

end;

--用户登录系统时插入新记录

createtriggerInsert_CashinfoOn

beforeinsertonCashinfo

foreachrow

begin

:

new.CtimeOn:

=current_timestamp();

end;

--用户更新Crecv时(logout)

createtriggerInsert_CashinfoOff

beforeupdateonCashinfo

foreachrow

begin

if:

old.CtimeOffisnull

then:

new.CtimeOff:

=current_timestamp();

endif;

end;

(4)为了查询的方便,创建了Query_Tradeinfo和Query_Cashinfo两个视图。

createviewQuery_Cashinfo(Qcno,Qcname,Qcrecv,Qctimeon,Qctimeoff)

as

selectCashinfo.Cno,Cname,Crecv,CtimeOn,CtimeOff

fromCashinfo,Cashier

whereCashinfo.Cno=Cashier.Cno;

createview

Query_Tradeinfo(Qcno,Qcname,Qgno,Qgname,Qgprice,Qttime,Qtquantity)

as

selectTradeinfo.Cno,Cname,Tradeinfo.Gno,Gname,Gprice,Ttime,Tquantity

fromTradeinfo,Member,Goods

whereTradeinfo.Cno=Member.CnoandTradeinfo.Gno=Goods.Gno;

(5)在交易的过程中,会弹出其他的对话框用来更新数据库,采用了重载消息函数的方法,使得更新的数据能以参数的形式传到对话框中。

(6)采用了动态条件修改,删除和查询的方式,实现方法是,在源程序中动态改变查询的条件。

以删除收银员为例:

M_Cashier是CCashierRecordSet(从CRecordSet继承,与Cashier表关联)的对象

如果输入不为空

if(m_strEdit1.GetLength())

{

if(bFirst)

m_Cashier.m_strFilter+="and";

strFilter.Format("Cno='%s'",m_strEdit1);

//增加对应的条件

m_Cashier.m_strFilter+=strFilter;

bFirst=TRUE;

}

if(m_strEdit2.GetLength())

{

if(bFirst)

m_Cashier.m_strFilter+="and";

strFilter.Format("Cname='%s'",m_strEdit2);

m_Cashier.m_strFilter+=strFilter;

bFirst=TRUE;

}

if(m_strEdit3.GetLength())

{

if(bFirst)

m_Cashier.m_strFilter+="and";

strFilter.Format("Csex='%s'",m_strEdit3);

m_Cashier.m_strFilter+=strFilter;

bFirst=TRUE;

}

if(m_strEdit4.GetLength())

{

if(bFirst)

m_Cashier.m_strFilter+="and";

strFilter.Format("Clogname='%s'",m_strEdit4);

m_Cashier.m_strFilter+=strFilter;

bFirst=TRUE;

}

4.7流程逻辑

图4-2流程逻辑图

4.8测试计划

(1)测试新建的会员信息是否加入数据库。

(2)测试是否可查询收银员信息、会员信息、商品信息、收银信息。

(3)测试能否正确提交对会员、商品信息的修改和删除。

(4)测试收银信息是否可改动。

(5)测试交易是否能进行。

(6)测试时间是否显示正确。

(7)测试商品信息是否会随着交易进行变动。

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2