高级软件工程标准答案

合集下载

高级软考整套试题及答案

高级软考整套试题及答案

高级软考整套试题及答案一、单项选择题1. 在软件开发过程中,需求分析阶段的主要任务是什么?A. 编写代码B. 设计数据库C. 确定软件需求D. 进行系统测试答案:C2. 面向对象编程中,封装的主要目的是什么?A. 提高代码的可读性B. 增加代码的复杂性C. 隐藏对象的实现细节D. 减少代码的可维护性答案:C二、多项选择题1. 下列哪些是敏捷软件开发的特点?A. 强调文档编写B. 强调团队协作C. 强调客户反馈D. 强调迭代开发答案:BCD2. 在软件测试中,黑盒测试和白盒测试的区别是什么?A. 黑盒测试关注内部逻辑B. 白盒测试关注外部功能C. 黑盒测试关注外部功能D. 白盒测试关注内部逻辑答案:CD三、填空题1. 在软件开发生命周期中,______阶段是确定软件需求的阶段。

答案:需求分析2. 在面向对象编程中,______是指对象的状态和行为。

答案:对象四、简答题1. 描述软件开发过程中的迭代开发模式的特点。

答案:迭代开发模式的特点包括:- 将开发过程划分为多个迭代周期;- 每个迭代周期内完成一部分功能;- 迭代周期短,可以快速响应需求变化;- 强调客户反馈,持续改进产品。

2. 解释什么是软件架构,并说明它在软件开发中的作用。

答案:软件架构是指软件系统的结构和组件,以及它们之间的相互关系。

它在软件开发中的作用包括:- 为系统提供清晰的组织结构;- 指导系统的设计和实现;- 支持系统的可维护性和可扩展性;- 帮助团队成员理解系统的整体设计。

五、编程题1. 编写一个函数,实现计算两个整数的和。

答案:```pythondef add(a, b):return a + b```2. 编写一个函数,实现字符串反转。

答案:```pythondef reverse_string(s):return s[::-1]```六、案例分析题1. 假设你负责一个电子商务平台的软件开发,描述你将如何进行需求分析。

答案:需求分析包括以下步骤:- 与利益相关者进行会谈,了解业务需求;- 确定用户需求和系统需求;- 编写需求规格说明书;- 进行需求验证,确保需求的完整性和一致性;- 需求管理,跟踪需求变更。

软件工程复习题及答案(完整)

软件工程复习题及答案(完整)

一、选择1、文档是软件产品的一部分,没有文档的软件就不称其为软件.对2、在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。

错3、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。

错4、建立用例模型的步骤包括确定角色、确定用例和绘制用例图。

错5、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。

错6、软件配置管理是一组标识、组织和控制修改源程序的活动. 错7、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。

错8、好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

对9、边界值分析方法是取输入/输出等价类的边界值作为测试用例。

对10、面向对象的分析是面向计算机系统建立软件系统的对象模型.错11、(D)是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。

A 软件过程B 软件测试C 软件生存周期D 软件工程12、ISO9000是由ISO/TC176制定的关于(B)和质量保证的国际标准。

A 质量控制B 质量管理C 质量策划D 质量改进13、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级.除第1级外,每个等级都包含了实现该成熟度等级目标的若干(B).A 关键实践B 关键过程域C 软件过程能力D 软件过程14、在软件开发的各种资源中,(D)是最重要的资源。

A 开发工具B 方法C 硬件环境D 人员15、软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。

A 固有的B 人为的C 可消除的D 不可降低的16、在各种不同的软件需求中,(D)描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明。

A 业务需求B 功能需求C 非功能需求D 用户需求17、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A)系统。

A 需求不确定的B 需求确定的C 管理信息D 决策支持18、(A)意味着一个操作在不同的类中可以有不同的实现方式.A 多态性B 多继承C 类的可复用D 信息隐蔽19、时序图反映对象之间发送消息的时间顺序,它与(D)是同构的。

高级软件工程往年重点及答案

高级软件工程往年重点及答案

Ch12:软件工程的5个方面?P2软件开发生命周期,软件建模语言,软件工程工具,软件项目计划和跟踪,软件过程管理。

其他比如软件的成本控制,软件系统的人员分配等。

