软件工程导论试题集_第1页
软件工程导论试题集_第2页
软件工程导论试题集_第3页
软件工程导论试题集_第4页
软件工程导论试题集_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、仅供个人参考不得用于商业用途Forpersonaluseonlyinstudyandresearch;notforcommercialuse1.航空公司“机票预定系统”航空公司为给旅客乘机提供方便,需要开发一个机票预定系统。各个旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统根据旅客信息和航班信息为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。请用结构化分析方法,给出系统的功能模型参考答案:(0层,1层DF

2、D)(DFD描述)。2.一个简化的市售票员根据旅客预订信息旅行府救鲫甲客信上g票=姓名预订LSI销借雄统需求描述加下:rfn理可随时查询每一个航班笛请画出该系统的0层DFD图和1层DFD3.图书馆的预定图书才卷询询(1)(2)(3)(4)(5)(6)由供书部门提供书目给订购组订书组从各单位取得要订的书目根据供书目录和订书书目产生订书文档留档挑班信息月VL)°航空公机票价旅行社时旅对于重复订购mw.系舞服鬣将订书信息(午括书目、将未订书目通夕邵确岂号者可售机票信(注1层分解为查询禾小X)反馈给供书率位事的基脸麻粗阡的机票标志设置为售出;安排O账单、叫和计算胸小处理账单合适航班机售票部经

3、画出数据流图,并转换为软件结构图。4.某单位要研制一个计算机培训管理系统,它的业务是将学员发来的信件收集分类后,按以下几种情况处理:1 )处理报名如果是报名,则将报名数据送给负责报名事物的职员,他们将查阅课程文件,检查课程是否满额,然后在学生文件、课程文件上登记,并开出报告单较财务部们,财务人员开出发票给学生。2)注销课程;如果是想要注销原来已选修的课程,则有注销人员在课程文件、学生文件和账目文件上做相应的修改,并给学生注销单。3)处理付款如果是付款,则有财务人员在账目文件上登记,也给学生一张收费收据。要求:给出该系统的数据流图和软件结构图。参考答案:(1)数据流图(2)结构图5.假设一家工厂

4、的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据;零件编号、零件名称、定货数量、目前价格、主要供应者和次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货要求:用结构化方法学对定货系统进行分析与设计,分别完成以下工作:(1)(2)(3)参考答案给出定货系统的功能模型。用数据字典描述该定货系统中主要加工“处理定货”和主要数据存储“定货报表”给出定货系统的软件体系结构(用H图或结构图表示)。(1)(2)(3).同芍求一入库事务,_、名字:定

5、货报班库出库事务处理入库事务那名名定货优叫揣避:每天需要定货的零件表已货系统处理出库事务库存清单库存信息股统分定B须统有咖编助镶件名称+定货数量+价格+1供应者3处理定货(1)斗斓删鲍鞭和州fe始分计算,得到标准分,存入考生分数和3上二t线分:根据标准分,招生计划文件中的招生要求:(1)(2)岸构给联也得考录取统分子系统进行分ifHR哈出高考录取统分子系班号(1)也侬山用数据流图表示)别完成以下工作:可图或结构图表示)。7 .需求描述如参考合8 .处理定货处理定货下:案:处理其他零件定货信息处理ENDIF处理出库参考答案:(1)数据流图(2)结构图9.10. 某运动会概括力相同接受来自运动员的

6、包名单、裁判的比赛项目及项目成绩,产生运动员号码单发送给运动员,项目参加者发送给裁判,单项名次发送给发布会。该系统的功能如下:(1)登记报名单接受报名单、比赛项目,产生运动员号码单、项目参加者,形成运动员名单及团体成绩表两种数据存储。(2)统计成绩接受项目成绩,查询运动员名单,产生单项名次,填写团体成绩,最后产生团体名次。11. 现开发一个银行的活期存取款业务的处理系统,系统功能如下:(1) 审查分类:系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理。(2) 处理存款:系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储

7、户。(3) 处理取款:系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。绘制该系统的数据流图和软件结构图。参考答案:(1)数据流图顶层一层(2)系统结构图如下:12. 银行储蓄系统的业务流程:储户填写的存款单或取款单由业务员键入系统;如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率、密码(可选)等信息,并印出存单给储户;如果是取款而且开户时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。要求画出分层的数据流图,并细化到2层数据流图。参考答案:0层:

8、1 层:2 层:13. 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还会延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统,请分层次地画出描述本系统功能的数据流图。( 1) 部监视在医院的病房里,将病症监视器安置在每个病床,对病人进行监护。监视器将病人的病症信号(血压、体温、脉搏等组合)实时地传送到中央监护系统进行分析处理。( 2) 中央监视在中心值班室里,值班护士使用中央监护系统对病员的情况进行监控,监护系统实时地将病人的病症信号与标准的病诊信号进行比较分析,根据标准病症信号库中的值,判断是否报警;( 3) 更新日志中央监视系统根据分

