最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

软件工程课程设计文档超市销售管理系统详细设计说明书

来源:动视网 责编:小OO 时间:2025-09-29 18:13:29
文档

软件工程课程设计文档超市销售管理系统详细设计说明书

详细设计说明书1引言1.1编写目的本说明书是对超市销售管理系统的进行详细地设计分析,对系统的功能和性能进行了整体的规划。为系统的实现和系统的测试提供一个具体的参考。1.2背景说明:a.待开发软件系统的名称;b.本项目的任务提出者、开发者、用户和运行该程序系统的计算中心。1.3定义(1)商品条形码:每种商品具有唯一的条形码,对于某些价格一样的商品,可以使用自定义条形码;(2)交易清单:包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号;1.4参考资料《
推荐度:
导读详细设计说明书1引言1.1编写目的本说明书是对超市销售管理系统的进行详细地设计分析,对系统的功能和性能进行了整体的规划。为系统的实现和系统的测试提供一个具体的参考。1.2背景说明:a.待开发软件系统的名称;b.本项目的任务提出者、开发者、用户和运行该程序系统的计算中心。1.3定义(1)商品条形码:每种商品具有唯一的条形码,对于某些价格一样的商品,可以使用自定义条形码;(2)交易清单:包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号;1.4参考资料《
详细设计说明书

1引言

1.1编写目的

本说明书是对超市销售管理系统的进行详细地设计分析,对系统的功能和性能进行了整体的规划。为系统的实现和系统的测试提供一个具体的参考。

1.2背景

说明:

a.待开发软件系统的名称;

b.本项目的任务提出者、开发者、用户和运行该程序系统的计算中心。

1.3定义

(1)商品条形码:每种商品具有唯一的条形码,对于某些价格一样的商品,可以使用自定义条形码;

(2)交易清单:包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号;

1.4参考资料

《软件工程》 齐治昌 谭庆平 宁洪 第二版 2007 高等教育出版社

《数据库系统概论》 王珊 萨师煊 第四版 2007 高等教育出版社

《数据结构(C语言版)》 严蔚敏 吴伟民 2008 清华大学出版社

2程序系统的结构

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

从本章开始,逐个地给出各个层次中的每个程序的设计考虑。以下给出的提纲是针对一般情况的。对于一个具体的模块,尤其是层次比较低的模块或子程序,其很多条目的内容往往与它所隶属的上一层模块的对应条目的内容相同,在这种情况下,只要简单地说明这一点即可。

3.1程序描述

该程序是超市销售管理系统软件的第四个子部分——商品库存管理系统,设计这个系统是为了方便的管理商品的信息,包括商品的查询,修改,删除等操作。本程序设计的特点就是要简洁,高效,方便。为使用者提供一个方便的使用环境。

3.2功能

该程序具有增加,查询和修改商品信息的功能,具体处理流程如下:

3.3性能

在录入的时候保证数据的正确性与记录的唯一性,根据编号的唯一性确保记录的准确查询的时候保证查全性,所有相应域包含查询关键字的记录都应能查到。查询的时候保证查准性,查到的记录应与给定的单项或组合查询条件完全匹配。该程序的最长响应时间:1s;更新处理时间: 5s;数据的转换和传送时间:5s;解题时间; 3s。当外部硬件软件发生变化时,要做出及时的改变相适应,有较强的灵活性。

3.4输人项

商品清单(MerchBill)

中文字段名英文字段名字段类型长度主键/外键字段值约束
商品编号merchID

char6PNOT NULL
供货商号profferID

char6FNOT NULL
名称fullNamevarchar80NOT NULL
条形码barCode

char15NOT NULL
计量单位metricUnit

varchar4NOT NULL
类别kindvarchar8NULL
产地birthPlace

varchar50NULL
单价unitCost

money4NOT NULL
备注otherstext50NULL
基本数据都是从键盘输入进入系统。

3.5输出项

商品清单(MerchBill)

中文字段名英文字段名字段类型长度主键/外键字段值约束
商品编号merchID

char6PNOT NULL
供货商号profferID

char6FNOT NULL
名称fullNamevarchar80NOT NULL
条形码barCode