3:遗留系统?P4,P15维护可以使软件系统不断完善,但会导致最初设计的体系结构最终瓦解,系统最终会变成一个遗留系统。

一个大型软件系统对一个组织非常重要,以至于组织会使用一切有效技术来支撑这个软件,这样的系统成为遗留系统。

遗留系统应该停止使用但却没有其他系统来代替。

可以转换,再重新分析业务之后,利用新技术重新开发。

必须对整个遗留系统进行审慎的分析,并结合具体情况考虑这项工程的复杂度、成本与预算,了解团队的重构与设计能力。

8:双向工程?P7,P8双向工程是在正向工程(从设计到编码)和逆向工程(从编码到设计)之间重复进行的活动。

程序设计是指”推敲代码“——写一系列指令让计算机执行一个特定的任务。

程序设计是一种技能,是实现双向工程的技术基础。

双向工程是为了解决不能仅仅靠编程解决的复杂问题而采用的方法。

软件工程,程序设计,复杂的问题需要软件工程,单靠程序无法解决复杂的问题。

9:软件工程中的模型?P8模型是对现实的抽样,是对现实的抽象表示。

抽象是软件工程中一种强有力的技术,通过把精力集中到问题的重要方面并忽略次要方面,来解决系统的复杂性问题。

有意义,因为程序设计的本身意图不是代码而是它所提供的功能,模型就能很好的体现出功能。

21:敏捷软件开发?P21强调软件开发是一种创造性的活动,它不仅仅依靠过程、工具、文档、计划和其他形式的规范,而更多地依靠人和团队合作。

敏捷开发的精神:1 个体和交互胜过过程和工具。

2可以工作的软件胜过面面俱到的文档。

3 客户合作胜过谈判。

4 相应变化胜过遵循计划。

Ch2:4:数据流平衡需求?P29父图中某加工的输入输出数据流应该同其子图的输入输出相同。

Ch3:6:项目管理,度量?P47,P51项目管理师工具、方法、项目设计技术和相关过程管理技术的集合。

软件工程试题及答案(较详细)

软件工程试题及答案(较详细)

一.判断题:1.如果决定将软件全部包给第三方公司开发。

(×)2.有了对系统的目标有了大致的了解,就可以开始开发项目,以后的在开发中继续了解。

(×)3.对于一个成功的软件项目,可执行程序是唯一交付的东西。

(×)4.直到程序运行,才评估软件系统的质量。

(×)5.如果未能按时完成任务,我们可以通过增加程序员来加快完成任务.(×)6.虽然软件需求不断变更,但因软件比硬件有弹性,所以我们经常可以变更它.(×)7.软件工程将导致我们产生大量的无用文档,降低工作效率。

(×)8.在面向对象建模中,主题划分提供了在更高一层上描述。

(主题划分是指UML中将一组关联比较强的类的集合。

则上百个类可划分为几个主题)(√)9.面向对象的开发,对象分解取代功能分解. (√)10.软件中80%的错误存在20%的模块中。

(√)11.结构化分析方法在建立系统模型时,使用一般――特殊结构(实际上没有这种关系)来处理信息。

(×)12.开发软件就是编程。

(×)13.需求规格说明书说明了(√)14.结构化方法,建立系统模型时使用一般连接组织信息. (×)15.敏捷过程模型选用小而高激励的团队使用而不适用于大团队。

(√)二.简答题1.软件工程是层次化的,其四个层次是?答:方法,工具,过程,质量保证软件工程是一种层次化的技术(如图2-1所示)。

任何工程方法(包括软件工程)必须以有组织的质量保证为基础。

全面的质量管理和类似的理念刺激了不断的过程改进,正是这种改进导致了更加成熟的软件工程方法的不断出现。

支持软件工程的根基就在于对质量的关注。

软件工程的基层是过程层。

软件工程过程是将技术层结合在一起的凝聚力,使得计算机软件能够被合理地和及时地开发出来.过程定义了一组关键过程区域的框架(KPAs)[PAY93],这对于软件工程技术的有效应用是必须的。

关键过程区域构成了软件项目的管理控制的基础,并且确立了上下各区域之间的关系,其中规定了技术方法的采用、工程产品(模型、文档、数据、报告、表格等)的产生、里程碑的建立、质量的保证及变化的适当管理。

2022~2023高级软考考试题库及满分答案256