9、析数据将病人的病症信号进行格式化并加入更新日期、时间,更新病历库中病人的信息,并写入病员日志文件中。( 4) 产生报告根据医生的要求随时打印病人的病情报告,系统还定期自动更新病历。参考答案:14. 需求陈述:现有某库存管理系统,其主要功能如下:1. 建立物资采购单流水账根据计划部门转来的收货通知单和已存的物资编码文件,建立物资采购单流水账。2. 更新物资台账根据技术部门的物资验收报告和物资采购单流水账,更新物资台账文件。3. 汇总物资台账对物资台账分类汇总,将结果存储于物资总账文件。要求:用结构化方法学对库存管理系统进行分析与设计,分别完成以下工作:给出库存管理系统的功能模型(用数据流图表示)

10、。(10分)给出库存管理系统的体系结构(用H图或结构图表示)。(10分)参考答案:1 .数据流图(15分)(评分标准:基本给出两个数据源、三个功能模块和四个文件12分,少一个扣2分)3分)15.需求陈述:某大学教学管理系统子系统的功能说明如下:首先接受学生提交的学生证和申请单,根据学生档案文件检验学生证的有效性和申请单是否填写的正确,如果有误则拒绝,如果无误根据学生的注册表文件审查接受学生的申请单。如果是申请注册,则进行注册登记,并将注册信息写入检索课程是否有满足申请要求,如果有则进行选课登记,如果没有则通知学生无此课。要求:用结构化方法学对教学管理系统子系统进行分析与设计,分别完成以下工作:

11、1) 给出教学管理系统子系统的功能模型(用DFD嗷据流图表示)。(10分)2) 给出教学管理系统子系统的体系结构(用H图或结构图表示)。(10分)参考答案:1.功能模型注册表文件。如果是申请选课,则根据课程档案文件2.结构图教学管理子系统鼠闻对象开发技术1.根据以下描述,|使用9J对象的离析方法、,力行有|那些生婴对军和这些对象的主要属性、方法,一个饮料自动售怖福网置上神则班部分相柳邓网,可由厂商根据销售状况自动调配,画出对象图。并可随时重新设置售价,但售货机最多仅能放置50硅铁料不按钮设计在各种饮料样本的下方,若经金额计算器累计金额足够,则选择键灯会亮;若某一种饮料已销售完毕,见审查申请顾客

12、将硬币投入售货机,经累加金颔足颔的饮料选择键灯亮,等顾客按键选择。顾客按键后饮料由出物口掉出,并自动结算及找钱。顾客可在按下选择键前任何一个时刻,可以拉动退币杆取消交易收回硬币。不得用于商业用途贩卖机金额计算器饮料号码-«雇干W雇干金额投币-接受饮料掉出金额显示累加找零退币杆退币杆状态拉动被拉动8购买顾客.Bi硬币投币-置入拿取饮料选取存量计算器饮料号码存量递减售完显示重置选择钮选择钮状态灯亮灯熄售完灯亮按钮2 .设计一个简单的学生选课系统,系统能注册符合要求的同学,同学注册以后就能进行选课。选课过程如下:先选课名,然后根据课程的上课老师、时间、地点和人数限制来决定是否成功选课;老师

13、也可以根据情况提供新的课程说明或修改过去课程的说明;教务处的老师统一管理注册的情况,可以有删除、修改学生、老师和课程的权限。请用面向对象方法设计出对象模型(对象类图,标出多重性、角色、限定词和关系:泛化、聚集、关联)、动态模型(学生成功注册后选课的顺序图)、功能模型(用例图)三大模型。参考答案:(1)类图(2)用例图:(3)顺序图3 .请画出一个用户使用银行ATM的状态转换图。从用户将卡插入卡槽开始,到用户取卡结束(如果用户忘记,ATM应报警),用户可以完成以下几个步骤:登录(卡片进入ATM机后,如果不是可读卡,退卡;如是,等待用户输入密码,三次错,吞卡,正确后进入主菜单),取钱(进入取钱菜单

14、,输入金额,如果帐户余额不足,提示余额,并要求用户重新输入,如果帐上钱够,吐钱币,并询问是否打印凭证,最后返回主菜单),主菜单提供退出取卡选择。5.用例UC1:预定航班主事件流(主成功场景):1 .顾客向系统提交航班预订信息(出发地、目的地、出发日期和人数)2 .系统检索满足这些条件的航班3 .系统显示满足条件的航班信息4 .顾客选择所要的航班5 .系统检索该航班剩余的座位信息6 .系统显示可预订的座位信息7 .顾客选择所要的座位8 .系统生成一个临时预订记录9.系统将顾客选择的座位状态从“未预订”修改为“已预订”备选事件流(扩展场景):1a.顾客撤销购票请求,退出用例2a.系统检索不到满足条

