软件工程模拟试题二及参考答案

软件工程模拟试题二及参考答案
软件工程模拟试题二及参考答案

《软件工程》试题二

一、选择

1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。

A 软件过程

B 软件工具

C 质量保证

D 软件工程

2、()是以追求更高的效益和效率为目标的持续性活动。

A 质量策划

B 质量控制

C 质量保证

D 质量改进

3、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第1级外,每一级都包含了实现这一级目标的若干关键过程域,每一个关键过程域又包含若干()。

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 软件测试

二、问答题

1、判断下列叙述的正确性,将结果(√正确,×错误)填入()中,并改正错误的说法。

(1).()在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。改正:__

(2).()在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什么。改正:__

(3).()软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。改正:__

(4).()模型是对现实的简化,建模是为了更好地理解所开发的系统。改正:__

(5).()UML语言支持面向对象的主要概念,并与具体的开发过程相关。改正:__

(6).()用例图定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。改正:__

(7).()好的测试用例应能证明软件是正确的。改正:__

(8).()白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。改正:__

(9).()当软件开发项目的进度有可能拖延时,增加开发人员并不能加快进度。改正:__

(10).()软件技术复审是由用户和测试人员实施的一种质量保证活动。改正:__ 2、你认为一个好的软件开发人员应具备哪些基本素质?

3、需求工程包括哪些基本活动?每一项活动的主要任务是什么?

4、为什么软件需要维护?简述软件维护的过程。

5、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。

"一个程序读入3个整数,它们分别代表一个三角形的3个边长。该程序判断所输入的整数是否构成一个三角形,以及该三角形是一般的、等腰的或等边的,并将结果打印出来。"

要求:设三角形的3条边分别为A、B、C,并且

(1)列出等价类表,格式如下:

(2)设计测试用例,格式如下:

用例n:输入【A,B,C】覆盖等价类……(列出等价类序号),输出结果为……。

6、下图显示了配置管理中的存取和控制,请选择合适的答案,将其对应的序号填入()中。

A(),B(),C(),D()。

供选择的答案:

A:①软件工程人员②配置人员③质量保证人员

B:④异步控制⑤同步控制⑥存取控制

C~D:⑦管理⑧登入⑨检出⑩填写变更请求

7、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的()中。

①用例及其协作之间是()关系。

②在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是()关系。

③类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A 和类B之间是()关系。

④在MFC类库中,Window类和DialogBox类之间是()关系。

⑤森林和树木之间是()关系。

8、下图显示了某个学校课程管理系统的部分类图,其中一个学生(student)可以知道所有注册课程的教师(instructor),一个教师也可以知道所有注册课程的学生。

现在提出一个新的需求:"一个教师也可以是某些课程的学生",那么下面设计A~C中哪一个是最好的?为什么?

设计A:

设计B:

设计C:

答案:设计___最好。理由:

参考答案

一、选择题答案

1、a

2、d

3、a

4、c

5、a

6、b

7、c

8、b

二、问答题答案

1、判断下列叙述的正确性,将结果(√正确,×错误)填入()中,并改正错误的说法。

(1).(×)改正:在软件开发的过程中,一个错误修复和改正得越晚,为此所花费的代价就会越高。

(2).(√)

(3).(×)改正:软件可行性分析应在需求分析之前,因此,软件需求规格说明书不应成为软件可行性分析的依据。

(4).(√)

(5).(×)改正:UML语言支持面向对象的概念,并独立于具体的开发过程。

(6).(√)

(7).(×)改正:好的测试用例在于能发现至今未发现的错误。

(8).(√)

(9).(√)

(10).(×)改正:软件技术复审是由软件开发人员实施的一种质量保证活动。

2、答:

(1)牢固掌握计算机软件的基本知识和技能;

(2)善于分析和综合问题,具有严密的逻辑思维能力;

(3)工作踏实细致,遵循标准和规范,具有严格的科学作风;

(4)工作有耐心、有毅力、有责任心;

(5)善于听取别人的意见,善于与周围人员团结协作,建立良好的人际关系;

(6)具有良好的书面和口头表达能力。

3、答:

(1)需求获取(问题识别):采集、识别和提取用户的需求,对问题和需求形成文档化的描述,使各种人员达成一致的理解和认可。

(2)需求分析:分析和综合所采集的信息,建立系统的详细逻辑模型。

(3)需求规格说明:编写软件需求规格说明书,明确、完整和准确地描述已确定的需求。

(4)需求验证:评审软件需求规格说明,以保证其正确性、一致性、完备性、准确性和清晰性。

(5)需求管理:定义需求基线,在整个项目过程中跟踪需求状态及其变更情况。

4、答:

在软件开发完成交付用户使用后,为了保证软件在一个相当长的时期能够正常运行,就需要对软件进行维护。软件维护的过程:

(1)确认维护要求。

(2)对于改正性维护申请,评价错误的严重性。对于严重的错误,立即安排人员,分析问题原因,进行"救火"性的紧急维护;对于不严重的错误,根据任务情况和轻重缓急进行统一安排。

(3)对于适应性和完善性维护申请,需要确定申请的优先级,然后安排维护工作。并不是所有的完善性维护申请都必须承担,需要考虑商业需要、现有资源、未来发展方向等进行决定。

5、答:

(1)列出等价类表

(2)设计测试用例

用例1:输入【3,4,5】覆盖等价类(1,2,3,4,5,6),输出结果为构成一般三角形。

用例2:三者取一

输入【0,1,2】覆盖等价类(2),输出结果为不构成三角形。

