一、单选题
1.系统交付用户使用后,为了改进系统的图形输出而对系统进行修改的维护行为属于()维护。
A.改正性 B.适应性 C.改善性 D.预防性
答案C
解析:正确性维护:改正没有发现的错误
适应性维护:技术,需求发生了变化而引起的维护
完善性维护:扩展功能和完善性能
预防性维护:提高可靠性和可维护性
选自中级软件设计师考试2017年试题
2.测试网络连通性通常采用的命令是( ) 。
A. Nestar B. Ping C. Mscinfug D. Cmd
答案B
解析:ping命令还有trace命令是用来测试网络连通性的。
3.软件设计中划分模块的一个准则是(C)。
A、 低内聚低耦合 B、 低内聚高耦合 C、 高内聚低耦合 D、 高内聚高耦合
解析:软件设计中划分模块的一个准则是高内聚低耦合。内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系;耦合是软件结构中各模块之间相互连接的一种度量,耦合强弱取决于模块间接口的复杂程度、进入或访问一个模块的点以及通过接口的数据。
4.在设计测试用例时,(A)是用得最多的一种黑盒测试方法。
A.等价类划分 B.边界值分析
C.因果图 D.判定表
解析:等价类划分是一种典型的黑盒测试方法。等价类划分是指分步骤把海量的测试用例集减得很小但过程同样有效。也就是说,选取足够小测试用例,发现更多软件缺陷
5.结构化分析方法以数据流图、__D__和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。
A.DFD图 B.PAD图 C.IPO图 D.数据字典
6.软件特性中,( A )是指系统具有清晰的结构,能直接反映问题的需求的程度。
A.可理解性 B.可靠性 C.可适应性 D.可重用性
7.以下说法错误的是()
A.面向对象分析与面向对象设计的定义没有明显区别
B.从面向对象分析到面向对象设计,是一个逐渐扩充模型的过程
C.在实际的软件开发过程中,面向对象分析与面向对象设计的界限是模糊的
D.面向对象分析和面向对象设计活动是一个多次反复迭代的过程
答案:A。本题考查面向对象分析和面向对象设计的区别
面向对象分析的关键是识别问题域内的对象及其关系。分析的任务基本完成后,下一步则是将分析的成果用于设计中。就是根据成本与要求,规划出系统应如何实现的问题。所以A中“分析与设计的定义没有明显区别”的说法是不正确的
8.软件设计中,用抽象和分解的目的是(B)
A.提高易读性 B.降低复杂性 C.增加内聚性 D.降低耦合性
9.瀑布模型的存在问题是(B)
A.用户容易参与开发 B.缺乏灵活性
C.用户与开发者易沟通 D.适用可变需求
解析:考察对瀑布模型的理解,瀑布模型各个阶段的划分完全固定、模型是线性的,用户只有等到整个过程的末期才能见到开发成果,不适应需求的变化,缺乏灵活性。
10. 基本的软件过程包括需求分析、概要设计、详细设计、编码、测试、运行和维护等几个阶段。 其中,(C) 阶段对每个模块要完成的工作进行具体描述,为源程序编写打下基础。
二、名词解释
1、重构
答:通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性
2、多态
答:在面向对象语言中,接口的多种不同的实现方式即为多态
3、模块化
答:是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部特性
4、结构冲突
答:输入数据与输出数据结构找不到对应关系的情况,称为结构冲突
三.简答题
1.网上选课系统的功能需求包括以下内容
系统管理员负责系统的管理维护工作,维护工作包括对课程信息和学生信息进行管理,包括对课程的添加、删除和修改,以及对学生基本信息的添加、修改、查询和删除,其中查询又分为精准查询和模糊查询,并且系统管理员登录后才能对信息进行维护,忘记密码可以通过忘记密码这个功能找回。学生通过输入自己的学号和密码进入选课界面,在这里学生可以进行查询已选课程、选择课程以及对自己的基本信息进行查询。要求画出系统管理员和学生的用例图
2.(中国海洋大学,06-07,软件工程期末)培训中心要研制一个计算机管理系统,它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理,
(1)如果是报名的,则把报名数据送给负责报名事务的职员,他们将查询课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单给财务部门,财务人员开发票给学员。
(2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
(3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:(1)对以上问题画出数据流程图
(2)画出该培训管理的软件结构图的主图。