15、件的航班3a.系统向用户显示没有满足条件的航班3b.系统建议顾客返回步骤14a.顾客撤销购票请求,退出用例问题:(1) 系统分析员认为与该用例相关的类至少有Reservation(预定)、Seat(座位)和Flight(航班),请补充必要的类,建立对应于该用例的主成功场景的顺序图。(2) 请为对象Flight对象建立状态图。用例“预订航班”的顺序图:类图:用例“预订航班”的活动图:航班状态图:6.需求陈述:下面是一大学教学管理系统的子系统的简单说明:首先接受学生提交的学生证和申请单,根据学生档案情况检验学生证的有效性和申请单是否填写的正确,如果有误则拒绝,如果无误则根据学生的注册情况审查接收学

16、生的申请要求。如果是申请注册,则进行注册登记;如果是申请选课,则先查询课程档案是否有满足申请要求的课程,如不得用于商业用途仅供个人参考果有则进行选课登记,如果没有则通知学生无此课。要求:用面向对象方法学对该系统进行分析与设计,分别完成以下工作:(1) 给出教学管理系统的用例模型,并对主要用例进行简单说明。(10分)(2) 给出教学管理系统中所涉及到的主要类。(10分)(3) 给出教学管理系统的类图。(10分)(4) 给出教学管理系统中注册的顺序图。(10分)参考答案:1).用例图(10分)(基本给出用例模型5分,给出用例说明再5分,其他酌情给分)注册登t人心学期开学注册时间执行该用例,执行前必

17、须先完成学生1不查和接受申请的过程。2).3.)登记选课:审查和接受申请 主要类:梆裸,选课单, 类图如下:(104.)生,注册顺序图如下:(5分),本科0m果程:注册界面的过记录,本和(10 分):学生选课单7.下面是自动售货机系统的需藕H晦,试犁立:它白 I自动售货机系统种无人售货房褥倡:元币、五隹币、五分币、把硬币送入嗫币储藏器中。任课教师自动售货机装有货物分配器。梅素货物 Zs而且顾客支,寸的货币值不小于该货物的价I支付的货币直相等的硬币将被送回到且币寸客决定不买,参考答案:(1)类图接受 申请拥10,m:注册记录学生J对象模徵动态耳型手秒唧模型"姓名注册记录学号姓名时,顾硼

18、啊!忸机阴华币口中,机罹检查硬币的大小、碧珊;H甥度及边缘类型。有效的硬币是硒斯被啰摆搬币。才嘉1询妾受假甭别并将其从退市孔退明查当机器舂诏甬班期 行的鄙器科累加专业入学日期登记分配器中包含 m 多个价场口同的货物)接受了有效的硬币之后,就货物。读入 顾客通过选择货物分配器来选择货物。如果货物分配器中有货物,各被分M货物传送五送给顾客,薛稗适当白j零钱返还到退币孔。如果分配器是空的,则和顾客如果卜客支储货币值4狞选择的货物,他常放进的货币将从退币孔中退出。罕物的价格,机器将等待顾客投进更多的货币。如果顾本科课程是否必修课研究生课程是否学位课研究生导师类型研究方向(2)活动图8.有一房地产销售管

19、理系统,主要功能有房源查询、房源预定、房源签约、退房操作、换房操作、房款管理、销售统计、房款统计,销售人员主要进行房源的销售操作,财务人员负责房款的收取,销售主管能够及时汇总销售情况和房款收取情况。1)请画出房地产管理系统的UM阴例图。2)对于一套房源,有三种状态:待售状态、预定状态、已售状态,请用UML状态图给出房源的状态变迁情况,并用文字简单说明。3)采用面向对象的设计思想,试给出该系统应该包含的主要类,并做简单说明。参考答案:(1) 用例图(2) 状态图(3) 类图(略)9.某银行系统的需求概述如下:某银行系统为该行的客户提供以下业务:存款、取款、转账和查询。拥有该行账户的客户可以利用该

20、银行系统实现各种银行业务,如客户可以存款,也可以取款,或者将存款从一个账户转到另一个账户。客户还可以随时查询自己账户的情况,并查询以前所进行的存款、取款等交易记录。客户也有权利要求关闭账户。由上述描述可知这个简化的银行系统至少应该具有如下功能:客户可以取款客户可以存款客户可以在不同的账户之间转账客户可以查询自己账户的余额银行职员负责系统的维护附:银行系统的“取款”用例的描述主事件流:当客户(Customer)想从自己的账户中取钱时,要向银行职员(Clerk)提交取款单,“取款”用例启动。(1)系统提示输入用户信息,进行帐户有效性的验证(2)客户输入有关帐户的信息(帐户信息、密码等)(3)系统确