2022~2023高级软考考试题库及满分答案256

2022~2023高级软考考试题库及答案1. 某网络中在对某网站进行域名解析时,只有客户机 PC1得到的解析结果一直错误,造成该现象的原因是 () 。

A.PCl 的 hosts 文件存在错误记录B.主域名服务器解析出错C.PC1本地缓存出现错误记录D.该网站授权域名服务器出现错误记录正确答案:A2. TCP/IP 体系结构中的 TCP和 IP 所提供的服务分别为( )A.链路层服务和网络层服务B.网络层服务和传输层服务C.传输层服务和应用层服务D.传输层服务和网络层服务正确答案:D3. 某公司拟为某种新型可编程机器人开发相应的编译器。

该编译过程包括词法分析、语法分析、语义分析和代码生成四个阶段,每个阶段产生的结果作为下一个阶段的输入,且需独立存储。

针对上述描述,该集成开发环境应采用( )架构风格最为合适。

A.管道-过滤器B.数据仓储C.主程序 -子程序D.解释器正确答案:A4. 国家电子政务总体框架主要包括 : 服务与应用 ; 信息资源 ;(); 法规、法则与标准化 ;管理体制A.基础设施B.过程管理C.信息完全D.信息共享正确答案:A5. 按照标准 GB/T 16260.1《软件过程产品质量第 1 部分质量模型》规定 , 软件产品的“安全性”属性属于 () 评价内容A.外部质量B.内部质量C.过程质量D.使用质量正确答案:D6. ()不属于可修改性考虑的内容。

A.可维护性B.可扩展性C.结构重构D.可变性正确答案:D7. () 属于 QA的主要职责A.组织对概要设计同行评审B.检查工作产品及过程与规划的符合性C.组织对软件过程的改进D.文件版本管理正确答案:B8. 常用的数据传输速率单位有 kbps,mbps,gbps。

1gbps 等于()A.1*10^3mbpsB.1*10^3kbpsC.1*10^6mbpsD.1*10^9kbps正确答案:A9. 应用于通用化约束的方式有( )。

A.完整B.不相交C. 不完整D.覆盖正确答案:ABCD10. UML2.0中共包括 14 种图,其中()属于交互图。

软件工程课后习题参考答案

软件工程课后习题参考答案

软件工程课后习题参考答案1.简述软件开发的本质。

答:软件开发的本质就是实现问题空间的概念和处理逻辑到解空间的概念和处理逻辑之间的映射。

P192.简述实施软件开发的基本途径。

答:实施软件开发的基本途径是系统建模。

所谓系统建模,是指运用所掌握的知识,通过抽象,给出该系统的一个结构——系统模型。

P193.简述何谓模型以及软件开发中所涉及的模型。

答:模型是一个抽象。

该抽象是在意图所确定的角度和抽象层次对物理系统的一个描述,描述其中的成分和成分之间所具有的特定语义的关系,还包括对该系统边界的描述。

软件开发中所涉及的模型可分为两大类,一类称为概念模型,描述了系统是什么;另一类统称为软件模型,描述了实现概念模型的软件解决方案。

4.简述软件开发所涉及的两大类技术。

答:软件开发所涉及的两大类技术为:一是求解软件的开发逻辑,二是求解软件的开发手段。

5、简述需求与需求规约的基本性质。

答:需求的基本性质:1)必要的,该需求是用户所要求的。

2)无歧义的,该需求只能用一种方式解释。

3)可测的,该需求是可进行测试的。

4)可跟踪的,该需求可从一个开发阶段跟踪到另一个阶段。

5)可测量的,该需求是可测量的。

需求规约的基本性质:1)重要性和稳定性程度:按需求的重要性和稳定性,对需求进行分级。

2)可修改的:在不过多地影响其他需求的前提下,可以容易地修改一个单一需求。

3)完整的:没有被遗漏的需求。

4)一致的:不存在互斥的需求。

6、简述软件需求的分类。

答:软件需求可以分为两大类:一类是功能需求,一类是非公能需求,而非公能需求可分为性能需求,外部接口需求、设计约束和质量属性需求。

P237、举例说明功能需求和非功能需求之间的基本关系。