输入【1,0,2】覆盖等价类(2),输出结果为不构成三角形。

输入【1,2,0】覆盖等价类(2),输出结果为不构成三角形。

用例3:三者取一

输入【1,2,3】覆盖等价类(3),输出结果为不构成三角形。

输入【1,3,2】覆盖等价类(3),输出结果为不构成三角形。

输入【3,1,2】覆盖等价类(3),输出结果为不构成三角形。

用例4:三者取一

输入【3,3,4】覆盖等价类(1)(4),输出结果为等腰三角形。

输入【3,4,4】覆盖等价类(1)(4),输出结果为等腰三角形。

输入【3,4,3】覆盖等价类(1)(4),输出结果为等腰三角形。

用例5:输入【3,4,5】覆盖等价类(1)(5),输出结果为不是等腰三角形。

用例6:输入【3,3,3】覆盖等价类(1)(6),输出结果为等边三角形。

用例7:三者取一

输入【3,4,4】覆盖等价类(1)(4)(7),输出结果为不是等边三角形。

输入【3,4,3】覆盖等价类(1)(4)(7),输出结果为不是等边三角形。

输入【3,3,4】覆盖等价类(1)(4)(7),输出结果为不是等边三角形。

6、答:

A ①

B ⑥

C ⑨

D ⑧

7、答:

①实现②关联③依赖④泛化⑤聚合

8、答:

设计C最好。

学生和教员均可以从Candidate类继承而来;抽象出Role类,使Candidate类与Role类之间形成多对多的关联关系,实现了"一个人既是教师又是某门课的学生"这个需求。

软件工程模拟题1带答案.doc

软件工程期末试卷A 试题一、结构化分析与设计(共20 分,每小题10分) 需求陈述: 高考录取统分子系统有如下功能: (1) 计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件; (2) 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。 要求:用结构化方法学对高考录取统分子系统进行分析与设计,分别完成以下工作: (1)给出高考录取统分子系统的功能模型(用数据流图表示)。(10分) (2) 给出高考录取统分子系统的软件体系结构(用H图或结构图表示)。(10分) 答案 网上搜的答案 结构图即软件的模块

试题二、下面是程序流程图,试分别用N-S图和伪代码(类C语言描述)表示。(共20分) 答案: 我做的:do { if(!p) { g 真假 假 开始 结束 p >0 q 真

exit(); } g; } while(q); 我自己做的,可以不太对

Do { If(p为真) { 执行g If(g为真) { do nothing } Else if(g为假) { return } } Else if(p为假) { Return } }while(g为真) 试题三、(共20 分,每题10 分) 阅读下面的程序段,回答后面的问题: float calculateTotal( int N) //计算满足条件的N个数的和 { float count = 0.0; int i=1; while ( i<=N ) { if( i % 4 == 0) count += i; i++; } return count; } (1)画出上述程序的有向流图,并计算该函数的环形复杂度。(每问5分,共10分)(2)请用基本路径的测试技术完成该函数的测试。要求给出基本路径和测试用例。(每问5分,共10分) 答:这道题课本上没有知识点,从网上搜出来的,知识点见“测试基础”PPT的P30页 白盒测试代码分支图的环形复杂度计算: 环形复杂度以图论为基础,为我们提供了非常有用的软件度量。可用如下三种方法之一来计算环形复杂度:(1)控制流图中环形区域的数量对应于环形复杂度。(2)给定控制流图G的环形复杂度—V(G),定义为V(G) = E-N+2 其中,E是控制流图中边的数量,N是控制

软件工程作业及参考答案(版)

软件危机与软件工程 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 . 质量保证 ② A . 需求分析 B . 可行性研究 C 总体设计 D 模块化设计 ③ A . 文档编制 B . 运行维护 C . 测试 D . 验收 &软件开发中常采用的生命周期方法,由于其特征而一般称其为() A .层次模型 B .瀑布模型 C .螺旋模型 D .对象模型 9.描述软件生存周期的瀑布模型包括计划、 (A ) 、设计、编码、测试、维护等阶段。其中,设计阶段又可 以分成(B )和(C )两个步骤。 A :①需求分析 ②可行性研究 ③需求调查 ④问题定义 B, C :①方案设计 ②代码设计 ③概要(总体)设计 ④数据设计 ⑤详细设计 10.什么是软件危机?软件危机产生的原因? ".生命周期阶段的划分?每个阶段的任务? 可行性研究 软件工程 1软件危机是指在开发和( A .运行 B .设计 2 ?造成软件危机的原因是: A. 用户使用不当 C .硬件不可靠 )过程中所遇到的一系列严重问题。 B .对软件的错误认识 D ?缺乏好的开发方法和手段

电大软件工程模拟试题(2)

软件工程模拟试题二 一、选择题,请从四个可选项中选择正确答案。(60分,每题3分) 1.以下哪一项不是软件危机的表现形式() A.成本高 B.生产率低 C.技术发展快 D.质量得不到保证 2.哪种模型分批地逐步向用户提交产品,每次提交一个满足用户需求子集的可运行的产品。()A.演化模型 B.喷泉模型 C.原型模型 D.螺旋模型 3.可行性研究的目的不包括() A.分析开发系统的必要性 B.确定系统建模的方案 C.分析系统风险 D.确定是否值得开发系统 4.可行性分析研究的费用大约是项目总经费的()。 A.2% B.8% C.20% D.50‰ 5.在E-R 模型中,包含以下基本成分()。 A.数据、对象、实体 B.控制、联系、对象 C.实体、联系、属性 D.实体、属性、联系 6.软件需求分析产生两个重要文档,一个是软件需求规格说明书,另一个是()。 A.软件维护说明书 B.概要设计说明书 C.可行性报告 D.初步用户手册 7.内聚程度较低的是()。 A.通信内聚 B.过程内聚 C.顺序内聚 D.时间内聚 8.概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是() A.把软件划分成模块B确定模块之间的调用关系

