长江大学软件工程试卷+答案
软件工程试题(附答案)

《软件工程》作业班级2000(春)计算机本科姓名罗国南学号001000490 成绩____________一、判断题可行性研究的最根本的任务是对以后的行动方针提出建议。
√PDL语言是详细设计的重要工具,可方便地实现程序的自动生成。
√模块的控制域应该在作用域之内。
面向对象方法把对象作为数据及可以施加在这些数据上的操作所构成的统一体。
√软件是一种逻辑实体,而不是具体的物理实体。
√软件测试时经常要输入无效的,不合理的数据进行测试。
√高级程序设计语言从应用的角度看,可以分为基础语言、结构化语言和专用语言三大类。
√软件维护的前提是不能失去原有软件的基本功能。
√Gantt图可以明确地表示出各子任务之间的依赖与制约关系。
×与其它开发的方法相比较,结构化方法的主要优点之一是对用户需求的变更响应迅速。
×适应性维护的目的是为了适应计算机软、硬件环境的变化。
√系统流程图可以描述系统的逻辑模型,它的基本思想是用图形符号以黑盒子形式描绘系统里的每个部件。
×工程网络图可以描绘各子任务作业的工作时间和可以机动(延长)时间。
√在面向对象方法中,对象是进行处理的主体。
√调试是在测试出错误之后,找到错误的位置并改正的过程。
√不允许使用GOTO语句是结构程序的特征。
×面向对象技术的最大优点是减少了软件的开发时间。
×用盒图和PAD图设计出来的算法必定是结构化的。
√逻辑输入数据流是离物理输入端最远,且沿同一输入路径输入的数据流。
√可行性研究的结果有可能将软件开发项目否定。
√在面向对象方法学中,使用“对象”不仅需要知道它向外界提供的接口形式,而且必须知道它的内部实现算法。
×传统的流程框图不能用来进行结构化程序设计。
×一个模块执行时,必须引用另一个模块的某些数据,则这个模块的独立性不强。
√成功的测试是没有发现错误的测试。
×改正性维护是改正软件中测试阶段未发现的错误。
软件工程期末考试参考题及答案

一、填空题(每空1分, 共20分)1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。
2.按软件旳功能进行划分, 软件可以划分为系统软件、支撑软件和应用软件。
3.可行性研究重要集中在如下四个方面经济可行性、技术可行性、法律可行性和抉择。
4.顾客界面旳可使用性是顾客界面设计最重要旳也是最基本旳目旳。
5.常见旳软件概要设计措施有3大类: 以数据流图为基础构造模块构造旳___构造化设计措施_________, 以数据构造为基础构造模块旳__jackson措施__________, 以对象、类、继承和通信为基础旳__面向对象设计措施__________。
6.__数据流图________和__数据字典___共同构成系统旳逻辑模型。
7.软件测试旳措施有__分析措施________和___非分析措施_______(即黑盒法)。
8.单元测试一般以___白盒_____________测试为主, ___黑盒______测试为辅。
9.成本估计措施重要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。
二、单项选择题(每题2分, 共10分)1.下列哪个阶段不属于软件生存周期旳三大阶段( C )。
A.计划阶段B.开发阶段2. C.编码阶段 D.维护阶段3.需求分析是(A )。
A. 软件开发工作旳基础B. 软件生存周期旳开始C. 由系统分析员单独完毕旳D. 由顾客自己单独完毕旳原型化措施是软件开发中一类常用旳措施, 它与构造化措施相比较, 更需要( B )。
A. 明确旳需求定义B.完整旳生命周期C、较长旳开发时间D、纯熟旳开发人员软件维护时, 对测试阶段未发现旳错误进行测试、诊断、定位、纠错, 直至修改旳回归测试过程称为( A )。
A、改正性维护B、适应性维护C、完善性维护D、防止性维护一般说来, 投入运行旳软件系统中有错误(A )。
《软件工程》试卷参考答案

