网上书店项目详细设计说明书

1引言

1.1编写目的

编写网上书店系统详细设计说明书的目的在于从详细设计的角度明确网上书店项目的业务品种、功能范围,明确与业务主机/终端系统的接口和业务处理模式,使系统开发人员和产品管理人员明确产品功能,可以有针对性的进行系统开发、测试、验收等各方面的工作。

读者:项目经理、概要设计人员,编码人员,测试人员。

1.2背景

说明:

  1. 待开发软件系统的名称;网上书店系统

b.开发背景:伴随社会的高速发展,即人们对精神文化的追求,现如今人们越来越注重读书,而且随着计算机的普及,越来越多的人通过网络实现购物,购买书籍也在其中,在这样的形式下,网上书店系统应运而生。

1.3定义

开发工具:Dev C++

开发语言:C语言

开发框架:UML

运行环境:Windows7,Windows10.

1.4参考资料

[1]软件工程:理论与实践, (美国)弗莱格 (Pfleeger.S.L.) ,(美国)阿特利 (Atlee.J.M.),高等教育出版社,2006年9月1日

[2] UML建模实例教程, 刘志成,电子工业出版社, 2009年11月1日

2程序系统的结构

3管理员售书模块设计说明

  网上书店管理员,主要进行两方面的操作,一是对书店里的图书类型进行增添、删除,同时设定店长推荐的书籍列表。另一方面是对用户的订单尽心管理,例如同意发货,修改物流状态。

3.1程序描述

本程序分为两个模块,一个为编辑书籍模块,一个为订单管理情况。订单管理情况与用户登录模块中用户购书情况类似,以下针对编辑书籍模块进行重点讨论。

 

管理员处理相关订单: 

增添相应书籍:

 

3.2功能

说明该程序应具有的功能,可采用IPO图(即输入一处理一输出图)的形式。

程序(函数)

输入

处理

输出

Menu1

管理员登录

唯一店家

进入店家界面

Display_book

书籍信息

查询代码中关于书籍信息的内容

书籍介绍信息

Search_book

修改书籍信息中的库存

库存数量被修改

原数字被抹点,储存新库存

3.3性能

该程序实际面对两方,一方是用户。一旦库存量小于用户所输入的购买量,订单将无法生成。对于店家来说,当库存不充足时,店家可以对书籍信息中的“库存”属性进行修改,修改过后,即可重新进行正常交易。

3.4,3.5输入项,输出项

由于本次编写未涉及连接数据库,因此无描述输入输出项的内容。

3.6算法

先选择是否对数目

if(getch()=='y')
            {
                printf("书籍名: ");gets(book_cur->Name);
                printf("作者: ");gets(book_cur->Writer);
                printf("价格: ");scanf("%lf",&book_cur->Price);
                printf("库存: ");scanf("%d",&book_cur->Stock);
                printf("销量: ");scanf("%d",&book_cur->Sales);
                fflush(stdin);
                printf("简介: ");gets(book_cur->Abstract);
                printf("分类: ");gets(book_cur->classification);
            }
            return;

3.7流程逻辑

下图为修改书籍信息的流程图。

 

3.8接口

程序所存在的层次已在图中说明,参数赋值采用输入的方式,同步调用方式, 

3.9存储分配

本程序的存储分配,将修改的数据放在堆栈中。

3.10注释设计

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

  1. 加在模块首部,介绍模块功能;
  2. 加在各分枝点,解释调用的函数;

3.11限制条件

在修改库存信息时,书籍的其余信息还需要重新输入,比较繁琐。

3.12测试计划

在已有图书中,进行书籍信息的修改,选择书籍名称,进入修改页面,输入新的值,测试库存、价格输入非法值后是否报错,以及库存和销量的关系是否合理等。

3.13尚未解决的问题

修改库存是侧面补充库存的一种方式,如果库存大于0,但用户购买量大于库存量,此时订单无法生成,但是库存量正常。所以需要有一个提示,使管理员能够按需及时进行库存补充。

4用户登录模块设计说明

  选择买家登录,输入用户名,即为注册新账户。输入用户名后,进入控制台的操作界面,此时可以选择显示书籍,搜索书籍,添加订单,搜索编辑订单,显示订单,店长推荐的功能。其中,用户反馈在编辑订单中体现。以下主要介绍购书操作中的订单操作。

4.1程序描述

购书模块主要分为以下四个部分:

 

 

4.2功能

说明该程序应具有的功能,可采用IPO图(即输入一处理一输出图)的形式。