答:非功能需求可作用于一个或多个功能需求,例如非功能需求可作用于一个或多个功能需求其中,非功能需求1作用于功能需求1和功能需求38、有哪几种常用的初始需求发现技术?答:有5种常用的需求发现技术:自悟、交谈、观察、小组会和提炼。

软件工程第四版参考答案

软件工程第四版参考答案

一.基本概念1.软件就是程‎序吗?如何定义软‎件?答:人们经过长‎期实践已经‎逐步认识到‎,软件≠程序,程序只是软‎件的关键要‎素,普遍接受的‎观点是:软件=程序+数据+文档。

2.文档有何作‎用?程序代码属‎不属于文档‎?答:文档指的是‎在软件开发‎和维护过程‎中形成的文‎字记录。

从软件计划‎、分析、设计、实现(编码和测试‎)、维护等开发‎活动中形成‎的各种文件‎。

文档属于软‎件的一部分‎,是软件维护‎和升级的重‎要依据,并且文档内‎容要与代码‎同步更新。

没有文档的‎软件维护不‎但不能延长‎反而会缩短‎软件寿命。

文档包括需‎求规格说明‎书、设计说明书‎、用户使用说‎明书、在线帮助等‎,当然程序代‎码是必不可‎少的一种软‎件文档。

3.什么是软件‎危机?什么原因产‎生了软件危‎机?答:软件危机指‎的是在计算‎机软件的开‎发和维护过‎程中所遇到‎的一系列严‎重问题。

产生的原因‎是主客观不‎相适应。

见书图1-2。

●客观上:软件规模增‎大、功能要求越‎来越复杂,需求不断变‎化等;●主观上:传统的个体‎化开发观念‎和方法,无开发过程‎指导,无开发过程‎管理;由于主客观‎矛盾,必然产生软‎件质量差、开发超期、超预算、维护困难等‎现象。

4.软件工程定‎义有很多说‎法,用你自己的‎理解说明软‎件工程是干‎什么的?参考:软件工程是‎指导计算机‎进行软件计‎划、开发和维护‎的工程学科‎;软件工程是‎为解决软件‎危机而诞生‎的,解决的途径‎是:用工程化的‎理论、方法和技术‎来管理软件‎开发过程。

任何产品的‎工程化就是‎有计划、有目标、有规范、有文档、有标准。

见1.4节。

软件工程就‎是指导软件‎产品的工程‎化。

5.软件工程三‎要素是什么‎?答:软件工程三‎要素是从计‎算机科学观‎点看软件工‎程,即从软件开‎发的技术层‎面应该有过‎程、方法和工具‎。

见图1-4。

(2)“过程”是软件产品‎加工所经历‎的一系列有‎组织的活动‎,保证能够合‎理、高质量和及‎时地开发出‎软件。

软考高级考试题库及答案

软考高级考试题库及答案

软考高级考试题库及答案1. 以下关于软件工程的描述中,哪一项是错误的?A. 软件工程关注于软件产品的生命周期B. 软件工程强调开发过程的规范化和系统化C. 软件工程的目标是降低软件成本和提高软件质量D. 软件工程不包括软件维护阶段答案:D2. 在面向对象的程序设计中,以下哪个概念是用来描述对象间的关系?A. 类B. 继承C. 封装D. 多态答案:B3. 数据库管理系统(DBMS)的主要功能不包括以下哪一项?A. 数据定义B. 数据操纵C. 数据存储D. 网络通信答案:D4. 在软件开发过程中,需求分析阶段的主要任务是什么?A. 确定软件的功能需求和性能需求B. 设计软件的架构C. 编写软件的代码D. 进行软件的测试答案:A5. 敏捷软件开发方法的核心理念是什么?A. 强调文档和计划B. 强调个人和交互C. 强调过程和工具D. 强调合同和谈判答案:B6. 在软件测试中,黑盒测试和白盒测试的主要区别是什么?A. 黑盒测试关注于软件的内部结构,白盒测试关注于软件的功能B. 黑盒测试关注于软件的功能,白盒测试关注于软件的内部结构C. 黑盒测试和白盒测试没有区别D. 黑盒测试和白盒测试都是关注于软件的内部结构答案:B7. 软件项目管理中,风险管理的主要目标是什么?A. 识别风险并制定应对策略B. 增加项目的不确定性C. 减少项目的成本D. 增加项目的时间答案:A8. 在软件架构设计中,以下哪个概念是用来描述系统组件及其相互关系的?A. 模块化B. 组件化C. 架构风格D. 模式答案:C9. 软件维护的类型包括哪些?A. 纠错性维护、适应性维护、完善性维护和预防性维护B. 纠错性维护、适应性维护、性能维护和预防性维护C. 纠错性维护、适应性维护、完善性维护和性能维护D. 纠错性维护、适应性维护、完善性维护和安全性维护答案:A10. 在软件工程中,以下哪个概念是用来描述软件需求的完整性和一致性?A. 可测试性B. 可维护性C. 可追溯性D. 可扩展性答案:C。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、解释下列概念学科:相对独立的知识体系。

