软件工程选择题题库
软件工程选择题大全
软件工程选择题A. 1988B. 1968C. 1948D. 19282. 瀑布模型的关键不足在于( )A. 过于简单B. 各个阶段需要进行评审C. 过于灵活D. 不能适应需求的动态变更3. 以下哪一项不是软件危机的表现形式( )A. 开发的软件不满足用户需要B. 开发的软件可维护性差C. 开发的软件价格便宜D. 开发的软件可靠性差4. 软件可行性研究实质上是要进行一次( )需求分析、设计过程A. 简化、压缩的B. 详细的C. 彻底的D. 深入的5. 结构化设计是一种面向( )的设计方法A. 数据流B. 模块C. 数据结构D. 程序6. 与确认测试阶段有关的文档是( )A. 需求规格说明书B. 概要设计说明书C. 详细设计说明书D. 源程序7. 软件开发的需求活动,其主要任务是()A. 给出软件解决方案B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型8. 以下说法错误的是( )A. 文档仅仅描述和规定了软件的使用范围及相关的操作命令B. 文档也是软件产品的一部分,没有文档的软件就不成软件C. 软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量D. 高质量文档对于发挥软件产品的效益有着重要的意义9. 一个项目是否开发,从经济上来说是否可行,归根结底是取决于( )A. 成本估算B. 项目计划C. 工程管理D. 工程网络图10. 在面向对象的设计中,我们应遵循的设计准则除了模块化、抽象、低耦合、高内聚以外,还有( )A. 隐藏复杂性B. 信息隐蔽C. 经常类的复用D. 类的开发11. 面向对象的主要特征除对象惟一性、封装、继承外,还有( )A. 多态性B. 完整性C. 可移植性D. 兼容性12. 在考察系统的一些涉及时序和改变的状况时,要用动态模型来表示。
动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是( )A. 数据流图B. 状态图C. 系统结构图D. 用例图13. 面说法正确的是( )A. 经过测试没有发现错误说明程序正确B. 测试的目标是为了证明程序没有错误C. 成功的测试是发现了迄今尚未发现的错误的测试D. 成功的测试是没有发现错误的测试14. ( )能够有效地检测输入条件的各种组合可能会引起的错误A. 等价类划分B. 边界值分析C. 错误推测D. 因果图15 火车是一种陆上交通工具。
软件工程复习题库带答案完整版
软件工程复习题库带答案完整版一、选择题1、白盒测试法是通过分析程序的(C)来设计测试用例的。
A.应用范围B.功能C.内部逻辑D.输入数据2、风险预测从两个方面评估风险,即风险发生的可能性以及(D)。
A.风险产生的原因B.风险监控技术C.风险能否消除D.风险发生所产生的后果3、极限编程(XP)由价值观、原则、实践和行为四部分组成,其中价值观包括沟通、简单性和(C)。
A.好的计划B.不断的发布C.反馈和勇气D.持续集成4、等价分类法的关键是(C)。
A.确定等价类的边界条件B.按照用例来确定等价类C.划分等价类D.确定系统中相同和不同的部分5、下列不属于黑盒测试的技术是(A)。
A.程序段或语句的功能 B.模块的接口C.数据的名称和用途 D.模块的功能6、为了提高模块的独立性,模块之间最好是(D)耦合。
A.控制耦合B.公共耦合C.内容耦合D.数据耦合7、一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用(A)来表述“谁做”。
A.角色B.活动C.制品D.工作流8、功能性注释嵌入在源程序内部,它是用来说明(A)。
A.程序段或语句的功能 B.模块的接口C.数据的名称和用途 D.模块的功能9、在结构化分析方法中,数据字典是重要的文档。
对加工的描述是数据字典的组成内容之一,常用的加工描述方法有( C )。
A.只有结构化语言 B.有结构化语言和判定树C.有结构化语言、判定树和判定表 D.有判定树和判定表10、某银行为了使其网上银行系统能够支持信用卡多币种付款功能而进行扩充升级,这需要对数据类型稍微进行一些改变,这一状况需要对网上银行系统进行( B )维护。
A.正确性 B.适应性C.完善性 D.预防性11、软件危机的主要原因是(A)。
A软件本身特点与开发方法B对软件的认识不够C软件生产能力不足D软件工具落后12、13、下列关于面向对象分析与设计说法错误的是(C)。
A.面向对象的设计以面向对象分析为基础归纳出类B.建立类结构或进一步构造成类库,实现分析结果对问题空间的抽象C.面向对象的设计是面向对象分析的另一种思维方式D.面向对象的设计是面向对象分析进一步的细化和更高的抽象14、在软件的可行性分析中,可以从不同的角度对软件进行研究,其中(B)是从软件的功能可行性角度考虑的。
软件工程选择题
第一章初认软件工程1.下面的( )说法是正确的。
A.由于软件是产品,因此可以应用其他工程制品所用的技术进行生产B。
购买大多数计算机系统所需的硬件比软件更昂贵C。
大多数软件系统是不容易修改的,除非它们在设计时考虑了变D.一般来说,软件只有在其行为与开发者的目标一致的情况下才能成功2.造成大型软件开发困难的根本原因在于()。
A。
开发人员缺乏足够的开发经验B。
对软件开发的资金投入不足C。
项目开发进度不合理D。
软件系统的复杂性3.软件会逐渐退化而不会磨损,其原因在于().A。
软件通常暴露在恶劣的环境下B.软件错误在经常使用之后会逐渐增加C。
不断的变更使组件接口之间引起错误D。
软件备件很难订购4.“软件工程”术语是在()被首次提出。
A。
Fred Brooks的《没有银弹:软件工程中的根本和次要问题》B。
1968年NATO会议C。
IEEE的软件工程知识体系指南(SWEBOK)D。
美国卡内基·梅隆大学的软件工程研究所5。
Ariane 5火箭发射失败的事例告诉我们()。
A。
系统环境的变化可能影响软件采集数据的精度、范围和对系统的控制B。
软件后备系统可以通过复制生成C.软件重用必须重新进行系统论证和系统测试D。
选项A和CE.选项A、B和C6.软件工程的基本目标是( )。
A。
开发足够好的软件B.消除软件固有的复杂性C。
努力发挥开发人员的创造性潜能D。
更好地维护正在使用的软件产品7。
软件工程方法是()。
A。
为了获得高质量软件而实施的一系列活动B。
为开发软件提供技术上的解决方法C。
为支持软件开发、维护、管理而研制的计算机程序系统D。
为了理解问题和确定需求而采取的一些技术和方法8.下面的()是正确的。
A.运行正确的软件就是高质量的软件.B。
软件质量是在开发过程中逐渐构建起来的。
C。
软件产品质量越高越好,最理想的情况是达到“零缺陷"。
D。
软件质量是由产品的功能、性能、易用性等外在特性决定的。
9。
在Garvin多维度模型中,可靠性是指()。
软件工程习题及答案-选择题
软件工程习题及答案-选择题选择题:1.软件是一种( B )A.有形B.逻辑C.物质D.消耗2.软件工程学科出现的主要原因是( C )A.计算机的发展B.其它工程学科的影响C.软件危机的出现D.程序设计方法学的影响3.(A)是计算机程序及其说明的各种文档A.软件B.文档C.数据D.程序4.有关计算机程序功能、设计、编制、使用的文字图形资料称为( B )A.软件B.文档C.数据D.程序5.软件工程是一种(A)分阶段实现的软件程序开发方法。
A.自顶向下B.自底向上C.逐步求精D.面向数据流6.从结构化的瀑布模型看,在软件生命周期中的八个阶段中,下面的几个选项中( C )出错,对软件的影响最大。
A.详细设计阶段B.概要设计阶段C.需求分析阶段D.测试和运行阶段7.在结构性的瀑布模型中,(C )阶段定义的标准将成为软件测试中的系统测试中的系统测试的目标。
A.详细设计阶段B.概要设计阶段C.需求分析阶段D.可行性研究阶段8.UML是软件开发中的一个重要工具,它主要应用下列哪种软件开发方法( C )。
A.基于瀑布模型的结构化方法B.基于需求动态定义的原型化方法C.基于对象的面向对象的方法D.基于数据的数据流开发方法9.在软件生存周期中,用户主要是在(A)参与软件开发。
A.软件定义期B.软件开发期C.软件维护期D.整个软件生存周期过程中10.软件生存周期模型有多种,下列选项中,( C )不是软件生存周期模型。
A.螺旋模型B.增量模型C.功能模型D.瀑布模型11.对软件的过分分解,必然导致( B )A.模块的独立性差B.接口的复杂程度增加C.软件开发的总工作量增加D.以上都正确12.结构化分析方法是一种面向( C )需求分析方法A.对象B.数据字典C.数据流D.结构图13.结构化设计方法中把软件结构划分为( B )和( E )两大类,并提出了对应于以上两类结构的分析方法。
A.控制型B.变换型C.模拟型D.处理型E.事务型F.分析型G.通信型H.功能型14.瀑布模型中软件生存周期划分为八个阶段,这八个阶段又可分为三个时期,这三个时期分别为计划时期、开发时期和(A)A.运行时期B.可行性分析C.详细设计D.测试和纠错15.进行需求分析可使用多种工具,但( C )是不适用的。
软件工程测试试卷选择题
软件工程考试试卷——选择题题库一、选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内,每小题1分)1.软件产品的开发主要是( D )。
A.复制B.再生产C.拷贝D.研制2.作坊式小团体合作生产方式的时代是( C )时代。
A.程序设计B.软件生产自动化C.程序系统D.软件工程3.软件工程与计算机科学性质不同,软件工程着重于( C )。
A.理论研究B.原理探讨C.建造软件系统D.原理的理论4.将每个模块的控制结构转换成计算机可接受的程序代码是( A )阶段的任务。
A.编码B.需求分析C.详细设计D.测试5.可行性研究的目的是决定( B )。
A.开发项目B.项目值得开发否C.规划项目D.维护项目6.SA方法用DFD描述( D ) 。
A.系统的控制流程 B.系统的数据结构C.系统的基本加工 D.系统的功能7.进行需求分析可使用多种工具,但( C )是不适用的。
A. 数据流图(DFD)B. 判定表C. PAD图D. 数据字典8.结构化分析(SA)方法将欲开发的软件系统分解为若干基本加工,并对加工进行说明,下述是常用的说明工具,其中便于对加工出现的组合条件的说明工具是( A )。
a.结构化语言;b.判定树;c.判定表。
A. b和cB. a,b和cC. a和cD. a和b9.软件概要设计结束后得到( B )。
A.初始化的软件结构图B.优化后的软件结构图C.模块详细的算法D.程序编码10.软件设计阶段一般又可分为( B )。
A.逻辑设计与功能设计B.概要设计与详细设计C.概念设计与物理设计D.模型设计与程序设计11.软件设计中划分模块的一个准则是( C )。
A.低内聚低耦合B.低内聚高耦合C.高内聚低耦合D.高内聚高耦合12.PDL是软件开发过程中用于( C )阶段的描述工具。
A.需求分析B.概要设计C.详细设计D.编程13.下列语言中哪个语言是低级语言( D )A. PASCALB.VISUAL BASICC. C++D.汇编语言14.软件测试的目的是( B )。
软件工程试卷
7.瀑布模型的存在问题是()A. 用户容易参与开发B. 缺乏灵活性C. 用户与开发者易沟通D. 适用可变需求8.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合 B.隐藏 C.封装 D.抽象9.水果类和香蕉类之间的关系是()A.关联关系B.泛化关系C.依赖关系D.聚集关系10.下列情况中()不会增加维护的成本。
A.严格的测试B.开发人员流失C.文档不健全二、判断题(每题3分共30分)(A代表正确,B代表错误)1.测试只能证明程序有错误,不能证明程序没有错误。
( )2.模块化程序设计中,模块越小,模块化的优点越明显,模块的大小都在10行以下。
( )3.在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排等等。
( )4.软件详细设计的主要任务是确定每个模块的外部接口。
( )5.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
( )6.软件结构图的形态特征能反映程序重用率的是扇入。
( )7.为了加快软件维护作业的进度,应尽可能增加维护人员的数目。
( )8.当验收测试通过,软件开发就完成了。
( )9.质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。
( )10.软件测试是要发现软件中的所有错误。
( )三、简答题(每题10分共40分)1.软件危机的主要产生原因是什么?2.用结构化设计方法将数据流图转换为软件结构的步骤有哪些?3.什么是软件过程?4.简述软件项目管理主要任务。
软件工程选择题
1.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。
A.50年代末B.60年代初C.60年代末D.70年代初A.运筹学B.工程学C.软件学D.软件学E.数字2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。
A.软件投机B.软件危机C.软件工程D.软件产生3.产生软件危机的原因有如下几点,除了______。
A、软件开发过程未经审查B、软件开发不分阶段,开发人员没有明确的分工C、所开发的软件,除了程序清单外,没有其他文档D、采用工程设计的方法开发软件,不符合软件本身的特点4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。
A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用5.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。
A.维护B.测试C.详细设计D.概要设计E.编码F.需求分析6.瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶段又可细分为若干个更小的阶段。
A.详细设计B.可行性分析C.运行及维护D.测试与排错7.划分软件生存周期的阶段时所应遵循的基本原则是_____。
A、各阶段的任务尽可能相关性B、各阶段的任务尽可能相对独立C、各阶段的任务在时间上连续D、各阶段的任务在时间上相对独立8.一个软件项目是否进行开发的结论是在______文档中作出的。
A、软件开发计划B、可行性报告C、需求分析说明书D、测试报告9.分析员是____。
A.用户中系统的直接使用者B.用户和软件人员的中间人C.软件的编程人员D。
用户和软件人员的领导10.下列叙述中,_______不属于数据字典的作用。
A、作为编码阶段的描述工具B、为用户与开发人员之间统一认识C、作为概要设计的依据D、为需求分析阶段定义各类条目11.使用结构化分析方法时,采用的基本手段是____。
软件工程选择题
(一)1. 软件危机具有下列表现( D )。
I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住III. 软件常常不可维护IV. 软件成本逐年上升A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是(A)。
A. 运行和维护阶段B. 设计阶段C. 代码实现阶段D. 测试阶段3. 下列属于软件的特点的是( D )。
A. 软件是一种逻辑实体,具有抽象性B. 软件在使用过程中没有磨损、老化的问题C. 软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高D. 以上都正确4. 软件工程的出现是由于( D )。
A. 软件危机的出现B. 计算机硬件技术的发展C. 软件社会化的需要D. 计算机软件技术的发展5. 软件开发技术不包含( D )。
A. 软件开发方法学B. 软件工程环境C. 软件工具D. 软件质量度度量6. 软件工程的课程特点( D )。
I. 学科理论及其知识应用的多维性II. 工程化III. 浓厚的方法学色彩IV. 实践性、指导性强A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确7. 下列属于应用软件的是( B )。
I. 计算机辅助教学软件II. 软件测试工具III. 办公自动化软件IV. 工程与科学计算软件A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确8. 需求分析阶段最重要的技术文档是( B )。
A. 设计说明书B. 需求规格说明书C. 可行性分析报告D. 用户手册9. 以下关于数据流图的说法错误的是(C )。
A. 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储B. 数据流图是用作结构化分析的一种工具C. 传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成D. 数据流图的绘制采用自上向下、逐层分解的方法10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( C )。
软件工程考试题库
软件工程概述一单项选择1.软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。
A需求分析 B 结构设计C程序编制D软件维护2.软件是一种逻辑产品,它的开发主要是(A ).A研制B拷贝C再生产D复制3.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C ).A喷泉模型 B 增量模型C瀑布模型D螺旋模型4.在软件生存周期中,(B )阶段必须要回答的问题是“要解决的问题是做什么?”。
A详细设计 B 可行性分析和项目开发计划C概要设计D软件测试5.软件产品与物质产品有很大区别,软件产品是一种(C )产品A有形 B 消耗C逻辑D文档6.(C )把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作。
A 原型模型B 螺旋模型C 基于知识的智能模型D 喷泉模型7.( B )阶段是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。
A概要设计 B 详细设计 C 编码 D 测试8.下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是(A )。
A 原型模型B 瀑布模型C 基于知识的智能模型D 变换模型9.下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是( C )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型10.下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是( D )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型11.软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为(C )。
A可修改性B可靠性C可适应性 D 可重用性12.软件特性中,一个软件能再次用于其他相关应用的程度称为( B )。
A可移植性B可重用性 C 容错性 D 可适应性13.软件特性中,(A )是指系统具有清晰的结构,能直接反映问题的需求的程度.A可理解性B可靠性C可适应性 D 可重用性14.软件特性中,软件产品交付使用后,在实现改正潜伏的错误、改进性能、适应环境变化等方面工作的难易程度称为( B )。
软件工程试题及答案
软件工程一、选择题1、软件需求规格说明的内容不包括(B)A、主要功能B、算法的详细描述C、用户界面及运行环境D、软件的性能2、面向对象的分析方法主要是建立三类模型,即(D)A、系统模型、ER模型、应用模型B、对象模型、动态模型、应用模型C、ER模型、对象模型、功能模型D、对象模型、动态模型、功能模型3、在ER模型中,包括以下基本成分(C)A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、操作4、各种软件维护的类型中最重要的是(A)A、完善性维护B、纠错性维护C、适应性维护D、预防性维护5、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-2.0,2.0],现从输入的角度考虑一组测试用列-2.001,-2,20,2.001,设计这组测试用列的方法是(C)A、条件覆盖法B、等价分类法C、边界值分析法D、错误推测法6、下列白盒测试法,哪种是最强的覆盖准则(D)A、语句覆盖B、条件覆盖C、判定覆盖D、条件组合覆盖7、确定测试计划是在(A)阶段制定的。
A、总体设计B、详细设计C、编码D、测试8、数据字典是软件需求分析阶段最重要的工具之一,其最基本的功能是(C)A、数据库设计B、数据通信C、数据定义D、数据维护9、软件开发当中,抽取和整理用户需求并建立问题域精确模型的过程(D)A、生成期B、软件意向C、结构化程序设计D、面向对象分析10、以下不属于IT企业当中过程管理和过程改进模型的是(D)A、ISO9001B、CMMIC、软件企业文化D、UML11、适合互联网上编程并可供不同平台运行的面向对象程序设计的语言是(java)12、软件结构图中,模块之间用直线连接,则表示他们之间存在(A )。
A、调用关系B、组成关系C、链接关系D、顺序执行关系13、生命周期方法设计软件的过程中,画用例图属于(A)阶段的工作。
A、需求分析B、概要设计C、详细设计D、软件维护14、PDL属于(B)语言。
软件工程考试试题(含答案)
一、选择题:(每题1分,共20分)(将答案写在题号前的()中)( C )1. 软件是()。
A. 处理对象和处理规则的描述B. 程序C. 程序及其文档D. 计算机系统( B )2. 软件需求规格说明的内容不应包括()。
A. 主要功能B. 算法的详细描述C. 用户界面及运行环境D. 软件的性能( B )3. 程序的三种基本控制结构是()。
A. 过程、子程序和分程序B. 顺序、选择和重复C. 递归、迭代和回溯D. 调用、返回和转移( D) 4. 面向对象的分析方法主要是建立三类模型,即( )。
A) 系统模型、ER模型、应用模型B) 对象模型、动态模型、应用模型C) E-R模型、对象模型、功能模型D) 对象模型、动态模型、功能模型( C ) 5. 在E-R模型中,包含以下基本成分( )。
A) 数据、对象、实体B) 控制、了解、对象C) 实体、了解、属性D) 实体、属性、操作( A ) 6. 各种软件维护的类型中最重要的是( )。
A) 完善性维护B) 纠错性维护C) 适应性维护D) 预防性维护( B ) 7.软件测试的目标是()。
A. 证明软件是正确的B. 发现错误、降低错误带来的风险C. 排除软件中所有的错误D. 与软件调试相同( D )8.软件生命周期中所花费用最多的阶段是()A.详细设计 B.软件编码 C.软件测试 D.软件维护( C )9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是()A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法( D )10、详细设计的基本任务是确定每个模块的( )设计A.功能 B.调用关系 C.输入输出数据 D.算法( A )11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。
对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:()A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据( D )12.下面几种白箱测试技术,哪种是最强的覆盖准则()A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖( A )13.面向数据流的设计方法把()映射成软件结构。
软件工程--选择题
1. 软件是一种逻辑产品,软件产品具有无形性,体现它的功能和作用是通过()A复制B计算机的执行C开发和研制D软件费用2.软件产品的生产主要是脑力劳动,软件产品的成本主要体现在软件的()A复制B开发方式C开发和研制D磨损、消耗3.程序系统时代的生产方式是()A个体手工劳动B工程化C作坊式的小集团合作C自动化4.软件工程是计算机科学中的一个分支,其主要思想是在软件生产中用()的方法代替传统手工方法。
A工程化B现代化C科学D智能化5.软件工程中用来进行费用估算、制定进度、制定计划和方案的是()科学A管理B工程C数学D计算机6.软件工程中用来进行软件生产的管理是()科学A管理B工程C数学D计算机7.软件工程中用于建立软件开发中的各种模型和各种算法的是()科学A管理B工程C数学D计算机8.在软件开发中,通常要花费()的代价进行测试和排错。
A20% B40% C70% D5%9.软件工程过程的支持过程是对项目的()工程给予支持。
A操作B生存周期C开发D供应10.软件生存周期是借用()中产品生存周期的概念而的来的。
A工程B需求C计算机学科D数学11.需求分析阶段的任务是()A具体地解决问题B确定软件系统必须做什么C设计软件的结构D详细设计12.详细设计阶段的任务是()A把功能描述转变为精确的、结构化的过程描述B设计软件的结构,明确该结构由那些模块组成C把每个模块的控制结构转换成计算机可接受的程序代码D设计数据库结构13.将软件生存周期各个活动规定为依线性顺序连接的若干个阶段的模型是()A瀑布模型B增量模型C螺旋模型D喷泉模型14.软件是“逐渐”开发出来的,可让用户及早看到部分软件的模型是()A瀑布模型B增量模型C螺旋模型D喷泉模型15.把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作的模型是()A增量模型B螺旋模型C喷泉模型D智能模型16.一种以用户为动力,以对象作为驱动的模型,适用于面向对象的开发方法的模型是()A增量模型B螺旋模型C喷泉模型D智能模型17.适合于形式化开发方法的模型是()A螺旋模型B喷泉模型C智能模型D变换模型18.面向数据流的开发方法是()方法。
软件工程选择题
《软件工程》选择题1.( D )因素促使计算机系统越来越复杂。
A. 计算机内存和存储容量上的巨大增长B. 外部输入/输出选项的更加多样性C. 计算机体系结构方面的深刻变化D. 以上所有选项2.软件会逐渐退化而不会磨损,其原因在于( C )。
A. 软件通常暴露在恶劣的环境下B. 软件错误通常发生在使用之后C. 不断的变更使组件接口之间引起错误D. 软件备件很难订购3.大多数软件仍然是定制开发的,其原因在于( D )。
A. 软件组件重用是十分普遍的B. 可重用的组件太昂贵而无法使用C. 软件在不使用其他组件的情况下很容易构造出来D. 商业组件在很多应用领域中可以得到4.“软件工程”术语是在( B )被首次提出。
A. Fred Brooks的《没有银弹:软件工程中的根本和次要问题》B. 1968年NATO会议C. IEEE的软件工程知识体系指南(SWEBOK)D. 美国卡内基·梅隆大学的软件工程研究所5.软件工程的基本目标是( B )。
A. 消除软件固有的复杂性B. 开发高质量的软件C. 努力发挥开发人员的创造性潜能D. 更好地维护正在使用的软件产品6.( D )是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。
A. 软件产品B. 软件过程C. 软件测试D. 软件工程7.软件工程的基本要素包括方法、工具和( C )。
A. 软件系统B. 硬件环境C. 过程D. 人员8.软件工程师在从事软件工作时应使用下面的( E )准则。
A. 从来不为个人获利而窃取数据B. 从来不散布或出售项目中自己工作的信息C. 从来不故意毁坏或修改别人的程序、文件或数据D. 从来不侵犯个人、小组或组织的隐私E. 以上所有选项9.软件开发过程的基本活动是(A )。
A. 分析、设计、实现、测试、维护B. 沟通、计划、建模、构造、部署C. 计划、分析、设计、实现、调试D. 沟通、风险管理、度量、产品化、评审10.软件开发的瀑布模型是( A )。
软件工程题库(含答案)
软件工程题库(含答案)一、单选题(共60题,每题1分,共60分)1、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( )A、可用性B、正确性C、完整性D、可靠性正确答案:D2、软件特性中,软件从一个计算机系统或环境移植到另一个上去的难易程度指的是( ).A、可移植性B、可理解性C、可重用性D、可修改性正确答案:A3、在软件质量要素的评价准则中,操作该软件的难易程度指的是( )。
A、容错性B、检测性C、可操作性D、安全性正确答案:C4、下列属于维护阶段的文档是( )A、软件问题报告B、用户操作手册C、软件测试分析报告D、软件规格说明正确答案:B5、快速原型模型的主要特点之一是( )A、及早提供工作软件B、开发完毕才见到产品C、及早提供全部完整的软件产品D、开发完毕后才见到工作软件正确答案:C6、可维护性通常包括( )。
A、可用性和可理解性B、可修改性、数据独立性和数据一致性C、可理解性、可修改性和可测试性D、可测试性和稳定性正确答案:C7、软件的可修改性支持软件的( )。
A、可互操作性B、可维护性C、可追踪性D、有效性正确答案:B8、数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( )A、数据通信B、数据定义C、数据维护D、数据库设计正确答案:B9、软件特性中,多个软件元素相互通讯并协同完成任务的能力指的是( )。
A、可追踪性B、可理解性C、可互操作性D、可维护性正确答案:C10、可维护性的特性中相互促进的是( )A、效率和可移植性B、可理解性和可测试性C、效率和结构好D、效率和可修改性正确答案:B11、在软件质量特性中,( )是指在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。
A、可靠性B、易使用性C、正确性D、准确性正确答案:A12、设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X 需要的工作量(时间)。
对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:( )A、信息隐藏和局部化的根据B、逐步求精的根据C、抽象的根据D、模块化的根据正确答案:D13、下列说法中,不正确的是( )。
软件工程选择题
软件工程选择题选择题:1、软件需求分析的任务不包括( C)。
A.问题分析B.信息域分析C.结构化设计D.确定逻辑结构2、在进行需求分析中用到多种描述工具,不包括(C)。
《A.数据流图B.判定表C.PAD图D.数据词典3、软件测试的目的(B)。
A.评价软件的质量B.发现软件的错误C.找出软件中的所有错误&D.证明软件是正确的4、白盒测试法又称为逻辑覆盖法,主要用于( D )。
A.功能测试B.系统测试C.a测试D.单元测试5、结构化分析方法(SA法)使用的主要描述工具有( D)。
A.数据库:B.模块结构图C.PAD图D.分层的DFD图6、在需求分析过程中,需求分析员要从用户那里解决的重要问题是( A)。
A.要求软件做什么的问题B.要给软件提供哪些信息C.要求软件工作效率如何D.要求软件具有什么样的结构,7、UML中,包是一种( C)。
A.集合B.数据结构C.分组机制D.对系统的动态描述8、瀑布模型存在的问题是( B)。
A.用户容易参与开发B.缺乏灵活性。
C.用于与开发者易沟通D.适用可变需求9、在数据流图中,O(椭圆)代表( C )。
A.源点B.终点C.加工D.模块10、确定测试计划是在(A)阶段制定的。
~A.总体设计B.详细设计C.编码阶段D.测试阶段2、结构化程序设计采用的三种基本控制结构是(C )。
A.顺序、分支、选择B.选择、循环、重复C.顺序、选择、循环D.输入、变换、输出.3、在结构化设计中,数据流图的父图与子图的平衡是指子图的输入输出数据流同父图应加工的输入输出数据流(B)。
A.不一致B.一致C.没有一定的关系D.父图包含在子图的数据中4、结构化方法是一种什么的软件开发方法(D )。
A.面向用户B.面向数据结构:C.面向对象D.面向数据流5、DFD中的每个加工至少( B )。
A.一个输出流B.一个输入流和一个输出流C.一个输入流D.一个输入流或一个输出流6、需求分析是回答系统必须( A )。
软件工程复习资料选择题简化版
一、单项选择题1.软件开发旳瀑布模型最经典地刻画了软件生命周期旳阶段划分, 而与其最相适应旳软件开发措施是( C )A 构件化措施B 面向对象措施C 构造化措施D 原型化措施2.与软件开发措施亲密有关旳应是支持该措施实行旳软件工具, 将它们有机地集成起来则构成一种( A )A 软件工程环境B 软件开发规范C 软件生产线D 软件开发工具3.软件生命周期一般可以分为两个大旳阶段, 它们分别是( B )A 分析和设计B 开发和运行C 编码和测试D 规划和设计4.软件构造图能描述软件系统旳总体构造, 它应在软件开发旳哪一种阶段提出?( B )A 需求分析B 总体(概要)设计C 详细设计D 代码编写5.软件需求阐明书中应包括多方面旳内容, 下述哪个不是软件需求阐明书中应包括旳内容?( D )A 数据描述B 功能描述C 性能描述D 构造描述6.软件测试措施一般有黑盒测试和白盒测试, 而黑盒测试重要是根据程序旳( C )旳测试。
A 构造B 流程C 功能D 逻辑7、在面向对象中, 为了实现信息隐蔽而把对象旳所有属性内容和服务旳实现过程结合成为一种独立旳实体。
这种数据组织旳构造方式属于( B )。
A 继承B 封装C 构造与连接D 消息8、在软件旳使用过程中, 根据顾客提出旳新增系统功能和改善性能旳规定而对软件进行修改或再开发, 以扩充软件功能、增强软件性能、改善加工效率、提高软件质量旳工作属于( D )。
A 适应性维护B 防止性维护C 改正性维护D 完善性维护9、耦合性用来度量模块之间联络旳次数和强度, 模块之间旳耦合性越低越好, 内聚性越高越好。
下面哪个属于中度耦合( A )。
P191A 数据耦合B 控制耦合C 外部耦合D 内容耦合10、程序测试是一项复杂旳工作, 一般测试者在进行测试中都需要设计( B )。
A 数据构造B 测试实例C 测试阶段D 测试措施1.软件是一种( B )产品。
A 有形B 逻辑C 物质D 消耗2.软件危机旳重要原因有( C )。
软件工程 考试 选择题带答案
一、选择题(每题2分,共40分)1.软件项目的可行性研究要进行一次( C )需求分析。
A.详细的 B.全面的 C.简化的、压缩的D.彻底的2、系统流程图用于可行性分析中的( A )的描述。
A.当前运行系统B.当前逻辑模型C.目标系统D.新系统3、程序的三种基本控制结构的共同特点是( D )A.不能嵌套使用 B.只能用来写简单程序C.已经用硬件实现D.只有一个入口和一个出口4、维护中,因误删除一个标识符而引起的错误是( C )副作用。
A.文档B.数据C.编码D.设计5、( D )是以提高软件质量为目的的技术活动。
A.技术创新B.测试C.技术创造D.技术评审6、面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。
因此面向对象方法有许多特征,如软件系统是由对象组成的;( C );对象彼此之间仅能通过传递消息互相联系;层次结构的继承。
A.开发过程基于功能分析和功能分解B.强调需求分析重要性C.把对象划分成类,每个对象类都定义一组数据和方法D.对既存类进行调整7、原型化方法是用户和设计者之间执行的一种交互构成,适用于( A )系统。
A.需求不确定性高的B.需求确定的C.管理信息D.实时8、为了提高测试的效率,应该( D )。
A.随机地选取测试数据B.取一切可能的输入数据作为测试数据C.在完成编码以后制定软件的测试计划D.选择发现错误可能性大的数据作为测试数据9、使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。
A.程序的内部逻辑B.程序的复杂结构C.使用说明书D.程序的功能10、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C )A.软件工程B.软件周期C.软件危机D.软件产生11、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( B )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、Software is a set of items or objects that form a “configuration” that includes (D)D. all of the above2、The nature of software applications can be characterized by their information (D)A. complexityB. content~C. determinacyD. choices "b" and "c"3、Which of the items listed below is not one of the software engineering layers(b)a. Processb. Manufacturingc. Methodsd. Tools4、What are the three generic phases of software engineering(a)·a. definition, development, supportb. what, how, wherec. programming, debugging, maintenanced. analysis, design, testing5、Which of these terms is a level name in the Capability Maturity Model(b)a. Ad hocb. Repeatablec. Reusable&d. OrganizedCMM。
它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。
CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。
CMM 分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。
6、In which software development problem solving stage are the results delivered(d)a. Status quob. Problem definitionc. Technical developmentd. Solution integration7、The linear sequential model of software development is(a)&a. A reasonable approach when requirements are well defined.b. A good approach when a working program is required quickly.c. The best approach to use for projects with large development teams.d. An old fashioned model that is rarely used any more.8、The linear sequential model of software development is also known as the (a)a. Classical life cycle modelb. Fountain modelc. Spiral model—d. Chaos model9、The prototyping model of software development is (b)a. A reasonable approach when requirements are well defined.b. A useful approach when a customer cannot define requirements clearly.c. The best approach to use for projects with large development teams.d. A risky model that rarely produces a meaningful product.10、The rapid application development model is (c)a. Another name for component-based development.;b. A useful approach when a customer cannot define requirements clearly.c. A high speed adaptation of the linear sequential model.d. All of the above.11、Evolutionary software process models (d)a. Are iterative in natureb. Can easily accommodate product requirements changesc. Do not generally produce throw away systemsd. All of the above|12、The incremental model of software development is (b)a. A reasonable approach when requirements are well defined.b. A good approach when a working core product is required quickly.c. The best approach to use for projects with large development teams.d. A revolutionary model that is not used for commercial products.13、The spiral model of software development (c)a. Ends with the delivery of the software productb. Is more chaotic than the incremental model{c. Includes project risks evaluation during each iterationd. All of the above14、The component-based development model is(c)a. Only appropriate for computer hardware design.b. Not able to support the development of reusable components.c. Dependent on object technologies for support.d. Not cost effective by known quantifiable software metrics.15、Effective software project management focuses on(c)·a. people, performance, payoff, productb. people, product, performance, processc. people, product, process, projectd. people, process, payoff, product16、The first step in project planning is to (d)a. determine the budget.b. select a team organizational model.c. determine the project constraints.@d. establish the objectives and scope.17、Which factor is the least important when choosing the organizational structure for a software team (d)a. degree of communication desiredb. predicted size of the resulting programc. rigidity of the delivery dated. size of the project budget18、One of the best ways to avoid frustration during the software development process is to (a)a. give team members more control over process and technical decisions.·b. give team members less control over process and technical decisions.c. hide bad news from the project team members until things improve.d. reward programmers based on their productivity.19、Which of these software characteristics is not a factor contributing to project coordination difficulties (b)a. interoperabilityb. performancec. scaled. uncertainty)20、Which of these software characteristics are used to determine the scope of a software project(c)a. context,lines of code, functionb. context, function, communication requirementsc. information objectives, function, performanced. communications requirements, performance, information objectives21、What activity does a software project manager need to perform to minimize the risk of software failure (d)a. double the project team sizeb. request a large budget\c. allow absolutely no schedule slippaged. define milestones and track progress22、Which of these is not a valid reason for measuring software processes, products, and resources (c)a. to characterize themb. to evaluate themc. to price themd. to improve them23、Process indicators enable a software project manager to (d)、a. assess the status of an on-going projectb. track potential risksc. adjust work flow or tasksd. all of the above24、Which of the following items are not measured by software project metrics (b)a. inputsb. marketsc. outputs【d. results25、Which of the following software quality factors is most likely to affected by radical changes to computing architectures (d)a. operationb. transitionc. revisiond. none of the above26、Which of the following provide useful measures of software quality (d)a. correctness, performance, integrity, usability@b. reliability, maintainability, integrity, salesc. correctness, maintainability, size, satisfactiond. correctness, maintainability, integrity, usability27、To be an effective aid in process improvement the baseline data used must be: (b)a. based on reasonable guesstimates from past projectsb. measured consistently across similar projectsc. collected over the past 6 monthsd. based on all previously completed projects-28、The software engineering environment (SEE) consists of which of the following (c)a. customers and usersb. developers and managersc. hardware platforms and software toolsd. none of the above29、LOC-based estimation techniques require problem decomposition based on (c)a. information domain valuesb. project schedule:c. software functionsd. process activities30、FP-based estimation techniques require problem decomposition based on (a)a. information domain valuesb. project schedulec. software functionsd. process activities31、Process-based estimation techniques require problem decomposition based on (c)~a. information domain values and data objectsb. project schedule and milestonesc. software functions and process activitiesd. none of the above32、Software risk always involves two characteristics (c)a. fire fighting and crisis managementb. known and unknown risksc. uncertainty and loss`d. staffing and budget33、Three categories of risks are (b)a. business risks, personnel risks, budget risksb. project risks, technical risks, business risksc. planning risks, technical risks, personnel risksd. management risks, technical risks, design risks34、Risk projection attempts to rate each risk in two ways (c)a. likelihood and cost、b. likelihood and impactc. likelihood and consequencesd. likelihood and exposure35、Risk tables are sorted by (b)a. probability and costb. probability and impactc. probability and consequencesd. probability and exposure]36、An effective risk management plan will need to address which of the following issues (d)a. risk avoidanceb. risk monitoringc. contingency planningd. all of the above37、Which of the following is not one of the guiding principles of software project scheduling (b)a. compartmentalizationb. market assessment*c. time allocationd. effort validation38、A task set is a collection of (a)a. engineering work tasks, milestones, deliverablesb. task assignments, cost estimates, metricsc. milestones, deliverables, metricsd. responsibilities, milestones, documents39、Adaptation criteria are used to determine the (d)a. costs of product maintenanceb. adjustments to the project schedulec. best project type classification for a software processd. recommended degree of rigor for software process40、For purposes of determining the major engineering tasks and distributing them on the project time line, the project manager should assume that the process model used is (d)a. linear sequentialb. iterativec. evolutionary)d. any of the above41、The purpose of earned value analysis is to (b)a. determine how to compensate developers based on their productivityb. provide a quantitative means of assessing software project progressc. provide a qualitative means of assessing software project progressd. set the price point for a software product based on development effort42、A key concept of quality control is that all work products (c)a. are delivered on time and under budget|b. have complete documentationc. have measurable specifications for process outputsd. are thoroughly tested before delivery to the customer43、Software reliability problems can almost always be traced to (b)a. errors in requirements gatheringb. errors in design and implementationc. human errord. errors in operation—44、Which of these are valid software configuration items (d)a. case toolsb. documentationc. executable programs and test datad. all of the above45、Which of the following tasks is not part of software configuration management (c)a. change controlb. reporting—c. statistical quality controld. version control46、Use-cases are scenarios that describe (a)a. how software is to be used in a given situation.b. how CASE tools will be used to construct the system.c. the build plan for a software product.d. the test cases for a software product.47、Information flow represents the manner in which data and control (b),a. are related to one another.b. changes each moves through the system.c. will be implemented in the final design.d. none of the above.48、In the context of requirements analysis, two types of problem partitioning are (b)a. bottom-up and top-downb. horizontal and verticalc. subordinate and superordinate:d. none of the above49、Which of the following is not an objective for building an analysis model (c)a. define set of software requirementsb. describe customer requirementsc. develop an abbreviated简短的solution for the problemd. establish basis for software design50、Which of the following is not an area of concern in the design model (d)a. architecture*b. datac. interfacesd. project scope51、The importance of software design can be summarized in a single word (d)a. accuracyb. complexityc. efficiencyd. quality;52、What types of abstraction are used in software design (d)a. controlb. datac. procedurald. all of the above53、Which of these model types does not represent a software architecture (a)a. datab. dynamic\c. processd. structural54、Which of the following is not part of software architecture (a)a. algorithm detailsb. databasesc. data designd. program structure55、An architectural style encompasses which of the following elements (d))a. constraintsb. set of componentsc. semantic modelsd. all of the above56、The criteria used to assess the quality of an architectural design should be based on system(b)a. accessibility and reliabilityb. data and controlc. functionality】d. implementation details57、In transaction mapping the first level factoring results in the (b)a. creation of a CFDb. derivation of the control hierarchyc. distribution of worker modulesd. refinement of the module view58、A necessary supplement to transform or transaction mapping needed to create a complete architectural design is (c)a. entity relationship diagrams'b. the data dictionaryc. processing narratives for each moduled. test cases for each module59、Which of the following interface design principles reduce the user's memory load (d)a. define intuitive shortcutsb. disclose information in a progressive fashionc. establish meaningful defaultsd. all of the above—60、Interface consistency implies that (d)a. input mechanisms remain the same throughout the applicationb. each application should have its own distinctive look and feelc. navigational methods are context sensitived. answers a and b61、Which of these are objectives for software testing (d)a. determine the productivity of programmersb. eliminate the need for future program maintenance'c. eliminate every error prior to released. uncover software errors62、Black-box testing attempts to find errors in which of the following categories (d)a. incorrect or missing functionsb. interface errorsc. performance errorsd. all of the above63、What is the normal order of activities in which software testing is organized (c)【a. unit, integration, system, validationb. system, integration, unit, validationc. unit, integration, validation, systemd. none of the above64、The first step in any OOA process model are to (c)a. build an object-relationship modelb. define collaborations between objectsc. elicit customer requirements,d. select a representation language65、UML (unified modeling language) analysis modeling focuses on the (d)a. behavioral model and environment modelb. behavioral model and implementation modelc. user model and environmental modeld. user model and structural model:1. Modern software applications are so complex that it is hard to develop mutually exclusive category names.(a)a. Trueb. False2. Software developers succeed more often than they fail, but software failures receive more press coverage.(a)a. Trueb. False3. Adding more people to a project that is already behind schedule is a good way to catch up. (b) ]a. Trueb. False4. Modern CASE tools are more important than the newest hardware for achieving good softwarequality and productivity.(a)a. Trueb. False5. Change cannot be easily accommodated in most software systems, unless a system was designed with change in mind.(a)a. Trueb. False:6. A general statement of objectives is all that is needed to begin developing a piece of software.(b)a. Trueb. False7. The formal technical review is an inadequate substitute for testing regardless of nature of the software defect.(b)a. Trueb. False8. Software engineering encompasses a process,methods for managing and engineering software,and tools.(a)a. Trueb. False9、The goals of review is to find errors.(b)a. Trueb. False10、The goals of testing is to find defects.(b)a. Trueb. False1、What is a software processAnswer:It is a framework for the activities, action, and tasks that are required to build high-quality software.2、What are the elements of a software process frameworkAnswer:Framework activities includes work tasks,work products,milestones & deliverables,QA checkpoints and Umbrella Activities.3、What are the five generic process framework activitiesAnswer:Communication: with customers, stakeholders, teamPlanning: for the workflow that is to followModeling: to advance the understanding of requirements,includes Analysis of requirements and DesignConstruction:combines code generation and testingDeployment: delivery to the customer for evaluation4、What are the elements of a design modelAnswer:Data/class design,architectural design,interface design and component-level design5、What are the five Quality AttributesAnswer:FunctionalityUsabilityReliabilityPerformanceSupportability6、What are the elements of Software Quality AssuranceAnswer:Standards,reviews and audits,testing,error/defect collection and analysis,change management,education,vendor management,security management,safety,risk management7、List 3 principles for scheduling software projects.Answer:Compartmentalization, interdependency, time allocation, effort validation, defined responsibilities, defined outcomes, defined milestones8、What is a formal technical reviewAnswer:The purpose of an FTR is to have a group of software engineers examine a discrete work product and determine whether or not the product is free of defects using the software specifications and standards as the review criteria.9、What are the five phases of software requirements analysisAnswer:Problem recognitionEvaluation and synthesisModelingSpecificationReview10、Describe the object-oriented software domain analysis process.Answer:Software domain analysis is the identification, analysis, and specification of common, reusable capabilities within a specific application domain in terms of common objects, classes, subassemblies, and frameworks.。