软件工程期终试题B

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第页(共5页)(软件工程B卷)12006学年第二学期期终考试《软件工程》课程试卷B班级:姓名:学号:成绩:一、多项选择题(每小题2分,共24分)1、画分层DFD图的基本原则有(ACD)。A、数据守恒原则B、分解的可靠性原则C、子、父图平衡的原则D、数据流封闭的原则2、提高程序效率的根本途径在于(BC)。A、编程时对程序语句进行调整B、选择良好的设计方法C、使程序最大限度的简洁D、选择良好的数据结构与算法3、软件工程管理的对象是(B)。A、软件开发人员B、软件工程项目C、软件开发过程D、软件开发速度4、软件测试的主要特点是(AC)。A、软件测试的开销大B、软件测试要依靠工具C、软件不能进行“穷举”测试D、软件测试要依靠人工5、以下属于完善性维护的有(BD)。A、解决开发是未能测试各种可能条件带来的问题B、增加联机求助命令C、缩短系统的应答时间,使其达到特定要求D、为软件的运行增加监控设施6、CMM表示(A)。A、软件过程成熟度模型B、软件过程工业化控制C、国际软件质量认证D、软件统一性标准7、UML语言支持的建模方式有(ABD)。A、静态建模B、动态建模C、模块化建模D、功能建模8、在E-R模型中,包含以下基本成分(C)。A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、联系第页(共5页)(软件工程B卷)29、画DFD图的主要目的是(AD)。A、作为需求分析阶段用户与开发者之间交流信息的工具B、对系统的数据结构进行描述C、对目标系统的层次结构进行描述D、作为分析和设计的工具10、自底向上的成本估算法的特点是(B)。A、简单、工作量小、误差大B、精度高,但缺少子任务(模块)间的联系C、估算较精确,但区分类比较困难D、复杂、不可行,一般不采用此种方法11、以下属于完善性维护的有(BD)。A、解决开发时未能测试各种可能条件带来的问题;B、增加联机求助命令;C、缩短系统的应答时间,使其达到特定要求;D、为软件的运行增加监控设施。12、为使程序中数据说明更易于理解和维护,必须遵循以下原则(ABC)。A、数据说明的次序应当规范化;B、一个语句说明多个变量时,各变量名按字母顺序排列;C、对于复杂的数据结构,要加注释,说明在程序实现时的特点;D、定义变量名应按字母顺序排列。二、简答题(每小题10分,共30分)1、什么是需求分析?需求分析阶段的基本任务是什么?2、等价分类法的基本思想是什么?3、为什么面向对象的开发方法为软件IC(软件集成)及软件重用技术提供了良好的环境?三、问题描述为:储户用存折取款,首先填写取款单,根据“帐卡”中的信息检验取款单与存折,如有问题,将问题反馈给储户,否则,登录“储户存款数据库”,修改相应数据,并更新“帐卡”,同时发出付款通知,出纳向储户付款。请确定系统的类,并给出你认为最重要的2-3个类的描述模板。(20分)四、现在有一个医院病房监护系统,用户提出的系统功能要求如下:在医院病房监护系统中,病症监视器安置在每个病房,将病人的病症信号实时传送到中第页(共5页)(软件工程B卷)3央监视系统进行分析处理。在中心值班室里,值班护士使用中央监视系统对病员的情况进行监控,根据医生的要求随时打印病人的病情报告,系统会定期自动更新病历。当病症出现异常时,系统会立即自动报警,通知值班医生及时进行处理,同时立即打印病人的病情报告和更新病历。(共26分)1、分别画出采用结构化分析方法和UML建模语言建立的需求分析模型(只画顶层)。2、以医院病房监护系统为例,分析比较结构化开发方法与面向对象的开发方法的主要特点,结合该实例说明:为什么面向对象的开发方法更加优越。参考答案二、简答题(每小题10分,共30分)1、什么是需求分析?需求分析阶段的基本任务是什么?答:需求分析是当前软件工程中的关键问题,需求分析阶段的任务是:在可行性分析的基础上,进一步了解、确定用户需求。准确地回答“系统必须做什么?”的问题。获得需求规格说明书。还涉及到软件系统的目标、软件系统提供的服务、软件系统的约束和软件系统运行的环境。它还涉及到这些因素和系统的精确规格说明,以及系统进化之间的关系。需求分析的基本任务包括:(1)抽取需求分析现行系统存在需要解决的问题。获取足够多的问题领域的知识,需求抽取的方法一般有问卷法、面谈法、数据采集法、用例法、情景实例法以及基于目标的方法等;还有知识工程方法,例如,场记分析法、卡片分类法、分类表格技术和基于模型的知识获取等。(2)模拟和分析需求需求分析和模拟又包含三个层次的工作。首先是需求建模。需求模型的表现形式有自然语言、半形式化(如图、表、结构化英语等)和形式化表示等三种。需求概念模型的要求包括实现的独立性:不模拟数据的表示和内部组织等;需求模拟技术又分为企业模拟、功能需求模拟和非功能需求模拟等。(3)传递需求传递需求的主要任务是书写软件需求规格说明。(4)认可需求就是对需求规格说明达成一致,其主要任务是冲突求解,包括定义冲突和冲突求解两方面。常用的冲突求解方法有:协商、竞争、仲裁、强制、教育等,其中有些只能用人的因素去控制。(5)进化需求客户的需要总是不断(连续)地增长,但是一般的软件开发又总是落后于客户需求的增长,如何管理需求的进化(变化)就成为软件进化的首要问题。对于传统的变化管理过程来说,其基本成分包括软件配置、软件基线和变化审查小组。当前的发展是软件家族法,即产品线方法。多视点方法也是管理需求变化的一种新方法,它可以用于管理不一致性,并进行关于变化的推理。2、等价分类法的基本思想是什么?答:根据程序的输入特性,将程序的定义域划分为有限个等价区段——“等价类”,从等价类中选择出的用例具有“代表性”,即测试某个等价类的代表值就等价于对这一类其他值的测试。如果某个等价类的一个输入数据(代表值)测试中查出了错误,说明该类中其他测试用例也会有错误。第页(共5页)(软件工程B卷)43、为什么面向对象的开发方法为软件IC(软件集成)及软件重用技术提供了良好的环境?答:软件复用是将已有的软件成分用于构造新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。复用的软件成分—称为可复用构件(ReusableComponent),可以从旧软件中提取,也可以专门为复用而开发。面向对象方法之所以特别有利于软件复用,是由于它的主要概念及原则与软件复用的要求十分吻合。支持复用的OO概念与原则是:对象与类、抽象、封装、继承与一般——特殊结构、整合与整体——部分结构、粒度控制、多态性。对象与类:OO方法用对象描述问题域中的事务,并用类作为同种对象的抽象表示。类是系统的基本构成单位,它符合可复用构件所应具备的那些特性:完整性、独立性、可标识性、一般性、抽象、封装:尤其是OO方法的对象封装性,为软件复用技术提供了良好的条件。而继承机制本质上就是一种复用机制,因此面向对象方法为软件复用提供了一个良好的环境。三、问题描述为:储户用存折取款,首先填写取款单,根据“帐卡”中的信息检验取款单与存折,如有问题,将问题反馈给储户,否则,登录“储户存款数据库”,修改相应数据,并更新“帐卡”,同时发出付款通知,出纳向储户付款。请确定系统的类,并给出你认为最重要的2-3个类的描述模板。(20分)答:确定系统的类:储户、存折、取款单、帐卡、储户存款数据库、付款四、现在有一个医院病房监护系统,用户提出的系统功能要求如下:在医院病房监护系统中,病症监视器安置在每个病房,将病人的病症信号实时传送到中央监视系统进行分析处理。在中心值班室里,值班护士使用中央监视系统对病员的情况进行监控,根据医生的要求随时打印病人的病情报告,系统会定期自动更新病历。当病症出现异常时,系统会立即自动报警,通知值班医生及时进行处理,同时立即打印病人的病情报告和更新病历。(共26分)1、分别画出采用结构化分析方法和UML建模语言建立的需求分析模型(只画顶层)。2、以医院病房监护系统为例,分析比较结构化开发方法与面向对象的开发方法的主要特点,结合该实例说明:为什么面向对象的开发方法更加优越。1.第页(共5页)(软件工程B卷)52.面向对象的方法具有以下主要特点:①对软件开发过程所有阶段进行综合考虑。②软件生存期各阶段所使用的方法、技术具有高度的连续性,用符合人类认识世界的思维方式来分析、解决问题。在医院病房监护系统中,一但建立了系统的USECASE模型后,无论在需求分析、软件设计,甚至实现阶段,所建立的静态模型和动态模型都具有相同的描述方式,描述模型的一致性,不仅为开发者带来方便,也更直观的描述系统的特性。而结构化方法,是以数据流、数据封闭性为基础,从对数据进行加工的角度进行需求分析,建立分层的DFD图(如上图)。而在软件总体设计阶段,则用模块结构图来进行描述,详细设计阶段又是新的描述方式(如N-S图、PAD图等),总之,由于不同阶段有不同的描述方式,需要进行多次转换,不仅为开发者带来诸多不便,也影响了对系统直观、准确的描述。

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功