软件开发文档范例 具体设计说明书.docx
- 文档编号:8087330
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:8
- 大小:20.08KB
软件开发文档范例 具体设计说明书.docx
《软件开发文档范例 具体设计说明书.docx》由会员分享,可在线阅读,更多相关《软件开发文档范例 具体设计说明书.docx(8页珍藏版)》请在冰豆网上搜索。
软件开发文档范例具体设计说明书
软件开发文档范例具体设计说明书
《五.具体设计说明书》
1、引言:
1、1编写目的:
在前一阶段(概要设计说明书)中,已处理了实现该系统需求的程序模块设计问题。
包括如何把该系统划分成若干个模块、打算各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。
在以下的具体设计报告中将对在本阶段中对系统所做的全部具体设计进行说明。
在本阶段中,确定应当如何具体地实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用具体的程序言语书写的程序。
次要的工作有:
依据在《需求分析说明书》中所描述的数据、功能、运转、功能需求,并依照《概要设计说明书》所确定的处理流程、总体结构和模块外部设计,设计软件系统的结构设计、逐一模块的程序描述(包括各模块的功能、功能、输入、输出、算法、程序规律、接口等等),处理如何
1.接受:
旅客信息及取票通知和帐单;
2.输出:
取票通知和帐单及机票;
3.网络输出和加密,输入和解密;
4.辨别信息的品种并实行相应的处理步骤;
5.推断信息的正误并实行相应的处理步骤;
6.进行数据库的查询、修改工作;
7.接受并推断错误,输出相应的出错消息;
在以下的各个阶段中,《用户操作手册》将与本阶段的工作紧密结合,努力作到让用户易懂易学。
《测试报告》和《维护报告》也将参考本说明书,检验本系统的各项功能目标,准时发觉纰漏准时修补,肯定要把功能强大、稳定牢靠、便于维护的机票预定系统交到用户手中。
1、2项目背景:
本项目(机票预定系统)时由浙江航空公司托付,由《》软件开发小组担任开发。
本机票预定系统项目次要由两部分构成:
1、各旅行社中的前台客户程序;
2、航空公司中的数据库服务器程序;
1、3文中特殊的定义和缩写:
1.3.1定义
SQLSERVER:
系统服务器所使用的数据库管理系统(DBMS)。
SQL:
一种用于访问查询数据库的言语
事务流:
数据进入模块后可能有多种路径进行处理。
主键:
数据库表中的关键域。
值互不相同。
外部主键:
数据库表中与其他表主键关联的域。
ROLLBACK:
数据库的错误恢复机制。
1.3.2缩写
系统:
若未特殊指出,统指本机票预定系统。
SQL:
StructuredQueryLanguage(结构化查询言语)。
ATM:
AsynchronousTransferMode(异步传输模式)。
1、4参考材料:
以下列出在概要设计过程中所使用到的有关材料:
1.机票预定系统项目方案任务书浙江航空公司
2.机票预定系统项目开发方案《》软件开发小组
3.需求规格说明书《》软件开发小组
4.概要设计说明书《》软件开发小组
4.用户操作手册(初稿)《》软件开发小组
5.软件工程及其应用周苏、王文等天津科学技术出版社
6.软件工程张海藩清华高校出版社
7.ComputerNetworkA.S.TanenbaunPrenticeHall
文档所接受的标准是参照《软件工程导论》沈美明著的“计算机软件开发文档编写指南”。
2.总体设计:
2、1需求概要:
浙江航空公司为便利旅客,需开发一个机票预定系统。
为便于旅客由旅行社代替航空公司担任为旅客定票,旅行社把预定机票的旅客信息,包括姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地,输入机票预定系统的客户端程序,系统经过查询航空公司内的航班数据服务器后,为旅客支配航班,印出取票通知。
旅客在飞机起飞前一天凭取票通知和帐单交款后取票,系统校对无误后即印出机票给旅客。
要求系统能有效、快速、平安、牢靠和无误的完成上述操作。
并要求客户机的界面要单明白,易于操作,服务器程序利于维护。
2、2软件结构:
各模块之间的关系已由概要设计给出。
1、客户机接受信息模块结构图:
网络接受和发送模块2.客户机输出信息模块:
3.网络接受和发送模块结构:
客户机接受信息模块或服务器输出信息模块
客户机输出信息模块服务器输入信息模块
4.服务器模块:
3、程序描述:
3、1客户机接受信息模块:
1、PersInfoExam过程:
对在旅客信息界面中输入的各项信息进行初步检验。
若发觉错误,令
PErrorAppear=T,推断错误类型,并将相应的错误类型PErrorType或PErrorRank作为参数,转入
IErrorHandle过程。
若未发觉错误,转入PersInfoInput过程。
其中的错误品种有:
1.数据类型不婚配,PErrorType=T;否则=F;
姓名string旅行目的地string
性别string旅行时间date
工作单位string(年/月/日yy/mm/dd)
身份证号码longint定票/取票boolean
2、数据超出规定范围PErrorRank=T;否则=F;等等
性别只能是‘男’或‘女’;身份证号码按规定必需是13位;旅行时间必需在定票的当天过一天以后;等等
2、PersInfoInput过程:
经检验无误后,将输入界面表单中的数据输入到ClassPersInfo
ClassPersInfo{/*伪码*/
Stringname=姓名;
Stringsex=性别;
Stringcompany=工作单位;
Longintidcode=身份证号码;
Datestime=旅行时间;
(syear/smonth/stime=年/月/日)
Stringdenist=目的地
Boolocflag=定票/取票
}
3.PersInfoTempSave过程:
将由PersInfoInput输入的旅客信息保存在一个临时文件PersInfoTemp.txt中。
以备与将来从服务器经网络传输过来的数据校验。
此类temp文件在每次软件的完全过程操作后,须删除。
4.CheckNoticeExam过程:
对在帐单和取票通知的信息界面中输入的各项信息进行初步检验。
若发觉错误,令CErrorAppear=T,推断错误类型,并将相应的错误类型CErrorType或CErrorRank作为参数,转入IErrorHandle过程。
若未发觉错误,转入CheckNoticeInput过程。
其中的错误品种有:
1.数据结构不婚配,CerrorType=T,否则=F;
帐单号longint
姓名string
身份证号码longint
付款金额money
航班号string
取票截止日期date
目的地string
2.数据超出规定范围CErrorRank=T;否则=F;
如帐单号不是规定的15位;金额为负;取票截止日期已过;等等
5.CheckNoticeInput过程:
经检验无误后,将输入界面表单中的数据输入到ClassCheckNotice
ClassCheckNotic{
Longintcncode=帐单号
Stringname=姓名
Longintidcode=身份证号码
Moneybill=付款金额
Stringplanecode=航班号
Datedtime=取票截止日期
Stringdenist=目的地
}
6.CheckNoticeSave过程:
将由CheckNoticeInput输入的旅客信息保存在一个临时文件CheckNoticeTemp.txt中。
以备与将来从服务器经网络传输过来的数据校验。
此类temp文件在每次软件的完全过程操作后,须删除。
7.IErrorHandle过程:
在PersInfoExam或CheckNoticeExam过程中若发觉错误,就转入本过程,执行相应的处理,并输出相应的出错信息。
If(PErrorType==T)
输出“您的个人信息可能输错了位置。
请重试。
”
If(PErrorRank==T)
输出“您的个人信息不顺应规定范围。
请重试。
”
再转入旅客信息输入的界面中。
If(CErrorType==T)
输出“您的帐单信息可能输错了位置。
请重试。
”
If(CErrorRank==T)
输出“您的帐单信息不顺应规定范围。
请重试。
”
再转入帐单和取票通知信息的输入界面。
8.JudgeOrderOrCash过程:
依据PersInfoInput输入的ocflag推断本次操作是定票或取票,相应的设置标志,相应的转入OrderTransPre或CashTransPre过程.
9.OrderTransPre过程:
定票要求传输前,作好各方面(硬件、软件)的预备。
如预备好要传输的定票信息,包括旅客信息,客户机信息等等。
客户机信息包括独一序列号c_id,并设置等待标志waitflag=T和等待开头时间waitstime,等等。
转入网络模块后,此过程仍处于等待形态,并一直记时,当waitflag==T且系统时间超过waitstime比如格外钟后,结束操作,输出操作超时的出错信息。
当客户机接遭到数据库的信息,客户机输入模块中的DataRecPre过程会置waitflag=F,这样本过程就会结束。
10.CashTranPre过程:
取票要求传输前,作好各方面(硬件、软件)的预备。
如预备好要传输的取票信息,包括帐单和取票通知的信息,客户机信息等等。
客户机信息包括独一序列号c_id,并设置等待标志waitflag=T和等待开头时间waitstime,等等。
转入网络模块后,此过程仍处于等待形态,并一直记时,当waitflag==T且系统时间超过waitstime比如格外钟后,结束操作,输出操作超时的出错信息。
当客户机接遭到数据库的信息,客户机输入模块中的DataRecPre过程会置waitflag=F,这样本过程就会结束。
11.SetCSFlag过程:
设置客户机/服务器标志CSFlag=T(表示将要进行的传输是从客户机到服务器)。
以备网络模块中的JudgeCSFlag过程使用。
3.2客户机输出信息模块:
1.CDataRecPre过程:
作好各方面(硬件、软件)的预备,以便接受网络传输来的数据。
如设置服务器的空闲与否形态s_idle=F,承继正在工作联系的客户机序列号c_id。
完成后转入下一个过程DBOperaCheck.
2.DBOperaCheck过程:
检验网络传输过来的数据。
若是出错信息,转入OErrorHandle过程。
否则转入JudgeOrderOrCheck过程。
3.JudgeOrderOrCheck过程:
依据网络传输来的数据中的ocflag推断本次操作是定票或取票,相应的设置标志,相应的转入PersInfoComp或CheckNoticeComp过程.
4.PersInfoComp1过程:
将数据库中的旅客信息与临时文件PersInfoTemp.txt中的旅客信息进行比较,假如吻合,就转入CheckNoticeOutput过程。
否则出错,转入OErrorHandle过程。
5.CheckNoticeOutput过程:
将帐单和取票通知输出到界面1中。
留意格式。
Longintcncode=帐单号;
Stringname=姓名;
Stringsex=性别;
Stringcompany=工作单位;
Longintidcode=身份证号码;
Datestime=旅行时间;
(syear/smonth/stime=年/月/日)
Stringdenist=目的地
Boolocflag=定票/取票
6.CheckNoticeComp过程:
将数据库中的帐单和取票通知信息与临时文件CheckNoticeTemp.txt中的旅客信息进行比较,假如吻合,就转入PersInfoComp过程。
否则出错,转入OErrorHandle过程。
7.PersInfoComp2过程:
将数据库中的旅客信息与临时文件PersInfoTemp.txt中的旅客信息进行比较,假如吻合,就转入TicketOutput过程。
否则出错,转入OErrorHandle过程。
8.TicketOutput过程:
将机票输出到界面2。
留意格式。
Longintplanecode=航班号;
Date/timestime=起飞时间;
Stringname=姓名;
Longintidcode=身份证号码;
Intseatcode=座位号;
Moneyprice=票价;
9.OErrorHandle过程:
处理各个过程产生的错误,输出相应的出错信息到输出界面3。
由DBErrorCheck过程转入的,是数据库操作失效,如:
所需机票已被定光;数据库中无对应的帐单或旅客信息;等等。
由PersInfoComp过程转入的,是数据库处理有误,前往的旅客信息无法与原先输入的旅客信息吻合。
由CheckNoticeComp过程转入的,是数据库处理有误,前往的帐单和取票通知信息无法与原先输入的帐单和取票通知信息吻合。
3.3网络接受和发送模块结构:
1.NetCheck过程:
检查网路的工作情况。
发送一些检验消息,接受一些反馈信息,查询要建立通路的终端能否有效,若有效就作好响应的预备,转入RecPre和SendPre过程;若无效就转入NErrorHandle过程。
如服务器要传输信息给某客户机,可先发检验消息,包括由服务器发送的c_id可检验相应的客户机能否仍处于等待形态,客户机再将waitflag反馈给服务器;客户机要传输信息给服务器,若服务器的s_idle=T,由客户机发送的c_id的值可赐予服务器中的c_id,再将s_idle反馈给客户机.
2.RecPre过程:
经过NetCheck过程检验网路后,作好接受数据的预备。
若是服务器→客户机,应当只需相应c_id的客户机做预备,激活客户机输出模块。
若是客户机→服务器,由于服务器一直处于活动形态,无须激活。
3.NetReceive过程:
接受网络数据包。
在分包接受的过程中,一直保持与NetMonitor过程联系,接受和反馈网络数据传输情况的信息,依据这些信息连续接受数据包,或做相应的调整。
4.NetDataDiscry过程:
将由网络传输来的数据依据肯定的算法解密。
5.NetDataUnpack过程:
将经解密后的数据(被压缩过的)依据肯定的算法解压。
6.SendPre过程:
经过NetCheck过程检验网路后,作好发送数据的预备。
若是服务器→客户机,应当只需相应c_id的客户机做预备,激活客户机输出模块。
若是客户机→服务器,由于服务器一直处于活动形态,无须激活。
7.NetDataPack过程:
将由服务器模块传过来的数据依据肯定的算法压缩,打包。
8.NetDataEncry过程:
将预备送网络发送的数据依据肯定的算法加密。
9.NetSend过程:
发送经过压缩打包和加密的数据包。
在分包发送的过程中,一直保持与NetMonitor过程联系,接受和反馈网络数据传输情况的信息,依据这些信息连续发送数据包,或做相应的调整。
10.NetMonitor过程:
从服务器与某客户机建立网络联系开头,到数据传输完成,联系断开为止,NetMonitor过程一直监视着网络情况。
并将情况信息随时传给NetReceive和NetSend过程,同时从这两个过程接受数据接受和发送的情况信息。
假如以上的情况信息反映出错误,就转入NErrorHandle过程处理。
11.NErrorHandle过程:
网络模块的错误处理过程。
次要的错误品种有:
1。
无法建立服务器与某客户机建立网络联系,由NetCheck过程转来;2。
联系建立后,网络数据传输消灭错误,由NetMonitor过程转来。
12.JudgeCSFlag过程:
本过程依据由客户机输入模块中的SetCSFlag过程或服务器模块中的SetCSFlag过程来确定网络模块完成后应转入哪一个模块,客户机输出模块或服务器模块。
3.4服务器模块:
1.SDataRecPre过程:
作好服务器各方面(硬件、软件)的预备,以便接受网络传输来的数据。
如设置服务器的空闲与否形态s_idle=F,承继正在工作联系的客户机序列号c_id。
完成后转入下一个过程JudgeOrderOrCash.
2.JudgeOrderOrCash过程:
依据网络输入的数据中的ocflag推断本次操作是定票或取票,相应的设置标志,相应的转入TicketAvailable或InfoComp过程.
3.TicketAvailable过程:
依据旅客信息中的旅行时间(日期)查询数据库,若Ticket表中在此日期仍有票剩余(未被定票或购票),就转入LockTicket过程;若无余票,就转入DBErrorHandle过程.
4.LockTicket过程:
依据旅客信息中的旅行时间(日期),在Ticket表中,把相应数量的起飞日期等于此日期的机票锁住,作为已定的机票.
5.AddPers过程:
把已定票的旅客信息添加到PerInfo表中.
姓名性别身份证
号码工作单位旅行
目的地
旅行时间
6.GetoutCheck过程:
把查询后许可的定票信息添加到Check表中,同时预备把此信息向网络输出.
帐单号姓名身份证号码金额航班号截止日期目的地
Comp过程:
检查输入的旅客信息、帐单和取票通知信息在数据库的PersInfo和Check表中能否有对应
的项。
假如有,就转入DelItem过程;假如无,就转入DBErrorHandle过程。
8.GetoutTicket过程:
在Ticket表中取出并删除对应的被锁住的机票信息,预备把此信息向网络输出.9.DelItem过程:
在数据库的PersInfo和Check表中,删除已取票的旅客信息、帐单和取票通知信息。
10.JudgeCheckTicket过程:
依据数据库输出的数据推断本次输出是帐单和取票通知或机票,相应的设置标志,相应的转入CheckTransPre或TicketTransPre过程.
11.CheckTransPre过程:
帐单和取票通知传输前,作好各方面(硬件、软件)的预备。
如预备好要传输信息,包括帐单信息,要联系的客户机信息等等。
客户机信息包括独一序列号c_id。
12.TicketTransPre过程:
机票传输前,作好各方面(硬件、软件)的预备。
如预备好要传输信息,包括机票信息,要联系的客户机信息等等。
客户机信息包括独一序列号c_id。
13.SetCSFlag过程:
设置客户机/服务器标志CSFlag=F(表示将要进行的传输是从服务器到客户机)。
以备网络模块中的JudgeCSFlag过程使用。
14.DBErrorHandle过程:
推断数据库操作中消灭的错误,并处理和前往到客户机上。
由TicketAvailable过程转入的错误,是Ticket表中在相应日期无票剩余(全被定票或购票,或者飞机已起飞);由Infocomp过程转入的错误,是输入的旅客信息、帐单和取票通知信息在数据库的PersInfo和Check表中没有对应的项,说明取票信息和定票信息不符。
15.DBErrorTransPre过程:
错误信息传输前,作好各方面(硬件、软件)的预备。
如预备好要传输信息,包括错误类别信息,要联系的客户机信息等等。
客户机信息包括独一序列号c_id。
接着转入网络接受和发送模块。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件开发文档范例 具体设计说明书 软件 开发 文档 范例 具体 设计 说明书