21、认账户的有效性。A1:账户验证不合法仅供个人参考(4)系统提示进行取款交易(5)客户按照系统提示进行取款交易(交易类型,交易金额)。A2:账户余额不足(6)系统建立取款事件记录,并更新账户的相关信息(7)用例结束扩展事件流:A1:账户验证不合法若账户不存在或无效,显示提示信息,用户可以重新输入或终止该用例。A2:账户余额不足账户中的存款金额不足,显示提示信息,用户可以重新输入金额或终止该用例。要求:用面向对象方法学对银行系统进行分析与设计,分别完成以下工作:(1) 画出银行系统的用例图(2) 画出银行所在的银行系统的类图(3) 画出银行取款顺序图(时序图)(4) 画出银行取款活动图参考答案:1

22、. 用例图2. 类与对象模型3. “取款”用例的顺序图4. “取款”用例的活动图10. 需求陈述:某银行系统为该行的客户提供以下业务:存款、取款、转账和查询。拥有该行账户的客户可以利用该银行系统实现各种银行业务,如客户可以存款,也可以取款,或者将存款从一个账户转到另一个账户。客户还可以随时查询自己账户的情况,并查询以前所进行的存款、取款等交易记录。客户也有权利要求关闭账户。由上述描述可知这个简化的银行系统至少应该具有如下功能:客户可以取款客户可以存款客户可以在不同的账户之间转账客户可以查询自己账户的余额银行职员负责系统的维护附:银行系统的”存款”用例的描述。主事件流:当客户(Customer)

23、想向自己的账户中存钱时,要向银行职员(Clerk)提交存款单和现金,“存款”用例启动。( 1) 系统提示Clerk输入用户姓名、用户的id号、账号和所存款项的金额。( 2) Clerk输入相关信息后提交,系统确认账户是否存在并有效(当用户名、用户id与账户的户主信息一致,且账户处于非冻结状态时,账户有效。否则转E-1。(3)客户按照系统提示进行存款交易(交易类型,交易金额)。(4)系统建立存款事件记录,并更新账户的相关信息。(5)用例结束扩展事件流:E-1:账户不存在或无效,显示提示信息,用户可以重新输入或终止该用例。要求:用面向对象方法学对该系统进行分析与设计,分别完成以下工作:1)给出银行

24、系统的用例模型2)给出银行系统的类图3)给出存款用例的顺序图4)给出存款用例的活动图参考答案:1 .用例图2 .类与对象模型3 .“存款”用例的顺序图4 .“存款”用例的活动图6、客户开立账户序列图和协作图客户开立新账户的基本工作流程如下:(1)客户向银行职员提出开立账户要求。(2)银行职员在系统主界面请求创建账户操作,系统创建账户界面。(3)银行职员添加账户信息后,提交至账户类。(4)账户类确认数据库是否已存在该客户的账户。如不存在,则创建新客户对象。(5)然后将客户信息保存到数据库中。8、客户修改账户信息序列图和协作图客户修改账户信息的工作流程如下:(1)客户向银行职员提出修改账户信息的要

25、求。(2)银行职员在系统主界面请求查询账户操作,系统创建查询界面。(3)银行职员在查询界面提交账号,从账户类中获得指定账户的信息,同时系统创建账户界面。(4)银行职员修改账户信息后,提交给账户界面。(5)账户界面发送消息更新数据库中客户的信息,同时更新账户信息。9、银行账户状态图在银行系统中,有明确状态转换的类是账户。账户包含以下三种状态:被创建的新账户、被修改后账户、睡眠账户和被删除的账户。它们之间的转化规则是:(1)客户开立账户时,新的账户被创建。(2)客户要求变更原有账户信息时,账户内容被改变。(3)账户长期未使用,银行将其定义为睡眠账户的状态。(4) 客户注销账户,账户被删除。14、创

26、建账户活动图创建账户的活动图,需要创建二个泳道,分别是银行职员对象和系统对象,具体的活动过程描述如下:(1)系统提示输入用户的相关信息和存款金额。(2)银行职员输入相关信息后提交。(3)系统为客户创建账户,并将账户信息保存到数据库。15、客户修改账户活动图客户修改账户的活动图,我们创建了二个泳道,分别是银行职员对象和系统对象,具体的活动过程描述如下:不得用于商业用途仅供个人参考(1)系统提示输入用户的账号。(2)银行职员输入账号后提交。系统查询账户信息并显示(3)银行职员修改账户信息后提交,系统更改账户信息。11.下面是某选课系统的子功能“添加课程”用例的事件流。主事件流:(1)管理员选择进入

