学校教材订购系统详细设计说明书.doc_第1页
学校教材订购系统详细设计说明书.doc_第2页
学校教材订购系统详细设计说明书.doc_第3页
学校教材订购系统详细设计说明书.doc_第4页
学校教材订购系统详细设计说明书.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JIANGXI AGRICULTURAL UNIVERSITY学校教材订购系统项目开发文档详细设计说明书 学 院:软件学院 班 级: 1011 姓 名:和静钰 学 号:20101872 指导教师:贾 晶目 录1引言41.1 编写目的41.2 背景41.3 定义41.3.1专门术语41.3.2 缩写51.4 参考资料52总体设计52.1需求概述52.2模块概要53程序描述63.1销售子系统模块具体描述63.1.1提交购书单过程(HandBuyBookBill)63.1.2审核购书单过程(CheckBuyBookBill)73.1.3购书单错误信息显示过程(BuyBookBillError)73.1.4开发票过程(PrintBill)83.1.5登记购书记录过程(DBRegistBuyBook)83.1.6审核登记过程(CheckDBRegistBuyBook)93.1.7登记购书记录错误信息显示过程(DBRegistBuyBookError)93.1.8发领书单/打印过程(PrintBookBill)93.1.9修改库存表、出库表过程(DBUpdateTable)103.1.10审核修改表过程(CheckDBUpdateTable)103.1.11修改表错误信息显示过程(DBUpdateTableError)113.2采购子系统模块具体描述113.2.1 发缺书单程序(HandLackBookBill)123.2.2 审核缺书单程序(CheckLackBookBill)123.2.3 缺书单错误信息显示程序(LackBookError)133.2.4 登记缺书记录程序(DBRegistLackBook)133.2.5 审核登记程序(CheckLackBookBill)143.2.6登记错误信息显示程序(DBRegistLackBookError)153.2.7 生成采购表程序(PrintBuyingBookbill)153.2.8 修改数据库中的表程序(DBUpdateTable)163.2.9 审核修改表过程程序(CheckLackBookBill)163.2.10 修改错误信息显示程序(DBUpdateTableError)173.2.11 发进书通知单程序(PrintBookNotice)171引言1.1 编写目的 在前面(学校教材订购系统需求分析报告)中已明确了系统的主要功能,解决了系统“做什么”的问题,在概要设计阶段,我们对设计方案进行了概述。在这个阶段,我们需要确定如何具体的实现所要求的系统,因此要详细设计系统的各个模块。主要工作有:作出软件模块层次结构图,描述所有模块清单(名称,功能,I/O),从而在编码阶段可以把这个描述直接翻译成具体的程序语言书写的程序;设计数据库;设计页面。1.2 背景开发软件名称:学校教材订购系统项目任务提出者:学校老师项目开发者:和静钰用户:学校教务处、教师、学生运行环境:江西农大机房开发平台:Eclipse、MySQL、JDK 1.61.3 定义1.3.1专门术语库存表:存放库中存在得书籍数据。 出库表:存放已销售的书籍的数据。 入库表:存放入库书籍的数据。 购书表:存放提交的购书信息。 缺书登记表:存放缺少的书籍的信息。 待购教材表:存放待购书籍信息。1.3.2 缩写 系统:若未特别指出,系统指本“学校教材定购系统”。1.4 参考资料软件工程导论张海藩 清华大学出版社2总体设计2.1需求概述a) 教材浏览服务:学生或教师在填写购书单前可以先对教材总体进行浏览,对教材名称,库存数量及价格进行一定的了解,然后再结合自己的情况决定自己要购买的教材,填写购书单。b)购书服务:本系统在向学生、教师售书时要求填写购书单(包括以下信息:姓名、购书数量、购书书名信息),经教材发行人员审查有效后,开发票、打印领书单返回给教师或学生领取书籍。c)教材信息发布:学院教材订购负责人提供教学用书表后,本系统将教材信息公布,以便于学生确定所需书目,下购书单。d)通知采购:当库存中缺书时,汇总缺书信息,发缺书单给书库采购人员。e)通知进书:当新书入库后,即发进书通知给教材发行人员。2.2模块概要验证模块:完成对用户身份的验证。初始化模块:在身份验证后,系统调用初始化操作,执行完毕后进入消息循环状态。查询模块:由相应消息驱动,完成对信息进行查看功能。删除模块:具有此权限的用户完成对信息删除功能。打印模块:实现用户从系统打印功能。退出模块:实现用户从系统退出功能3程序描述3.1销售子系统模块具体描述3.1.1提交购书单过程(HandBuyBookBill) 用户通过该程序向系统发出购书请求,在提交购书单界面中输入购书单中的各信息。本程序为并发执行,可以多人同时向系统提交购书单。无子程序。功能 :收集用户提交的购书单,获得购书者的基本信息。输人项:提交人姓名(Name)String 购书的名称(BookName) String 购书的书号(ISBN)String 数量(No)String 身份识别码(ID)String 输出项: 无。算法:Void HandBuyBookBill(n,bn,ibn,no,id) Namen; BookNamebn; ISBNibn; Nono; IDid;接口:销售模块通过调用HandBuyBookBill()函数来调用该程序。测试计划:数据库连接情况:正常情况。对用户输入的响应:合法输入,能够正常调用本程序;非法输入,系统能否辨别,并作出响应(提出警告);程序的异常状况,系统能否及时做出响应。3.1.2审核购书单过程(CheckBuyBookBill)功能 :校验购书单信息。如果有一个或多个错误则不提交购书单上的数据,如果审核通过转入程序3.1.4开发票。输人项:提交人姓名,购书的名称,购书的书号,数量,身份识别码(传入参数)。输出项:无。算法:Bool CheckBuyBookBill(Name,BookName,ISBN,No,ID) If(各参数与数据库中所存参数一致) Return true; Void PrintBill(BookName,ISBN,Na,Mo,Da) Else Return false;接口:调用形式:BOOL CheckBuyBookBill(Name,BookName,ISBN,No,ID) 传入参量:Name,BookName,ISBN,No,ID 传出参量:TRUE/FALSE测试计划:数据库连接正常 数据库数据正常 合法的购书单 不合法的购书单数据库数据异常 数据库连接异常3.1.3购书单错误信息显示过程(BuyBookBillError)功能:用来显示购书单中出现的错误。输人项:购书的名称,购书的书号,数量,身份识别码(传入参数)。算法:Void BuyBookBillError(BookName,ISBN,No,ID) If(BookName!=True) 库中没有这类书,请重新输入 If(ISBN!=True) 书号错误,请重新输入 If(No!=True) 数量越界,请重新输入 If(ID!=True) 身份不对,请确认后重新输入接口:调用形式:Void BuyBookBillError(BookName,ISBN,No,ID) 传入参量:Name,BookName,ISBN,No,ID 传出参量:各种提示信息测试计划:各信息都正确 有一项信息错误 所有信息全错3.1.4开发票过程(PrintBill)功能 :开发票给购书者。输人项:书名(BookName),书号(ISBN),(传入参数);开票人姓名(Name)string 交易金额(Money) real交易日期(Date) time输出项:发票算法:Void PrintBill(BookName,ISBN,Na,Mo,Da) NameNa; MoneyMo; DateDa; Print(书名(BookName),书号(ISBN),开票人姓名(Name),交易金额(Money),交易日期(Date);接口:调用形式:Void PrintBill(BookName,ISBN,Name,Money,Date) 传入参量:Name,BookName,ISBN ,Money,Date3.1.5登记购书记录过程(DBRegistBuyBook)功能 :将提交的信息存入到数据库的购书表中。输人项:书名,书号,数量(传入参数)。输出项:无算法:Void DBRegistBuyBook(书名,书号,数量) DB BookName=”书名”DB ISBN=”书号”DB No=”数量”接口:调用形式:Void DBRegistBuyBook(书名,书号,数量) 传入参量:书名,书号,数量3.1.6审核登记过程(CheckDBRegistBuyBook)功能 :若在存取过程中出现错误则转到过程7登记购书记录错误信息显示过程,若没有错误,返回成功登记信息,转到过程8发领书单/打印过程(此程序为系统内部程序)。输人项:无输出项:无算法:Void CheckDBRegistBuyBook() If(数据库存取过程有错误) Void DBRegistBuyBookError(); Else Void PrintBookBill();接口:调用形式:Void CheckDBRegistBuyBook()传入参量:无 传出参量:无3.1.7登记购书记录错误信息显示过程(DBRegistBuyBookError)功能 :显示在数据库操作中出现的错误,并RoolBack回滚转入过程5重新登记购书记录。输人项:无输出项:数据库操作中的错误类型、相应提示算法:Void DBRegistBuyBookError() Display(错误的类型,相应提示); RoolBack Void DBRegistBuyBook(书名,书号,数量);接口:调用形式:Void DBRegistBuyBookError()传入参量:无 传出参量:无3.1.8发领书单/打印过程(PrintBookBill)功能 :打印领书单给购书者。输人项:领书的名称(BookName)、领书的书号(ISBN)、 领书的数量(No)、领书人姓名(Nmae)(参数传入)输出项:领书单算法:Void PrintBookBill(Nmae,ISBN,No,BookName) Print(领书的名称(BookName)、领书的书号(ISBN)、领书的数量(No)、领书人姓名(Nmae)。接口:调用形式:Void PrintBookBill(Nmae,ISBN,No,BookName) 传入参量:Nmae,ISBN,No,BookName 传出参量:无程序3.1.5、3.1.6、3.1.7、3.1.8测试计划:数据库连接正常 传入数据库数据正常 成功登记数据并显示/打印领书单 传入数据库数据异常给出错误类型和相应提示数据库连接异常给出错误类型和相应提示3.1.9修改库存表、出库表过程(DBUpdateTable)功能 :修改出库表和库存表相应的记录输人项:书名、书号、数量(参数传入);出库时间(Outtime)time输出项:更新后的库存表和出库表算法:Void DBUpdateTable(BookName ,ISBN,No,Ot) OuttimeOt; 修改库存表:书名、书号、数量 修改出库表:书名、书号、数量、出库时间接口:调用形式:Void DBUpdateTable(BookName ,ISBN,No,Ot) 传入参量:Nmae,ISBN,No 传出参量:无3.1.10审核修改表过程(CheckDBUpdateTable)功能 :如在对数据库操作过程中出现错误,则转入过程11修改表错误信息显示过程,如果没错误,返回成功信息,继续进行下一步操作。(系统内部程序)输人项:无输出项:成功信息算法:Void CheckDBUpdateTable() If(修改数据库操作有误) Void DBUpdateTableError(); Else Print(“操作成功”); 将更新后的库存表、出库表存入数据库;接口:调用形式:Void CheckDBUpdateTable()传入参量:无 传出参量:无3.1.11修改表错误信息显示过程(DBUpdateTableError)功能 :显示在数据库操作中出现的错误,并RoolBack回滚转到程序3.1.9重新修改库存表、出库表过程。输人项:无输出项:错误类型、相关提示算法:Void DBUpdateTableError() Display(错误的类型,相应提示)。 RoolBack Void DBUpdateTable(BookName ,ISBN,No,Ot)接口:调用形式:Void DBUpdateTableError()传入参量:无 传出参量:无程序3.1.9、3.1.10、3.1.11测试计划: 数据库连接正常 传入数据库数据正常 成功修改出库表、库存表传入数据库数据异常 给出错误类型和相应提示 数据库连接异常 给出错误类型和相应提示3.2采购子系统模块具体描述 采购子系统工作过程:工作人员提交缺书单后,进行审查,无误后登记缺书,审核登记过程后,汇总缺书,生成采购表,采购结束后发进书通知单,最后更新相应表单,审核修改过程。在以上各审核过程中发现错误时,返回上一层重新进行操作。输入项目:需要输入缺书单中要求的信息(书名、书号、数量)。输出项目:需要打印进书通知单(书号、书名、进书日期),采购表(书号、书名、数量)。流程逻辑分析:工作人员提交缺书单后,进行审查,无误后登记缺书,审核登记过程后,汇总缺书,生成采购表,采购结束后发进书通知单,最后更新相应表单,审核修改过程。接口:各模块过程之间采用函数调用、参数传递、返回值的方式进行消息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在模块之间传递。存储分配:为程序当中的数据结构在内存中开辟空间存储,如入到数据库中后在数据库的表中为其开辟存储空间。测试计划:本模块的具体测试将在下面各过程的设计中具体说明。3.2.1 发缺书单程序(HandLackBookBill)功能:在销售过程中出现缺书时由系统提示发缺书单,或者数据库管理人员定期统计书籍库存量,发现缺书状况时通过系统发缺书单。输入项:书名 BookNamestring 书号 ISBN string 数量 No int输出项:无算法:Void HandLackBookBill(name,na,n) BookNamename; ISBNna; Non;接口:调用形式:Void HandLackBookBill(name,na,n)测试计划:数据库连接正常 输入参数合法 输入参数非法 数据库连接异常3.2.2 审核缺书单程序(CheckLackBookBill)功能:对缺书单的过程进行审核,检查其输入信息是否正确。(此为系统内部程序,无输入及输出项)如果正确则转入过程四进行登记缺书,错误则转入过程三进行错误信息显示。输入项:书名,书号,数量(传入参数)输出项:无算法:Bool CheckLackBookBill(BookName,ISBN,No)If(各参数与数据库中所存参数一致) Return true; Void DBRegistLackBook() Else Return false; Void LackBillError()接口:调用形式:系统内部自动调用Bool CheckLackBookBill(name,na,n)传入参量:BookName,ISBN,No 传出参量:TRUE/FALSE测试计划:此程序为系统内部程序,其测试与3.21发缺书单程序测试过程应绑定在一起,具体测试计划见3.2.1中测试计划。3.2.3 缺书单错误信息显示程序(LackBookError)功能:在审核缺书单过程中发现错误,则通过此程序将具体错误显示,并返回发缺书单过程,重新发缺书单。输入项:书名,书号,数量(传入参数)输出项:错误信息提示算法:Void LackBillError(BookName,ISBN,No) If(书名!=True)书名错误,请重新输入; If(书号!=True)书号错误,请重新输入; If(数量!=True)数量越界,请重新输入;接口:调用形式:Void LackBillError(BookName,ISBN,No)传入参量:BookName,ISBN,No 传出参量:无测试计划:此程序为系统内部程序,其测试与3.21发缺书单程序测试过程应绑定在一起,具体测试计划见3.2.1中测试计划。3.2.4 登记缺书记录程序(DBRegistLackBook)功能:在审核缺书单信息无误后,将缺书单信息登记到缺书登记表中。输入项:书名,书号,数量(传入参数)输出项:无算法:Void DBRegistLackBook(BookName,ISBN,No) DB BookNameBookName; DB ISBNISBN; DB NoNo;接口:调用形式:Void LackBillError(BookName,ISBN,No)传入参量:BookName,ISBN,No测试计划:见采购子系统测试过程3.2.5 审核登记程序(CheckLackBookBill)功能:对登记缺书过程进行审核,检查其输入信息是否正确。(此为系统内部程序,无输入及输出项)如果正确则转入过程7进行数据库中表的修改,错误则转入过程6进行错误信息显示。输入项:书名,书号,数量(传入参数)输出项:无算法:Bool CheckLackBookBill(BookName,ISBN,No)If(各参数与数据库中所存参数一致) Return true; Void DBRegistLackBook() Else Return false; Void LackBillError()接口:调用形式:系统内部自动调用Bool CheckLackBookBill(name,na,n)传入参量:BookName,ISBN,No 传出参量:TRUE/FALSE测试计划:此程序为系统内部程序,其测试与3.21发缺书单程序测试过程应绑定在一起,具体测试计划见3.2.1中测试计划。3.2.6登记错误信息显示程序(DBRegistLackBookError)功能:在审核登记过程中发现错误,则通过此程序将具体错误显示,并返回登记过程,重新登记。输入项:书名,书号,数量(传入参数)输出项:错误信息提示算法:Void DBRegistLackBookError(BookName,ISBN,No) If(书名!=True) 书名错误,请重新输入;Void DBRegistLackBook(BookName,ISBN,No);If(书号!=True)书号错误,请重新输入;Void DBRegistLackBook(BookName,ISBN,No);If(数量!=True)数量越界,请重新输入;Void DBRegistLackBook(BookName,ISBN,No);接口:调用形式:Void DBRegistLackBookError(BookName,ISBN,No)传入参量:BookName,ISBN,No 传出参量:无测试计划:此程序为系统内部程序,其测试与3.21发缺书单程序测试过程应绑定在一起,具体测试计划见3.2.1中测试计划。3.2.7 生成采购表程序(PrintBuyingBookbill)功能:系统定期生成采购表,或者由工作成员主动要求系统生成,然后交给采购人员用于进行教材的采购工作。数据来源于数据库中的缺书登记表。输入项:无输出项:书名 BookNamestring 书号 ISBNstring 数量 No int算法:Void PrintBuyingBookbill(BookName,ISBN,No) Display BookName; Display ISBN; Display No;接口:调用形式:Void PrintBuyingBookbill(BookName,ISBN,No)测试计划:启动打印程序,打印一至二份采购表,并将打印结果与数据库中采购登记表中数据比较核对是否一致。3.2.8 修改数据库中的表程序(DBUpdateTable)功能:对新进的新书,修改数据库中入库表和库存表的记录:输入项:书名 BookNamestring 书号 ISBNstring 数量 Noint 入库日期In_Datetime输出项:无算法:Void DBUpdateTable(BookName,ISBN,No,In_Date) 入库表:DB BookName=”书名”DB ISBN=”书号”DB No=”数量”DB In_Date=”入库日期”库存表:DB BookName=”书名”DB ISBN=”书号”DB No=”数量”接口:调用形式:Void DBUpdateTable(BookName,ISBN,No,In_Date)测试计划:启动此程序,输入几组数据,观察数据库中表的变化。3.2.9 审核修改表过程程序(CheckLackBookBill)功能:对修改数据库中表过程进行审核,检查其输入信息是否正确。(此为系统内部程序)如果错误则转入错误信息显示过程进行错误信息显示。输入项:书名,书号,数量,入库日期(传入参数)输出项:TRUE/FALSE算法:Bool CheckDBUpdateTable(BookName,ISBN,No,In_Date)If(各参数与数据库中所存参数一致) Return true; Else Return false; Void DBUpdateTableError()接口:调用形式:系统内部自动调用Bool CheckDBUpdateTable(name,na,n) 传入参量:BookN

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论