1.1编写目的:
在前一阶段(概要设计说明书)中,以解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分为若干个模块、决定各个模块之间的接口、模块之间的传递的信息,以及数据结构、模块结构的设计等。在以下的详细设计报告中将对在各个阶段中对系统所做的所有详细设计进行说明。
在本阶段中,确定
应该如何具体的实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用具体的程
序语言书写的程序。主要的工作有:根据在《需求分析说明书》中所叙述的数据、功能、运行、性能需求,并依据《概要设计说明书》所确定的处理流程、总体结构和模块外部设计,设计软件系统的结构设计、逐个模块的程序描述(包括各模块的功能、性能、输入、输出、算法、程序逻辑、接口等等),解决如何
(1) 接受:图书信息
(2) 输出:顾客所卖图书的信息、价格 (3) 分辨信息的种类并采用相应的处理步骤 (4) 进行数据库的查询,修改工作
(5) 接受并判断错误,输出相应的出错信息 在以下的各个阶段中,《用户操作手册》将与本阶段的工作紧密结合,努力做到让用户易懂易学。《测试报告》和《维护报告》也将参考说明书,检验本系统的各项性能指标,即使发现纰漏及时修补,一定要把功能强大、稳定可靠、便于维护的图书销售系统交到用户手中。
1.2背景
开发软件名称:小型图书销售系统
项目任务提出者:陈燕老师 项目开发者:
用户:小规模书店
实现软件单位:南京航空航天大学
项目与其他软件系统关系:本项目以Microsoft Visual C++为开发环境
1.3定义
1.3.1程序流程图基本结构
1.3.2 N-S图——盒图
- 25 -
1.3.3 PAD图
1.4参考资料
以下列出在详细设计过程中所涉及的有关资料:
计划任务书》 书》 书》
《用户操作手册》(初稿) 《软件技术基础》 《数据结构》 GB8567——88
2、程序系统的结构:
各模块之间的关系已由概要设计给出。
- 26 -
《图书销售系统《需求分析说明《概要设计说明
2.1客户端数据库信息模块结构图:
商店用户客户端 SetBook() BookInfo() EditBook() DeleteBook() AddBook() 数据库文件Data.bin
2.2顾客购买图书信息模块
顾客购买图书模块 bookInfo() SearchBook() ISBN_Search() NAME_Search() Pay() 顾客输出界面
- 27 -
2.3数据库汇总报表模块
报表模块Screen() 客户可查询 管理员身份可查询 RetailList() AllListwholesaleList() Outsale() ValueList() DataList() QtyList() 文件数据库Data.bin 3、程序设计说明:
3.1客户端数据库信息模块结构图:
程:
3.1.1 setBook过
在初始界面上询
问是否想要新输入图书信息时,若为“n”,则转入bookInfo过程;若为“y”,则询问想要输入的图书种类数,再让用户输入新的图书信息。 书名 社
Date-year-month-day:出版年月日
- 28 -
图书信息如下: ISBN:ISBN号
Booktitle:
Author:作者
Publisher:出版
量
wholesale:批发价
零售价
过程:
qtyOnHand:库存
retail:
3.1.2 editBook
若用户需要修改某图书信息,经过图书信息界面后选择进入修改信息界面。先寻找该图书位置,再一次输入新的图书信息。
书,则输出“对不起,没有您要找的书!”。
deleteBook过程:
3.1.3
若没有找到该图
用户输入想要删除的图书的ISBN号,若系统寻找到该图书,则将该图书信息全部删除;若系统没有找到该图书,则输出“对不起,没有您要找到的书!”。
程:
3.1.4 addBook过
当用户在非初始
界面想要增加某新图书的信息,则通过该过程向系统数据库中输入新的图书信息。
3.2顾客购买图书信息模块:
3.2.1 bookInfo过程: 在初始界面后,当用户想要知道某个图书的信息,则在输入正确的ISBN号后,在界面显示该图书的所有信息。
LookUpBook过程:
3.2.2
用户输入正确的ISBN号后,系统界面显示所需要图书的信息;若系统中没有该图书,则显示“对不起,没有您要找的书!”。
3.2.3 pay过程: 当顾客输入想要
图书的ISBN号后,显示出图书信息后,询问所需图书数量,并询问该顾客是否能打折,最后输出该顾客所需要付的金额(即账单)。
3.3数据库汇总报表模块:
retailList过程:
中的图书信息中的零售价为依据进行报表输出。
程:
中的图书信息先后输入次序为依据进行报表输出。
- 29 -
3.3.1
根据系统数据库3.3.2 allList过根据系统数据库3.3.3