考试试卷课程名称:软件工程一、选择题1、软件是一种实体。
A.有形的C.虚拟的答案:D 2、在一个用面向对象编程语言实现的软件系统中,当一个对象内的一个方法被激活,则称之为向该对象发送-A.命令B.代码C.消息D.数据答案:C 3、在整个软件过程中,哪个阶段花费最长的时间和最多的成本?A.分析B.设计C.实现D.维护答案:D 4、是语义上相连的、由边界符号界定的、由一个聚合标识符标识的一系列程序语句。
A.for 循环B.模块C.if 语句D.文件答案:B 5、好的软件设计,模块应该是。
A.低内聚、高耦合B.低内聚、低耦合C.r¾内聚、低耦合D.高内聚、高耦合答案:C6、针对下面这个用例图,哪个说法是错误的?B.物理 D.逻辑A.学生能够与系统中的用例A交互。
B.用例A的成功执行必须包括用例B的成功执行。
C.如果用例A执行,用例C也必须执行。
D,用例C可能不被激活。
答案:C7、顺序图与协作图都是图。
A.交互B.状态C.协作D.顺序答案:C8、以下关于软件系统中的实体的说法,哪个是正确的?A.实体类必须有属性。
B.实体类必须是实实在在的物理实体。
C.实体类不与逻辑类和边界类打交道。
D,用例图中的参与者是系统的外部,所以参与者肯定不能成为软件系统内部的实体类。
答案:A9、以下哪个是自顶向下实现与集成的缺点?A.逻辑模块得不到充分的测试。
B.操作模块得不到充分的测试。
C.主要设计错误发现的晚。
D.故障隔离。
答案:B10、软件测试oA.谁都能做,不需要计划和技术B.对于高水平的软件开发团队来说是不需要的,或可有可无的C.是紧接在实现阶段后面的一个阶段D.包括可执行测试和非执行测试答案:D11、使软件系统适应新的操作系统而做的维护是维护。
A.纠错性维护B.完善性维护C.适应性维护D.哪个也不是答案:C128、以下哪个软件生命周期模型是最好的?A.瀑布模型B.快速原型模型C,增量模型D.不能简单地比较优劣,要具体情况具体分析答案:D13、多态与动态绑定是所特有的。
软件工程试题与答案

一、填空1.结构化分析方法的分析策略是。
2.衡量模块独立性的两个定性标准是耦合性与内聚性。
3.软件集成测试的方法主要有两种,它们是渐增式与非渐增式测试。
4.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目是否值得开发。
5•需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是功能需求。
6.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是维护一阶段。
7.计算机辅助软件工程这一术语的英文缩写为CASE。
8.McCall提出的软件质量模型包括一11个软件质量特性。
9.软件结构是以一模块为基础而组成的一种控制层次结构。
10.软件概要设计的主要任务就是软件结构的设计。
11.结构化稈序设计方法是使用三种基本控制结构(条件\控制\循环)构造稈序。
12.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和_数据存储对象二、选择1、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C)A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法2、面向对象的开发方法中,(B)将是面向对象技术领域内占主导地位的标准建模语言。
A、Booch方法B、UML语言C、OMT方法D、Coad方法3、功能模型中所有的(A)往往形成一个层次结构。
在这个层次结构中一个数据流图的过程可以由下一层的数据流图作进一步的说明。
A、数据流图B、概念模型图C、状态迁移图D、事件追踪图4、(A)应当在应用分析之前进行,因为我们在了解问题之前应当对问题敞开思想考虑,不应加以限制。
A、问题域分析B、高层分析C、实例的建立D、类的开发5、通过执行对象的操作改变对象的属性,但它必须通过(B)的传递。
A、接口B、消息C、信息D、操作6、所有的对象可以成为各种对象类,每个对象类都定义了一组(B)A、说明B、方法C、过程D、类型9、面向对象的主要特征除对象唯一性、封装、继承外,还有(A)A、多态性B、完整性C、可移植性D、兼容10、在面向对象的设计中,我们应遵循的设计准则除了模块化、抽象、低耦合、高内聚以外,还有(B)A、隐藏复杂性B、信息隐藏C、即存类的重用D、类的开发13.在考察系统的一些涉及时序和改变的状况时,要用动态模型来表示。
软件工程习题及答案.doc

