《软件工程》自考02333-重点难点汇集
软件工程
自学考试软件工程02333 知识总结归纳(全8章)第一章绪论1968年的NATO会议上首次提出了软件工程这一术语。
软件工程是一门研究软件开发的学科。
软件工程概念提出的目的:为了倡导以工程的原理、原则和方法进行软件开发,以解决出现的“软件危机”。
简单分析软件工程概念的提出与发展:(1)软件工程概念的提出20世纪60年代以来,随着计算机的广泛应用,软件生产率、软件质量远远满足不了社会发展的需求,成为社会、经济发展的制约因素,这就是“软件危机”,而为了解决软件危机从而提出了软件工程概念。
(2)软件工程的发展历程,大体分两个时期。
1.第一个时期20世纪60年代末到80年代初,软件系统的规模、复杂性以及在关键领域的广泛应用,促进了软件的工程化开发和管理。
这一时期主要围绕软件项目,开展了有关开发模型、开发方法和支持工具的研究。
2.第二个时期20世纪80年代以来,围绕对软件工程过程的支持,开展了一系列有关软件生产技术,特别是软件复用技术和软件生产管理的研究和实践。
软件是对一个特定问题域的抽象,是被开发出的一种逻辑实体,而不是一种“有形”的物理部件。
软件开发既有技术上的问题,又有管理上的问题。
文档是了解程序所需的阐述性资料。
在软件开发中,分层的基本动机是为了控制开发的复杂性。
软件:计算机软件一般是指计算机系统中的程序及其文档。
模型:待建模系统的任意抽象,其中包括所有的基本能力、特性或其他一些方面,而没有任何冗余的细节。
简述实施软件开发的基本途径:软件开发的基本途径是问题建模。
常用的建模手段有:结构化方法、面向对象方法以及诸多面向数据结构方法等。
计算机任务的处理对象和处理规则的描述是程序。
软件工程:是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此为研究对象的学科。
软件开发的本质:不同抽象层术语之间的“映射”,以及不同抽象层处理逻辑之间的“映射”。
在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了软件危机。
2022年自考02333软件工程题库及答案
02333软件工程题库及答案单选题1.软件开发环境按解决旳问题分类涉及( )A.程序设计环境B.工具箱环境C.基于措施旳环境D.以语言为中心旳环境2.用于描述待开发产品/系统功能上旳能力、性能参数或其她性质旳是()A.程序B.需求C.设计D.规约3.下列选项中,用作具体设计旳工具是()A.层次图B.数据流图C.模块构造图D.盒图4.UML提供旳图形化工具中,用于概念模型和软件模型旳动态构造旳是()A.用况图B.部署图C.对象图D.构件图5.根据软件需求分类,下列选项中不属于设计约束旳是()A.并发操作B.握手合同C.质量属性D.硬件限制6.根据RUP测试活动,输入为测试用况,活动为实现测试,则输出为()A.测试筹划B.测试构件C.测试评价D.测试过程7.一般来说,单元测试往往采用()A.等价类测试B.因果图测试C.白盒测试D.黑盒测试8.支持面向对象技术旳软件生存周期模型是()A.喷泉模型B.螺旋模型C.增量模型D.瀑布模型9.CMMI成熟度级别中旳第四级为()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.构造设计是一种应用最广泛旳系统设计措施,是以()为基本、自顶向下、逐渐求精和模块化旳过程。
02333软件工程简答知识点
第一章绪论简述软件危机与软件工程的概念以及提出软件工程概念的目的。
201804 201810(1)软件生产率、软件质量远远满足社会发展的需求,成为社会、经济发展的制约因素,把这一现象称为软件危机;(2)软件工程是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此为研究对象的学科;(3)软件工程概念的提出是倡导以工程的原理、原则和方法进行软件开发,以期解决出现的软件危机。
简述软件工程的概念与发展201404发展:60年代末—80年代初,主要围绕系统实现技术、软件质量和软件工程管理;80年代以来,主要表现为软件复用技术、软件生产管理的研究和实践。
简述计算机软件的概念,以及提出软件工程概念的目的。
201704 2016101.计算机软件一般是指计算机系统中的程序及其文档。
2.其中,程序是计算机任务的处理对象和处理规则的描述;3.文档是为了理解程序所需的阐述性资料。
4.软件工程概念的提出是倡导以工程的原理、原则和方法进行软件开发,以期解决出现的软件危机。
简述软件开发的本质及其涉及到的问题。
201904 201504本质:不同抽象层术语之间的“映射”,以及不同抽象层处理逻辑之间的“映射”。
问题:(1)如何实现这样的映射,这是技术层面上的问题;(2)如何管理这样的映射,以保障映射的有效性和正确性。
这是管理层面上的问题。
简述软件开发的本质及其基本途径。
201710 201510本质:实现问题空间的概念;处理逻辑到解空间的概念;处理逻辑之间的映射。
途径:系统建模。
简述何谓系统模型以及软件开发中所涉及的系统模型分类。
模型是待建系统的任意抽象。
该抽象是在特定意图下所确定的角度和抽象层次对物理系统的一个描述,描述其中的成分和成分之间所具有的特定语义的关系,还包括对该系统边界的描述;系统模型分为两类:概念模型和软件模型。
软件模型又可进步分为设计模型、实现模型和部署模型等。
自考软件工程02333 笔记
自考软件工程02333 笔记一、概述软件工程作为一门新兴的学科,旨在指导和管理软件开发过程中的各种活动,以便按时、按质、按成本地完成软件工程项目。
本课程通过系统地介绍软件工程的基本理论、基本方法、基本技术和实践应用,以培养学生的软件工程思维和实际操作能力。
二、课程要求1. 了解软件工程的基本概念、基本原理和基本方法;2. 掌握软件工程项目的开发过程和管理过程;3. 掌握软件工程开发过程中的基本工具和技术;4. 了解软件工程应用领域的发展趋势与前沿技术。
三、课程内容1. 软件工程概述软件工程的定义、历史、发展、意义、主要任务等;2. 软件生命周期软件生命周期模型、活动、任务、文档、质量保证;3. 需求工程需求获取、需求分析、需求规格说明、需求验证等;4. 软件设计结构化设计、面向对象设计、界面设计、数据库设计等;5. 软件构建编码规范、程序设计、测试、集成等;6. 软件测试测试基本概念、测试方法、测试工具、测试用例设计等;7. 软件维护软件维护的类型、需求、过程、技术等;8. 软件质量管理质量计划、质量保证、缺陷管理、度量与分析等;9. 项目管理项目计划、进度管理、成本管理、风险管理等;10. 软件工程发展趋势软件工程的前沿技术、新兴趋势及应用领域。
四、学习方法1. 认真听课,理清教学内容;2. 多做习题,巩固理论知识;3. 积极参与讨论,提升理论水平;4. 关注实践应用,培养实际操作能力;5. 及时总结,形成完整的软件工程知识体系。
五、考试重点1. 考试内容:对软件工程的基本概念、基本原理、基本方法和实践应用的掌握程度;2. 考试形式:闭卷考试,以选择题、简答题、计算题形式出题;3. 考试要求:理论与实践相结合,注重分析和解决实际问题的能力。
六、学习建议1. 认真学习课本内容,了解软件工程的基本理论和方法;2. 多参加实验课和讨论班,加强理论与实践的结合;3. 多做习题,熟悉考试题型和内容要点;4. 关注软件工程的发展趋势,了解前沿技术和新兴应用。
自考软件工程试题(含答案)02333
全国2010年1月自学考试软件工程试题(含答案)课程代码:02333一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.软件生存周期中,准确地确定软件系统必须做什么的阶段是(B)A.可行性分析和项目开发计划B.需求分析C.概要设计D.详细设计2.把瀑布模型和专家系统结合在一起的软件生存周期模型是(B)A.增量模型B.基于知识的模型C.螺旋模型D.喷泉模型3.以下不.属于项目开发计划主要内容的是(C)A.实施计划B.交付期限C.测试用例D.人员组织及分工4.使用数据流图来表示系统逻辑模型的是(D)A.Jackson B.VDMC.OOA D.SA5.用于描述结构化分析中数据流加工逻辑的是(A)A.判定树B.ER图C.状态图D.用例图6.若一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入,则该模块的内聚性类型是(C)A.时间内聚B.偶然内聚C.顺序内聚D.功能内聚7.下列几种耦合类型,耦合性最高的是(A)A.公共耦合B.控制耦合C.标记耦合D.数据耦合8.程序流程图的优点不包括...(B)A.历史最悠久,使用最广泛B.容易表示逐步求精的过程C.支持程序的三种基本控制结构D.直观清晰,易于使用9.第一个体现结构化编程思想的程序设计语言是(C)A.Cobol语言B.C语言C.Pascal语言D.FORTRAN语言10.确认测试也称为(A)A.有效性测试B.无效性测试C.静态测试D.动态测试11.黑盒测试技术不包括...(B)A.等价类划分B.路径覆盖C.边界值分析D.错误推测12.为了增加软件功能和性能、提高软件运行效率而进行的维护活动称为(C)A.校正性维护B.适应性维护C.完善性维护D.预防性维护13.瀑布模型与增量模型之间的本质区别是(B)A.瀑布模型属于非整体开发模型,增量模型属于整体开发模型B.瀑布模型属于整体开发模型,增量模型属于非整体开发模型C.瀑布模型容易适应需求变化,增量模型不容易适应需求变化D.瀑布模型减少技术、应用风险,增量模型增大技术、应用风险14.面向对象分析中,对象模型描述了系统的(A)A.静态结构B.动态结构C.控制结构D.顺序结构15.面向对象设计中存在三种内聚,分别是(D)A.属性内聚、操作内聚、类内聚B.操作内聚、类内聚、整体-部分内聚C.属性内聚、操作内聚、对象内聚D.操作内聚、类内聚、一般-具体内聚16.McCall质量度量模型中,与“软件系统对非授权人访问软件或数据行为的控制程度”所对应的软件质量特性是(B)A.正确性B.完整性C.可维护性D.可用性17.软件工程标准中,JIS属于(B)A.国际标准B.国家标准C.行业标准D.企业规范18.与“程序维护手册”文档有关的人员是(B)A.管理人员和开发人员B.管理人员和维护人员C.维护人员和用户D.管理人员和用户19.软件工具“代码生成程序”属于(C)A.需求追踪工具B.质量保证工具C.设计工具D.文档工具20.软件复杂性度量的参数中,能反映“软件总共的指令数,或源程序行数”的是(A)A.规模B.难度C.结构D.智能度二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
自考02333软件工程复习软件测试
自考02333软件工程复习软件测试软件测试是保证软件过程质量和软件产品质量的基础。
因此软件测试也是本课程的重点内容,题目类型涉及单项选择题、填空题、简答题、综合应用题全部题型,分值在25%左右。
本章既有基本概念,也有综合应用,要求考生多做练习。
第一节软件测试目标与软件测试过程模型1. 软件测试的对象软件=程序+文档测试对象:各个阶段产生的源程序和文档。
2. 软件测试的目的基于不同的立场,对软件测试的目的存在着两种完全对立的观点。
(1)一种观点是通过测试暴露出软件中所包含的故障和缺陷(从用户的角度);(2)另一种是希望测试成为表明软件产品中不存在错误的过程,验证该软件中已正确地实现了用户的要求,因此,它们倾向于选取导致程序失败概率最小的测试实例和数据。
显然,第二种观点对完善和提高软件质量和可靠性毫无价值,因此测试的目的应该是通过软件测试尽可能多地发现并改正软件种存在的错误。
3. 软件测试的定义Glenford J. Myers把这一观点归纳为:⑴测试是程序执行的过程,其目的在于发现错误。
⑵一个好的测试实例在于发现至今未发现的错误。
⑶一个成功的测试是发现了至今未发现的错误的测试。
因此,软件测试(Software Testing)是从引起和发现错误的目的出发执行某一程序的过程。
4. 错误的类型(1)功能错误:处理功能说明不完整或不确切,致使编程时对功能有误解而产生的错误。
(2)系统错误:与外部接口错误、子程序调用错误、参数使用错误等。
(3)过程错误:算术运算错误和逻辑运算错误(4)数据错误:数据结构、实体、属性错误。
(5)编程错误:语法错误、程序逻辑错误、编程书写错误等。
5. 软件测试过程模型(1)测试设计(2)测试执行(3)测试结果比较第二节软件测试技术测试法分为黑盒法和白盒法。
1.黑盒(Black-box Testing)法:黑盒法又称为功能测试法,它是根据程序功能的分析,推演出由函数定义域中有代表性的元素组成测试集,这些数据应包括对程序是有效的和无效的输入,极端的、正常的和特殊的数据元素。
02333自考 软件工程复习资料
一,第一章1.软件工程→1968年的NATO会议上提出解决“软件危机”2.倡导工程原理,原则,方法进行软件开发,以期解决“软危”3.软件工程:用计算机科学理论和技术和工程管理原则方法,按预算,进度满足用户要求的软件产品工程。
4.软工两时间:1. 60-80年代,系统规模,复杂性,关键领域应用,提出了waterfall, C, Pascal, Ada; Jackson方法,结构化方法。
2. 80年代后大量软件的实践,过程支持,软件生产技术,复用技术,生产管理。
《软件和存周期过程》,C++, Eiffel, Smalltalk5.软件=程序+文档,是逻辑实体,“无形”6.程序=处理对象+处理规则7.文档=理解程序所需的阐述性资料8.软件开发的本质:不同抽象层术语+处理逻辑之间的“映射”9.建模的方法:结构化方法,面向对象方法,诸多面向数据结构方法10.模型:待建系统的任意抽象,包括基本能力,特性,或其他方面;抽象上对物理系统的描述,系统边界,关系的主义描述。
11.软件系统模型:1,概念模型(用户)2,软件模型(开发者)a)需求→概念模型b)设计→软件模型c)实现→软件模型d)部署→软件模型12.软件开发有技术和管理上的问题二,第二章1.正确定义问题,是解决问题的基础2.需求是“要予构造”的陈述,描述了软件“能力”“性能参数”“其他性质”3.需求的性质:a)必要b)无歧义c)可测/测量d)可跟踪4.验证需求是不是歧义→需求复审5.需求分类:功能/非功能(性能,外部接口,设计约束,质量属性),6.需求发现:自悟,交谈,观察,小组会,提炼a)自悟要求高,要有想象力/需求不正确b)交谈依赖“正确提问”“揭示本意”/不能认识到合理需求→复审c)观察要有洞察力/客户抵触,客户认为熟悉了业务d)小组会人力资源,良好的需求发现能力,达成共识/客观条件限制,互相矛盾的需求e)提炼要有想像力和需求标识力熟悉技术和法规/无法验证需求是否正确7.需求规约是陈述的正式文档,表达概念模型a)重要性和稳定性程度b)可修改c)完整d)一致8. 需求规约表达:非形式化(规模小,不复杂,小型软件),半形式和形式化(主要为了验证程序正确)9. 需求规约作用:a) 技术合同,产品功能和环境体现b) 管理控制点c) 正式,受控的起点d) 初始测试计划,用户系统操作描述10. 需求规约不是一个设计文档,用于设计的文档,也不是进度和规划文档三,第三章1.软件需求中三挑战:1. 问题空间理解2. 人与人之间通信3. 需求的变化性2.20世纪70年代提出结构化方法3.基本术语1. 数据流程2. 加工3. 数据存储4. 数据源和数据潭4.数据流图DFD P375.按功能分解的设计思想:自顶向下,逐步求精6.数据字典:[=]定义为;[|]或者;[+]顺序;[{}]重复;[m.n]子界7.数据结构3种条目:数据流条目;数据存储条目;数据项条目8.结构化语言是形式化语言和自然语言之间的语言9.判定表;判定树P4311. 图元数7正负212. 15%的错误源自错误的需求13. 总体设计:模块和模块调用14. 总体设计:模块结构图/层次图/HIPO 图P4515. “高内聚,低耦合”16.数据流图分为:变换型和事务型17.模块化,软件分为简单的高内聚低耦合的模块(两部分:接口和模块体)18.耦合:依赖程度的度量。
2022年自考02333软件工程题库及答案
02333软件工程题库及答案单选题1.软件开发环境按解决旳问题分类涉及( )A.程序设计环境B.工具箱环境C.基于措施旳环境D.以语言为中心旳环境2.用于描述待开发产品/系统功能上旳能力、性能参数或其她性质旳是()A.程序B.需求C.设计D.规约3.下列选项中,用作具体设计旳工具是()A.层次图B.数据流图C.模块构造图D.盒图4.UML提供旳图形化工具中,用于概念模型和软件模型旳动态构造旳是()A.用况图B.部署图C.对象图D.构件图5.根据软件需求分类,下列选项中不属于设计约束旳是()A.并发操作B.握手合同C.质量属性D.硬件限制6.根据RUP测试活动,输入为测试用况,活动为实现测试,则输出为()A.测试筹划B.测试构件C.测试评价D.测试过程7.一般来说,单元测试往往采用()A.等价类测试B.因果图测试C.白盒测试D.黑盒测试8.支持面向对象技术旳软件生存周期模型是()A.喷泉模型B.螺旋模型C.增量模型D.瀑布模型9.CMMI成熟度级别中旳第四级为()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.构造设计是一种应用最广泛旳系统设计措施,是以()为基本、自顶向下、逐渐求精和模块化旳过程。
2022年自考02333软件工程题库及答案
02333软件工程题库及答案单选题1.软件开发环境按解决旳问题分类涉及( )A.程序设计环境B.工具箱环境C.基于措施旳环境D.以语言为中心旳环境2.用于描述待开发产品/系统功能上旳能力、性能参数或其她性质旳是()A.程序B.需求C.设计D.规约3.下列选项中,用作具体设计旳工具是()A.层次图B.数据流图C.模块构造图D.盒图4.UML提供旳图形化工具中,用于概念模型和软件模型旳动态构造旳是()A.用况图B.部署图C.对象图D.构件图5.根据软件需求分类,下列选项中不属于设计约束旳是()A.并发操作B.握手合同C.质量属性D.硬件限制6.根据RUP测试活动,输入为测试用况,活动为实现测试,则输出为()A.测试筹划B.测试构件C.测试评价D.测试过程7.一般来说,单元测试往往采用()A.等价类测试B.因果图测试C.白盒测试D.黑盒测试8.支持面向对象技术旳软件生存周期模型是()A.喷泉模型B.螺旋模型C.增量模型D.瀑布模型9.CMMI成熟度级别中旳第四级为()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.构造设计是一种应用最广泛旳系统设计措施,是以()为基本、自顶向下、逐渐求精和模块化旳过程。
《软件工程》(课程代码02333)
《软件工程》(课程代码02333)第一大题:单项选择题1、“软件工程的概念是为解决软件危机而提出的”这句话的意思是【】• A.强调软件工程成功解决了软件危机的问题• B.说明软件危机的存在总是使软件开发不像传统工程项目那样容易管理• C.说明软件工程这门学科的形成是软件发展的需要• D.说明软件工程的概念,即:工程的原则、思想、方法可解决当时软件开发和维护存在的问题参考答案:C2、瀑布模型的主要特点是【】• A.将开发过程严格地划分为一系列有序的活动• B.将开发过程分解为阶段• C.提供了有效的管理模式• D.缺乏灵活性参考答案:A3、在软件工程的需求分析阶段,不属于问题识别内容的是[ ]• A.功能需求• B.性能需求• C.环境需求• D.输入/输入出需求参考答案:D4、画某系统的数据流图时,顶层图有[ ]• A.0张• B.1张• C.2张• D.3张及其以上参考答案:B5、软件模块内聚性最强的是[ ]• A.功能内聚• B.通信内聚• C.偶然内聚• D.逻辑内聚参考答案:D6、最早提出软件系统维护问题的阶段是【】• A.可行性分析• B.需求分析• C.概要设计• D.详细设计参考答案:B7、SD(结构化设计)方法设计的结果是【】• A.模块• B.模块结构图• C.模块的算法• D.数据流图参考答案:B8、在进行软件测试时,首先应当进行以下哪项测试,然后再进行组装测试,最后再进行有效性测试【】• A.单元测试• B.系统羽4试• C.集成测试• D.确认测试参考答案:A9、软件详细设计阶段的任务是【】• A.算法与数据结构设计• B.功能设计• C.调用关系设计• D.输入/输出设计参考答案:A10、下列属于静态测试方法的是【】• A.黑盒法• B.路径覆盖• C.白盒法• D.人工检测参考答案:D11、Fortran语言主要作为以下哪个方面的语言【】• A.科学工程计算• B.系统软件• C.事务处理• D.人工智能参考答案:A12、用结构化语言来描述加工逻辑的外层结构时,以下不属于基本结构的是【】• A.顺序结构• B.选择结构• C.嵌套结构• D.重复结构参考答案:C13、可维护软件的主要特性包括【】• A.可理解性、可修改性、可移植性• B.可使用性• C.可维护性、可使用性、可靠性• D.可测试性参考答案:A14、程序设计语言不具有的特性是【】• A.心理特性• B.工程特性• C.应用特性• D.技术特性参考答案:C15、下列不属于项目进度安排主要方法的是【】• A.工程网络图• B.Gantt图• C.进度结构图• D.任务资源表参考答案:C16、下列不属于通常冗余技术的是【】• A.结构冗余• B.信息冗余• C.时间冗余• D.代码冗余参考答案:D17、下列工具中,属于需求追踪工具的是【】• A.在DBMS上的应用运行工具• B.追踪和状态报告• C.访问和版本控制机构• D.文件和修改管理参考答案:A18、关于软件测试的目的,下面观点错误的是【】• A.为了发现错误而执行程序的过程• B.一个好的测试用例能够发现至今尚未发现的错误• C.证明程序是正确、没有错误的• D.一个成功的测试用例是发现了至今尚未发现的错误的测试参考答案:C19、在制定项目开发计划文档时,不包含的内容是【】• A.项目概述• B.实施计划• C.测试计划• D.交付期限参考答案:C20、面向对象的开发方法中,以下哪种方法原是面向Ada语言的,并处于面向对象开发方法的奠基性地位【】• A.Booch方法• B.coad方法• C.UML语言• D.OMT方法参考答案:A21、可行性研究要进行一次_____需求分析。
3自考软件工程试题及答案02333
全国2009年1月自考软件工程试题课程代码:02333一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的。
请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.以下不属于软件特点的是( B )A.软件是一种逻辑产品B.软件产品存在磨损问题C.软件的生产主要是研制D.软件费用不断增加2.以下属于形式化开发方法的是( C )A.结构化开发方法B.Jackson开发方法C.维也纳开发方法D.面向对象开发方法3.数据字典定义数据流或数据存储组成时所使用的符号(‥‥)表示( D )A.可选B.与C.或D.重复4.IDEF是IDEF方法的一部分,用于建立系统的( A )A.功能模型B.信息模型C.动态模型D.关系模型5.软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是( D )A.公共耦合B.控制耦合C.标记耦合D.数据耦合6.把需要同时执行的动作组合在一起形成模块,该模块的内聚性是(C )A.顺序内聚B.逻辑内聚C.时间内聚D.通信内聚7.以下属于程序流程图缺点的是( D )A.历史悠久B.使用广泛1C.支持程序的三种基本控制结构D.可以随心所欲地画控制流程线的流向8.Jackson结构图的三种基本结构是(B )A.顺序结构、选择结构、层次结构B.顺序结构、选择结构、重复结构C.层次结构、选择结构、重复结构D.顺序结构、层次结构、重复结构9.以下属于面向对象程序设计语言的是( A )A.Java语言B.C语言C.Pascal语言D.Prolog语言10.以下四种逻辑覆盖中,发现错误能力最强的是( D )A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖11.软件工程领域中,与集成测试有关的软件开发阶段是(A )A.编码B.详细设计C.概要设计D.需求分析12.软件维护的副作用不包括(D )A.编码副作用B.数据副作用C.文档副作用D.效率副作用13.原型的优点不包括( A )A.对设计人员水平及开发环境要求不高B.可及早为用户提供有用的产品C.可及早发现问题,随时纠正错误D.可减少技术、应用的风险14.UML统一了三种面向对象方法的表示方法,这三种面向对象方法是( B )A.Coad方法、OMT方法、OOSE方法B.Booch方法、OMT方法、OOSE方法C.Booch方法、Coad方法、OOSE方法D.Booch方法、OMT方法、Coad方法15.面向对象的类层次结构中,聚集关系是一种( B )A.“一般——特殊”关系B.“整体——部分”关系C.“相互依赖”关系D.“一般——具体”关系16.软件质量特性中,“软件系统按照设计要求,在规定时间和条件下不出故障,持续运行的程度”对应的特性是( D )A.正确性B.完整性C.可靠性D.可用性217.软件工程标准中,IEEE属于( C )A.国际标准B.国家标准C.行业标准D.企业规范18.与“项目开发计划”文档有关的人员是(A )A.管理人员和开发人员B.开发人员和维护人员C.开发人员和用户D.管理人员和用户19.软件工具的三个组成部分不包括( D )A.工具B.工具接口C.工具用户接口D.编译系统20.软件复杂性度量的参数中,由程序中出现的操作数数目所决定的量表示的参数是( A )A.规模B.难度C.结构 D.智能度二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格上填上正确答案。
(完整word)《软件工程》自考02333_重点难点汇集
《软件工程》串讲讲义应考指导一、课程介绍1、课程性质《软件工程》是全国高等教育自学考试计算机及应用(独立本科段)的一门专业课。
软件工程是研究软件开发的一门课程,其主要内容包括:软件开发所需要的过程、活动和任务,以及这些活动和任务的组织、实施和管理。
2、指定教材本课程指定教材为《软件工程》,全国高等教育自学考试指导委员会组编,王立福主编,机械工业出版社出版,2011年版。
新版教材与2000年版相比,无论是内容还是内容的组织,都有了很大的变化。
整个知识体系、章节安排、内容选取都不一样,这是考生一定要注意的。
新版教材的内容组织特点主要体现在:基于对软件开发本质的认识,讲解软件工程的两大技术问题:一是开发逻辑,二是开发途径。
开发逻辑涉及软件生存周期过程、软件生存周期模型(有关过程、活动和任务的组织框架)以及项目软件生存周期的规划与监控。
开发途径涉及结构化方法和面向对象方法,以及支持软件评估所需要的软件测试技术等。
3、章节体系本课程共有8章:第1章:回答什么是软件开发的本质第2章:软件需求与软件需求规约第3章:结构化方法第4章:面向对象方法—UML第5章:面向对象方法-RUP第6章:软件测试。
第7章:软件生存周期过程及管理第8章:集成化能力成熟度模型CMMI二、考情分析1.历年真题的分布情况由于教材刚刚经过改版,新教材刚经过2011年10月、2012年01月、2012年10月三次考试. 通过对2011年10月、2012年01月这两次真题的分析,各章所占分值的分布情况如下表所示:25%左右.第1章和第8章的考核知识点相对较少.2.题型分析本课程的考试题型分为:(1)单项选择题,共15小题,每小题2分,共30分(2)填空题,共20个空,每空1分,共20分(3)简答题,共6小题,每小题5分,共30分(4)综合应用题,共2题,每题10分,共20分3.复习方法(1)以教学大纲为准绳。
自学考试的原则是:考试范围既不超出大纲又不超出教材范围。
本科自考02333软件工程课后习题答案
本科自考02333软件工程课后习题答案、解释术语1软件需求软件需求以一种技术形式描述了一个产品/系统应该具有的功能、性能和其它性质。
P23 2功能需求功能需求规约了系统或系统构件必须执行的功能。
P243非公能需求非公能需求是性能、外部接口、设计约束和质量属性这4类需求的统称。
P23 (4 需求规约需求规约是一个软件项/产品/系统所有需求陈述的正式文档它表示了一个软件产品/系统的概念模型。
P28 2、简述需求与需求规约的基本性质。
答需求的基本性质 1必要的该需求是用户所要求的。
2无歧义的该需求只能用一种方式解释。
3可测的该需求是可进行测试的。
4可跟踪的该需求可从一个开发阶段跟踪到另一个阶段。
5可测量的该需求是可测量的。
P23 需求规约的基本性质1重要性和稳定性程度按需求的重要性和稳定性对需求进行分级。
2可修改的在不过多地影响其它需求的前提下能够容易地修改一个单一需求。
3完整的没有被遗漏的需求。
4一致的不存在互斥的需求。
P283、简述软件需求的分类。
.com答软件需求能够分为两大类一类是功能需求一类是非公能需求而非公能需求可分为性能需求外部接口需求、设计约束和质量属性需求。
P234、举例说明功能需求和非功能需求之间的基本关系。
答非功能需求可作用于一个或多个功能需求例如 ?? 作用于其中非功能需求1作用于功能需求1和功能需求3等非功能需求2作用于功能需求2等。
P24 5、有哪几种常见的初始需求发现技术答有5种常见的需求发现技术自悟、交谈、观察、小组会和提炼。
P266、简述需求规约的3种基本形式。
1非形式化的需求规约。
非形式化的需求规约即以一种自然语言来表示需求规约如同使用一种自然语言写了一篇文章。
2半形式化的需求规约。
半形式化的需求规约即以半形式化符号体系包括术语表、标准化的表示格式等来表示需求规约。
3形式化的需求规约。
形式化的需求规约即以一种基于良构数学概念的符号体系来编制需求规约一般往往伴有解释性注释的支持。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《软件工程》串讲讲义应考指导一、课程介绍1、课程性质《软件工程》是全国高等教育自学考试计算机及应用(独立本科段)的一门专业课。
软件工程是研究软件开发的一门课程,其主要容包括:软件开发所需要的过程、活动和任务,以及这些活动和任务的组织、实施和管理。
2、指定教材本课程指定教材为《软件工程》,全国高等教育自学考试指导委员会组编,王立福主编,机械工业出版,2011年版。
新版教材与2000年版相比,无论是容还是容的组织,都有了很大的变化。
整个知识体系、章节安排、容选取都不一样,这是考生一定要注意的。
新版教材的容组织特点主要体现在:基于对软件开发本质的认识,讲解软件工程的两大技术问题:一是开发逻辑,二是开发途径。
开发逻辑涉及软件生存周期过程、软件生存周期模型(有关过程、活动和任务的组织框架)以及项目软件生存周期的规划与监控。
开发途径涉及结构化方法和面向对象方法,以及支持软件评估所需要的软件测试技术等。
3、章节体系本课程共有8章:第1章:回答什么是软件开发的本质第2章:软件需求与软件需求规约第3章:结构化方法第4章:面向对象方法-UML第5章:面向对象方法-RUP第6章:软件测试。
第7章:软件生存周期过程及管理第8章:集成化能力成熟度模型CMMI二、考情分析1.历年真题的分布情况由于教材刚刚经过改版,新教材刚经过2011年10月、2012年01月、2012年10月三次考试。
通过对2011年10月、2012年01月这两次真题的分析,各章所占分值的分布情况如下表所示:25%左右。
第1章和第8章的考核知识点相对较少。
2.题型分析本课程的考试题型分为:(1)单项选择题,共15小题,每小题2分,共30分(2)填空题,共20个空,每空1分,共20分(3)简答题,共6小题,每小题5分,共30分(4)综合应用题,共2题,每题10分,共20分3.复习方法(1)以教学大纲为准绳。
自学考试的原则是:考试围既不超出大纲又不超出教材围。
所以考生一定根据教学大纲规定的考试容和考核要求,认真学习教材,要全面、系统了解教材中的基本概念、基本知识。
(2)有的放矢。
在学习的过程中,为了达到“事半功倍”,要学会“舍”。
要用有限的时间去抓重点,对重点容要进行深入细致的学习。
(3)注意学习方法,理论联系实际,注重理解重视理论联系实际,训练并逐渐提高运用所学理论分析和解决实际案例的能力。
考生应当注意在全面系统学习教材的基础上,尽可能多地了解和分析实际案例,以便更深刻地领会教材的容,提高分析和解决实际问题的能力。
(4)合理安排时间,抓住学习重点根据实际情况自己安排,利用平时空余时间观看网络课件,形成基本的了解。
接下来认真地做一些练习题,不清楚的地方再回过头去看看书,并注意对不同的知识点进行比较,加深印象。
第一章绪论复习建议:本章容较少,主要是让大家了解软件工程的提出的背景-软件危机以及软件工程研究的容。
考试题目类型主要是单项选择题、填空题,题量在3%~5%之间。
第一节软件工程概念的提出与发展1.软件危机(1)速度:软件的发展水平远远滞后于硬件的发展水平,生产率低下,软件制造仍然是一种人工集约生产方式(2)质量:软件的质量低下,不能满足用户的需求、适应性差(3)成本:软件开发成本居高不下软件开发的速度、软件制品的质量、软件开发成本是软件工程的三个核心问题。
2.软件工程的发展(1)20世纪60~80年代瀑布模型;过程化语言;支持工具(2)20世纪80年代~今软件复用技术;软件生产管理;面向对象语言(3)近几年软件复用技术:构件技术、平台技术、需求工程技术、领域分析技术、应用集成技术等。
第二节软件开发的本质软件=程序+文档2.软件开发的本质:“映射”,即实现问题空间的概念和处理逻辑到解空间的概念和处理逻辑之间的映射。
3.系统建模运用所掌握的知识,通过抽象,给出系统的一个结构。
4.模型模型是一个抽象。
模型是在特定意图下所确定的角度和抽象层次上对物理系统的描述,通常包含对该系统边界的描述、对系统各模型元素以及它们之间关系的语义描述。
5.系统模型的类型(1)概念模型:描述软件是什么(2)软件模型:实现概念模型的软件解决方案。
包括设计模型、实现模型和部署模型。
第二章需求获取复习建议:正确定义问题,是解决问题的基础。
需求获取是软件开发的第一步,它的工作质量决定了整个软件开发工作的成败,因此本章的容是考核的重点容。
考核的题目类型主要有:单项选择题、填空题、简答题,分值在10%左右。
容以基本概念、基本原理为主。
第一节需求与需求获取1.需求的定义一个需有关一个“要予构造”的述,描述了待开发产品/系统功能能力、性能参数或其它性质。
2.需求的基本性质(1)必要的(2)无歧义的(4)可跟踪的(5)可测量的3.需求的分类★(1)功能需求,是整个需求的主体。
(2)非功能需求:性能需求、外部接口需求、设计约束和质量属性需求。
能够区分哪些是功能需求,哪些是性能需求。
4.接口需求的类别(1)用户接口(2)硬件接口(3)软件接口(4)通信接口(5)存约束(6)运行(7)地点需求5.设计约束需求(1)法规政策(2)硬件限制(3)与其它应用的接口(4)并发操作(5)审计能力(6)控制功能(7)高级语言要求(8)握手协议(9)应用的关键程度(10)安全和6.质量属性(1)可靠性(2)存活性(3)可维护性(4)用户友好性7.需求发现的技术(1)自悟(2)交谈(3)观察(4)小组会(5)提炼第二节需求规约(SRS)1.需求规约的定义★是一个软件/产品/系统所有需求述的正式文档,它表达了一个软件/产品/系统的概念模型。
2.需求规约的基本性质★(1)重要性和稳定性程度:对需求进行分级(2)可修改的(3)完整的:没有被遗漏的需求(4)一致的:不存在互斥的需求3.需求规约的格式IEEE标准830-1998(IEEE 1998)描述的需求规格说明书模板。
4.需求规约(规格说明书)的表达(1)非形式化的需求规约(2)半形式化的需求规约(3)形式化的需求规约5.需求规约的作用★(1)需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现(2)需求规约是一个管理控制点(3)对于产品/系统的而设计,需求规约是一个正式的、受控的起始点(4)需求规约是创建产品验收计划和用户指南的基础第三章结构化方法复习建议:自顶向下,逐步求精。
本章是整个课程的重点容,其基本思想、基本原理和基本方法是软件工程理论体系中最经典的容,考核题型涉及单项选择题、填空题、简答题、综合应用题所有题目类型,占分值25%左右。
建议考生在牢记基本概念、基本原理的基础上,对综合应用题多下工夫,多做练习。
第一节结构化需求分析1.需求分析面临的挑战(1)问题空间理解(2)人与人之间的通信,“有效沟通”(3)需求的变化性2.结构化分析中的基本术语及表示方法(1)数据流(2)加工(3)数据存储(4)数据源和数据潭3.数据流图DFD图★用于建立系统功能模型。
是一种描述数据变换的图形化工具,其中包含的元素可以是数据流、数据存储、加工、数据源和数据潭等。
4.建模过程(绘制流程图的过程)自顶向下、功能分解(1)建立系统环境图(2)0层图:从0层图开始对流程图中的要素编号(3)1层图(4)……【例题】绘制数据流程图(2008年10月真题)41.某个学生成绩管理系统的部分功能如下:(1)基本信息管理:教务管理人员输入或修改学期教学执行计划、学生和教师; (2)学生选课:学生根据教学执行计划进行选课;(3)分配任课教师:教务管理人员为符合开课条件的课程分配教师,并打印任课通知单给教师; (4)成绩管理:每门课程的教师在考试评分结束后将考试成绩交给教务管理人员,教务管理人员输入、维护成绩,系统可生成成绩单(发给学生)、成绩统计分析表(发给教务管理人员)。
请根据要求画出该问题的分层数据流图(要求画出顶层和0层数据流图)。
【解析】顶层图:只包含数据源/数据潭以及相关的数据流和一个处理。
顶层图学期教学执行计划 学生 学生选课结果教师信息0层图要注意的问题:黑洞(black hole),即只有输入而没有输出。
②只有输出而没有输入。
③灰洞(gray hole),即输入不足以产生输出。
灰洞是经常也是不易被察觉的错误。
④加工处理只用来表示数据的处理和变化,避免将计算机命令作为处理。
⑤数据流必须起于且/或止于处理,即每一个数据流必须有一个处理与之有关,数据流不能起于数据存成绩单 成绩单学生成绩贮且止于一个数据源/数据潭或另一个数据存贮;也不能起于某个实体且止于另一个数据源/数据潭或数据存贮。
5.数据字典定义数据流程图中所有数据流和数据存储的数据结构。
顺序结构:+选择结构:|重复结构:{ }子界:m..n6.加工的描述★(1)判定表判断表(Decision Table)也称为决策表,是一个二维表,它说明了每一种条件组合所产生的结果。
该表分为四个象限(quadrants)。
a)左上限代表所有的条件b)左下限代表可能的结果c)右上限代表每一种条件的取值(用Y和N来表示)d)右下限用X表示所对应的条件组合所产生的结果【例题】画出顾客购货的折扣政策的决策表。
销售商在给顾客的折扣时,要考虑付款日期和交易额这两个因素。
若付款日期在10天以(含10天),则当交易额超过¥10,000时,给予5%的折扣;当交易额在¥5,000到¥10,000之间(含¥5,000)时,给予3%的折扣;当交易额低于¥5,000时,没有折扣。
若付款日期超过10天,则无论交易额多少,均不给任何折扣。
【解析】(2)判定树判断树(Decision Tree)也称为决策树,是用来描述在一组不同的条件下,决策的行动是根据不同条件及其取值来选择的处理过程。
业务规则的描述通常可以使用判断树这一过程描述工具。
【例题】画出顾客购货的折扣政策的决策树。
销售商在给顾客的折扣时,要考虑付款日期和交易额这两个因素。
若付款日期在10天以(含10天),则当交易额超过¥10,000时,给予5%的折扣;当交易额在¥5,000到¥10,000之间(含¥5,000)时,给予3%的折扣;当交易额低于¥5,000时,没有折扣。
若付款日期超过10天,则无论交易额多少,均不给任何折扣。
解析:(3)结构化语言【例题】用结构化语言表达:顾客购货的折扣政策。
销售商在给顾客的折扣时,要考虑付款日期和交易额这两个因素。
若付款日期在10天以(含10天),则当交易额超过¥10,000时,给予3%的折扣;当交易额在¥5,000到¥10,000之间(含¥5,000)时,给予2%的折扣;当交易额低于¥5,000时,没有折扣。
若付款日期超过10天,则无论交易额多少,均不给任何折扣。
IF 付款日期在10日以上折扣=0ELSEIF 交易额>=10000折扣=3%ELSEIF交易额>=5000折扣=2%ELSE折扣=07.需求验证(1)验证每一个需求满足5个性质(2)验证需求规格说明书满足4个性质第二节结构化设计分为总体设计和详细设计1.总体设计的任务把系统的功能需求分配到一个特定的软件体系结构中。