27、管理界面,用例开始。(2)系统提示输入管理员密码。(3)管理员输入密码。(4)系统验证密码。A1:密码错误(5)进入管理界面,系统显示目前所建立的全部课程信息。(6)管理员选择添加课程。(7)系统提示输入新课程信息。(8)管理员输入信息。(9)系统验证是否和已有课程冲突。A2:有冲突(10)系统添加新课程,提示课程添加成功。(11)系统重新进入管理主界面,显示所有课程。(12)用例结束。扩展事件流:A1:密码错误(1)系统提示再次输入。(2)用户确认。(3)三次错误,拒绝再次访问。(4)否则进入添加课程事件流第5步。A2:有冲突(1)系统提示冲突,显示冲突课程信息。(2)用户重新输入。(3)继

28、续验证直到无冲突。(4)进入添加课程事件流第10步。用面向对象的开发技术分析上述用例,回答下面的问题。(1) 给出该用例的活动图(2) 给出该系统的类图(3) 针对用例中涉及的主要类“Course(课程类)”,建立该类的状态图(4) 给出“添加课程”用例的顺序图参考答案:(1)活动图(2)类图创建课程选课人数弓好赢值选课人舸、超过最大值卜学期结束学期结束广它为每一个人提供了一系列的金融能及其复杂,这里所介绍的银行系统括以下内容:个或多个账户。(3)状态图(4)顺序图12.需求陈述:银行与我们的生活息息相关。服务。实际生活中的银行业务功只涉及银行中最基本的功能。本银行系统的功能性需求包(1)客户

29、可以在银行开立一(2)客户能够将钱款存入已经开立的账号中。不得用于商业用途不得用于商业用途( 3)客户可从自己的账户中进行提款。( 4)客户能够将账户中的存款转账至另一个账户。( 5)客户可以随时查询自己账户的情况包括以前进行的存款、取款等的交易记录。( 6)客户也有权利要求取消账户。经过分析系统拥有:银行职员用例能够通过该系统进行如下活动:( 1)登录银行系统。银行职员在登录系统时,必须通过系统的身份验证才能进入银行系统主界面进行下一步的操作。( 2)对客户的账户进行管理,包括为客户创建新的账户、修改账户信息和删除账户。客户与银行职员之间是依赖的关系,客户必须依赖于职员才能完成各种用例。银行

30、职员作为客户的代理完成与用例的交互。客户用例能完成的具体功能如下。( 1)存款。用户通过银行职员将钱款存入的自己的账户中。( 2)取款。用户通过银行职员从自己的账户中将钱款取出。( 3)转账。用户通过银行职员将一个账户中的钱款转至其他的账户。由于转账既可以在同一银行之间进行,也可以在不同的银行之间进行,因此这里用了二个用例,使用本行转账和跨行转账来描述。本行转账和跨行转账是转账的子用例,它们之间是继承的关系。13. 需求陈述:网上选课系统是一个高等院校用来进行对学生选修课程管理的管理信息系统(MIS)。该信息系统能够为学生提供方便的选课功能,也能够提高高等院校对学生和教学管理的效率。网上选课系

31、统的功能性需求包括以下内容:( 1)系统管理员负责系统的管理维护工作,维护工作包括课程的添加、删除和修改,对学生基本信息的添加、修改、查询和删除。( 2)学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行查询已选课程、指定自己的选修课程以及对自己基本信息的查询。满足上述需求的系统主要包括以下几个小的系统模块:( 1)基本业务处理模块。基本业务处理模块主要用于实现学生通过合法认证登录到该系统中进行网上课程的选择和确定。( 2)信息查询模块。信息查询模块主要用于实现学生对选课信息的查询和自身信息的查询。( 3)系统维护模块。系统维护模块主要用于实现系统管理员对系统的管理和对数据库的

32、维护,系统的管理包括学生信息、课程信息等信息的维护。数据库的维护包括数据库的备份、恢复等数据库管理操作。学生用例能够通过该系统进行如下活动:( 1)查询选课信息。学生可以在查询界面了解可供自己选择的各门课程的详细信息。( 2)登录选课系统。学生能够根据自己的学号和密码登录选课系统,如果身份验证失败,不得进行下一步操作。如果通过身份验证才能进入下一个操作界面。( 3)选择所修课程。在选择课程的界面选择自己要选修的课程并确认提交。( 4)查询个人信息。可以通过查询界面查询本人的基本信息。系统管理员用例能够通过该系统进行如下活动:(1)登录选课系统。系统管理员使用账号和登录密码登陆系统进行本系统的管