C.确定各个模块的功能 D.设计每个模块的伪代码 9.UML 语言支持的建模方式不包括有()。 A.静态建模 B.动态建模 C.模块化建模 D.功能建模 10.以下哪一项不是面向对象的特征。() A.多态性 B.继承性 C.封装性 D.过程调用 11.面向对象设计首先要确定系统的总体结构和风格,构造系统的()。 A.逻辑模型 B.物理模型 C.数据模型 D.用例模型 12.面向对象设计的步骤中,正确的顺序是()。 A.系统构架设计、用例设计、类设计 B.系统构架设计、数据库设计和用户界面设计 C.类设计、用例设计、构架设计 D.用例设计、构架设计、类设计 13.类有3种类型,即()。 A.边界类、实体类、控制类 B.实体类、控制类、界面类 C.控制类、实体类、虚类 D.界面类、控制类、公共类 14.()是一般化类与特殊化类之间的一种关联形式,设计时应该适当使用这种耦合。 A.消息连接 B.参数传递 C.方法重写 D.继承 15.结构化程序设计主要强调的是()。 A.程序的规模 B.程序效率 C.程序语言的先进性 D.程序易读性 16.下列关于功能性注释不正确的说法是()。 A. 功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态 B. 注释用来说明程序段,需要在每一行都要加注释 C. 可使用空行或缩进,以便很容易区分注释和程序 D. 修改程序也应修改注释 17.软件测试的目的是()。 A.评价软件的质量 B.发现软件的错误

软件工程作业(答案参考)

软件工程第一次作业 1)软件工程适用范围? 答:软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件比如有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,比如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,使得人们的工作更加高效,同时提高了生活质量。 2)软件工程如何控制系统开发的复杂性的? 答:可理解性(understandability)。系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植或重用。 3)以你的经验,举例说明一个成熟的软件通常采用什么方法来适应现实世界的变化的?答:以猎豹游览器为例,开始软件投入市场公测,软件自带收集错误报告的程式,当遇到问题软件错误,会将相关信息反馈到接受错误信息的服务器,已方便程序员及时发现问题加以修复,修复完成后提供程序更新,循环此法提供软件运行稳定性,另外还有用户反馈的相关功能,对软件的建议也会收集到服务器,按实用性需求程序员可在原有程序上开发调整更适合用户使用的程序。 4)假设某软件公司,能为同一个用户开发两个不同层次的软件:一个层次的软件功能非常强大,在满足用户所有需求的基础上,还能提供大大超过用户需求的其他更多更强的功能;另一个层次的软件仅仅能满足用户需求,但没有提供其他额外的功能。请问如果你是项目负责人,你会选择为客户开发那个层次的软件? 答:我会选择仅仅满足用户需求的软件。因为太多的功能,相对于非专业的人员,在用户体验上可能会造成困扰,太多的功能会导致难以操作。而且功能强大的软件还会给用户费用上带来不必要的投入,软件是以人为本,方便用户工作,达到提高工作效率的目的。若然日后此用户需要更多功能的时候,我们还是可以向其软件公司提供升级功能解决用户需求。

软件工程模拟试题1

一、选择题,请从四个可选项中选择正确答案。(60分,每题3分) 1、软件工程强调将()的方法应用于软件的开发和维护过程之中。 A.规范化B.系统化C.可度量D.以上全部 2、软件开发活动的顺序应该是()。 A.问题定义、可行性研究、需求分析、设计、编码和测试。 B.问题定义、设计、可行性研究、编码和测试。 C.需求分析、设计、编码和测试。 D.需求分析、编码和测试、试运行。 3、假定银行的存款年利率是2%,请问现在存5000元,两年后价值应为()元。A.5202 B.4500 C.5100 D.4712 4、系统物理模型用()表示。 A.系统流程图B.数据流程图 C.程序流程图D.E-R图 5、关于软件需求特性不正确的描述是“软件需求具有()”。 A.多变性B.模糊性C.准确性D.主观性 6、随着模块规模减小,模块开发成本_____,模块集成成本____()。 A.减小/减小B.减小/增加C.增加/减小D.增加/增加 7、反映模块独立性的指标是()。

A.模块的复杂性B.模块的大小 C.模块的参数D.内聚和耦合 8、面向过程的方法最关心的是过程,而过程实施的对象是作为过程()传递的。 A.过程B.主体C.参数D.数据结构 9、UML是一种()。 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.从详细设计阶段开始

软件工程模拟题

[模拟] 软件工程 选择题 第1题: 软件工程方法学的三要素是______。 ①方法②项目管理③过程④开发语言⑤工具 A.①②③ B.①②⑤ C.②③④ D.①③⑤ 参考答案:D 软件工程方法学包含三个要素:方法、工具和过程。方法是指完成软件开发的各项任务的技术方法;工具是指为运用方法而提供的软件工程支撑环境;过程是指为获得高质量的软件所需要完成的一系列任务的框架。 第2题: 螺旋模型的开发实施和______基本相吻合。 A.智能模型 B.快速原型模型 C.喷泉模型 D.V模型 参考答案:B 第3题: 软件设计一般分为外部设计和内部设计,它们之间的关系是______。 A.全局和局部 B.抽象和具体 C.总体和层次 D.没有关系 参考答案:A 这里所说的外部设计实际上是指概要设计,内部设计就是详细设计。概要设计的工作是:·采用某种设计方法,将一个复杂的系统按功能划分成模块;·确定每个模块的功能;·确定模块之间的调用关系;·确定模块之间的接口,即模块之间传递的信息;·评价模块结构的质量。而详细设计的工作是:·为每个模块进行详细的算法设计。用某种图形、