char15NOT NULL
计量单位metricUnit

varchar4NOT NULL
类别kindvarchar8NULL
产地birthPlace

varchar50NULL
单价unitCost

money4NOT NULL
备注otherstext50NULL
输出数据会显示在现显示屏上。

3.6算法

详细说明商品信息管理的算法:

添加一条商品信息

/*添加一条商品信息,输出商品编号和执行结果*/

CREATE PROC dbo.GoodsAddNew

    @ merchID     varchar(100),     --商品编号

    @ fullName    varchar(100),     --名称

    @ barCode      varchar(15),     --条形码

    @Amount       decimal(18, 2),   --库存数量

    @ kind         int,              --类型编号

    @ birthPlace   varchar(100),     --产地

    @ profferID    int,              --供货商编号

    @Introduce      varchar(1000),    --商品名称

    @ others      varchar(1000),    --备注

    @ profferID   nt OUTPUT,       --商品编号

    @ReturnValue   int OUTPUT        --执行结果(VB组件的自定义枚举值)

)

AS

   DECLARE @ErrNo int              --保存错误号

    BEGIN TRANSACTION               --开始事务

      /*手动维护数据唯一性的代码。*/

      DECLARE @ExistName bit

      EXEC ExistByName 'Goods', 'GoodsName', @GoodsName, @ExistName OUTPUT

      IF @ExistName = 1             --当前商品名称已存在

         BEGIN

           ROLLBACK TRANSACTION     --回滚事务

           SELECT @ReturnValue = 3  --返回VB组件的自定义枚举值

           RETURN                   --结束存储过程

         END

      /*添加记录*/  

      INSERT INTO Goods Values(@GoodsName, @Amount, @UnitName, @TypeID, @SupplierID, @Introduce, @Remark)

      --记录当前的错误号

      SELECT @ErrNo = @@ERROR

      /*输出参数*/

      IF @ErrNo = 0                 --没有发生错误

         BEGIN

           SELECT @ID = (SELECT MAX(GoodsID) FROM Goods)

           SELECT @ReturnValue = 0

         END

      ELSE IF @ErrNo = 2627         --违反唯一约束

         BEGIN

           ROLLBACK TRANSACTION     --遇到错误则回滚事务 

           SELECT @ReturnValue = 3   

           RETURN

         END

      ELSE                          --其他未知错误

         BEGIN

           ROLLBACK TRANSACTION     --遇到错误则回滚事务     

           SELECT @ReturnValue = 1    

           RETURN

         END

    COMMIT TRANSACTION              --提交事务

GO

SET QUOTED_IDENTIFIER OFF 

GO

SET ANSI_NULLS ON 

GO

SET QUOTED_IDENTIFIER ON 

GO

SET ANSI_NULLS ON 

GO

删除一条商品信息

/*删除一条商品信息,输出执行结果*/

CREATE PROC dbo.GoodsDelete

(

    @GoodsID       int,             --商品编号

    @ReturnValue   int OUTPUT       --执行结果(VB组件的自定义枚举值)

)

AS

    DECLARE @ErrNo int              --保存错误号

    BEGIN TRANSACTION               --开始事务

      /*验证是否存在当前商品编号,若否则不能删除*/

      DECLARE @ExistID bit

      EXEC ExistByID 'Goods', 'GoodsID', @GoodsID, @ExistID OUTPUT

      IF @ExistID = 0               --当前商品编号不存在

         BEGIN

           ROLLBACK TRANSACTION     --回滚事务

           SELECT @ReturnValue = 2  --返回VB组件的自定义枚举值

           RETURN                   --结束存储过程

        END

      /*手动维护数据完整性的代码*/

      EXEC ExistByID 'Buy', 'BuyID', @GoodsID, @ExistID OUTPUT

      IF @ExistID = 1               

         BEGIN

           ROLLBACK TRANSACTION

           SELECT @ReturnValue = 3 

           RETURN

         END

      /*验证销售信息是否包含当前商品,若是则不能删除*/

      EXEC ExistByID 'Sale', 'SaleID', @GoodsID, @ExistID OUTPUT

      IF @ExistID = 1

         BEGIN

           ROLLBACK TRANSACTION

           SELECT @ReturnValue = 3

           RETURN

         END

      /*删除记录*/

      DELETE FROM Goods WHERE GoodsID = @GoodsID

      --记录当前的错误号

      SELECT @ErrNo = @@ERROR

      /*输出参数*/

      IF @ErrNo = 0                 --没有发生错误

         SELECT @ReturnValue = 0

      ELSE IF @ErrNo = 547          --发生外键冲突

         BEGIN

           ROLLBACK TRANSACTION     --遇到错误则回滚事务         

           SELECT @ReturnValue = 3

           RETURN

         END

      ELSE                          --其他未知错误

         BEGIN

           ROLLBACK TRANSACTION     --遇到错误则回滚事务 

           SELECT @ReturnValue = 1        

           RETURN

         END

    COMMIT TRANSACTION              --提交事务