33、理和维护工作。( 2)添加学生信息。将新入校的新生的个人基本信息录入到本系统,在数据库中保存。( 3)修改学生信息。对于个人基本信息发生变化的学生,修改数据库中相关学生的个人基本信息并保存。( 4)删除学生信息。将不需要再保存的学生个人基本信息从数据库中删除。( 5)查询学生信息。根据学生的学号和姓名对在校学生的个人基本信息进行相关的查询。( 6)添加选修课程。将新的课程添加到选课系统并保存到数据库。( 7)修改选修课程。对数据库中原有的课程信息进行修改并保存到数据库中。( 8)删除选修课程。将不再开设的选修课程从数据库中删除。根据系统需求,创建静态系统类图。我们可以识别系统中存在的主要实体类

34、:系统管理员,学生,课程。界面类:Form。学生登录选课系统的用例:( 1)学生希望通过网上选课系统进行某一项操作。( 2)学生登录系统,在登录页面LoginFrame输入自己的用户名和密码并提交。( 3)系统将学生提交的用户名和密码传递到的Control类中检查用户合法身份的方法中。该方法将用户信息与数据库中的用户信息进行比较,检查用户信息中是否存在此学生的信息。( 5)检查完毕后将验证结果返回到登录界面显示。( 6)学生在登录界面获得验证结果。登录系统的顺序图和协作图如下:学生查询课程的流程:( 1)学生进入查询课程界面Form,发送查询选修课程的请求。( 2)界面Form向控制对象Con

35、trol请求课程信息,控制对象到数据库查询课程信息。( 3)选课界面对象从控制对象中取得所查询得到的课程对象信息Course。并返回到选课界面上显示所有的课程信息。( 4)学生从Form中获得课程信息。3、学生选课用例工作流程1)学生进入选择选修课程界面SelectFom,并在界面中确定选修的课程并提交请求。( 2)选修课程界面SelectFom将学生所选课程的信息传递到控制对象Control,控制对象将课程信息与数据库中的课程信息比较,判断是否可以选课。( 3)如果可以,执行选课操作,将选课结果保存到数据库中。( 4)控制对象返回选课成功信息到选课界面SelectFormo。( 5)学生从界

36、面得到选课成功的信息。4、学生查询个人信息( 1)学生进入查询个人信息界面QueryForm,并在界面中提交查询请求。( 2)界面QueryFom将学生查询的信息传递到控制对象Control。不得用于商业用途仅供个人参考( 3)控制对象从数据库中得到所查询的个人信息。( 4)控制对象Control将得到的信息返回到界面QueryForm并显示。( 5)学生从QueryForm获得自己想要的个人信息。5、系统管理员登录选课系统的工作流程( 1)系统管理员希望通过网上选课系统进行某一项操作。( 2)系统管理员登录系统,在登录页面LoginFrame输入自己的用户名和密码并提交。( 3)系统将系统管

37、理员提交的用户名和密码传递到的Control类中检查用户合法身份。将用户信息与数据库中的用户信息进行比较,检查用户信息中是否存在此管理员的信息。( 5)检查完毕后将验证结果返回到登录界面显示。( 6)系统管理员在登录界面获得验证结果。如果身份验证未通过,重新登录或退出。否则,继续选择下一步的操作。6、系统管理员添加选修课程作流程( 1)系统管理员进入添加课程界面AddForm,并在界面中提交添加课程的信息。( 2)界面AddForm将管理员提交的课程信息传递给控制对象Control.( 3)控制对象向数据库查询课程相关信息并对查询结果进行判断。( 4)控制对象Control.向数据库中插入新选

38、修课程的数据。( 5)控制对象将添加课程成功的信息返回界面AddForm。( 6)系统管理员在界面AddForm获得添加课程成功的信息。7、系统管理员修改选修课程工作流程( 1)系统管理员进入添加课程界面ModifyForm,并在界面中提交修改课程的信息。( 2)界面ModifyForm将管理员提交的课程信息传递给控制对象Control( 3)控制对象向数据库查询课程相关信息并对查询结果进行判断。( 4)控制对象Control.向数据库中插入修改后课程的数据。( 5)控制对象将修改课程成功的信息返回界面AddForm。( 6)系统管理员在界面AddForm获得修改课程成功的信息。8、系统管理员

39、删除选修课程工作流程( 1)系统管理员进入删除课程界面DeleteForm,并在界面中提交删除课程的信息。( 2)界面DeleteForm将管理员提交的课程信息传递给控制对象Control( 3)控制对象向数据库查询课程相关信息并对查询结果进行判断。( 4)控制对象Control向数据库中执行删除课程的数据。( 5)控制对象将修改课程成功的信息返回界面DeleteForm。( 6)系统管理员在界面DeleteForm获得修改课程成功的信息。( 1)系统管理员进入查询信息界面QueryForm,并在界面中提交查询请求。( 2)界面QueryFom将查询的信息传递到控制对象Control。( 3)