表格、语言等工具将每个模块处理过程的详细算法描述出来。·为模块内的数据结构进行设计。对于需求分析、概要设计确定的概念性的数据类型进行确切的定义。·对数据结构进行物理设计,即确定数据库的物理结构。物理结构主要指数据库的存储记录格式、存储记录安排和存储方法,这些都依赖于具体所使用的数据库系统。可见,这是一个全局和局部的关系,概要设计划分好模块,而详细设计定义每个模块如何工作。 第4题: 瀑布模型把软件生命周期划分为三个阶段,它们分别是:计划阶段、开发阶段和______。 A.可行性分析阶段 B.运行阶段 C.详细计划阶段 D.测试与排错阶段 参考答案:B 瀑布模型的软件生命周期分为计划阶段、开发阶段和运行阶段(即维护阶段)三个大的阶段,这三个阶段又可细分为:可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试、运行维护几个小的阶段。 第5题: 瀑布模型(Waterfall Model)突出的缺点是不能适应______的变动。 A.算法 B.开发或应用平台 C.程序语言 D.用户需求 参考答案:D 瀑布模型有许多优点:可强迫开发人员采用规范的方法;严格规定了各阶段必须提交的文档;要求每个阶段结束后,都要进行严格的评审。但瀑布模型过于理想化,而且缺乏灵活性,无法在开发过程中逐渐明确用户难以确切表达或一时难以想到的需求,有时可能直到软件开发完成之后才发现与用户需求有很大距离,此时必须付出高额的代价才能纠正这一偏差。 第6题: 如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称为______模块。 A.功能内聚 B.顺序内聚 C.通信内聚 D.过程内聚

最新版2016软件工程基础离线作业满分答案

浙江大学远程教育学院 《软件工程基础》课程作业 ————————————————————————————— 第一章概述 1.什么是软件危机,它有哪些典型表现? 答:所谓“软件危机”就是,在计算机软件的开发和维护过程中所遇到的一系列严重的问题,概括起来归纳为:如何开发软件,以满足日益增长、日趋复杂的需要;如何维护数量不断膨胀的已有软件。 软件危机的典型表现主要有: 1. 开发成本和进度不能准确估计 2. 开发出来的软件不能满足用户的要求 3. 软件的可维护性差 4. 软件质量不可靠 5. 软件成本在系统中的比重逐年上升 6. 软件开发生产率的提高速度不够 2.简述产生软件危机的原因和解决的思路。 答:软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开发、维护的方法不正确有密切关系。 解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。即采用工程化的原则和方法组织软件开发是摆脱软件危机的一个主要出路。

3.什么是软件工程?它有哪些本质特性? 答:软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法进行软件开发和维护的学科。 其实质就是用工程的概念、原理、技术和方法,结合有效的管理方法和先进的开发技术,开发与维护软件,以解决软件危机。 4.软件工程是如何用来消除软件危机的? 答:软件工程是从技术和管理两个方面来研究如何更好地开发和维护计算机软件,从源头上消除软件危机。 5.假设你是某软件开发企业的CEO,当你把教材P.4的图1.1给手下的软件工程师们看,同时告诉他们应及早发现并改正错误的重要性时,有人不以为然,认为要求在错误进入软件前就发现并清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么又如何能够在设计阶段就发现并清除呢?”那你应该如何说服? 答:首先要对错误造成工作的延误或一些问题表示歉意。错误是难免,关键是要虚心接受,在以后工作中要更加认真,避免错误机率降到最低。在编码过程中要,首先要在头脑清醒,要保持工作前有足够的睡眠。这样错误机会也会降小。在编程结束后,首先要验证,是否能正常运行或工作。再以后的工作更要虚心,认真,保证这种机会降到最低。

软件工程考模拟试题 (2)

软件工程考模拟试题 一、选择题,请从四个可选项中选择正确答案。(60分,每题3分) 1、下面的哪个选项不是软件工程的宗旨()。 A.开发满足用户需求的软件 B.研究算法 C.及时交付软件 D.生产无故障软件 2、针对需求不确定的软件开发,比较好的模型是()。 A. 快速原型化模型 B. 瀑布模型 C.软件成熟度模型 D.系统化模型 3、可行性分析研究的费用大约是项目总经费的()。 A.2% B.6% C.20% D.5‰ 4、业务需求描述的是()。 A.功能需求 B.用户需求 C.用户的具体业务流程 D.软件的目标、规模和范围 5、一个数据流程图中的图形符号有且仅有()种。 A.3 B.5 C.4 D.7 6、非直接耦合的模块独立性最强,()的模块独立性最弱。 A.内容耦合B.数据耦合C.控制耦合D.外部耦合 7、信息隐藏的核心内容是()。 A.把数据都放在公共的区域 B.数据不能被其他模块访问 C.一个模块的内部信息不允许其他模块直接访问 D.把信息加密,只能让有密钥的模块访问 8、面向过程的方法最关心的是过程,而过程实施的对象是作为过程()传递的。 A.参数 B.主体 C.过程 D.数据结构 9、()用于描述系统的功能集。 A. 组件视图 B.逻辑视图 C. 用例视图 D.对象视图 10、用()模型描述系统组织结构。 A.组织 B.CMM 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.30%,70% B. 70%,30% C. 30%,30% D. 70%,70% 17、软件项目管理的内容不包括()。 A.人员的组织与管理 B. 技术和算法 C.软件配置管理 D.软件开发进度计划 18、通俗的说,软件项目管理中常说的基线是()。 A.管理的基本思路 B. 一种软件开发的基本策略 C.基本的技术路线 D. 通过正式复审的文档 19、科学计算领域一般选择()语言。 A.HTML B.C C.汇编语言 D.XML 20、对于嵌套的循环和分支程序,层次不要超过()层。 A.1 B.2 C.3 D.5 二、简答题(30分,每小题6分) 1、请画图说明软件工程的层次化结构,并详细分析中间两层的内容。

