西南考试[0010]软件工程答案
发布时间:2023-09-10 11:09:08浏览次数:56西南大学网络与继续教育学院课程考试试题卷类别:网教 专业:公共课 课程名称【编号】:软件工程【0010】 A 卷大作业 满分:100 分一、 大作业题目某图书馆借书过程如下:读者进入书库选到所需图书后,将图书和借书卡交管理人员,管理人员将图书编码和借书卡号录入系统。系统根据借书卡号从读者文件和借阅文件中找到相应记录;根据图书编码从图书文件中找到相应记录,读者如果有下列情况之一将不予办理借书手续。(1)读者所借阅图书已超过该读者容许的最多借书数目。(2)该读者记录中有止借标志。(3)该读者还有已超过归还日期而仍未归还的图书。(4)该图书暂停外借。若读者符合所有借书条件时,予以借出。系统在借阅文件中增加一条记录,记入借书卡号、图书编码、借阅日期等内容。问题 1:画出尽可能详细的借书过程数据流图。问题 2:按照软件工程的规范写出“图书”、“借书卡”和“借阅文件“的数据字典(定义到第 2 层)。借阅证改成借阅文件- 1 -
问题 3:根据问题 1 中你所画的数据流图,采用面向数据流的方法,画出系统的软件结构图。问题 4:已知“判断读者是否具备借书条件模块”IPO 表如下,请画出该模块的程序流程图。问题 5:请至少用两种测试方法设计出两套测试数据,用于测试问题 4 中你设计的程序,并说明你采用了什么测试方法。procedure Tborrow_Form.FormCreate(Sender: TObject); begin ADOConnection1.Connected :=true; ADOQ_borrow_returninfo.Active :=true; ADOQuery_readno.Active :=true; ADOQuery_bookno.Active :=true; if ADOQ_borrow_returninfo.Recordset.RecordCount=0 thenbeginprocedure Tborrow_Form.BBdeleteClick(Sender: TObject);var- 2 -
I:integer;begin I:=application.MessageBox('确定要删除吗?','警告',1); if I=1 then begin ADOQ_borrow_returninfo.Delete ; end else begin exit; end ; if ADOQ_borrow_returninfo.Recordset.RecordCount =0 then begin BBupdate.Enabled:=false; BBdelete.Enabled:=false; endend;IPO 表系统:借书系统 作者:×××模块:判断读者是否具备借书条件 日期:××××被调用:借书系统调用: today():求当前日期输入:读者信息借阅记录图书信息输出:读者是否具备借书条件不能办理借书手续的原因处理:读者如果有下列情况之一将不予办理借书手续。(1)读者所借阅图书已超过该读者容许的最多借书数目。(2)该读者记录中有止借标志。(3)该读者还有已超过归还日期而仍未归还的图书。(4)该图书暂停外借局部数据元素:设读者允许最多借书数目为 5 本,图书的借阅期限为 40 天, x为读者借书数目,y 为止借标志,z 为暂停标志,BD 为读者已借图书中最早的借书日期,y,z 为逻辑变量。X 和 BD 可从借阅记录中取得,在程序流程图中用“X←借阅记录”表示……;y从读者信息中取得,z 从图书信息中取得。二、大作业要求大作业共需要完成四道题:第 1-3 题选作二题,每题 20 分,满分 40 分;- 3 -