方法:实现一个目标或做某事的方式、技巧、技术或系统化过程。

方法学:对某个知识领域探索知识的原则或方法而作的系统分析。

模型:对现实(事物或实体)的简化(或抽象)表示。

模型是抽象的产物!视图:在SQL中:和物理表相对应,临时性的虚表。

在MVC软件架构模式中:图形界面。

在软件工程中:指从系统的令人感兴趣的视点依某种视角,通过压缩细节,只保留必要的元素而形成的简洁的系统表示模型。

即,视图是模型的某一选定刻面即简洁表示。

概念模型:是对真实世界中问题域内的事物的描述,不是对软件设计的描述。

概念模型=功能模型+结构模型+行为模型。

组件:系统的一个物理实现块。

框架:是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法。

架构:存储在Active Directory 中的对象类别和属性的描述。

对于每一个对象类别来说,该架构定义了对象类必须具有的属性,它也可以有附加的属性,并且该对象可以是它的父对象。

信息域:一系列关联信息的集合而形成的一个领域。

用例:对一组动作序列的描述,系统执行这些动作将产生对特定的参与者有价值而且可观察的结果。

实体对象:具有图形表示的数据库对象。

软件体系结构:是一组体系结构元素的特定组织形式。

体系结构元素分为3类:负责完成数据加工的处理元素;作为被加工的信息的数据元素;把体系结构的不同部分连接到一起的连接元素。

ORM:对象-关系映射,主要实现程序对象到关系数据库数据的映射。

二、简答题2.1什么是模型?为什么要建立模型?建模的原则是什么?模型:对现实(事物或实体)的简化(或抽象)表示。

模型是抽象的产物!为什么建模(软件建模)?●清楚、准确、可视地说明与定义系统的结构与行为的方法(简化问题复杂度, 分析定义);●作为指导系统构造的基础与模板(设计基础);●作为涉众(stakeholder利益相关者)交流的工具与成果(交流);●对分析与决策的结果规范化、文档化(成果)。

建模原则((不同程度、细度、粒度、维度)):●仅当需要模型时,才够建(按需构建)●选择要创建什么模型,对如何动手解决问题和如何形成解决方案有着意义深远的影响。

(选择构建)●可以在不同的精度级别上表示每一种模型。

(分层构件)●最好的模型是与现实相联系的(一致构建)●单个模型或视图是不充分的。

对每个重要的系统最好用一组几乎独立的模型从多个视角去处理。

这些视图一起从整体上描绘了软件蓝图(组合构建。

功能、结构、行为模型)●尽可能使用草图讨论,重要程度不足的草图模型直接入文档,重要性高的图使用CASE工具绘制成蓝图入文档。

●每个模型应配有必要的文字说明(数据字典)。

2.2什么是问题域和系统责任?举例说明其区别与联系?问题域(问题空间):待开发系统的应用领域,即在客观世界中由该系统处理的业务范围。

如要为银行开发一个业务处理系统,银行就是这个系统的问题域。

银行的日常业务(如金融业务、个人储蓄、国债发行、投资管理等)、行政管理及与此有关的人和物都属于问题域。

系统责任:被开发系统应具有的职能。

1.(数据/属性属于系统责任范畴-存储/记录功能)2.系统责任和问题域语义上有很大部分是重叠的,但有区别。

如前述银行业务处理系统,银行就是这个系统的问题域,银行的日常业务(如金融业务、个人储蓄、国债发行和投资管理等)、行政管理及与此有关的人和物都属于问题域。

尽管银行内部的行政管理属于问题域,但是在当前的这个业务处理系统中并不属于系统责任。