40、控制对象从数据库中得到所查询的学生信息。( 4)控制对象Control将得到的信息返回到界面QueryForm并显示。( 5)系统管理员从QueryForm界面获得查询学生的信息。10、系统管理员添加学生信息工作流程( 1)系统管理员进入添加学生信息界面AddInfoForm,并在界面中提交查询学生的信息。( 2)界面AddInfoForm将查询的信息传递到控制对象Control。( 3)控制对象到数据库中查询的该学生信息对象是否已存在并判断是否可以添加。( 4)控制对象Control将新学生的信息添加到数据库并保存。( 4)控制对象将添加成功信息返回到界面AddInfoForm并显示。( 5

41、)系统管理员从AddInfoForm界面获得添加成功的信息。11、系统管理员修改学生信息工作流程( 1)系统管理员进入修改学生信息界面ModifyInfoForm,并在界面中提交修改学生的信息。( 2)界面ModifyInfoForm将查询的信息传递到控制对象Control。( 3)控制对象到数据库中查询的该学生信息对象是否并判断是否可以修改。( 4)控制对象Control将该学生的信息进行修改并保存。( 4)控制对象将修改成功的信息返回到界面ModifyInfoForm并显示。( 5)系统管理员从ModifyInfoForm界面获得修改成功的信息。12、系统管理员删除学生信息的工作流程( 1

42、)系统管理员进入删除学生信息界面DeleteInfoForm,并在界面中提交删除学生的信息。( 2)界面DeleteInfoForm将查询的信息传递到控制对象Control。( 3)控制对象到数据库中查询的该学生信息对象是否并判断是否可以删除。( 4)控制对象Control将该学生的信息进行删除。( 4)控制对象将删除成功的信息返回到界面DeleteInfoForm并显示。( 5)系统管理员从DeleteInfoForm界面获得删除成功的信息。13、课程的状态图课程包含以下三种状态:被添加的课程、被修改课程、被删除的课程。它们之间的转化规则是:( 1)系统管理员添加新的选修课程,能够被学生来选

43、择。( 2)当原有的课程需要做修改时,由系统管理员负责修改课程的内容。( 3)当原有的课程不再开课时,由系统管理员将该课程进行删除。14 、学生对象的活动图不得用于商业用途仅供个人参考1)学生在查询课程的界面输入课程的信息。( 2)界面将信息传递到控制业务逻辑的对象Control进行对课程的验证,然后到数据库中去查询所查询的课程。( 3)Control获得课程信息后通过界面显示课程详细信息。15、学生选课活动图1)学生在选择课程的界面输入选择的课程的信息。( 2)界面将信息传递到控制业务逻辑的对象Control进行对课程的验证,到数据库中去查询该课程是否已存在。( 3)Control根据查询结

44、果判断课程是存在。如果不存在,将提示信息返回选择课程的界面予以显示。如果合法则将选择课程的信息添加到数据库保存。( 4)业务逻辑的对象Control根据返回的选课结果,判断选课是否成功。如成功在选课界面显示选课成功的信息。如果未成功,则显示选课失败的信息。17、系统管理员添加选修课程活动图( 1)系统管理员在添加课程的界面输入要添加的课程的信息。( 2)界面将信息传递到控制业务逻辑的对象Control进行对课程的验证,到数据库中去查询该课程是否已存在。( 3)Control根据查询结果判断添加课程是否存在。如果不存在,将提示信息返回添加课程的界面予以显示。如果存在就将课程信息添加到数据库保存。

45、( 4)业务逻辑的对象Control根据返回的添加结果,判断添加课程是否成功。如成功在添加课程的界面显示添加成功的信息。如果未成功,则显示添加失败的信息。18、系统管理员修改课程活动图( 1)系统管理员在修改课程的界面输入要修改的课程信息。( 2)界面将信息传递到控制业务逻辑的对象Control进行对课程的验证,到数据库中去查询该课程是否已存在。( 3)Control根据查询结果判断修改课程是否存在。如果不存在,将提示信息返回修改课程的界面予以显示。如果存在,则将原课程信息予以修改并保存。( 4)业务逻辑的对象Control根据返回的修改结果,判断修改课程是否成功。如成功,在修改课程的界面显示