软件工程习题及参考答案

软件工程习题及部分参考答案 判断题 ?软件也会磨损和老化。(X) ?完善性维护是提高或完善软件的性能。(√) ?数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。 (X) ?软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。(X) ?软件模块之间的耦合性越弱越好。(√) ?如果通过软件测试没有发现错误,则说明软件是正确的。(X) ?快速原型模型可以有效地适应用户需求的动态变化。(√) ?模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高聚,低耦合度的软件产品。(√) ?集成测试主要由用户来完成。(X) ?确认测试计划应该在可行性研究阶段制定(X) ?白盒测试无需考虑模块部的执行过程和程序结构,只要了解模块的功能即可。(X) ?软件概要设计包括软件系统结构设计以及数据结构和数据库设计。(√) ?软件工程采用的生存周期方法就是从时间角度对软件的开发和维护这个复杂问题进行分解,将软件生存的时期分为若干阶段。(√) ?系统流程图表达的是部件的信息流程,还表示对信息进行加工处理的控制过程。(╳)?模块越多,开发成本越小。(╳) ?软件测试的目的就是证明软件没有错。(╳) ?PAD图在设置了五种基本的控制结构后,还允许递归使用。(√) ?在进行了可行性分析后,需求分析就只需要解决目标系统的设计方案。(×) ?SA法是面向数据流,建立在数据封闭原则上的需求分析方法。(√) ?HIPO 法既是需求分析方法,又是软件设计方法。(√) ?在面向对象的需求分析方法中,建立动态模型是最主要的任务。(×) ?加工小说明是对系统流程图中的加工进行说明。(×) ?判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。(×) ?需求分析的主要方法有SD 法、OOA 法及HIPO 法等。(×) ?分层的DFD 图可以用于可行性分析阶段,描述系统的物理结构。(×) ?信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是E-R 图。(√) ?用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、完整性、现实性和有效性。(√) ?PDL经常表现为一种"混杂"的形式,他不允许自然语言如英语的词汇与某种结构化程序设计语言(如Pascal,C,Ada等)的语法结构交织在一起.(X) ?设计阶段的输出是编码阶段的输入.(√) ?通过软件测试,可以发现软件中所有潜伏的错误.(X) ?非结构化维护用于软件的配置中只有源代码维护.(√) ?系统规格说明是系统分析和定义阶段生成的一种文档.(√) ?数据流图的分解速度应保持较高.通常一个加工每次可分解为10~20个子加工.(X)

软件工程模拟试卷和答案