另一方面,像对计算机信息的定期备份这样的功能属于系统责任,但不属于问题域。

识别对象的系统责任需要合理的抽象:例如,开发图书馆管理系统和开发书店图书销售管理系统均涉及书籍对象。

但抽象却不同:前者要设计一个BOOK类,且每本书均为该类的一个对象,因为系统要记录每本书借给哪个读者;后者中,只需把同一版本的一种书看成一个对象类,并记录其书名、数量、单价等信息即可。

2.4 什么是方法?它有哪些构成要素?方法:实现一个目标或做某事的方式、技巧、技术或系统化过程。

方法构成:基本概念+原理+运用过程+检验/评价标准+实例。

2.5 什么是软件模型视图?建模时创建哪些视图?(多视角建模)软件工程中:指从系统的令人感兴趣的视点依某种视角,通过压缩细节,只保留必要的元素而形成的简洁的系统表示模型。

即,视图是模型的某一选定刻面即简洁表示。

表2-1 模型视图2.6 举例说明系统、模型与视图三者的关系?系统、模型与视图关系:模型是系统的抽象表示、视图刻画模型的某个刻面,一个模型往往由其多个视图表示,一个系统的模型和其视图往往有重叠。

例如:System: 航空器Models: 航空器仿真器(模型1), 比例模型(模型2)Views(模型1): 设计蓝图, 电子线路视图, 燃料系统视图(蓝图视图含有其他两子系统标识成分)2.7 面向对象的三大机制是什么?解释他们的主要作用面向对象的三大机制是封装、继承和多态.封装提供了一个有效的途径来保护数据不被意外的破坏。

继承主要实现重用代码,节省开发时间。

编译时的多态性为我们提供了运行速度快的特点,而运行时的多态性则带来了高度灵活和抽象的特点。

2.8 简单阐述Karl E. Wiegers关于软件需求的描述。

2.9 举例说明软件需求三个层次之间的关系。

三种需求关系示例一:业务需求可能是:“用户能有效地纠正文档中的拼写错误”,该产品的包装盒封面上可能会标明这是个满足业务需求的拼写检查器。

对应的用户需求可能是:找出文档中的拼写错误并通过一个提供的替换项列表来供选择替换拼错的词。

对应的软件(功能)需求可能是:●找到并高亮度提示错词;●显示提供替换词的对话框以及实现整个文档范围的替换。

三种需求关系例证二:业务需求可能是:公司内部,所有部门数据实现共享用户需求:●能通过方便的操作方式将当部门数据汇总到总公司的中心数据库中。

或:●分布存储,但用户能访问自由访问其它部门的数据红色为准确找到的,绿色为老师附带给的答案,(只有2.13的第一问是在网上找的)2.10需求分析面临的主要挑战是什么?●问题域和系统责任的复杂性(隔行如隔山。

未知领域出现。

更清晰的理解、更高明的见解!故需简单直观高效的方法)●交流问题(共同语言)●需求的不断变化(问题域本身、客户主观因素、市场竞争、经费与技术因素等赌友影响。

故需要冻结相对稳定的需求)●软件复用的要求(软件复用是提高软件开发效率,改善软件质量的重要技术。

故需复用机制)2.11 简述软件需求分析的主要步骤与过程。

●问题(需求)获取(elicitation)(进一步分为访谈调研、诱导澄清子过程)●分析●编写规格说明(specification)●验证(verification )2.12 简述软件需求建模的主要方法及其特点。

(信息、功能分解、结构和OO)方法:功能分解+结构化(面向数据流的DFD)+ 信息建模(面向信息结构的Jackson, ERD )+ OO–功能分解(优点:易理解、抽象原则、模块化;缺点:易变不稳、接口非问题域事物、不全面)–结构化(优点:较全面、逐步求精的难度分解原则、分析到设计的指导性原则;缺点:侧重功能、概念体系非问题域、转化不严格、概念各不同)–信息建模(优点::实体抽象、静态结构描述、转化严格、理论体系完整;不足:侧重数据)–面向对象(特点:问题域的事物,概念一致、抽象、分类、封装、信息隐蔽、消息通讯、多态;优点:概念一致、思维一致、模型稳定、可维护性高、模型可复用性强、有助于提高开发效率与质量)2.13 简述统一建模语言(UML)的主要作用及其和OO方法之间的关系。