软件工程习题及答案:一、选择题:D1. 为了提升测试的效率,应当。
A、随机地选用测试数据B、取全部可能的输入数据作为测试数据C、在达成编码后拟订软件的测试计划D、选择发现错误可能性大的数据作为测试数据D2. 与设计测试数据没关的文档是。
A、需求说明书B、设计说明书C、源程序D、项目开发设计B3. 结构设计是一种应用最宽泛的系统设计方法,是以为基础、自顶向下、逐渐求精和模块化的过程。
A、数据流B、数据流图C、数据库D、数据结构A4. 纲要设计的结果是供给一份。
A、模块说明书B、框图C、程序D、数据结构B5. 需求剖析是由剖析员经认识用户的要求,仔细仔细地调研、剖析,最后应成立目标系统的逻辑模型并写出。
A、模块说明书B、软件规格说明书C、项目开发计划D、合同文档D6. 说明是提升程序可读性的有效手段,好的程序说明占到程序总量的。
A、 1/6B、 1/5C、1/4 D 、 1/3A7. 变换型和事务型是程序结构的标准形式。
从某处获取数据,再对这些数据作办理,而后将结果送出是属于。
A、变换型B、事务型B8. PAD( Problem Analysis Diagram )图是一种工具。
A、系统描述B、详尽设计C、测试D、编程协助A9. 排错一般是在测试发现错误后进行,此中找到错误地点占排错总工作量的。
A、 95%B、 5%C、 50%D、 20%A10. 分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的。
A、总貌B、细节C、抽象D、软件的作者B11. 数据流图中,当数据流向或流自文件时,。
A、数据流要命名,文件不用命名B、数据流不用命名,有文件名就足够了C、数据流和文件均要命名,因为流出和流进数据流是不一样的D、数据流和文件均不要命名,经过加工可自然反应出B12. 剖析员是。
A、用户中系统的直接使用者B、用户和软件人员的中间人C、软件的编程人员D、用户和软件人员的领导A13. 在软件开发中,有益于发挥集体智慧的一种做法是。
软件工程试卷(附答案)

D.对软件的错误认识E.缺乏好的开发方法和手段
2、以下说法中正确的是(BCD)。
A.快速原型思想是在研究概要设计阶段的方法和技术中产生的
B.探索型和实验型快速原型采用的是抛弃策略
C.演化型快速原型采用附加策略
D.快速原型是利用原型辅助软件开发的一种新思想
B.编写程序时要为调试提供足够的灵活性
C.根据程序调试的需要,要选择并安排适当的中间结果输出和必要的断点
D.以上答案都不正确
10、对象间的关系可以有哪几种关系(BCD)。
A.一对多关系B.一般-特殊关系C.整体-部分关系D.
二、填空题(每空1分,共15分)
1.快速原型的思想是在研究______需求分析_____的方法和技术中产生的。
3、下列叙述中,(ABD)是不正确的。
A.软件系统中所有的信息流都可以认为是事物流
B.软件系统中所有的信息流都可以认为是变换流
C.事务分析和变换分析的设计步骤是基本相似的
D.事务分析和变换分析的设计步骤完全不同
4、在程序的描述和分析中,下列哪个不是用以指明数据来源、数据流向和数据处理的辅助图形(ACD)。
17、以下说法错误的是(A)
A.多态性防止了程序相互依赖性而带来的变动影响
B.多态性是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果C.多态性与继承性相结合使软件具有更广泛的重用性和可扩充性
D.封装性是保证软件部件具有优良的模块性的基础
18、软件可维护性的特征中相互矛盾的是(C)。
A.数据流B.数据存储C.加工D.源点与终点
6、SA方法的分析步骤是首先调查了解当前系统的工作流程,然后(A)。
软件工程试卷及答案(多套精品试卷 )

