选择题
1.下面哪项不属于软件工程方法学的要素(B)
A、方法 B、模型 C、工具 D、过程
(知识点)软件工程三要素:方法、工具、过程
2.面向对象方法学具有(D)个要点。
A、1 B、2 C、3 D、4
(知识点)面向对象要点:对象,类,继承,封装
3.(B)是软件开发过程中普遍存在的一种内在现象。
A、综合 B、迭代 C、建模 D、归纳
4.数据流图具有(D)种最基本的符 。
A、1 B、2 C、3 D、4
(知识点)“→”箭头,表示数据流; 〇:圆或椭圆,表示加工; =:双杠(带一边开口,一边闭合),表示数据存储; □:方框,表示数据的源点或终点。
5.(C)是软件定义时期的最后一个阶段。
A、问题定义 B、总体设计 C、需求分析 D、可行性研究
(知识点)软件定义时期:问题定义、可行性研究(可行性研究 告)、需求分析(软件需求规格说明书)、概要设计、详细设计、编码和单元测试、综合测试、运行维护
6.下列哪项不属于应用形式化方法的准则(C)。
A、应该估算成本 B、应该建立详细的文档 C、可以放弃质量标准 D、应该重用
(知识点)(1)应该选用适当的表示方法。(2)应该形式化,但不要过分形式化。(3)应该估算成本。(4)应该有形式化方法顾问随时提供咨询。(5)不应该放弃传统的开发方法。(6)应该建立详尽的文档。(7)不应该放弃质量标准。(8)不应该盲目依赖形式化方法。(9)应该测试、测试再测试。(10)应该重用。
- 下列哪项不是模块独立性很重要的理由(B)。
A、比较容易开发软件 B、能够增强耦合程度
C、比较容易测试和维护 D、功能容易扩充
8.下列哪项不属于描绘软件结构的图形工具(A)。
A、层次方框图 B、层次图 C、HIPO图 D、结构图
(知识点)层次方框图用来描绘数据结构
9.下列哪项不属于三种基本控制结构(C)。
A、顺序 B、选择 C、调用 D、循环
10.用户界面设计是一个(A)的过程。
A、迭代 B、循环 C、顺序 D、变化
11.当算法中包含多重嵌套的条件选择时,最好使用(C)。
A、程序流程图 B、盒图 C、判定表 D、PAD图
12.(B)图既能表达数据结构,也能表达程序结构。
A、数据流 B、Jackson C、层次方框 D、IPO
(知识点)Jackson方法是一种面向数据结构的设计方法。
13.环形复杂度等于(C)是模块规模的一个更科学更精确的上限。
A、12 B、11 C、10 D、9
14.软件可靠性模型使用故障率数据,估计软件将来出现故障的情况并预测软件的(B)。
A、可维护性 B、可靠性 C、可修改性 D、可移植性
15.子系统测试和系统测试又称为(C)测试。
A、单元 B、验收 C、集成 D、计算机
(知识点)集成测试针对的是模块之间的关系.子系统测试主要测试模块间的相互协作和通信. 系统测试=集成测试
16.通常边覆盖和(B)标准一致。
A、语句覆盖 B、判定覆盖 C、条件覆盖 D、组合覆盖
(知识点)与判定覆盖区别
17.通常可以通过描述软件交付使用后可能进行的活动有(D)项。
A、1 B、2 C、3 D、4
(知识点)改正性维护、适应性维护、完善性维护和预防性维护
18.软件工程学的主要目的是提高软件的(C),降低维护的代价。
A、可测试性 B、可理解性 C、可维护性 D、可设计性
19.对象={ID,MS,DS,MI},其中DS指的是(C)。
A、对象的名字 B、操作集合 C、对象的数据结构 D、消息名集合
(知识点)ID:对象标识或名字 MS:操作集合 DS:对象的数据结构 MI:对象受理的消息名集合(即对外接口)
20.一个消息由3部分组成,下列哪项不属于消息的组成成分(C)。
A、接收消息的对象 B、消息选择符 C、实现代码 D、零个或多个变元
21.用面向对象的方法开发软件,通常需要建立3种形式的模型,下列哪一种不属于需要建立的模型(C)。
A、对象模型 B、动态模型 C、ER模型 D、功能模型
(知识点)ER模型是实体联系图,主要用于数据
22.一幅用例图不包括(B)。
A、系统 B、数据流 C、行为者 D、用例
(知识点)用例,角色,关系, 系统边界.数据流应该在数据流图里.
23.UML是(A)批准的基于面向对象技术的标准建模语言。
A、OMG B、BIC C、BODD D、OMA
24.复杂系统的对象模型通常由5个层次组成下列不属于其中的组成部分是(B)。A、主题层 B、逻辑层 C、属性层 D、服务层
(知识点)1.主题层2.类与对象层3.结构层4.属性层5.服务层
25.筛选正确的类与对象时,哪项不需要我们考虑(D)。
A、无关 B、操作 C、实现 D、结构
26.完整、正确的脚本为建立(B)模型奠定了必要的基础。
A、对象 B、动态 C、功能 D、用例
A、2 B、3 C、4 D、5
10、下属哪一个选项不属于黑盒测试的检查范围(C )br> A、在接口上,输入能否正确地接受能否输出正确的结果br> B、性能上是否能够满足要求C、程序是否容易被理解
D、是否有数据结构错误或外部信息访问错误br> 11、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是(C )
A、条件覆盖法 B、等价分类法 C、边界值分析法 D、错误推测法
12、黑盒测试不能发现以下类型的错误(D )
A、不正确或遗漏的功能 B、接口错误
C、行为或性能错误 D、内部代码的具体错误
13、软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(D )。
A、结构合理性 B、软件外部功能 C、程序正确性 D、程序内部逻辑
14、以下说法错误的是(A )。
A、成功的测试是指发现程序的所有错误 B、测试不能证明程序是正确的
C、测试不能证明程序中没有错误 D、测试是为了发现程序中的错误
15、下列不属于单元测试内容的选项是( D)。
A、边界条件测试 B、模块接口测试 C、重要执行路径测试 D、压力测试
16、下列说法错误的是(A )。
A、桩模块用于模拟主程序功能,用于向被测模块传递数据,接收、打印从被测模块返回的数据
B、系统测试是从用户使用的角度来进行的测试,主要工作是将完成了集成测试的系统放在真实的运行环境下进行测试,用于功能确认和验证
C、系统测试基本上使用黑盒测试方法
D、系统测试的依据主要是软件需求规格说明书
17、在软件测试中,首先对每个模块分别进行单元测试,再把所有的模块按照设计要求组装在一起,称为(D )。
A、确认测试 B、系统测试 C、黑盒测试 D、集成测试
18、用白盒测试设计测试用例的方法包括( C)
A、错误推测 B、状态测试 C、基本路径测试 D、边界值分析
19、关于软件测试基本概念描述错误的是(D )。
A、软件测试方法分为静态分析法和动态测试法
B、软件测试通常很难用“穷举法”进行测试
C、软件测试的基本步骤的顺序依次为:单元测试、集成测试、系统测试、验收测试。
D、白盒法是一种静态分析方法,可尽可能早的发现缺陷,主要用于模块测试
20、下列不属于静态分析方法的是(D )。
A、桌面检查 B、代码会审 C、走查 D、白盒法
21、白盒法中的覆盖标准描述不正确的是( C)。
A、语句覆盖是指选择足够的测试用例,使得程序中每个语句至少都能被执行一次
B、判断覆盖是指执行足够的测试用例,使每个判定至少都获得一次“真”值和“假”值
C、条件覆盖是指执行足够的例子,使得每个判定中条件的各种可能组合都至少出现一次
D、判定/条件覆盖是指执行足够的测试用例,使得判定中每个条件取到各种可能的值,并使每个判定取到各种可能的结果
22、下列说法错误的是( A)。
A、等价类划分法属于白盒测试法 B、边界值分析法属于黑盒测试法
C、条件覆盖属于白盒测试法 D、分支覆盖属于白盒测试法
23、若有一个程序,它的输入文件可有1-255个记录,则设计用例:文件的记录数为 0个、1个、255个、256个。设计这组测试用例的方法是(C )。
A、条件覆盖法 B、等价分类法 C、边界值分析法 D、错误推测法
24、以下针对V模型的描述不正确的是( D)。
A、单元测试对应的开发活动是详细设计
B、集成测试对应的开发阶段是概要设计
C、系统测试对应的开发活动是需求分析
D、验收测试对应的开发活动是详细设计
25、下列说法错误的是(A )。
A、验收测试是从开发者的角度检查系统是否满足需求分析规格说明书
B、在等价分类法中,一个测试用例只能覆盖一个无效等价类
C、单元测试的主要目的是验证软件模块是否按详细设计的规格说明正确运行
D、集成测试的主要目的是检查多个模块间是否按概要设计说明的方式协同工作
26、关于回归测试说法不正确的是( A)。
A、在修正发现的软件缺陷后,只要认真设计修改,不需要对变化的部分再进行测试
B、回归测试是指有选择地重新测试系统或其组件,以验证对软件的修改没有导致不希望出现的影响
C、回归测试需要测试所有新集成的程序
D、回归测试需要测试所有修改或者修正过的程序
27、关于集成测试说法不正确的是( D)。
A、集成测试以黑盒法为主 B、集成测试在单元测试完成以后进行
C、自顶而下增量集成的优点是能够尽早发现系统主控方面的问题
D、自底而上增量集成的优点是能够尽早发现系统主控方面的问题
28、由软件预发行的最终客户们在一个或多个客户场所对软件进行的测试,称为(A )。A、β测试 B、集成测试 C、平行运行 D、α测试
填空题
- 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
- (软件过程) 是为了获得高质量软件所需要完成的一系列任务的框架。
- 系统流程图实质上是 (物理) 数据流图。
- ER模型可以作为(用户)与分析员之间有效的交流工具。
- 第二范式满足第一范式条件,而且每个非关键字属性都由整个关键字决定。
- 并发系统中遇到的一个主要问题是(定时)问题。
- 形式化的规格说明消除了(二义性),从而可以减少差错。
- 需求分析阶段得出的(数据流图)是总体设计的极好的出发点。
- 软件工程师应该在需求分析阶段所确定的系统数据需求的基础上,进一步设计(数据库)。
- 面向数据流的设计方法是把信息流映射成(软件结构)
- 程序的质量和GO TO语句的数量成(反比)。
- (易变性)指系统响应时间相对于平均响应时间的偏差。
- 人机界面设计是(接口)设计的一个重要组成部分。
- 通常把(编码)和测试统称为实现。
- (黑盒)测试法把程序看做是一个黑盒子,完全不考虑程序的内部结构和处理过程
- (验收)测试也称为确认测试。
- 集成测试主要目标是发现与(接口)有关的问题。
- 通常(白盒)测试在测试过程的早期阶段进行。
- 软件(可靠性)是程序在给定的时间间隔内,按照规格说明书的规定成功运行的概率
- 通常把诊断和改正错误的过程称为(改正)性维护。
- 传统的软件开发方法以算法为核心,开发过程基于功能分析和(功能分解)。
- 面向对象的软件技术在利用(可重用)的软件成分构造新的软件系统时,有很大的灵活性。
- 在C++中,多态性是通过(虚函数)来实现的。
- 如果在聚集关系中处于部分方的对象可以同时参与多个处于整体方对象的构成,则该聚集称为(共享)聚集。
- 与多重继承相反的是(不相交)继承。
- 面向对象方法学认为,客观世界由(对象)组成。
- 在用面向对象观点建立起的3种模型中,(对象模型)是最基本,最重要,最核心的。
- (主题)是指导读者理解大型、复杂模型的一种机制。
- 确定了类中应该定义的属性之后,就可以利用(继承)机制共享公共性质。
- 对于仅存储静态数据的系统来说,(动态)模型并没有什么意义,但它在开发交互式系统时却起着很重要的作用。
- 我们可以把面向对象设计分为系统设计和(对象)设计
- 由于类的封装性,使用者无须了解实现细节就可以使用适当的(构造)函数,按照需要创建类的实例。
- 把子系统组织成完整的系统时,有水平层次组织和(垂直块)组织两种方案可供选择
- 在面向对象设计过程中,应该对系统的人机(交互)子系统进行详细设计
- 关系数据库管理系统的理论基础是(关系代数)。
- 面向对象分析得出的对象模型,通常并不详细描述类中的(服务)。
- 如果关联的重数是多元的,则需要用一个(指针集合)实现关联。
- 可以通过增加(冗余)关联提高访问效率。
- 仅当存在真实的一般-特殊关系时,利用(继承)机制实现行为共享才是合理的。
- 更完整的类库通常还提供了独立于具体设备的(接口)类。
- 所谓(参数)类,就是使用一个或多个类型去参数化一个类的机制。
- 测试面向对象的软件时,应该把操作作为(类)的一部分来测试。
- 开始集成面向对象系统以后,必须对(类间协作)进行测试。
- (软件项目管理)先于任何技术开始之前开始,并且贯穿于软件的整个生命周期之中。
- 如果把项目(持续时间)延长一些,则可降低完成项目所需的工作量。
- (云班)按照(软件开发工作的主体),可以将软件生存周期过程分为基本过程、支持过程和组织过程。
判断题 - 软件开发和维护过程中存在很多严重问题,这与软件的规模有关。(×)
- 导出软件结构属于典型的可行性研究过程(×) (知识点)(1) 确定项目规模和目标(2) 研究正在运行的系统(3) 建立新系统的逻辑模型(4) 导出和评价各种方案(5) 推荐可行性方案(6) 编写可行性研究 告(7) 递交可行性研究 告
- 面对复杂的系统时,一个比较好的方法是分层次地描绘这个系统。(√)
- 数据字典是开发数据库的第一步,而且是很有价值的一步。(√)
- 层次方框图不能代表完整的数据结构。(×)
- 不需要验证需求的现实性(×)
- 所谓形式化方法,是描述系统性质的基于数学的技术。(√)
- 总体设计过程通常由两个主要阶段组成,其中系统设计阶段确定软件结构(×)
- 简单地说,理想的内聚模块只做一件事情。(√)
- 一个模块的扇出表明有多少个上级模块直接调用它。(×)
- 层次图方框间的连线表达的是组成关系。(×)
- 结构图中箭头尾部是实心圆表示传递的是控制信息。(√)
- 面向数据结构的设计方法的目标是给出设计软件结构的一个系统化的途径。(×)
- 优化是先使它快起来,再使它工作起来。
- 任何流图的环形复杂度都等于判定节点的数目加1。(×)
- 软件测试的目的是发现并改正错误。(×)
- 调试的目标是充分暴露程序当中的错误。(×)
- 所有测试都应该追溯到用户的需求(√)
- 白盒测试又称为功能测试。(×) (知识点)白盒测试也称为结构测试,主要用于检测软件编码过程中的错误。黑盒测试又称为功能测试,主要检测软件的每一个功能是否能够正常使用。
- 如果一个人是程序的设计者又是编写者,或是程序的编写者又是测试者,则审查小组应该再增加一个程序员。(√)
- Alpha测试由软件的最终用户们在一个或多个客户场所进行。(×)
- 类中定义的方法,是允许施加于该类对象上的操作。(√)
- 对面向对象的软件进行维护,主要通过从已有类派生出一些新类来实现。(√)
- 对象本质上具有并行性。(√)
- 在C++中,函数重载是通过动态联编来实现的。(×)
- 细化关系描述了两个模型元素之间的语义连接关系。(×)
- 实际上,用面向对象方法开发软件时,阶段的划分是十分模糊的。(√)
- 系统分析员必须把需求与实现策略区分开(√)
- 需求陈诉应该阐明怎么做而不是做什么。(×)
- .在建立对象模型的过程中,服务一定要确定下来。(×)
- 事件追踪图中箭头线之间的距离表示两个事件之间的精确时间差。(×)
- 我们应该降低继承耦合的强度(×) (知识点)与交互耦合相反,继承的耦合程度要高。
- 紧密的继承耦合与高度的一般-特殊内聚是不一致的。(×)
- 使用面向对象方法开发软件时,在分析和设计之间并没有明确的分界线。(√)
- 在提高可扩充性的过程中,应该用一种方法遍历多条关联链。(×)
- 面向对象系统的确认测试是面向白盒的。(×)
- 正确性证明过程本身也可能发生错误。(√)
- (云班)支持过程是指那些与软件生产组织有关的活动集。 (×)
- (云班)软件生存周期的含义是表明软件的演化和发展具有周期性,每过一段时间就需要更新。(×)
- (云班)当软件的一个版本被淘汰时,则该软件的生存周期就结束了 (×)
- (云班)软件生存周期过程表示软件生存周期内的一个过程。 (×)
- (云班)软件生存周期模型是对软件生存周期中过程、活动和任务的组织。(×)
- (云班)软件开发模型是软件开发过程的活动和任务的结构框架。(×)
- (云班)软件生存周期模型必须要将所有类型的过程、活动和任务考虑在内,形成满足每个软件项目需要的模型。(×)
- (云班)模型一定是在某种特定意图下,从某种特定的角度物理环境的抽象(√)
- (云班)软件开发中分层的基本动机时空之开发的复杂性(√)
- (云班)相比硬件而言,软件更容易被修改,而且更容易被正确的进行修改(×)
- (云班)采用瀑布模式的开发过程是一种自顶向下的开发方法,而软件构件复用的开发过程是一种自底向上的开发方法(√)
- (云班)任何软件开发过程必须从软件需求入手(√)
- (云班)软件需求时代开发产品或系统的功能描述(×)
- (云班)质量属性必须要给出量化的测量指标(√)
- (云班)非功能需求必须依附于功能需求而存在(√)
- (云班)面向对象就是一种使用面向对象程序设计语言的程序开发方法(×)
- (云班)一个类中可以有多个操作,也可以没有操作(√)
- (云班)所有的类都必须与客观事物相对应,都必须有具体的实例(×)
- (云班)接口之间没有关联、泛化、实现和依赖,也不能参与泛化、实现和依赖关系(×)
- (云班)接口不仅可以描述类的外部可见操作,而且可以描述其内部结构(×)
- (云班)软件开发中分层的基本动机是控制开发的复杂性(√)
- (云班)支持过程是指那些与软件生产组织有关的活动集(×)
- (云班)软件生存周期模型是对软件生存周期中过程、活动和任务的组织(√)
- (云班)包间的依赖通常隐含了各包种元素之间存在的一个或多个依赖(√)
- (云班)包可以包含其他种类的模型元素,但本身不能嵌套在其他包中(×)
- (云班)对于关联另一端的类的每个对象,本端的类只可能会有一个对象出现(×)
- (云班)在类的一个关联中,可以显示地命名该角色(√)
- (云班)在关联关系中,聚合是组合的一种特殊形式(×)
- (云班)对于每一个关联关系都需要说明其多重性,如果不说名,则默认是(√)
- (云班)注解和约束不是类图的一部分(×)
- (云班)类图主要使用“类”来抽象系统中各个组成部分,不包括系统环境(×)
- (云班)OOA过程中建立模型规约可以集中进行,也可以分散在各个活动中(√)
- (云班)OOA的最终目的是产生一个只能直接反映问题域的OOA模型(×)
- (云班)如果一个交互是由系统外的参与者发起的,第一个处理该监护的对象是主动对象(√)
- (云班)与实现条件有关的对象是OOA阶段需要重点关注的对象(×)
- (云班)在对象分类过程中,对于属性及操作相似的类需要考虑能够抽出一个一般类或部分类(√)
- (云班)依赖关系是一种使用关系,如果被使用的类发生变化,那么另一个类的操作也会受到影响(√)
- (云班)在OOA过程中,不需要考虑任何主动对象和主动操作(×)
- (云班)一个类的属性必须适合这个类和他的全部特殊类的所有对象,同时,一个类中的操作也应适合这个类及其所有特殊类的每一个对象实例(√)
- (云班)OOA过程中,为了提高操作的执行速度,可以考虑增加一些属性来保持操作的阶段性执行结果(×)
- (云班)依赖关系是一种使用关系,如果被使用的类发生变化,那么另一个类的操作也会受到影响(√)
- (云班)在初步建立类之间的关系时,可以暂时使用关联。在最终的类图中,若能用其他关系明确地指明类之间关系的含义,就不要适用关联(×)
- (云班)关联关系可用动词或动宾结构来命名,关联的命名不可缺省(×)
- (云班)两个对象之间的关联关系只能有一个(×)
- Q(云班)与结构化的分析和设计类似,面向对象的分析和设计之间也存在一定的鸿沟(×)
- (云班)OOD模型的四个部分均采用与OOA一致的概念、表示法、活动及策略(×)
- (云班)所有的实现因素都能通过一些在OOD中新定义的独立组成部分而实行有效的隔离(×)
- (云班)在OOA中未完成的细节定义需要在OOD完成,所以OOD的主要任务是对OOA 的细化(×)
- (云班)OOA强调如实地反映问题域,OOD考虑实现问题,当所用语言不支持多继承和多态,此时需要按编程语言调整多继承和多态。(×)
- (云班)人机交互的设计需要重点考虑比例最大的适用人群的情况,并适当的兼顾其他人(√)
- (云班)人机交互是OOD阶段的任务,在OOA阶段不需要考虑(×)
- (云班)人机交互的交互内容需求不仅与系统的功能需求有关,而且与人的主观意识也有很大的关系(×)
- (云班)人机交互部分的设计可以从use case 抽取人机交互内容及过程,在抽取过程中需要删除所有与输入输出无关语句。(√)
简答题 - 软件重用可以分为哪几个层次br> (1)知识重用 (2)方法和标准重 (3)软件成分重用
- 软件过程的输出信息可分为br> (1)计算机程序(2)描迹计算机程序的有关文档(3)数据
3.什么是多重继承
指的是一个类别可以同时从多于一个父类继承行为与特征的功能。与单一继承相对 - 什么是软件工程br> 软件工程是一门指导软件系统开 发的工程学科,它以计算机理论及其他相关学科的理论为指导,采用工程化的概念、原理、技术和方法进行软件的开发和维护,把经实践证明的科学的管理措施与最先进的技术方法结合起来,软件工程研究的目标是“以较少的投资获取高质量的软件
(1)把系统的,规范的,可度量的途径应用于软件开发.运行和维护过程,也就是把工程应用于软件.
(2)研究上面所述途径
5.什么是软件危机何解决br> 指在计算机软件开发和维护过程中所遇到的一系列严重问题
(1)吸取和借鉴人类长期以来从事各种工程项目的积累,特别是经验教训
(2)研究探索更好的方法,尽快消除一些错误概念和做法
(3)采取严密的管理,做好各类文档的一致性完整性
6.至少可以从哪些方面研究每种解法的可行性
(1)技术可行性 (2)经济可行性 (3)操作可行性
7.应从哪些方面验证需求的正确性br> (1)一致性 (2)完整性 (3)现实性 (4)有效性 (5)精确性
8.什么是形式化方法br> 基于数学描述系统性质的技术. 形式化=有坚实的数学基础
9.总体设计阶段,完成的文档有哪几种br> (1)系统说明 (2)用户手册 (3)测试计划 (4)详细的实现计划(5)数据库设计结果
10.代码省查比计算机测试的优越性表现br> (1)减少工作量,提高效率.计算机测试发现错误后,需改正错误才能继续测试,错误是一个个发现并改正,但省查一次就可以查很多错误.
11.有哪几种维护活动br> (1)改正性维护 (2)适应性维护 (3)完善性维护 (4)预防性维护
12.面向对象方法学有哪些优点br> (1)与人类习惯的思维一致 (2)稳定性好 (3)可重用性好(4)较易开发大型软件产品
13.类与类之间有那几种联系br> (1)关联 (2)继承 (3)依赖 (4)细化
14.大型系统对象模型层次组成br> (1)主题层 (2)类与对象层 (3)结构层 (4)属性层 (5)服务层
15.测试单个类的方法有哪些br> (1)随机测试 (2)划分测试 (3)基于故障的测试
16.能力成熟度的5个等级br> (1)初始级 (2)可重复级 (3)已定义级 (4)已管理级 (5)优化级
17.(云班)与计算机硬件相比,计算机软件有哪些特点br> (1)具有抽象性 (2)没有明显的制造过程 (3)存在退化问题
(4)对计算机系统有着不同程度的依赖性 (5)尚未完全摆脱人工的开发方式
(6)软件本身是复杂的 (7)软件成本相当昂贵( 8)相当多的软件工作涉及 会因素
18.(云班)软件工程的基本原则br> (1)达到要求的软件功能。 (2)取得较好的软件性能。 (3)开发出高质量的软件。
(4)付出较低的开发成本 (5)需要较低的维护费用 (6)能按时完成开发工作,及时交付使用。
19.(云班)软件工程研究的内容br> 软件工程的研究内容主要包括以下两个部分: 软件开发技术。主要研究软件开发方法、软件开发过程、软件开发工具和环境。 软件开发过程管理。主要研究软件工程经济学和软件管理学。 - (云班)软件工程的三要素br> (1)方法。(2)工具。(3)过程
- (云班)软件工程的目标br> (1)达到要求的软件功能。(2)取得较好的软件性能。(3)开发出高质量的软件。
(4)付出较低的开发成本。(5)需要较低的维护费用。(6)能按时完成开发工作,及时交付使用。
22.(云班)软件开发方法有哪几种br> (1)结构化方法。(2)面向数据结构方法。 (3)面向对象方法。(4)形式化方法。
23.(云班)什么是软件过程模型哪些主要模型br> (1)软件过程模型是软件开发全部过程、活动和任务的结构框架,直观表达软件开发全过程,明确规定要完成的主要活动、任务和开发策略。
(2)软件过程主要模型:瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型、统一过程弄醒、基于构件的模型、敏捷开发模型等。
24.(云班)为什么增量式开发适合商务软件适合实时控制系统吗br> (1)增量式开发适合商务软件的原因:能够及早投入市场;产品逐步交付能够较好地适应需求变化;开发中能够看到软件中间产品,提出改进意见,减少返工,降低开发风险;开放式体系结构便于维护
(2)增量式开发不适合实时控制系统,原因:实时控制系统通常需求明确且稳定,技术相对成熟,对软件质量要求高,要求严格的工程管理。 - Q(课堂)多态和重载的区别br> 重载是指相同的操作名在同一个类中可以被定义多次,按参数的个数、种类或次序等的不同对他们进行区分
多态是指在继承结构中,具有相同的属性和操作,在不同的类中可以具有不同的类型和行为。 - (课堂)结构化分析方法br> (1)数据流图指出当数据在软件系统中移动识被怎样变换,以及描绘变换数据流的功能和子功能,用于功能建模。
(2)实体—关系图(E-R图)庙会数据对象之间的关系,用于数据建模
(3)状态转换图指明了作为外部事件结果的系统行为,用于行为建模 - (课堂)软件生命周期的阶段br> (1)可行性研究 (2)需求分析 (3)软件设计(4)编码(5)软件测试 (6)软件维护
第一章作业
1、什么是软件工程br> 参考答案:(1)将系统化的、规范的、可量化的方法应用于软件的开发、运行和维护,即将工程化方法应用于软件。(2)在(1)中所述方法的研究。
第二章作业
1、什么是软件过程模型哪些主要模型(回答4种以上)br> 参考答案:(1)软件过程模型是软件开发全部过程、活动和任务的结构框架,直观表达软件开发全过程,明确规定要完成的主要活动、任务和开发策略。
(2)软件过程主要模型:瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型、统一过程弄醒、基于构件的模型、敏捷开发模型等。
2、为什么增量式开发适合商务软件适合实时控制系统吗br> 参考答案:(1)增量式开发适合商务软件的原因:能够及早投入市场;产品逐步交付能够较好地适应需求变化;开发中能够看到软件中间产品,提出改进意见,减少返工,降低开发风险;开放式体系结构便于维护;
(2)增量式开发不适合实时控制系统,原因:实时控制系统通常需求明确且稳定,技术相对成熟,对软件质量要求高,要求严格的工程管理。
第三章作业
1、什么是结构化分析方法方法使声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!