用户购书模块:

程序

输入

处理

输出

Menu1

会员登陆

自动生成新账户,若已存在,则跳转至已有账户

进入用户界面

Add_order

添加订单

查询已有书籍的信息,并判断

书籍介绍信息

Search_order

修改订单

根据卖家的物流信息,

是否收货成功

4.3性能

对于店家和用户来说,订单的信息都是自主操作。在用户添加订单之后,店家会获得订单信息,决定发货,决定物流状态,之后用户可以对已有物流信息的订单进行收货处理。确认收货后,完成交易。

4.4、4.5输入项,输出项

由于本次编写未涉及连接数据库,因此无描述输入输出项的内容。

4.6算法

1.搜索订单及对订单的部分后续操作

 

void Search_Order(_Order order_head,char account[])//搜索和编辑订单
{
    int id;
    //char choose;
    _Order order_cur = order_head;
    if(!order_head)
    {
        printf("当前没有任何订单!!!\n");
        Sleep(1500);
        return ;
    }
    printf("输入您要查询或者修改的订单号: "),scanf("%d",&id);//根据id号找订单
    while(order_cur)
    {
        if((!strcmp(order_cur->Account,account))&&id == order_cur->roder_id)
        {
            printf("订单号:%d\n",order_cur->roder_id);
         ……
;
            fflush(stdin);

if(strstr(order_cur->Status[0],"未付款"))//搜索到的未付款时则提示是否付款
            {
                printf("是否付款?: y/n");
                printf("\n");
                if(getch()=='y')
                {
                    printf("付款成功\n");
                    strcpy(order_cur->Status[0],"已付款");
                    strcpy(order_cur->Status[1],"未发货");//物流信息
                }
                else
                {
                    printf("是否删除订单: y/n");//若不付款则提示是否删除订单,以下都是类似
                    if(getch()=='y')
                    {
                        printf("订单已删除!!!\n");
                        strcpy(order_cur->Account,"");
                        strcpy(order_cur->Status[0],"交易关闭");
                    }
                }
            }
            else if(strstr(order_cur->Status[0],"交易关闭")||strstr(order_cur->Status[0],"交易完成"))

4.7流程逻辑

4.8接口

模块关系已经在2—程序结构中,已经体现。函数调用,实现增添订单的功能。

4.9存储分配

本程序的参数遵循动态存储分配,将修改的数据放在堆栈中。

4.10注释设计

在本程序中所安排的注释,如:

  1. 对输入的内容进行解释说明的注释;
  2. 对是否完成付款的判定操作的注释
  3. 对是否输入合法从而成功生成订单的注释。

4.11限制条件

每次购买都需要重新添加收货信息;付款功能未能真正实现,在本程序中是否付款为订单完成的判定之一。

4.12测试计划

当输入的数量不合法或未完成付款操作时,订单均添加失败。

4.13尚未解决的问题

1.物流信息需要由店家来填写,未能和真实情况同步;

2.付款的操作未能和时间联系,在本程序中,取决于买家是否选择付款。

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
网上书店需求规格说明书是一个详细描述网上书店系统功能和性能要求的文档。它通常由业务分析师、系统分析师和开发团队共同编写,以确保开发人员能够准确理解和实现系统的需求。 以下是一个可能包含的内容: 1. 引言:介绍需求规格说明书的目的、范围和读者对象。 2. 业务背景:描述网上书店的背景和目标,包括业务流程、用户需求和市场竞争情况。 3. 功能需求:详细列出网上书店系统的功能需求,包括但不限于用户注册、登录、浏览图书、搜索图书、下单购买、支付、订单管理、评论评价等。 4. 非功能需求:描述系统的非功能性需求,如性能要求、安全要求、可靠性要求、可扩展性要求等。 5. 用户界面设计:提供用户界面的设计原则和样式指南,包括页面布局、颜色主题、图标等。 6. 数据管理:描述系统中的数据需求和数据管理策略,包括数据库设计、数据存储和数据备份等。 7. 系统架构:描述系统的整体架构,包括前端和后端的组件、模块和接口设计。 8. 集成需求:描述系统与其他系统的集成需求,如支付接口、物流接口等。 9. 测试需求:定义系统的测试策略和测试用例,确保系统的功能和性能符合规格说明书的要求。 10. 项目计划:提供项目的时间安排和资源分配,确保项目按时交付。 11. 风险管理:识别和评估项目中的风险,并提供相应的风险应对策略。 12. 术语表:定义文档中使用的专业术语和缩写词的含义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr.羊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值