GO

SET QUOTED_IDENTIFIER OFF 

GO

SET ANSI_NULLS ON 

GO

SET QUOTED_IDENTIFIER ON 

GO

SET ANSI_NULLS ON 

GO

返回所有供货商

CREATE VIEW dbo.view_Supplier

AS

    /*返回所有供货商*/ 

    SELECT SupplierID, SupplierName, Contact, Introduce, Remark FROM Supplier

GO

SET QUOTED_IDENTIFIER OFF 

GO

SET ANSI_NULLS ON 

GO

SET QUOTED_IDENTIFIER OFF 

GO

SET ANSI_NULLS ON 

GO

CREATE VIEW dbo.view_Buy

 AS

 SELECT B.BuyID, B.GoodsID, G.GoodsName, 

                B.UnitPrice, B.Amount, G.UnitName, 

                B.UnitPrice * B.Amount AS TotalPrice, 

                B.Deliverer, B.Transactor, B.RegistrarID, 

                B.RegDate, G.TypeID, G.SupplierID, B.Remark

 FROM Buy AS B LEFT OUTER JOIN Goods AS G 

 ON B.GoodsID = G.GoodsID

GO

SET QUOTED_IDENTIFIER OFF 

GO

SET ANSI_NULLS ON 

GO

SET QUOTED_IDENTIFIER ON 

GO

SET ANSI_NULLS ON 

GO

3.7流程逻辑

3.8接口

 

3.9存储分配

本程序采用的是malloc/free动态管理内存,在程序需要的时候想系统申请空间,适当的时候释放不使用的空间。由于程序中某些地方可能不通过malloc调用申请空间,因此,malloc管理的空间不一下是连续的。这样,空闲存储空间以空闲链表的方式组织,每个块包含一个长度、一个指向下一块的指针以及一个指向自身的存储空间的指针。这些块按照存储地址的升序组织,最后一块指向第一块。

3.10注释设计

说明准备在本程序中安排的注释,如:

a.加在模块首部的注释;

b.加在各分枝点处的注释;

c.对各变量的功能、范围、缺省条件等所加的注释;

d.对使用的逻辑所加的注释等等。

3.11条件

1.运行本软件程序首先要有员工信息密码等信息确认;

2.本程序受到机器本身硬件设备的影响,在速度上可能会出现一定的差异;

3.本程序的输入值要按照预定的输入,不然会报错;

4.如果需要新的功能这要在程序中增加代码。

3.12测试计划

这计划将在下一个测试报告中详细的说明。

3.13尚未解决的问题

说明在本程序的设计中尚未解决而设计者认为在软件完成之前应解决的问题。

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

用类似F.3的方式,说明第2个程序乃至第N个程序的设计考虑。

......

文档

软件工程课程设计文档超市销售管理系统详细设计说明书

详细设计说明书1引言1.1编写目的本说明书是对超市销售管理系统的进行详细地设计分析,对系统的功能和性能进行了整体的规划。为系统的实现和系统的测试提供一个具体的参考。1.2背景说明:a.待开发软件系统的名称;b.本项目的任务提出者、开发者、用户和运行该程序系统的计算中心。1.3定义(1)商品条形码:每种商品具有唯一的条形码,对于某些价格一样的商品,可以使用自定义条形码;(2)交易清单:包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号;1.4参考资料《
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top