软件工程导论试题集.docx
《软件工程导论试题集.docx》由会员分享,可在线阅读,更多相关《软件工程导论试题集.docx(73页珍藏版)》请在冰豆网上搜索。
软件工程导论试题集
1.航空公司“机票预定系统”:
航空公司为给旅客乘机提供方便,需要开发一个机票预定系统。
各个旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统根据旅客信息和航班信息为旅客安排航班。
当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。
请用结构化分析方法,给出系统的功能模型(DFD描述)。
参考答案:
(0层,1层DFD)
2.一个简化的机票销售系统需求描述如下:
售票员根据旅客需要的航班,首先查询有无该航班机票。
若有,则负责录入旅客的基本信息,并将指定的机票标志设置为售出;售票部经理可随时查询每一个航班的售票情况,并在当日结算时能计算出日营业额。
请画出该系统的0层DFD图和1层DFD图(注:
1层分解为查询和录入、统计和计算两个处理)。
3.图书馆的预定图书子系统有如下功能:
(1)由供书部门提供书目给订购组
(2)订书组从各单位取得要订的书目
(3)根据供书目录和订书书目产生订书文档留档
(4)将订书信息(包括书目、数量)反馈给供书单位
(5)将未订书目通知订书者
(6)对于重复订购的书目有系统自动检查,并将结果反馈给订书者
画出数据流图,并转换为软件结构图。
4.某单位要研制一个计算机培训管理系统,它的业务是将学员发来的信件收集分类后,按以下几种情况处理:
1)处理报名
如果是报名,则将报名数据送给负责报名事物的职员,他们将查阅课程文件,检查课程是否满额,然后在学生文件、课程文件上登记,并开出报告单较财务部们,财务人员开出发票给学生。
2)注销课程;
如果是想要注销原来已选修的课程,则有注销人员在课程文件、学生文件和账目文件上做相应的修改,并给学生注销单。
3)处理付款
如果是付款,则有财务人员在账目文件上登记,也给学生一张收费收据。
要求:
给出该系统的数据流图和软件结构图。
参考答案:
(1)数据流图
(2)结构图
5.假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。
对于每个需要再次定货的零件应该列出下述数据;零件编号、零件名称、定货数量、目前价格、主要供应者和次要供应者。
零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。
当某种零件的库存数量少于库存量临界值时就应该再次定货。
要求:
用结构化方法学对定货系统进行分析与设计,分别完成以下工作:
(1)给出定货系统的功能模型。
(2)用数据字典描述该定货系统中主要加工“处理定货”和主要数据存储“定货报表”。
(3)给出定货系统的软件体系结构(用H图或结构图表示)。
参考答案:
(1)
(2)
(3)
6.高考录取统分子系统有如下功能:
(1)计算标准分:
根据考生原始分计算,得到标准分,存入考生分数文件;
(2)计算录取线分:
根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
要求:
用结构化方法学对高考录取统分子系统进行分析与设计,分别完成以下工作:
(1)给出高考录取统分子系统的功能模型(用数据流图表示)。
(2)给出高考录取统分子系统的软件体系结构(用H图或结构图表示)。
参考答案:
(1)数据流图
(2)结构图
7.需求描述如下:
参考答案:
8.
参考答案:
(1)数据流图
(2)结构图
9.
10.某运动会概括力相同接受来自运动员的包名单、裁判的比赛项目及项目成绩,产生运动员号码单发送给运动员,项目参加者发送给裁判,单项名次发送给发布会。
该系统的功能如下:
(1)登记报名单
接受报名单、比赛项目,产生运动员号码单、项目参加者,形成运动员名单及团体成绩表两种数据存储。
(2)统计成绩
接受项目成绩,查询运动员名单,产生单项名次,填写团体成绩,最后产生团体名次。
11.现开发一个银行的活期存取款业务的处理系统,系统功能如下:
(1)审查分类:
系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理。
(2)处理存款:
系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户。
(3)处理取款:
系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。
绘制该系统的数据流图和软件结构图。
参考答案:
(1)数据流图
顶层
一层
(2)系统结构图如下:
12.银行储蓄系统的业务流程:
Ø储户填写的存款单或取款单由业务员键入系统;
Ø如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率、密码(可选)等信息,并印出存单给储户;
Ø如果是取款而且开户时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。
Ø要求画出分层的数据流图,并细化到2层数据流图。
参考答案:
0层:
1层:
2层:
13.目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还会延误抢救时机。
某医院打算开发一个以计算机为中心的患者监护系统,请分层次地画出描述本系统功能的数据流图。
(1)局部监视
在医院的病房里,将病症监视器安置在每个病床,对病人进行监护。
监视器将病人的病症信号(血压、体温、脉搏等组合)实时地传送到中央监护系统进行分析处理。
(2)中央监视
在中心值班室里,值班护士使用中央监护系统对病员的情况进行监控,监护系统实时地将病人的病症信号与标准的病诊信号进行比较分析,根据标准病症信号库中的值,判断是否报警;
(3)更新日志
中央监视系统根据分析数据将病人的病症信号进行格式化并加入更新日期、时间,更新病历库中病人的信息,并写入病员日志文件中。
(4)产生报告
根据医生的要求随时打印病人的病情报告,系统还定期自动更新病历。
参考答案:
14.需求陈述:
现有某库存管理系统,其主要功能如下:
1.建立物资采购单流水账
根据计划部门转来的收货通知单和已存的物资编码文件,建立物资采购单流水账。
2.更新物资台账
根据技术部门的物资验收报告和物资采购单流水账,更新物资台账文件。
3.汇总物资台账
对物资台账分类汇总,将结果存储于物资总账文件。
要求:
用结构化方法学对库存管理系统进行分析与设计,分别完成以下工作:
Ø给出库存管理系统的功能模型(用数据流图表示)。
(10分)
Ø给出库存管理系统的体系结构(用H图或结构图表示)。
(10分)
参考答案:
1.数据流图(15分)(评分标准:
基本给出两个数据源、三个功能模块和四个文件12分,少一个扣2分)
2.结构图(15分)(评分标准:
基本给三个功能模块和主框架的15分,少一个扣3分)
15.需求陈述:
某大学教学管理系统子系统的功能说明如下:
首先接受学生提交的学生证和申请单,根据学生档案文件检验学生证的有效性和申请单是否填写的正确,如果有误则拒绝,如果无误根据学生的注册表文件审查接受学生的申请单。
如果是申请注册,则进行注册登记,并将注册信息写入注册表文件。
如果是申请选课,则根据课程档案文件检索课程是否有满足申请要求,如果有则进行选课登记,如果没有则通知学生无此课。
要求:
用结构化方法学对教学管理系统子系统进行分析与设计,分别完成以下工作:
1)给出教学管理系统子系统的功能模型(用DFD-数据流图表示)。
(10分)
2)给出教学管理系统子系统的体系结构(用H图或结构图表示)。
(10分)
参考答案:
1.功能模型
2.结构图
面向对象开发技术
1.根据以下描述,使用面向对象的分析方法,分析有那些主要对象和这些对象的主要属性、方法,画出对象图。
一个饮料自动售货机可以放置五种不同或部分相同的饮料,可由厂商根据销售状况自动调配,并可随时重新设置售价,但售货机最多仅能放置50罐饮料,其按钮设计在各种饮料样本的下方,若经金额计算器累计金额足够,则选择键灯会亮;若某一种饮料已销售完毕,则售完灯会亮。
顾客将硬币投入售货机,经累加金额足额的饮料选择键灯亮,等顾客按键选择。
顾客按键后饮料由出物口掉出,并自动结算及找钱。
顾客可在按下选择键前任何一个时刻,可以拉动退币杆取消交易收回硬币。
参考答案:
类图
2.设计一个简单的学生选课系统,系统能注册符合要求的同学,同学注册以后就能进行选课。
选课过程如下:
先选课名,然后根据课程的上课老师、时间、地点和人数限制来决定是否成功选课;老师也可以根据情况提供新的课程说明或修改过去课程的说明;教务处的老师统一管理注册的情况,可以有删除、修改学生、老师和课程的权限。
请用面向对象方法设计出对象模型(对象类图,标出多重性、角色、限定词和关系:
泛化、聚集、关联)、动态模型(学生成功注册后选课的顺序图)、功能模型(用例图)三大模型。
参考答案:
(1)类图
(2)用例图:
(3)顺序图
3.请画出一个用户使用银行ATM的状态转换图。
从用户将卡插入卡槽开始,到用户取卡结束(如果用户忘记,ATM应报警),用户可以完成以下几个步骤:
登录(卡片进入ATM机后,如果不是可读卡,退卡;如是,等待用户输入密码,三次错,吞卡,正确后进入主菜单),取钱(进入取钱菜单,输入金额,如果帐户余额不足,提示余额,并要求用户重新输入,如果帐上钱够,吐钱币,并询问是否打印凭证,最后返回主菜单),主菜单提供退出取卡选择。
5.用例UC1:
预定航班
………
主事件流(主成功场景):
1.顾客向系统提交航班预订信息(出发地、目的地、出发日期和人数)
2.系统检索满足这些条件的航班
3.系统显示满足条件的航班信息
4.顾客选择所要的航班
5.系统检索该航班剩余的座位信息
6.系统显示可预订的座位信息
7.顾客选择所要的座位
8.系统生成一个临时预订记录
9.系统将顾客选择的座位状态从“未预订”修改为“已预订”
…………
备选事件流(扩展场景):
1a.顾客撤销购票请求,退出用例
2a.系统检索不到满足条件的航班
3a.系统向用户显示没有满足条件的航班
3b.系统建议顾客返回步骤1
4a.顾客撤销购票请求,退出用例
问题:
(1)系统分析员认为与该用例相关的类至少有Reservation(预定)、Seat(座位)和Flight(航班),请补充必要的类,建立对应于该用例的主成功场景的顺序图。
(2)请为对象Flight对象建立状态图。
用例“预订航班”的顺序图:
类图:
用例“预订航班”的活动图:
航班状态图:
6.需求陈述:
下面是-大学教学管理系统的子系统的简单说明:
首先接受学生提交的学生证和申请单,根据学生档案情况检验学生证的有效性和申请单是否填写的正确,如果有误则拒绝,如果无误则根据学生的注册情况审查接收学生的申请要求。
如果是申请注册,则进行注册登记;如果是申请选课,则先查询课程档案是否有满足申请要求的课程,如果有则进行选课登记,如果没有则通知学生无此课。
要求:
用面向对象方法学对该系统进行分析与设计,分别完成以下工作:
(1)给出教学管理系统的用例模型,并对主要用例进行简单说明。
(10分)
(2)给出教学管