1华工《软件工程》随堂作业答案
软件工程随堂练习(习题)
软件工程随堂练习(习题)软件工程随堂练习一、选择题1.软件工程是()。
A、是结构化程序设计的指导方法B、是软件开发技术和软件工程管理学为内容的学科C、是指导计算机软件开发和维护的工程学科D、是指导软件开发的工程方法。
2.软件工程中的各种方法是完成软件工程项目的技术手段,它们支持软件工程的()阶段。
A.各个B. 前期C.中期D.后期3.原型方法是用户和设计者之间的一种交互过程,选用于()系统。
A. 需求确定的B. 需求不确定性较高的C. 管理信息D. 决策支持4.要将一个复杂的系统分析清楚,常用方法是结构化分析方法,结构化分析方法就是()。
A、面向数据流自顶向下逐步求精的方法B、由内向外进行分析的方法C、先局部后整体的分析方法D、使用IPO图形工具分析的方法5.概要设计过程是()A. 先确定系统的实现方案,然后在结构设计阶段中确定软件的模块结构B. 确定软件的模块结构,再设计出系统的所有程序和数据文件C. 设计出系统的HIPO 图并对所有模块进行描述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.一个软件产品开发完成投入使用后,常常由于各种原因需要对它做适当的变更,通常把软件交付使用后所做的变更称为( )。
软件工程课堂练习与参考答案
软件工程课堂练习与参考答案课堂练习一、填空题1、软件的生存期包括:问题的定义、()、需要分析三个阶段。
2、可行性分析的内容包括:()、经济可行性、操作可行性和法律可行性。
3、模块独立性设计的标准是:模块化、抽象、()、和信息隐藏。
4、主程序员组由主程序员、()、后备程序员、编程秘书组成。
5、成本/效益分析目的是从()评价开发一个新的软件项目是否可行。
6、模块是由边界元素限定的()(例如,数据说明、可执行的语句等)的序列。
7、模块化就是把程序划分成()且可独立访问的模块。
8、人类在认识复杂现象的过程中使用的最强有力的思维工具是()。
9、人机界面的设计质量,直接影响用户对软件产品的评价,从而影响软件产品的竞争力和寿命,因此,必须对人机界面设计给以()。
10、质量保证是为保证产品和服务充分满足消费者要求的质量而进行的有计划、()的活动。
二、问答题1.简述需求分析的基本步骤。
2.有哪些常用的需求收集方法和技术?试选择某一系统并根据方法进行需求收集。
3.数据流图与数据词典之间有什么关系?4.试考察某一学生档案管理系统,用实体联系图描述该系统的主要数据。
5.试考察某一学生成绩管理系统,对其进行尽可能详细的功能建模和数据建模。
6.举例说明“做什么”与“怎么做”之间的差别。
7.某学校计算机教材购销系统有以下功能:学生买书,首先填写购书单,计算机根据各班学生用书表及售书登记表审查有效性。
若有效,计算机根据教材库存表进一步判断书库是否有书;若有书,计算机把领书单返回给学生,学生凭领书单到书库领书。
对脱销的教材,系统用缺书单的形式通知书库,新书购进库后,也由书库将进书通知返回给系统。
请就以上系统功能画出分层的DFD图(第三层只需画出销售子系统的DFD 图)。
参考答案一、填空题1、可行性分析2、技术可行性3、逐步求精4、程序员5、经济角度6、程序元素7、独立命名8、抽象9、足够重视 10、有组织二、问答题1.需求分析的基本步骤:1)获取用户需求2)分析用户需求3)编写需求文档4)评审需求文档5)管理需求2.需求收集方法和技术:1)跟班作业通过亲身参加业务工作来了解业务活动的情况。
软件工程(第五版)--习题及答案
打印出取票通知和票务账单。旅客可在航班的前一天凭取票通知和票务账单交款取票。系统
13、在软件生产的程序系统时代由于软件规模扩大和和软件复杂性提高等原因导
致了A。
A、软件危机 B、软件工程
C、程序设计革命 D、结构化程序设计
14、集成化开发环境中的环境集成机制不包括D。
A、数据集成 B、控制集成
没有尽早停止没有可行解决方案的开发项目就会造成时间、资金、人力、物力的浪费。为
了降低软件开发失败的可能性需要进行软件可行性研究。可行性研究要从经济可行性、技
术可行性、运行可行性和法律可行性四方面进行。 2、简述可行性研究的步骤。
答1审核系统的规模和目标2分析研究现行系统3设计新系统的高层逻辑模
5、×文字处理软件Word属于系统软件。 应用软件 6、√原型是软件的一个早期可运行的版本它反映最终系统的部分重要特性。
7、√软件开发过程中一个错误发现得越晚为改正它所付出的代价就越大。
8、×快速原型模型对软件开发人员的水平要求不高。
9、√喷泉模型适合于面向对象的软件开发。
10、×面向对象开发方法的主要缺点是在适应需求变化方面不够灵活。
二、选择题
1、软件是一种C。
A、程序 B、数据 C、逻辑产品 D、物理产品
2、软件开发方法是A。
A、指导软件开发的一系列规则和约定 B、软件开发的步骤
C、软件开发的技术 D、软件开发的思想
2、软件可行性研究的目的是C。
软件工程课后习题参考答案
软件工程课后习题参考答案软件工程课后习题参考答案1. 第一章规约与软件工程概述1.1 规约的定义规约是软件开发过程中明确要求的描述,包含了对软件需求、设计、实现、测试、部署和维护等各个阶段的要求和约束。
1.2 软件工程的概述软件工程是一门涉及对软件的开发、运行和维护的学科。
它通过应用工程原则和方法,以系统化、规范化、可靠化、经济化和高质量的方式来开发和维护软件。
2. 第二章软件需求规约2.1 软件需求规约的作用软件需求规约是对软件系统所需功能和性能的具体描述和说明,是软件开发的基础和依据。
它指导着开发团队的工作,确保软件的功能和性能符合用户的需求。
2.2 软件需求规约的要素软件需求规约包括功能需求、非功能需求和约束条件。
功能需求描述了软件系统应该具备的功能,非功能需求描述了软件系统的性能要求和质量特性,约束条件描述了软件系统所受限制的条件。
3. 第三章软件设计规约3.1 软件设计规约的目标软件设计规约是对软件系统进行结构化和模块化设计的过程,其目标是确保软件系统具备可靠性、可维护性、可扩展性和可重用性。
3.2 软件设计规约的方法软件设计规约采用面向对象设计、结构化设计和模块化设计等方法。
面向对象设计强调将问题领域的概念和对象转化为软件系统的类和对象,结构化设计强调将系统分解为模块,模块化设计强调模块间的接口和通信。
4. 第四章软件实现规约4.1 软件实现规约的目的软件实现规约是指将软件设计阶段得到的设计规约转化为计算机可执行的程序代码,其目的是确保软件系统的正确性、可靠性、可维护性和可测试性。
4.2 软件实现规约的技术软件实现规约采用编程语言、软件开发工具和软件开发环境等技术。
编程语言提供了描述算法和数据结构的语法和语义,软件开发工具提供了代码编辑、编译、调试和测试等功能,软件开发环境提供了开发的整体支持。
5. 第五章软件测试规约5.1 软件测试规约的目的软件测试规约是对软件系统进行功能、性能和质量等方面的验证和检测,其目的是找出软件系统的错误和缺陷,并修复和改进。
《软件工程》作业及答案
《软件工程》作业第一章1.什么是软件危机,它有哪些典型表现?答: 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
软件危机典型表现:对软件开发成本和进度的估计常常很不准确。
用户对“已完成的”软件系统不满意的现象经常发生。
软件产品的质量往往靠不住。
软件常常是不可维护的。
软件通常没有适当的文档资料。
软件成本在计算机系统总成本中所占的比例逐年上升。
软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。
软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。
管理和控制软件开发过程相当困难。
软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。
目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。
2.简述产生软件危机的原因和解决的思路。
答:软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开发、维护的方法不正确有密切关系。
解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
即采用工程化的原则和方法组织软件开发是摆脱软件危机的一个主要出路。
3.什么是软件工程?它有哪些本质特性?答: 软件工程是指导计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
软件工程本质特性:1、软件工程关注于大型程序的构造;2、软件工程的中心课题是控制复杂性;3、软件经常变化;4、开发软件的效率非常重要;5、和谐地合作是开发软件的关键;6、软件必须有效地支持它的用户;7、在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品。
软件工程(第五版)--习题及答案
软件⼯程(第五版)--习题及答案《软件⼯程》(第五版)习题参考答案第1章⼀、判断题1、(×)软件得维护与硬件维护本质上就是相同得。
2、(√)软件在运⾏与使⽤中也存在退化问题。
3、(×)软件危机得产⽣主要就是因为程序设计⼈员使⽤了不适当得程序设计语⾔。
4、(√)软件同其她事物⼀样,有孕育、诞⽣、成长、成熟与衰亡得⽣存过程。
5、(×)⽂字处理软件Word属于系统软件。
应⽤软件6、(√)原型就是软件得⼀个早期可运⾏得版本,它反映最终系统得部分重要特性。
7、(√)软件开发过程中,⼀个错误发现得越晚,为改正它所付出得代价就越⼤。
8、(×)快速原型模型对软件开发⼈员得⽔平要求不⾼。
9、(√)喷泉模型适合于⾯向对象得软件开发。
10、(×)⾯向对象开发⽅法得主要缺点就是在适应需求变化⽅⾯不够灵活。
⼆、选择题1、软件就是⼀种(C)。
A、程序B、数据C、逻辑产品D、物理产品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、瀑布模型本质上就是⼀种(A)模型。
A、线性顺序B、顺序迭代C、线性迭代D、能及早见到产品得7、瀑布模型突出得缺点就是不适应(D)得变动。
A、算法B、程序语⾔C、平台D、⽤户需求8、在软件开发模型中,提出最早、应⽤最⼴泛得模型就是(A)。
A、瀑布模型B、喷泉模型C、快速原型模型D、螺旋模型9、瀑布模型不适合⽤于(A)得软件开发。
A、需求模糊不清B、⽤户不能参与开发C、⽤户对计算机不了解D、开发⼈员对业务知识不熟悉10、快速原型得主要优点不包括(D)。
(完整版)软件工程课后答案
《软件工程》作业及答案1-1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
软件危机典型表现:对软件开发成本和进度的估计常常很不准确。
用户对“已完成的”软件系统不满意的现象经常发生。
软件产品的质量往往靠不住。
软件常常是不可维护的。
软件通常没有适当的文档资料。
软件成本在计算机系统总成本中所占的比例逐年上升。
软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。
软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。
管理和控制软件开发过程相当困难。
软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。
目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。
1-2 假设你是一家软件公司的总工程师,当你把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意你的观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”你怎么反驳他?1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?答:软件工程是指导计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
软件工程本质特性:1、软件工程关注于大型程序的构造;2、软件工程的中心课题是控制复杂性;3、软件经常变化;4、开发软件的效率非常重要;5、和谐地合作是开发软件的关键;6、软件必须有效地支持它的用户;7、在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品。
软件工程课后习题参考答案
软件工程课后习题参考答案软件工程课后习题参考答案1.简答题1.1 什么是软件工程?软件工程是一门研究和应用如何以系统化、规范化、可量化的方式开发和维护软件的学科,涉及到软件的设计、构建、测试、部署和维护等全生命周期的过程。
1.2 软件工程的目标是什么?软件工程的目标是提高软件开发过程的效率和质量,确保软件项目按时、按需求交付,并且能够满足用户的期望。
1.3 软件生命周期有哪些阶段?常见的软件生命周期包括需求分析、系统设计、详细设计、编码、测试、部署和维护等阶段。
1.4 什么是软件需求?软件需求是指对于软件系统所需满足的问题或需求的描述,包括功能需求、性能需求、接口需求等。
1.5 软件开发过程有哪些模型?常见的软件开发过程模型包括瀑布模型、迭代模型、螺旋模型、敏捷开发等。
2.客观题2.1 软件测试的目的是什么?a) 发现软件中的错误和缺陷b) 验证软件是否符合需求和规格c) 提高软件的可靠性和质量d) 以上皆是答案:d) 以上皆是2.2 瀑布模型的特点是什么?a) 瀑布模型是一种线性顺序的软件开发过程模型b) 各个开发阶段是相互独立的c) 开发过程按照需求分析、设计、编码、测试等顺序进行d) 以上皆是答案:d) 以上皆是2.3 敏捷开发的原则是什么?a) 个体和交互胜过流程和工具b) 可工作的软件胜过详尽的文档c) 客户合作胜过合同谈判d) 响应变化胜过遵循计划e) 以上皆是答案:e) 以上皆是3.计算题3.1 请计算以下代码的覆盖率:(假设代码行数为100行,已执行代码行数为80行)覆盖率 = 已执行代码行数 / 代码行数 100% = 80 / 100 100% = 80%3.2 请计算以下缺陷密度的值:(假设代码行数为1000行,代码中的缺陷数为10个)缺陷密度 = 缺陷数 / 代码行数 1000 = 10 / 1000 1000 = 103.3 请计算以下代码的复杂度:(假设代码中包含的判断语句有20个,循环语句有5个)复杂度 = 判断语句数 2 + 循环语句数 3 = 20 2 + 5 3 = 40 + 15 = 554.附件本文档涉及附件:无5.法律名词及注释本文涉及的法律名词及注释:无。
《软件工程》作业及答案
《软件工程》作业及答案《软件工程》作业第一章1.什么就是软件危机,它有哪些典型表现?答: 软件危机就是指在计算机软件得开发与维护过程中所遇到得一系列严重问题。
概括地说,软件危机包含下述两方面得问题:如何开发软件,以满足对软件日益增长得需求;如何维护数量不断膨胀得已有软件。
软件危机典型表现:对软件开发成本与进度得估计常常很不准确。
用户对“已完成得”软件系统不满意得现象经常发生。
软件产品得质量往往靠不住。
软件常常就是不可维护得。
软件通常没有适当得文档资料。
软件成本在计算机系统总成本中所占得比例逐年上升。
软件开发生产率提高得速度,远远跟不上计算机应用迅速普及深入得趋势。
产生软件危机得原因:一方面与软件本身得特点有关,另一方面也与软件开发与维护得方法不正确有关。
软件不同于硬件,它就是计算机系统中得逻辑部件而不就是物理部件。
管理与控制软件开发过程相当困难。
软件就是规模庞大,而且程序复杂性将随着程序规模得增加而呈指数上升。
目前相当多得软件专业人员对软件开发与维护还有不省糊涂观念,在实践过程中或多或少地采用了错误得方法与技术,这就是使软件问题发展成软件危机得主要原因。
2.简述产生软件危机得原因与解决得思路。
答:软件危机产生得原因一方面与软件本身得特点有关,另一方面,就是与已有软件开发、维护得方法不正确有密切关系。
解决软件危机,既要有技术措施(方法与工具),又要有必要得组织管理措施。
即采用工程化得原则与方法组织软件开发就是摆脱软件危机得一个主要出路。
3.什么就是软件工程?它有哪些本质特性?答: 软件工程就是指导计算机软件开发与维护得一门工程学科。
采用工程得概念、原理、技术与方法来开发与维护软件,把经过时间考验而证明正确得管理技术与当前能够得到得最好得技术方法结合起来,以经济地开发出高质量得软件并有效地维护它。
软件工程本质特性:1、软件工程关注于大型程序得构造;2、软件工程得中心课题就是控制复杂性;3、软件经常变化;4、开发软件得效率非常重要;5、与谐地合作就是开发软件得关键;6、软件必须有效地支持它得用户;7、在软件工程领域中就是由具有一种文化背景得人替具有另一种文化背景得人创造产品。
软件工程习题部分答案华工软件工程习题答案参考试卷
13:07:42
作业及解答(第3章)
从问题陈述可知,复印机的状态主要有“闲置”、“复印 ”、“缺纸”和“卡纸”。引起状态转换的事件主要是“ 复印命令”、“完成复印命令”、“发现缺纸”、“装满 纸”、“发生卡纸故障”和“排除了卡纸故障”。
13:07:42
作业及解答(第4章)
F7密码
13:07:42
作业及解答(第3章)
ER模型
✓本问题中共有两类实体,分别是“储户”和“储蓄所”, 在它们之间存在“存取款”关系。因为一位储户可以在多 家储蓄所存取款,一家储蓄所拥有多位储户,所以“存取 款”是多对多(M:N)关系。
✓储户的属性主要有姓名、住址、电话号码和身份证号码, 储蓄所的属性主要是名称、地址和电话号码,而数额、类 型、到期日期、利率和密码则是关系类型存取款的属性。
13:07:42
作业及解答(第3章)
3-3 银行计算机储蓄系统的工作过程大致如下:储户填写的 存款单或取款单由业务员键入系统,如果是存款则系统记 录存款人姓名、住址(或电话号码)、身份证号码、存款类 型、存款日期、到期日期、利率及密码(可选)等信息,并 印出存单给储户;如果是取款而且存款时留有密码,则系 统首先核对储户密码,若密码正确或存款时未留密码,则 系统计算利息并印出利息清单给储户。 请用数据流图描绘本系统的功能,并用实体-联系图描绘系 统中的数据对象。
4-3 一个浮点二进制数的构成是:一个可选的符号(+或-),后 跟一个或多个二进制位,再跟上一个字符E,再加上另一个 可选符号(+或-)及一个或多个二进制位。例如,下列的字符 串都是浮点二进制数:
110101E-101 -100111E11101 +1E0 更形式化地,浮点二进制数定义如下: 〈floating point binary〉∷=[〈sign〉]〈bitstring
华南理工大学成考软件工程随堂练习(第五章至第九章)
1.(单选题) JSD 设计方法是由 Jackson 所提出的,它是一种面向()的软件设计方法。
对象 B.数据流 C.数据结构 D.控制结构答题: A. B. C. D.2.(单选题) 数据元素组成数据的方式的基本类型是()。
A.顺序的 B.选择的 C.循环的 D.以上全部答题: A. B. C. D.3.(单选题) 程序流程图中的箭头代表的是()。
A.数据流 B.控制流 C.调用关系 D.组成关系答题: A. B. C. D.4.(单选题) 伪码又称为过程设计语言 PDL,一种典型的 PDL 是仿照()编写的。
A.FORTRAN B.汇编语言 C.PASCAL 语言 D.COBOL 语言答题: A. B. C. D.5.(单选题) 结构化程序流程图中一般包括 3 种基本结构,下述结构中()不属于其基本结构。
A.顺序结构 B.条件结构 C.选择结构 D.嵌套结构答题: A. B. C. D.6.(单选题) 软件详细设计的主要任务是确定每个模块的()。
A、算法和使用的数据结构B、外部接口C、功能D、编程答题: A. B. C. D.7.(单选题) 为了提高模块的独立性,模块之间最好是()。
A.公共耦合B.控制耦合C.内容耦合D.数据耦合答题: A. B. C. D.8.(单选题) 为了提高模块的独立性,模块内部最好是()。
A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚答题: A. B. C. D.9.(单选题) 软件设计中,可应用于详细设计的工具有()A. 数据流程图、PAD 图、N-S 图B. 业务流程图、N-S 图、伪码C. 数据流程图、PAD 图、N-S 图和伪代码D. 程序流程图、PAD 图、N-S 图和伪代码答题: A. B. C. D.10.(单选题) 程序的三种基本结构是顺序、条件和循环,它们的共同点是( )。
A. 已经用硬件实现B. 只能用来写简单程序C. 只有一个入口和一个出口D. 不能嵌套使用答题: A. B. C. D.11.(单选题) 软件部分的内部实现与外部可访问性分离,这是指软件的( )。
软件工程课后参考答案完整版
软件工程课后参考答案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】第一章课后参考答案1.什么是软件危机它们有哪些典型表现为什么会出现软件危机“软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。
这些问题决不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。
它们有以下表现:(1)对软件开发成本和进度的估计常常很不准确;(2)用户对“已完成的”软件系统不满意的现象经常发生;(3)软件产品的质量往往靠不住;(4)软件常常是不可维护的;(5)软件通常没有适当的文档资料;(6)软件成本在计算机系统总成本中所占的比例逐年上升;(7)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。
出现软件危机的主要原因(1)与软件本身的特点有关(2)与软件开发和维护过程中使用的方法不正确有关2.假设自己是一家软件公司的总工程师,当把图给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他?答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”时在引入变动,当然付出的代价更高。
一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。
3.什么是软件工程它有哪些本质特征怎么用软件工程消除软件危机软件工程是指导知道计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。
《软件工程》作业与参考答案
一、填空(15分)1、需求分析的任务:1)。
确定目标系统的综合要求A。
目标系统的功能要求B。
目标系统的性能要求C。
目标系统运行的环境要求D。
目标系统的扩展要求2)。
分析目标系统的数据要求A。
需要哪些数据?B。
数据之间有什么联系?C。
数据有什么属性及数据结构?D。
对数据的处理逻辑?3)。
导出目标系统的逻辑模型4)。
修正系统流程图5)。
修正系统开发计划6)。
开发原型系统2、模块设计准则1)、改进软件结构提高模块独立性(低耦合高内聚)2)、模块规模要适中3)、深度、宽度、扇入及扇出要适当4)、设计单入口单出口的模块5)、模块功能应该可以预测6)、降低接口的复杂性7)、模块的作用域应该在控制域之内3、软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题,具体表现在哪些方面?1)、无法开发复杂程度高的软件2)、成本和进度估计不准3)、无统一科学的规范,软件不可维护4)、无质量保证,可靠性差5)、软件常不能满足用户的需求6)、无适当的文档资料7)、软件生产率太低4 、总体设计的任务1)、设计系统的物理实现方案2)、设计软件的整体结构,划分程序功能模块,决定模块间的接口关系和传递信息; 3)、设计系统全局的存贮数据结构4)、设计系统I/O的方式和格式;5)、设计系统安全性、出错处理及代码等6)、设计组装测试计划。
5、从下列关于结构化程序设计的叙述中选出5条正确的叙述。
①程序设计比较方便,但比较难以维护。
②便于由多个人分工编制大型程序。
③软件的功能便于扩充。
④程序易于理解,也便于排错。
⑤在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。
⑥模块之间的接口叫做数据文件。
⑦只要模块之间的接口关系不变,各模块内部实现细节的修改将不会影响别的模块。
⑧模块间的单向调用关系叫做模块的层次结构。
⑨模块越小,模块化的优点越明显。
一般来说,模块的大小都在10行以下。
答:正确的叙述有②、③、④、⑦、⑧。
1华工《软件工程》随堂作业答案
B.瀑布模型
C.螺旋模型
D.统一过程
答题: A. B. C. D.(已提交)
参考答案:D
问题解析:
19.(单选题)研究软硬件资源的有效性是进行( )研究的一方面。
A.技术可行性
B.经济可行性
C.社会可行性
D.操作可行性
答题: A. B. C. D.(已提交)
参考答案:A
问题解析:
20.(单选题)制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是()。
A.维护报告B.维护申请C.维护文档D.维护说明
答题: A. B. C. D.(已提交)
参考答案:B
问题解析:
5.(单选题)在需求( )中,开发人员要从用户那里解决的最重要的问题是软件应当做什么。
A.设计B.代码
C.分析D.结构
答题: A. B. C. D.(已提交)
参考答案:C
问题解析:
6.(单选题)在统一过程中是采用用例驱动和架构优先的策略,并采用迭代增量建造方法,使()“逐渐”被开发出来。
A.快速原型
B.瀑布模型
C.喷泉模型
D.螺旋模型
答题: A. B. C. D.(已提交)
参考答案:A
问题解析:
16.(单选题)()是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。
A.统一过程
B.瀑布模型
C.喷泉模型
D.螺旋模型
答题: A. B. C. D.(已提交)
参考答案:C
A.问题分析
B.信息域分析
C.结构化程序设计
D.确定逻辑结构
答题: A. B. C. D.(已提交)
参考答案:C
软件工程课后答案
软件⼯程课后答案《软件⼯程》作业及答案1-1 什么就是软件危机?它有哪些典型表现?为什么会出现软件危机?答:软件危机就是指在计算机软件的开发与维护过程中所遇到的⼀系列严重问题。
概括地说,软件危机包含下述两⽅⾯的问题:如何开发软件,以满⾜对软件⽇益增长的需求;如何维护数量不断膨胀的已有软件。
软件危机典型表现:对软件开发成本与进度的估计常常很不准确。
⽤户对“已完成的”软件系统不满意的现象经常发⽣。
软件产品的质量往往靠不住。
软件常常就是不可维护的。
软件通常没有适当的⽂档资料。
软件成本在计算机系统总成本中所占的⽐例逐年上升。
软件开发⽣产率提⾼的速度,远远跟不上计算机应⽤迅速普及深⼊的趋势。
产⽣软件危机的原因:⼀⽅⾯与软件本⾝的特点有关,另⼀⽅⾯也与软件开发与维护的⽅法不正确有关。
软件不同于硬件,它就是计算机系统中的逻辑部件⽽不就是物理部件。
管理与控制软件开发过程相当困难。
软件就是规模庞⼤,⽽且程序复杂性将随着程序规模的增加⽽呈指数上升。
⽬前相当多的软件专业⼈员对软件开发与维护还有不省糊涂观念,在实践过程中或多或少地采⽤了错误的⽅法与技术,这就是使软件问题发展成软件危机的主要原因。
1-2 假设您就是⼀家软件公司的总⼯程师,当您把图1、1给⼿下的软件⼯程师们观瞧,告诉她们及早发现并改正错误的重要性时,有⼈不同意您的观点,认为要求在错误进⼊软件之前就清除它们就是不现实的,并举例说:“如果⼀个故障就是编码错误造成的,那么,⼀个⼈怎么能在设计阶段清除它呢?”您怎么反驳她?1-3 什么就是软件⼯程?它有哪些本质特性?怎样⽤软件⼯程消除软件危机?答:软件⼯程就是指导计算机软件开发与维护的⼀门⼯程学科。
采⽤⼯程的概念、原理、技术与⽅法来开发与维护软件,把经过时间考验⽽证明正确的管理技术与当前能够得到的最好的技术⽅法结合起来,以经济地开发出⾼质量的软件并有效地维护它。
软件⼯程本质特性:1、软件⼯程关注于⼤型程序的构造;2、软件⼯程的中⼼课题就是控制复杂性;3、软件经常变化;4、开发软件的效率⾮常重要;5、与谐地合作就是开发软件的关键;6、软件必须有效地⽀持它的⽤户;7、在软件⼯程领域中就是由具有⼀种⽂化背景的⼈替具有另⼀种⽂化背景的⼈创造产品。
2021年《软件工程》-平时作业-华南理工大学网络教育答案
2021年《软件工程》·平时作业华南理工大学网络教育答案作业要求:以下请填写学生本人姓名和学号,完成以下作业,然后重命名文件名为学生本人姓名,以附件形式提交该文件。
学生姓名:学生学号:一、简答题1.软件工程包含两方面的内容是什么?答:软件工程包括技术和管理两方面的内容,是技术与管理紧密结合所形成的工程学科。
2.数据流图是描述数据在软件什么过程?数据流图的图像符号有那四种?答:描述数据在软件中的加工处理和流动的过程。
图像符号有:①箭头:表示数据流;②圆或椭圆:表示加工;③双杠:表示数据存储;④方框:表示数据的源点或终点3.简述模块设计的基本原则。
答:模块设计基本原则有模块化、抽象、信息隐蔽和局部化等。
由此,我们可以知道不同模块相互之间联系需要尽可能少,尽可能减少公共的变量和数据结构。
一个模块应尽可能在逻辑上独立,有完整单一的功能。
4.软件详细设计需要设计人员考虑那些?答:设计人员主要考虑:①考虑构件(模块)的功能以及需要解决的问题,这个构件(模块)在什么可以被调用,为什么需要这个构件(模块)。
②考虑实现构件(模块)的算法,包括:公式、边界和特殊条件,甚至包括参考资料、引用的出入等③考虑构件(模块)内部的数据流。
对于面向对象的构件(模块),主要考虑对象之间的关系。
5.任何程序都可由那三种基本控制结构构造。
这三种基本控制结构的共同点是什么?答:可由三种基本控制结构:顺序、选择、循环;共同点:单入口,单出口。
6.黑盒测试主要针对功能进行的测试,请说明有那些是采用黑盒技术设计测试用例的方法。
答:黑盒测试主要是针对软件的功能测试和性能测试。
方法有:边界值分析、等价类划分、规范导出法、错误猜测法、基于故障的测试方法、因果图法、决策表法、场景法等。
7.软件维护的类型主要包括那四种?答:纠错性维护,适应性维护,完善性维护,预防性维护8.软件生命周期由那三个时期组成?答:软件定义,软件开发,软件维护9.软件可靠性是指什么?答:可靠性是指在指定条件下使用时,软件产品维持规定的性能级别的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
参考答案:B
问题解析:
14.(单选题)快速原型是一种()型设计过程。
A.自外向内
B.自底向上
C.自顶向下
D.自内向外
答题: A. B. C. D.(已提交)
参考答案:A
问题解析:
15.(单选题)要开发一个软件,它的功能是把73624.9385这个数开平方,所得到的结果精确到小数点后4位,一旦实现并测试完后,该产品将被抛弃。该项目选择()生命周期模型。
问题解析:
17.(单选题)喷泉模型克服了瀑布模型不支持软件重用和多项开发活动集成的局限性,喷泉模型的开发过程具有()和无间隙。
A.需求确定性
B.迭代性
C.无间隙
D.风险性
答题: A. B. C. D.(已提交)
参考答案:B
问题解析:
18.(单选题)在()中是采用用例驱动和架构优先的策略,并采用迭代增量建造方法,使软件“逐渐”被开发出来。
A.喷泉模型
B.瀑布模型
C.螺旋模型
D.统一过程
答题: A. B. C. D.(已提交)
参考答案:D
问题解析:
19.(单选题)研究软硬件资源的有效性是进行( )研究的一方面。
A.技术可行性
B.经济可行性
C.社会可行性
D.操作可行性
答题: A. B. C. D.(已提交)
参考答案:A
问题解析:
20.(单选题)制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是()。
A.方法
B.工具
C.方法和工具
D.过程
答题: A. B. C. D.(已提交)
参考答案:C
问题解析:
9.(单选题) ()是以提高软件质量为目的的技术活动。
A、技术创新B、测试C、技术改造D、技术评审
答题: A. B. C. D.(已提交)
参考答案:D
问题解析:
10.(单选题)软件生命周期由软件计划、软件开发和()三个时期组成。
华工《软件工程》随堂作业答案
1.(单选题)把一组具有相同数据结构和相同操作的对象的集合定义为类,此定义包括一组数据属性和在( )上的一组合法操作。
A.数据B.属性C.对象D.消息
答题: A. B. C. D.(已提交)
参考答案:A
问题解析:
2.(单选题)面向对象技术特别强调的是( )的数据结构。
A.数据库B.数据
A.硬件B.功能C.软件D.模型
答题: A. B. C. D.(已提交)
参考答案:C
问题解析:
7.(单选题)软件工程学的一个重要目标是()。
A.提高程序的执行效率
B.降低程序对存储空间的要求
C.提高软件的可理解性
D.提高软件的可维护性
答题: A. B. C. D.(已提交)
参考答案:D
问题解析:
8.(单选题)软件工程的过程是将软件工程()综合起来以达到合理、及时地进行计算机软件开发的目的。
A.需求不确定性较高的
B.需求确定的
C.管理信息
D.决策支持
答题: A. B. C. D.(已提交)
参考答案:A
问题解析:
13.(单选题)快速原型从设计用户界面开始,首先形成(),然后用户运行界面原行,并就同意什么和不同意什么提出意见。
A.用户使用手册
B.系统界面原行
C.界面需求分析说明书
D.完善用户界面
C.抽象类型D.对象
答题: A. B. C. D.(已提交)
参考答案:D
问题解析:
3.(单选题)在软件交付使用后,由于软件开发过程产生的错误没有完全彻底在测试阶段发现,必然有一部分隐含错误带到( )阶段。
A.需求B.开发C.编码D.维护
答题: A. B. C. D.(已提交)
参考答案:D
问题解析:
4.(单选题)软件维护的工作流程为用户提出( )、维护组织审查申请报告并安排维护工作、进行维护并做详细的维护记录和复审。
A.软件运行
B.软件维护
C.软件过程
D.软件运行维护
答题: A. B. C. D.(已提交)
参考答案:D
11.(单选题)()是将软件生命周期的各个阶段,依线性顺序连接,用文档驱动的模型。
A.统一过程
B.瀑布模型
C.螺旋模型
D.喷泉模型
答题: A. B. C. D.(已提交)
参考答案:B
问题解析:
12.(单选题)快速原型方法是用户和设计者之间的一种交互过程,适用于()系统。
A.组织与管理
B.分析与估算
C.设计与测试
D.规划与调度
答题: A. B. C. D.(已提交)
参考答案:D
问题解析:
21.(单选题)需求规格说明书的内容不应该包括对()的描述。
A.主要功能
B.算法的详细过程
C.用户界面及运行环境
D.软件的性能
答题: A. B. C. D.(已提交)
参考答案:B
问题解析:
A.快速原型
B.瀑布模型
C.喷泉模型
D.螺旋模型
答题: A. B. C. D.(已提交)
参考答案:A
问题解析:
16.(单选题)()是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。
A.统一过程
B.瀑布模型
C.喷泉模型
D.螺旋模型
答题: A. B. C. D.(已提交)
参考答案:C
22.(单选题)进行需求分析可使用多种工具,但是()不适用。
A.数据流图
B.叛定表
C.PAD图
D.数据字典
答题: A. B. C. D.(已提交)
参考答案:C
问题解析:
23.(单选题)需求分析的任务是()。
A.要回答“软件必须做什么”
B.可概括为理解、分析和表达“系统必须做什么”
C.要求编写需求规格说明书
A.维护报告B.维护申请C.维护文档D.维护说明
答题: A. B. C. D.(已提交)
参考答案:B
问题解析:
5.(单选题)在需求( )中,开发人员要从用户那里解决的最重要的问题是软件应当做什么。
A.设计B.代码
C.分析D.结构
答题: A. B. C. D.(已提交)
参考答案:C
问题解析:
6.(单选题)在统一过程中是采用用例驱动和架构优先的策略,并采用迭代增量建造方法,使()“逐渐”被开发出来。
D.以上都对
答题: A. B. C. D.(已提交)
参考答案:D
问题解析:
24.(单选题)需求分析阶段开发人员要从用户那里解决的最重要的问题是()。
A.软件要做什么
B.需要给软件提供哪些信息
C.要让软件具有何种结构
D.软件的工作效率
答题: A. B. C. D.(已提交)
参考答案:A
问题解析:
25.(单选题)软件需求分析的任务不应包括( )。
A.问题分析
B.信息域分析
C.结构化程序交)