作用:uml在面向对象分析和设计中具有重大的作用。

从应用的角度看,当采用面向对象技术设计系统时,首先是描述需求;其次根据需求建立系统的静态模型,以构造系统的结构;第三步是描述系统的行为。

关系:建模使用OO方法时,才用UML-建模语言;UML是OMG 推荐的统一、标准化、广泛使用的OO建模语言。

2.14 UML由哪些部分组成?简述他们的作用?构造块:UML的模型元素,是模型的主体。

规则:支配基本构造块如何放在一起。

不能简单地把UML的构造块按随机的方式堆放在一起。

像任何语言一样,UML有一套规则。

公共机制:运用于整个UML的公共机制、扩展机制。

2.15 简述用例建模步骤的过程?(识别角色、识别场景、辨识用例、细化用例、识别角色和用例的关系、必要时,使用包简化用例图)–识别角色–识别场景–辨识用例–细化用例–识别角色、用例中的关系–必要时,使用包简化用例图2.16 简述用例建模的主要技术。

(用户目标技术、CRUD、事件分析、短语动词识别)一: 用户目标技术-与用户交谈,讨论他们为新系统设定的目标。

二:CRUD(C reate, R ead or Report, U pdate and D elete)技术-分析师标识由系统处理所有的数据元素,并建立创建,报告,更新和删除数据项的用例。

三:事件分解技术-此技术侧重于辨识要求系统作出响应的事件以及确定系统必须如何作出响应。

四: 动词短语识别技术, 从问题域中搜寻系统使用的动词短语,作为候选用例,然后抽象、排除不合理用例。

2.17 简述对象模型的目标及过程。

(识辨对象与类、准备数据字典、识辨关联与聚集、识辨对象与链的属性、使用继承组织和简化类、复审并精化模型、分组类成为模块) –识辨对象与类(Identify objects and classes)–准备数据字典(Prepare data dictionary)–识辨关联与聚集(Identify associations and aggregations)–识辨对象与链的属性(Identify attributes of objects and links) –使用继承组织和简化(对象与类Organize and simplify using inheritance–复审并精化模型(Iterate and refine the model)–分组类成为模块(主题Group classes into modules) 2.18 简述系统设计的主要任务。

(设计目标、系统分解、目标实现与优化)–识别设计目标(主要和优先满足的系统质量需求)–设计初始系统分解-使用标准架构风格为起点–细化分解模型,实现设计目标。

2.19 系统设计的主要产品有哪些?–设计目标(总则、决策)–软件体系结构⏹问题分解和求解方案构建的高层策略的选择⏹子系统职责、相互依赖关系⏹映射子系统到硬件和软件组件⏹全局数据流、存取控制和数据存储的设计决策–边界用例:描述系统配置、起、停和出错处理三、选择填空(25分)1. 下列关于用例特征的描述错误的是( D )A. 为角色提供某种可度量价值的一系列活动的抽象描述B. 一个用例实现用户的一个具体目标C. 一个用例是用户的一个可见功能D. 一个用例是场景的实例2. CMM能力成熟度模型定义了一个阶梯式演进框架,分为五个等级,按从低到高次序是(初始、重复、定义、管理、优化)A.初始级、已管理级、已定义级、可重复级、优化级B.初始级、已定义级、已管理级、可重复级、优化级C.初始级、已管理级、已定义级、可重复级、优化级D.初始级、已定义级、可重复级、已管理级、优化级3.使用Abbott 自然语言识别法分析建模时,常常将(B )A. 普通名词映射为实例,专有名词映射为类B.普通名词映射为类,专有名词映射为实例C. 普通名词映射为类,专有名词和形容词映射为类的属性D. 专有名词映射为类,Doing型动词映射为类的操作4. Jacobson,1999认为分析对象模型由三类对象构成,它们是(C )A. 分析对象、设计对象和实现对象B. 类、类间关系与约束C.实体对象、边界对象和控制对象D. 数据对象、结构对象和行为对象5.面向对象分析与设计的起点是( C )A. 企业需求描述B. 功能需求描述C. 用例需求描述D. 静态结构需求描述6. 根据Karl E. Wiegers的描述,软件需求分为( J ) 和非功能性需求两个部分。

相关文档
最新文档