46、修改成功的信息。如果未成功,则显示修改失败的信息。18、系统管理员修改课程活动图( 1)系统管理员在修改课程的界面输入要修改的课程信息。( 2)界面将信息传递到控制业务逻辑的对象Control进行对课程的验证,到数据库中去查询该课程是否已存在。( 3)Control根据查询结果判断修改课程是否存在。如果不存在,将提示信息返回修改课程的界面予以显示。如果存在,则将原课程信息予以修改并保存。( 4)业务逻辑的对象Control根据返回的修改结果,判断修改课程是否成功。如成功,在修改课程的界面显示修改成功的信息。如果未成功,则显示修改失败的信息。19用面向对象方法设计网上购书系统的软件结构,网上购书

47、系统的业务如下:不得用于商业用途仅供个人参考某书店为了方便客户通过internet购买相关图书,开发一个“网上书店系统”,客户可通过web页面注册并登陆“网上购书系统”,通过web页面查看、选择图书,系统根据用户选择的图书单价、数量,自动生成订单并计算总价格。客户在提交订单之前,必须填写关于寄送地址和发票及付款方式等细节,一旦订单被提交,系统显示确认信息,并附上订单的详细信息。客户可在线查询订单的状态。系统管理员查看客户的订单,验证客户的信用和付款方式,向仓库请求所购图书,打印发票并发货。第三大类:算法描述:1 .给出一组数从小到大的排序算法,分别用下列工具描述其详细过程:(1) 流程图;(2

48、)NS图;(3)PAD图;(4)PDL语言MY图PAD图不得用于商业用途仅供个人参考不得用于商业用途2.下面是程序流程图,试分别用N-S图和伪代码(类C语言描述)表示。3.阅读下面算法的PDlSTARTIF(p)THENWHILE(q)fELSEgn-s盒图。(共20分,每题10分)nSTOP参考答案:1.n-s盒图(10分,能正确n-s描述的循环和分支的10分,否则酌情给分)2.程序流程图(10分,能正确给出循环和两个分支的10分,否则酌情给分)第四大类:测试试舸1.阅读下面C吾事8数;/求取数组arr中的最傩据q并返回该元素在数组中的位置intgetMax(intn,iqtarr)nfin

49、tk=0;for(inti=1;i<n;'iif(arri>arrk)k=i;returnk;要求:请用基本路径的测试技术完成该函数的测试。(1)给出程序的有向流图,并算该函数的环形复杂度。(2)给出基本路径集和测试用例。参考答案:1).控制流图如下,McCabe环路复杂性为3。(2)1.基本路径:(少一个最多3分)?Path1一一ath2:一一一一一一?Path3:一一一一一一2.测试用例:(少一个最多3分)?Path1取n=1,a0=1,?期结果:k=0?Path2取n=2,a0=3,a1=1,?期结果:k=0?Path3:取n=3,a0=0,a1=1,a2=5?期结果

50、:k=22.阅读下面的程序流程图,回答后面的问题:1)画出上述程序的有向流图,并计算该函数的环形复杂度。2)给出基本路径集。仅供个人参考参考答案:(1)如下图所示。程序复杂度为4(2)基本路径1:1-11基本路径2:1-2,3-4,5-10-1-11基本路径3:1-2,3-6-7-9-10-1-11基本路径4:1-2,3-6-8-9-10-1-113 .阅读下面用伪代码编写的程序段,回答后面的问题:?startinput(a,b,c,d)if(a>0)&&(b>0)x=a+belsex=abendifif(c>a)|(d<b)y=c+delsey=c-d

51、endifprint(x,y)stop(1)画出上述程序的有向流图,并计算该函数的环形复杂度。(2)请用基本路径的测试技术完成该函数的测试。要求给出基本路径和测试用例4 .基本路径的测试1.阅读下面的程序段,回答后面的问题。intisLeap(intyear) if(year%4=0) If(year%100=0) if(year%400=0) leap=1;else leap=0;else leap=1;else leap=0; returnleap;说明:写在程序段某些行开头的数字()是对相应的语句的编号。问题:(1)画出程序的控制流图(用题中给出的语句编号表示)(2)计算上述程序段的环形

52、复杂度(3)导出基本路径集,列出程序的独立路径(用题中给出的语句编号表示)测试用例的输入数据和预期输出(4)假设输入的取值范围是1000<year<2001,请根据(3)中的独立路径,设计参考答案:(1)有向流图(2)程序复杂度V=4(3)独立路径a. 1-2-3-4-6b. 1-2-3-5-6c. 1-2-4-6d. 1-5-6(4)测试数据a. year=2000结果:是闰年b. year=1996结果:不是闰年c. year=1900结果:不是闰年d. year=1997不得用于商业用途不得用于商业用途仅供个人参考结果:不是闰年2.有下面的c语言函数。voidsort(intiRecordNum,intiType)intx

温馨提示

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

评论

0/150

提交评论