7某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工;年龄在20岁至35岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员;年龄在35岁以上者,中学文化程度当材料员,大学文化程度当技术员。请根据以上材料分别采用伪码和判定树两种方式描述之。 伪码表示:
IF 年龄<20 THEN IF 文化程度=初中 THEN 脱产学习 ELSE 工作为电工 ENDIF ELSE IF 年龄≤35 THEN IF 文化程度=大学 THEN 工作为技术员 ELSE IF 性别=男性 THEN 工作为钳工 ELSE 工作为车工 ENDIF ENDIF ENDIF ELSE IF 文化程度=大学 THEN 工作为技术员 ELSE 工作为材料员 ENDIF ENDIF
精选
判定树表示:
8阅读下列说明,回答问题。
说明:某图书管理系统的主要功能如下:
1.图书管理系统的资源目录中记录着所有可供读者借阅的资源,每项资源都有一个唯一的索引号。系统需登记每项资源的名称、出版时间和资源状态(可借阅或已借出)。
2.资源分两类:图书和唱片。对于图书,系统还需登记作者和页数;对于唱片,还需登记演唱者和介质类型(CD或磁带)。
3.读者信息保存在该系统的读者信息数据库中,记录的信息包括:读者的识别码和姓名。系统为每个读者创建了一个借书记录文件,用来保存读者所借资源的相关信息。 现采用面向对象方法开发该系统。系统的所用名词如下表所示: 图书管理系统 索引号 资源状态 页数 磁带 姓名 资源目录 系统 图书 演唱者 读者信息 借书记录文件 读者 名称 唱片 介质类型 读者信息数据库 信息 资源 出版时间 作者 CD 识别码 建立如下类图,回答问题。
图书管理系统a读者信息数据库(1)(2)资源条目(3)读者bc(4)借书记录文件
(1) 请从名词表中挑选名词为a、b、c三个类替换类名。
a 资源目录 b 图书 c 唱片
(2) 资源条目和b、c三个类都有各自的属性,请分别写出它们的属性名。
资源条目属性:索引号、名称、出版时间、资源状态 图书属性:作者、页数
精选
唱片属性:演唱者、介质类型
(3) 识别关系多重度,完成(1)(2)(3)(4)。 (1)1 (2)0··n或0··* (3) 0··n或0··* (4)1 9比较下列两段语句,从编码风格的角度分析其优、劣。 程序段一:
/ position_x is the position x of object; position_y is the position y of object; / if a>b then a=b else if position_x>position_y then b=position_y else a=position_x end if end if 程序段二: if a>b then if x>y then b=y else a=x end if else a=b end if
程序段一比程序段二好(1)开头给出了序言性注视(2)使用了缩进使程序结构更清晰(3)变量名定义更清楚
10某个用户输入设定有如下规则:只能输入‘#’或三位数字;假定设计的程序可接受所有符合规定的密码,请使用等价类划分法为其设计测试用例,并给出预期结果是有效还是无效。 划分等价类 有效等价类 1.#; 2.三位数; 无效等价类 1. 有非数字字符;2.少于三位数字; 3.多于三位数字。 设计测试方案
有效等价类 测试用例1:# 有效 测试用例2:123 有效 无效等价类 测试用例3:A12 无效 测试用例4:12 无效 测试用例5:1234 无效
11欲开发一个银行的活期存取款业务的处理系统:储户将填好的存/取款单和存折交给银行工作人员,然后由系统作以下处理;
(1)业务分类处理:系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理;
(2)存款处理:系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户;
精选
(3)取款处理:系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。
该系统的总体图如下图所示,请画出该系统的零级图。
五.综合题
1. 假设你需要划出一个小组专门开发一个组件,该组件的乐观尺寸Sopt为7000LOC,最有可能尺寸Sm为9000LOC,保守尺寸Spress为14000LOC;这种组件的平均生产率为500LOC/月,平均开发成本为每月6000元。请根据以上给出的条件计算该组件的开发成本以及该小组的工作量,要求给出计算步骤。 首先计算该组件的LOC估计值
EV=(Sopt+4Sm+Spress)/6=(7000+4*9000+14000)/6=9500行 该组件的每行近似成本为6000/500=12元 组件的开发成本为12*9500=114000元 则所需工作量为9500/500=16人-月 2. 假设你是一个公司的项目经理,将要接手一个软件项目,开发一个电子商务网站,你的团队有60人左右,且拥有丰富的架站经验,对于该项目所要使用的J2EE平台十分熟悉,并且在以往的开发过程中积累了大量可复用的构件。不过客户要求的时间非常急,只有3个月。试根据材料回答如下问题: (1)作为项目经理,你将采用何种过程模型进行开发?为什么?
采用RAD模型开发。原因:团队人力资源充足,技术经验丰富,又有类似的开发经历并拥有可复用构件,在客户要求开发速度的情况下RAD模型是非常好的选择。
(2)假设项目实际进行时的进度情况与计划情况不一致,有可能造成无法按期完工的情况,作为项目经理,你该如何应对?
答:A项目持续时间压缩法,如赶工或并行实施;B资源分配平衡技术,如把稀缺的资源先分配给关键路径上的任务;C时差法,如将紧缺资源从时差较长的任务调整到关键任务上;D时间-成本平衡法,通过增加最低相关成本来缩短工期。
3. 假设您刚刚升任一家软件公司的项目经理,将率领一个40人的团队,用ASP.NET开发一个在线购物系统。该系统应用前景良好。不过您所在的公司之前一直使用J2EE平台开发,对微软的.NET不够熟悉,好在客户要求的时间不是很紧,有12个月的时间可用于开发。请根据以上材料回答如下问题: (1)您打算采用何种软件过程模型来组织开发?为什么?
RUP模型或增量模型、螺旋模型等。原因:项目规模较大,需要多人协作开发;需求不清楚,缺乏相关领域的经验;技术基础薄弱,缺乏准备;使用此类演进模型,可以再开发过程中与用户很好地交互,减少开发风险。可在早期迭代中构造原型产品,尽快熟悉业务需求;在后面的迭代中,完善构架,逐步开发出符合用户需求的产品。
(2)作为项目经理,请你分析该项目可能存在的风险有哪些?
刚刚当上项目经理,缺乏管理经验;项目规模大,需要足够的人力支持;缺乏领域经验,用户需求还不够清楚;技术经验缺乏等。
以图书管理系统为例
1.需求分析阶段有哪些任务要完成?文档内容有哪些
精选
答:一、 确定对系统的综合要求
1. 功能需求:这方面的需求指定系统必须提供的服务。通过需求分析应该划分出系统必须完成的所有功能。
2. 性能需求:性能需求指定系统必须满足的定时约束或容量约束,通常包括速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等方面的需求。
3. 可靠性和可用性需求:可靠性需求定量地指定系统的可靠性。可用性与可靠性密切相关,它量化了用户可以使用系统的程度。
4. 出错处理需求:这类需求说明系统对环境错误应该怎样响应。例如,如果它接收到从另一个系统发来的违反协议格式的消息,应该做什么?注意,上述这类错误并不是由该应用系统本身造成的。
5. 接口需求:接口需求描述应用系统与它的环境通信的格式。常见的接口需求有:用户接口需求;硬件接口需求;软件接口需求;通信接口需求。
6. 约束:设计约束或实现约束描述在设计或实现应用系统时应遵守的限制条件。在需求分析阶段提出这类需求,并不是要取代设计(或实现)过程,只是说明用户或环境强加给项目的限制条件。常见的约束有:精度;工具和语言约束;设计约束;应该使用的标准;应该使用的硬件平台。
7. 逆向需求:逆向需求说明软件系统不应该做什么。理论上有无限多个逆向需求,我们应该仅选取能澄清真实需求且可消除可能发生的误解的那些逆向需求。
8. 将来可能提出的要求:应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求。注意:举例让学生理解:这样做的目的是,在设计过程中对系统将来可能的扩充和修改预做准备,以便一旦确实需要时能比较容易地进行这种扩充和修改。 二 、分析系统的数据要求
任何一个软件系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远影响,因此,必须分析系统的数据要求,这是软件需求分析的一个重要任务。
分析系统的数据要求通常采用建立数据模型的方法(举例)。 三、 导出系统的逻辑模型
综合上述两项分析的结果可以导出系统的详细的逻辑模型,通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型。 四、 修正系统开发计划
根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统的成本和进度,修正以前制定的开发计划。
2.类之间有哪些关系?
答:类与类之间有继承与被继承、父类与子类这样的关系 3.详细设计阶段任务有哪些?文档内容有哪些
答:详细设计包括业务对象设计、功能逻辑设计、数据库设计和界面设计等工作。详细设计是系统实现的依据,需要考虑所有的设计细节。一、可行性分析二、数据流程图三、数据库设计四、总体结构和模块设计五、功能分配六、程序模块示意图七、维护设计 4.概要设计文档的内容有哪些
一、引言:1. 编写目的 2. 项目背景 3. 参考资料
二、需求概述:4. 目标 5.运行环境 6. 功能需求 7. 性能需求
精选
软件工程复习题及答案(完整)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)