北京语言大学网络教育学院 《软件工程》模拟试卷一 注意: 1.试卷保密,考生不得将试卷带出考场或撕页,否则成绩作废。请监考老师负责监督。 2.请各位考生注意考试纪律,考试作弊全部成绩以零分计算。 3.本试卷满分100分,答题时间为90分钟。 4.本试卷分为试题卷和答题卷,所有答案必须答在答题卷上,答在试题卷上不给分。 一、【单项选择题】(本大题共15小题,每小题2分,共30分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在答题卷相应题号处。 1、在软件开发领域中,“描述了实现概念模型的软件解决方案”的系统模型被称为()。 [A] 设计模型[B] 软件模型[C] 实现模型[D] 部署模型 2、一般来说,整个需求的主体是()。 [A] 功能需求[B] 性能需求 [C] 外部接口需求[D] 设计约束 3、总体设计的第二阶段是()。 [A] 初始设计[B] 详细设计[C] 复审阶段[D] 精化设计 4、在模块内聚类型中,常常通过研究流程图确定模块的划分,得到的是()。 [A] 逻辑内敛[B] 顺序内敛[C] 功能内敛[D] 过程内敛 5、一个模块直接控制(调用)的下层模块的数目称为模块的()。 [A] 扇入[B] 扇出[C] 深度[D] 宽度 6、UML术语中,限定符常被用在()。

7、UML 提供的13种图形化工具中,用于概念模型和软件模型静态结构的是( ) 8、RUP 的迭代、增量式开发规定的4个阶段不包括( )。 9、根据RUP 实现的活动,输入为设计类,活动为实现类,则输出为( )。 10、软件评估可分为静态评估和动态评估,其中属于动态评估技术的是( )。 11、黑盒测试技术,又称为( )。 12、若有语句if(A<1 and C>0)then B=1/C else B=1/A ,选用类似数据A=2,C=1;A=-2,C=1;A=2,C=-1;A=-2,C=-1;得到不同B 的值,这种测试策略为( )。 13、在两种模型的基础上,螺旋模型加入两者所忽略的风险分析,这两者是( )。 [A] 瀑布模型和增量模型 [B] 瀑布模型和演化模型 [C] 喷泉模型和增量模型 [D] 喷泉模型和演化模型 14、在软件生存周期模型中,主要用于支持面向对象技术的软件开发模型是( )。 15、CMMI 能力等级中的第一级为( )。 [A] 依赖关系 [B] 泛化关系 [C] 关联关系 [D] 细化关系 [A] 用况图 [B] 状态图 [C] 类图 [D] 活动图 [A] 评审阶段 [B] 构造阶段 [C] 移交阶段 [D] 精化阶段 [A] 用况 [B] 子系统 [C] 接口 [D] 构件 [A] 评审 [B] 走查 [C] 形式化证 明 [D] 软件测试 [A] 功能测试 [B] 结构测试 [C] 系统测试 [D] 集成测试 [A] 定义域测试 [B] 等价类测 试 [C] 路径测试 [D] 事物流测 试 [A] 演化模型 [B] 增量模型 [C] 喷泉模型 [D] 螺旋模型

软件工程在线作业及答案

1.第1题 在软件可行性研究中,可以从不同的角度对软件进行研究,其中是从软件的成本/效益分析的是()。 A.经济可性性 B.技术可行性 C.操作可行性 D.法律可行性 您的答案:A 题目分数:2.5 此题得分:2.5 2.第2题 为了提高模块的独立性,模块内部最好是()。 A.逻辑内聚 B.时间内聚 C.功能内聚 D.通信内聚 您的答案:C 题目分数:2.5 此题得分:2.5 3.第3题 Jackson方法是一种面向()的方法。 A.对象 B.数据结构 C.数据流 D.控制流 您的答案:B 题目分数:2.5 此题得分:2.5 4.第4题 需求分析阶段研究的对象是软件项目的()。 A.用户需求 B.合理要求 C.模糊要求 D.工程要求 您的答案:A 题目分数:2.5 此题得分:2.5

5.第5题 面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。 A.系统设计 B.详细设计 C.软件设计 D.编码 您的答案:B 题目分数:2.5 此题得分:2.5 6.第6题 程序控制的三种基本结构中,()结构可提供多条路径选择。 A.反序 B.顺序 C.循环 D.分支 您的答案:D 题目分数:2.5 此题得分:2.5 7.第7题 下列属于黑盒测试的是()。 A.基本路径测试 B.条件测试 C.循环测试 D.等价划分 您的答案:D 题目分数:2.5 此题得分:2.5 8.第8题 软件设计一般分为总体设计和详细设计,它们之间的关系是()。 A.全局和局部 B.抽象和具体 C.总体和层次 D.功能和结构 您的答案:A 题目分数:2.5 此题得分:2.5

9.第9题 好的软件结构应该是()。 A.高耦合,高内聚 B.低耦合,高内聚 C.高耦合,低内聚 D.低耦合,低内聚 您的答案:B 题目分数:2.5 此题得分:2.5 10.第15题 面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一个类的上层可以有父类,下层可以有子类,这种层次结构系统的一个重要性质是(),一个类获得其父类的全部描述(数据和操作)。 A.传递性 B.继承性 C.复用性 D.并行性 您的答案:B 题目分数:2.5 此题得分:2.5 11.第16题 软件项目管理是()一切活动的管理。 A.需求分析 B.软件设计过程 C.模块控制 D.软件生命周期 您的答案:D 题目分数:2.5 此题得分:2.5 12.第17题 一个模块把开关量作为参数传递给另一模型,这两个模块之间的耦合是()。 A.外部耦合 B.数据耦合 C.控制耦合 D.内容耦合 您的答案:C

软件工程期末考试参考试题

软件工程期末考试参考试题 一、填空题 1、软件生存周期一般可分为问题定义、可行性研究、需求分析、设计编码、测试、运 行与维护阶段。 2、按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。 3、可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。 4、用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5、常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的结构化设计 方(SD),以数据结构为基础构造模块的Jackson方法,以对象、类、继承和通信为基础的面向对象设计方法(OOD)。 6、数据流图和数据字典共同构成系统的逻辑模型。 7、软件测试的方法有分析方法和非分析方法(即黑盒法)。 8、单元测试一般以白盒测试为主,黑盒测试为辅。 9、成本估计方法主要有自底向上估计、自顶向下估计和算法模型估计三种类型。 10. 文档(document)—一种数据媒体和其上所记录的(数据)。 11 机器语言、汇编语言:依赖于机器,面向(机器) 12. 软件有效性(efficiency),指软件系统的时间和(空间)效率。 13. 软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。 14. 软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。 15. 为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。 16. 一个软件的深度是指其控制的(层数)。 17. 以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并 最终可运行的代码的过程叫(编码)过程。 18. 软件维护是软件生命周期的(最后)一个阶段 19. 软件工程由(方法)、工具和过程三部分组成,称软件工程的三要素。 20. 基于计算机系统的软件要素中的软部件由程序、数据和(文档)组成。 21. 数据流图就是用来刻画数据流和转换的信息系统建模技术。它用简单的图形记号分 别表示数据流、转换、(数据源)以及外部实体。 22. 被继承的类我们称之为基类(父类),在基类的基础上新建立的类我们称之为派生 类子类。 23. 流程图也称为程序框图是最常用的一种表示法,它有顺序、分支和(循环)三个基 本控制构件。 24. 机器语言和汇编语言,也称为(低级)语言。 25. 软件测试是执行程序发现并排除程序中潜伏的(错误)的过程。 26. 软件可维护性,是指软件产品交付使用后,在实现改正潜伏的错误、改进性能等属性、适应环境变化等方面工作的(难易)程度。 27. 软件可理解性,指系统具有清晰的结构,能直接反映问题的(需求)。 28 在实体-关系图简称E-R图中,数据对象实体用长方形、关系用(菱形)、属性用椭 圆表示。 29. 建立数据流模型要遵循的原则包括:每个加工至少应有一个输入数据流以反映被处 理数据的来源和一个(输出)数据流来反映加工的结果

软件工程课后习题(含答案)

第一章练习题 一、填空题 1、软件工程三要素是:方法、工具、过程。 2、软件开发方法是指软件开发过程中所应遵循的方法和步骤。 二、名词(术语)解释: 1、可靠性---是指在给定的时间间隔内,程序成功运行的概率。可靠性是衡量软件质量的一个重要目标。 2、可理解性---指系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植和重用。 三、问答题 1、面向对象方法的优点是什么? 答:(1)将现实世界问题向面向对象解空间直接映射,实现对现实世界的直接模拟。 (2)以数据为中心,而不是基于对功能的分解,使得软件结构相对稳定,软件的重用性、可靠性、可维护等特性都较好。 2、可视化开发方法的优点有哪些? 答:(1)简化了图形用户界面的设计和编码工作,将开发的注意力主要集中在程序的执行逻辑和工作流程上。 (2)软件开发简单,易学、易上手。 (3)专业或非专业人员都能参与软件开发活动。 第二章练习题 一、填空题: 1、软件工程过程是:为获得软件产品,在软件工具支持下由软件人员完成的一系列软件工 程活动。 2、一个软件从定义、开发、使用和维护,直到最终被废弃,所经历的生存过程经历的生存过程称为软件生存期或叫生命期。 3、软件生命周期的阶段划分为3个时期是:定义时期、开发时期、维护时期。 4、软件工程标准的5个层次是:国际标准、国家标准、行业标准、企业规范、项目规范。 二、简答题: 1、瀑布模型的优点有哪些? 答:1、强迫开发人员采用规范的技术方法; 2、严格地规定了每个阶段必须提交的文档; 3、每个阶段结束前必须正式进行严格的技术审查和管理复审。 2、瀑布模型的缺点是什么? 答:1、在软件开发的初期阶段就要求做出正确、全面、完整的需求分析对许多应用软件来说是极其困难的。 2、在需求分析阶段,当需求确定后,无法及时验证需求是否正确、完整。 3、作为整体开发的瀑布模型,由于不支持产品的演化,缺乏灵活性,对开发过程中很 难发现的错误,只有在最终产品运行时才能暴露出来,从而使软件产品难以维护。

软件工程模拟试题二及参考答案

软件工程》试题 一、选择 1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A 软件过程 B 软件工具 C 质量保证 D 软件工程 2、()是以追求更高的效益和效率为目标的持续性活动。 A 质量策划 B 质量控制 C 质量保证 D 质量改进 3、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第 1级 外,每一级都包含了实现这一级目标的若干关键过程域,每一个关键过程域又包含若干 ()。 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 软件测试 二、问答题 1、判断下列叙述的正确性,将结果(V正确,X错误)填入()中,并改正错误的说法。 (1). ()在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花 费的代价就会降低。改正: __ (2). ()在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什 么。改正: __ (3). ( )软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。改正: __

软件工程作业答案

新版形考作业答案第一次!! 09软件工程作业1答案 一、选择题: 1. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)。 A.软件工程 B.软件周期 C.软件危机 D.软件产生 2. 瀑布模型本质上是一种(A )模型。 A.线性顺序 B.顺序迭代 C.线性迭代 D.早期产品 3. 瀑布模型存在的问题是(B )。 A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求 4. 螺旋模型是一种将瀑布模型和(A)结合起来的软件开发模型。 A.增量模型B.专家系统C.喷泉模型D.变换模型 5. 原型化方法是用户和设计者之间执行的一种交互构成,适用于(A)系统。 A.需求不确定性高的B.需求确定的C.管理信息D.实时 6. 下列有关软件工程的标准,属于国际标准的是(D) A.GB B.DIN C.ISO D.IEEE 7. 结构化方法是一种基于(D)的方法。 A.数据结构 B.程序结构 C.算法 D.数据流 8. 软件可行性研究实质上是要进行一次(A)需求分析、设计过程。 A、简化、压缩的 B、详细的 C、彻底的 D、深入的 9. 可行性研究的目的是(D) A、分析开发系统的必要性 B、确定系统建设的方案 C、分析系统风险 D、确定是否值得开发系统 10. 设年利率为i,现存入p元,不计复利,n年后可得钱数为(C)。 A、P×(1+i*n) B、P×(i+1)*n C、p×(1+i)n D、p×(i+n) 11. 可行性研究是在(A)之前 A、系统开发 B、测试 C、试运行 D、集成测试 12.可行性研究需要的时间长短取决于系统的规模,一般来说,可行性研究的成本只是预期总成本的(C)。 A、1% B、20% C、8% D、50% 13.我国正式颁布实施的(B)对计算机病毒的定义具有法律性、权威性。 A.《计算机软件保护条例》B.《中华人民共和国计算机信息系统安全保护条例》 C.《中华人民共和国著作权法》D.《计算机病毒防治管理办法》 14. 效率是一个性能要求,因此应当在以下(B)阶段规定 A、可行性分析 B、需求分析 C、概要设计 D、详细设计 15. 需求规格说明书的作用不包括(D) A、软件验收的依据 B、用户与开发人员对软件要做什么的共同理解 C、软件可行性研究的依据 D、软件设计的依据 16. 数据字典是用来定义(D)中的各个成份的具体含义的。 A、程序流程图 B、功能结构图 C、系统结构图 D、数据流程图 17. 数据流程图是(A)方法中用于表示系统逻辑模型的一种图形工具。 A、SA B、SD C、SP D、SC 18. DFD中的每个加工至少有(A)。 A、一个输入流或一个输出流