软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。
(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个()模型。
A.静态单变量B.动态单变量C.静态多变量D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性B.可重用性C.适应性D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()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.FORTRAN语言B.Pascal语言C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的()A.代码的规模B.运行速度C.质量D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么B.用户使用界面C.输入的信息D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。
软件工程试题题库含答案

软件工程试题题库含答案一、软件开发过程1. 软件工程的定义是什么?答:软件工程是一门学科,研究并应用以系统化的方法开发和维护软件的原则、概念、方法和工具。
2. 请列举并解释软件开发过程的基本活动。
答:软件开发过程包括以下基本活动:- 需求分析与说明:收集和分析用户需求,并将其明确、清晰地记录下来。
- 软件设计:将需求转化为软件架构和设计规范,确定技术方案和实施计划。
- 编码和单元测试:根据设计规范进行编码,并进行单元测试以确保代码的正确性。
- 综合与测试:将各个模块进行综合,进行系统级测试以验证软件的正确性和稳定性。
- 软件发布与维护:发布软件版本,并对软件进行后续的维护和更新。
3. 请解释敏捷开发方法的基本原则。
答:敏捷开发方法的基本原则包括: - 个体和互动高于流程和工具:注重团队成员的沟通和合作,更加关注人与人之间的交互。
- 可工作的软件高于详尽的文档:重视软件的实际可用性和功能,减少过多的文档记录。
- 客户合作高于合同协商:与客户保持紧密的合作,及时获取反馈并调整软件开发进程。
- 相应变化高于遵循计划:灵活应对需求变化,允许在开发过程中根据实际需要进行调整。
二、需求工程1. 需求工程的目的是什么?答:需求工程的目的是准确、清晰地确定、分析和记录用户对软件系统的需求。
2. 请解释需求工程的关键活动。
答:需求工程的关键活动包括以下几项: - 需求获取:通过与用户交流和研究,确定用户的需求,并进行系统化的收集。
- 需求分析:对收集到的需求进行分析,确定需求的可行性和优先级,并拆解出软件需求规格说明。
- 需求规格说明:编写清晰、明确的需求规格文档,对软件需求进行详细描述和说明。
- 需求验证:与用户进行需求验证,确保需求规格与用户的期望一致,并能够满足用户的需求。
3. 请解释用户需求和系统需求的区别。
答:用户需求是用户对软件系统的需求和期望,通常表达为用户对系统功能和性能的描述。
而系统需求是对用户需求的进一步细化和明确化,包括对系统功能、性能、界面、输入输出等方面的具体要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《长江大学软件工程考试12-13学年》一、单项选择题1. 以下哪一项不是软件危机的表现( B)A.开发的软件可维护性差 B.软件极易被盗版C.经费预算经常被突破 D.开发的软件不能满足用户需求2.下面不属于软件工程的三个要素是( B )。
A 过程B 环境C 方法D 工具3. 需求分析阶段的任务是确定( D )。
A 软件开发方法B 软件开发工具C 软件开发费用D 软件开发功能4. 下列不属于...需求分析工具的是( D )。
A.数据流图B.用例图C.状态图D.程序流程图5.关于软件测试的目的,下面观点错误的是( C)A.为了发现错误而执行程序的过程B.一个好的测试用例能够发现至今尚未发现的错误C.证明程序是正确、没有错误的D.一个成功的测试用例是发现了至今尚未发现的错误的测试6. 软件详细设计阶段的任务是( A)。
A.算法与数据结构设计B.功能设计C.调用关系设计D.输入/输出设计7. 下列属于静态测试方法的是( A )A.人工检测 B.路径覆盖C.黑盒测试 D.白盒测试8.汽车是一种交通工具,汽车类和交通工具类之间的关系是( C)A.组合聚集关系 B. 共享聚集关系C.一般-具体关系 D. 整体-部分关系9.结构化程序设计的风格,主要强调的是( C )。
A.程序的执行效率B.模块的内聚C.程序的可理解性 D.模块的耦合10.在整个软件维护阶段所花费的全部工作中,所占比例最大的是( D)。
A.校正性维护 B.适应性维护C.预防性维护 D.完善性维护11. “软件工程的概念是为解决软件危机而提出的”这句话的意思是( C )A.强调软件工程成功解决了软件危机的问题B.说明软件危机的存在总是使软件开发不像传统工程项目那样容易管理C.说明软件工程这门学科的形成是软件发展的需要D.说明软件工程的概念,即:工程的原则、思想、方法可解决当时软件开发和维护存在的问题12. 在软件工程的需求分析阶段,不属于问题识别内容的是( A )A. 输入/输出需求B.性能需求C.环境需求D.功能需求13. 软件需求规格说明书的作用不包括( C)A.软件验收的依据B.软件设计的依据C.软件可行性研究的依据D.用户与开发人员对软件要做什么的共同理解14.一个成功的测试可以( B )A.表明程序没有错误B.发现了尚未发现的错误C.发现所有错误D.提高软件的可靠性15. 下列属于详细设计工具的是( D )A.数据流图B.用例图C.状态图D.程序流程图16. 下列不属于动态测试方法的是( A)A.人工检测 B.路径覆盖C.白盒测试 D.黑盒测试17.大学生是学生,学生类和大学生类之间的关系是( C )A.组合聚集关系 B. 共享聚集关系C.一般-具体关系 D. 整体-部分关系18.为了提高软件的可维护性,编程阶段应注意( B )。
A.提高模块的独立性 B.养成良好的程序设计风格C.文档的副作用 D.保存测试用例和数据19. 软件生命周期中所花费用最多的阶段是(D)。
A.详细设计 B.软件编码C.软件测试 D.软件维护二、简答题1. 软件生存周期可以分为几个阶段,每个阶段的提交物是什么?答:软件生存周期分为六个阶段:(1)可行性研究和项目开发计划,提交项目开发计划和可行性分析报告。
(2)需求分析,提交软件需求说明书。
(3)概要设计,提交概要设计说明书。
(4)详细设计,提交详细设计说明书。
(5)编码,提交源程序清单。
(6)测试,提交测试报告。
(7)维护,提交维护报告。
2. 简述统一过程模型(UP)及其主要的特点。
答:统一过程模型是风险驱动的基于用例技术的,以架构为中心的,迭代可配置的软件开发流程。
主要特点:UP是一个通用的过程框架,可以用于各类软件系统和应用领域,并是以用例驱动的,以架构为中心,迭代和增量的过程,是在重复一系列组成系统生命周期的循环。
3. 简述需求分析的任务及其过程步骤。
答:需求分析的任务是理解客户需要什么,分析需求,评价可行性,协商合理的方案,无歧义地详细说明方案,确认规格说明,管理要求,以至将这些需求转化为可行系统。
过程步骤:(1)初步沟通(2)导出需求(3)分析和精化(4)可行性研究(5)协商与沟通(6)规格说明4. 什么是黑盒测试技术?并简述有哪些常用黑盒测试方法。
答:黑盒测试技术是根据程序组件的规格说明测试软件功能的方法。
常用的黑盒测试方法:等价类划分法,边界值分析法和错误推测法,因果图法等。
5.什么是软件配置管理?配置管理主要有哪些活动?答:软件配置管理是对软件变通(或称为进化)过程的管理。
主要活动:(1)配置管理规划(2)变更管理(3)版本和发布管理6. 原型按其使用方式的不同分为哪几种类型?答:根据原型的不同作用,有三类原型模型:1、探索型原型这种类型的原型是把原型用于开发的需求分析阶段,目的是要澄清用户的需求,确定所期望的特性,并探索各种方案的可行性。
它主要针对开发目标模糊,用户与开发都对项目都缺乏经验的情况,通过对原型的开发来探明用户的需求。
2、实验型原型这种原型主要用于设计阶段,考核实现方案是否合适,能否实施。
对于一个大型系统,若对设计方案没有把握时,可通过这种原型来证实设计方案的正确性。
3、演化型原型这种原型主要用于及早向用户提交一个原型系统,该原型系统或者包含系统的框架,或者包含系统的主要功能,在得到用户的认可后,将原型系统不断扩充演变为最终的软件系统。
它将原型的思想扩展到软件开发的全过程。
7.什么是软件危机?软件危机的表现是什么?其产生的原因是什么?答:软件危机是指计算机运行速度,容量,可靠性有显著地提高,生产成本显著下降,这为计算机的广泛应用创造了条件。
一些复杂的,大型的软件开发项目提出来了。
但是软件开发技术的进步一致未能满足发展的需要。
在软件开发中遇到的问题找不到解决办法,使问题积累起来,形成尖锐的矛盾,因而导致了软件危机。
软件危机表现在以下四个方面: 1、经费预算经常突破;2、开发的软件不能满足用户要求;3、开发的软件可维护性差;4、开发的软件可靠性差。
造成软件危机的原因是: 1、软件的规模越来越大,结构越来越复杂;2、软件开发管理困难而复杂;3、软件开发费用不断增加;4、软件开发技术落后;5、生产方式落后;6、开发工具落后,生产率提高缓慢。
8. 可行性研究报告的主要内容有哪些?答:可行性研究报告主要内容是回答以下三个问题(1)系统是否符合软件使用单位的总体要求(2)系统是否可以在现在的技术条件,预算和时间限制内完成(3)系统能否把已有的其他系统集成9. 简述软件概要设计的任务。
答:软件概要设计的主要任务是:将系统划分成模块,决定每个模块的功能,决定模块的调用系统,即模块间传递的数据,决定模块的界面。
10. 什么是白盒测试技术?并简述有哪些常用白盒测试方法。
答:白盒测试技术是有选择地执行(或覆盖)程序中某些最有代表性路径的测试方法。
常用的白盒测试方法:语句覆盖,判定覆盖,条件覆盖,判定条件覆盖,条件组合覆盖。
11. 什么是软件配置项?答:计算机程序(源程序和执行代码),软件(产品)文档(技术文档和用户文档)以及数据(程序内部和程序外部的数据),这些输出信息包含了所有在软件过程中产生的信息,称为软件配置项。
12.原型按其开发方式的不同分为哪几种类型?答:由于运用原型的目的和方式不同,在使用原型时也采取不同的策略,有抛弃策略和附加策略。
(1)抛弃策略抛弃策略是将原型用于开发过程的某个阶段,促使该阶段的开发结果更加完整、准确、一致、可靠,该阶段结束后,原型随之作废。
探索型和实验型就是采用此策略的。
(2)附加策略附加策略是将原型用于开发的全过程,原型由最基本的核心开始,逐步增加新的功能和新的需求,反复修改反复扩充,最后发展为用户满意的最终系统,演化型快速原型就是采用此策略。
采用何种形式、何种策略运用快速原型主要取决于软件项目的特点、人员素质、可供支持的原型开发工具和技术等,这要根据实际情况的特点来决定。
三、用例建模分析题1.分析图书管理系统要求,画出该系统的用例图。
管理员:管理员能按系统授权维护和使用系统不同功能,可以创建、修改、删除读者信息和图书信息即读者管理和图书管理,借阅、归还图书以及罚款即借阅管理。
读者:读者能通过互联网或图书馆查询终端,查询图书信息和个人借阅信息,还可以在符合续借的条件下自己办理续借图书。
解答:由此可见该系统的用例图:2.分析旅店预定系统要求,画出该系统的用例图。
某公司要开发一个旅店预定系统,该旅店可对外开放豪华双人间、双人间、三人间和单人间,房间费用视情况按季节调整,但周一到周五半价(周末全价)折扣不变。
对于外界请求,该系统应能根据请求入住时间预定指定档次的房间,记录旅客姓名、地址、联系电话、有效证件号、房间类型和预定天数,并计算出总费用。
预定的同时旅客按规定须提交10%定金。
六个小时之内旅店允许旅客取消预定,并退回所有定金,超过六个小时定金不退还。
每周一系统自动打印一周预定情况清单。
采用哪种费用支付方式和何种类型操作界面尚不确定。
解答:四、综合分析与设计题1.某登录用例描述如下:1.界面对象接受输入的用户名和密码2.用例控制对象根据用户名和密码进行权限验证3.用户对象确认用户是合法用户4.通过用户的用户组对象获得有关权限5.界面对象显示登录成功(1)画出该用例分析阶段的顺序图解答:(2)给出三层经典架构及其对应的软件设计类的类型解答:层经典架构:展现层、业务逻辑层、数据层。
对应的软件设计类:边界类、控制类、实体类。
(3)画出该用例软件设计阶段的顺序图解答:2. 某登录用例描述如下:1.界面对象接受输入的用户名和密码2.用例控制对象根据用户名和密码进行权限验证3.用户对象确认用户是合法用户4.通过用户的用户组对象获得有关权限5.界面对象显示登录成功1. 识别分析出该用例的类图。
2. 请分析上述用例描述,画出分析阶段的顺序图。
解答:五、测试用例设计题1.下面是一段伪码程序(代码前的数字只作标号用,不参与程序执行):START1:INPUT(A,B,C,D)2:IF(A>0)AND(B>0)THEN3:X=A+BELSE4:X=A-B5:END6:IF(C>A)OR(D<B)THEN7:Y=C-DELSE8:Y=C+D9:END10:PRINT(X,Y)STOP根据以上的描述:(1)画出对应的流程图和程序图。
(2)计算程序图的环形复杂度。
(3)确定该程序的基本路径。
(4)采用基本路径测试方法设计一组测试用例。
解答:(1)(2)根据程序图,由V(G)=E-N+2可知:12-9+2=5 (3)共5条基本路径:1-4-5-8-9;1-4-5-6-8-9;1-4-5-6-7-9;1-2-4- …;1-2-3-5-(4)。