软件工程考模拟试题

软件工程考模拟试题 一、简答题(30分,每小题6分) 1、请画图说明软件工程的层次化结构,并详细分析中间两层的内容。 软件工程的内容具有层次化结构,最底层是质量保证层,中间是过程层和方法层,最上层是工具层。见图: 其中过程层定义了一组关键过程域,目的是保证软件开发过程的规范性和可控性。方法层提供了软件开发的各种方法,包括如何进行软件需求分析和设计,如何实现设计,如何测试和维护等方法。 评分标准:画图2分,过程层2分,方法层2分。 2、请为下面的程序设计符合判定覆盖的测试用例。 int main() { int a,b,c,x,y,z,t; scanf(“d%,d%,d%),&a,&b,&c,&t); if a>5 && t<1 x=10 else x=1; if b>10 y=20 else y=2; if c>15 z=30 else z=3; printf(“d%,d%,d%\n”,x,y,z) } 1、答案 条件: a>5,t=0 a<=5,t=0 b>10 b<=10 c>15

c<=15 测试用例(不唯一):a=6 t=0 b=11 c=16;a=5 t=0 b=10 c=15 评分标准:只要写出条件,不管测试用例是否给出都给3分;两组测试用例各占3分。 3、活动图与状态图的区别? (1)描述的重点不同:活动图描述的是从活动到活动的控制流;状态图描述的是对象的状态及状态之间的转移。 (2)使用的场合不同:在分析用例、理解涉及多个用例的工作流、处理多线程应用等情况下,一般使用活动图;在显示一个对象在其生命周期内的行为时,一般使用状态图。 4、试分析结构化方法存在的主要问题是什么? (1)需求分析的细化程度没有标准,只能凭借分析人员的经验自己把握;需求分析的过程是在一种瀑布形式,当需求变更时,功能变化就会导致软件模块结构发生变化,造成了软件结构不稳定。 (2)结构化程序设计将数据定义与处理数据的过程相分离,不利于软件复用。 (3)结构化方法设计的软件结构不稳定,缺乏灵活性,可维护性差。 5、请说明判定表的作用及其结构。 判定表是结构化设计的工具,用于多条件的描述。其结构分为4部分:条件列表、条件组合、操作列表、特定条件下的操作组合。 二、应用题(10分) 一个简化的养老院软件需求描述如下:老人来到养老院,接待人员将老人的基本信息录入到系统中,管理员读取老人信息,进行护理级别的评估,根据评估结果分配床位、确定护理方案,床位的分配信息存入床位分配数据表,每位老人的护理方案也要保存到数据库表中。财务人员根据收费标准、床位分配信息、护理方案和老人的日常护理记录计算应收费用,老人的家属可以查询应收费信息和老人的日常护理信息。护士根据老人基本信息、护理方案对老人进行日常护理,并向系统录入每日的护理信息。请你根据以上的描述,画出数据流程图。 一、简答题(30分,每小题6分) 4、答案 5、答案 判定表是结构化设计的工具,用于多条件的描述。其结构分为4部分:条件列表、条件组合、操作列表、特定条件下的操作组合。 评分标准:作用3分、结构3分。

《软件工程》试题及参考答案(第4套)

电计系软件工程专业20 –20 学年度期 《软件工程》试题(第4套) 第一部分选择题 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A 软件过程 B 软件工具 C 质量保证 D 软件工程 2、在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,()是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。 A 业务需求 B 功能要求 C 非功能需求 D 用户需求 3、软件测试计划开始于需求分析阶段,完成于()阶段。 A 需求分析 B 软件设计 C 软件实现 D 软件测试 4.下面关于面向对象方法中消息的叙述,不正确的是( )。 A. 键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息 B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息 C. 应用程序之间可以相互发送消息 D.发送与接收消息的通信机制与传统的子程序调用机制不同 5.美国卡内基—梅隆大学SEI提出的CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是( )。 A.工作无序,项目进行过程中经常放弃当初的计划 B.建立了项目级的管理制度 C.建立了企业级的管理制度 D.软件过程中活动的生产率和质量是可度量的 6.在McCall软件质量度量模型中,()属于面向软件产品修改。 A.可靠性 B.可重用性 C.适应性 D.可移植性7.软件生命周期中所花费用最多的阶段是() A.详细设计 B.软件编码 C.软件测试 D.软件维护8.需求分析阶段的任务是确定() A.软件开发方法 B.软件开发工具 C.软件开发费

软件工程课后习题答案

软件工程课后习题答案 第一章 一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。软件危机的典型表现: (1) 对软件开发成本和进度的估计常常很不准确。常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。这些都降低了开发商的信誉,引起用户不满。 (2) 用户对已完成的软件不满意的现象时有发生。 (3) 软件产品的质量往往是靠不住的。 (4) 软件常常是不可维护的。 (5) 软件通常没有适当的文档资料。文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。

(6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。 (7) 开发生产率提高的速度远跟不上计算机应用普及的需求。软件危机出现的原因: (1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、维护困难。 (2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;轻视软件维护。 (3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。 二、假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改, 不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。

相关文档
最新文档