软件工程导论

1.软件生命周期分几个时期?每个时期分几个阶段?每个阶段的任务?

2.软件过程有哪些模型?模型之间有什么关系?

3.数据流图定义、符号、作用,表达了什么?数据流图英文缩写?

4.状态转换图里有哪些符号?涉及到的状态有几种?这些状态有什么特点?由状态1到状态2是因为什么引起了状态的改变?

5. 什么是模块、模块独立性?怎么度量模块哪两个标准?(内聚耦合)

6.在程序设计中有哪些准则?有什么风格应该提倡?有什么风格应该避免?

7.什么是判定树,判定表?什么时候用?两者关系?

8.什么是数据字典?和数据流图的关系?

9.McCabe方法中,流图的作用是什么?实质是什么?流图之间有什么符号以及符号代表什么?

10.软件系统文档分为哪几类?

11.测试阶段的关键技术问题是什么?

12.Alpha测试和Beta测试,它们场合有什么不同?

13. 能力成熟度模型(CMM)的定义?有哪些等级?

14. 总体设计过程分哪几个阶段?详细设计

15. 程序的质量由什么决定?

16. 软件工程方法学有哪几个要素?

17. 白盒、黑盒测试

18. 什么是软件原型?有哪些构建要点、特性?

19. 模块有哪两个域?控制域、作用域2域之间的关系?

20.软件可用性?软件可靠性?软件可维护性?软件有效性?

在这里插入图片描述

1. 软件生命周期分几个时期?每个时期分几个阶段?每个阶段的任务?(P11)

软件定义软件开发运行维护3个时期组成。

(一)软件定义时期:分为问题定义可行性研究需求分析3个阶段;
----问题定义的任务:问题定义阶段必须回答的关键问题是“要解决的问题是什么?”。
----可行性研究的任务:这个阶段要回答的关键问题是:“对于上一个阶段所确定的问题有行得通的解决办法吗?” 。
----需求分析的任务:准确的回答“系统必须做什么”这个问题。(13-14填8、15-16选4、16-17选3)
其中,问题定义与可行性分析的任务都是概括地了解用户的需求。(13-14填1)

(二)软件开发时期:分为总体设计详细设计编码和单元测试综合测试4个阶段;
----总体设计的任务:也叫概要设计或初步设计。这个阶段必须回答的是“概括地说,应该怎样实现目标系统”。
----详细设计的任务:把解法具体化,也就是回答“应该怎样具体地实现这个系统”。
----编码和单元测试的任务:写出正确的容易理解、容易维护的程序模块。(15-16选13)
----综合测试的任务:通过各种类型的测试(及相应的调试)使软件达到预定的要求。

(三)运行维护时期:也称软件维护,通常不再进一步划分阶段,任务:通过各种必要的维护活动使系统持久地满足用户的需要。

(四)软件生命周期跨越时间最长的是维护阶段。(13-14选1、15-16选15、16-17选10)

2. 软件过程有哪些模型?模型之间有什么关系?(P14):

(一)软件生命周期模型又称为过程模型。包括瀑布模型快速原型模型、增量模型、螺旋模型、喷泉模型。(16-17选4)
(二)螺旋模型:看成增加了风险分析过程快速原型模型(两者区别)。(13-14选2、15-16填2)
(三)瀑布模型与快速原型模型的主要区别是获取用户需求的方法不同;

3.数据流图定义、符号、作用,表达了什么?数据流图英文缩写(DFD)(P40)

(一)定义:一种图形化技术,描绘信息流和数据从输入移动到输出的过程中所经受的变换。(13-14选3)
(二)符号:数据流图有四种符号:(16-17简2)
(1)正方形(或立方体)表示数据的源点或终点;
(2)圆角矩形(或圆形)代表变换数据的处理;
(3)开口矩形(或两条平行横线)代表数据存储;
(4)箭头代表数据流,即特定数据的流动方向。
在这里插入图片描述

(三)作用:(1)作为交流信息的工具(2)作为分析和设计的工具
(四)DFD中的每个加工至少有一个输入流和一个输出流。(13-14选5)

4.状态转换图里有哪些符号?涉及到的状态有几种?这些状态有什么特点?由状态1到状态2是因为什么引起了状态的改变?(P65)

(一)符号:初态用实心圆表示,终态用一对同心圆(内圆为实心圆)表示。中间状态用圆角矩形表示,可以用两条水平横线把它分成上、中、下3个部分。上面部分为状态的名称,这部分是必须有的;中间部分为状态变量的名字和值;下面部分是活动表。(中间部分和下面部分是可选的)。
在这里插入图片描述

(二)特点:初态一定有并且只能有一个,中间态和终态有的状态可以没有,终态可以有0至多个。(13-14选4)
(三)事件事件是对引起系统做动作或(和)从一个状态转换到另一个状态的外界事件的抽象。

5. 什么是模块、模块独立性?怎么度量模块哪两个标准?(内聚耦合)(P94)

(一)模块:由边界元素限定的相邻程序元素(例如,数据说明,可执行的语句)的序列,而且有一个总体标识符代表它。
(二)模块独立:是模块化、抽象、信息隐藏和局部化概念的直接结果。
(三)模块的独立程度:可以由两个定性标准度量,分别是内聚和耦合(高内聚低耦合)。(15-16填6)
(四)耦合:数据耦合、控制耦合、特征耦合、公共环境耦合(两个模块通过访问同一个全程变量相互合作)、内容耦合。(16-17填7)
(五)最高程度的耦合:内容耦合(比如一个模块访问另一个模块的内部数据、一个模块不通过正常入口而转到另一个模块内部、两个模块有一部分程序代码重叠、一个模块有多个入口)。(13-14选6)
(六)强度最高的内聚:功能内聚。(13-14选10)

6.在程序设计中有哪些准则?有什么风格应该提倡?有什么风格应该避免?

符合设计风格指导原则:1.嵌套的重数应加以限制;2.把常见的局部优化工作留给编译程序去做;3.程序的格式应有助于读者理解程序;4.不滥用语言特色;5.使用有意义的变量名。(13-14选7、15-16选12)

7.什么是判定树,判定表?什么时候用?两者关系?(P127)

(一)判定表:是一种用于描述系统行为的工具,能够清晰地表达复杂的条件组合与应做的动作之间的对应关系。(算法中包含多重嵌套的条件选择时用)(13-14选8、15-16填6)
(二)判定树:是一种比较常用的系统分析和设计的工具,也能够清晰地表达复杂的条件组合与应做的动作之间的对应关系,优点在于它的形式简单到不需要任何说明,一眼就可以看出其含义。(数据元素的值多于两个时用)
两者关系:判定树是判定表的变种。(16-17填2)

8.什么是数据字典?和数据流图的关系?(P47)

(一)数据字典:是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。(16-17简3)
(二)数据字典和数据流图的关系:数据流图和数据字典共同构成系统的逻辑模型,没有数据字典,数据流图就不严格,然而没有数据流图,数据字典也难于发挥作用。(13-14简5)
(三)数据字典用途:数据字典中建立的一组严密一致的定义有助于改进分析员和用户之间的通信,消除误解。(13-14填2)
(四)数据字典的作用:在软件分析和设计的过程中给人提供关于数据的描述信息。(16-17简3)

9.McCabe方法中,流图的作用是什么?实质是什么?流图之间有什么符号以及符号代表什么?(P137)

(一)流图的作用:为了突出表示程序的控制流。
(二)流图的实质:是“退化了的”程序流程图。(16-17填3)
(三)符号:圆表示结点,一个圆代表一条或多条语句;箭头线称为边,和程序流程图中的箭头线类似,代表控制流

10.软件系统文档分为哪几类?(P195):

可分为用户文档系统文档。(13-14填5)

11.测试阶段的关键技术问题是什么?需求分析阶段?(P151)

(一)测试阶段的关键技术问题:设计测试方案。(13-14填6)
(二)需求分析阶段的关键任务:确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。
(三)需求分析阶段结束之后,系统分析员应该写出软件需求规格说明书,以书面形式准确地描述软件需求。(满足用户期望????)
(四)编码测试统称为实现。(13-14填7)

12.Alpha测试和Beta测试,它们场合有什么不同?(P161)

(一)Alpha测试:Alpha测试由用户在开发者场所进行。(13-14填4)
(二)Beta测试:Beta 测试由软件的最终用户们在一个或多个客户场所进行。
(三)场合区别:与Alpha测试不同,开发者通常不在Beta测试的现场。

13. 能力成熟度模型(CMM)的定义?有哪些等级?(P332)

(一)定义:是用于评价软件机构的软件过程能力成熟度模型。
(二)等级:5个等级从低到高依次是:初始级(又称为第1级)、可重复级(又称为第2级)、已定义级(又称为第3级)、已管理级(又称为第4级)和优化级(又称为第5级)。

14. 总体设计过程分哪几个阶段?(P92)详细设计

(一)由两个阶段组成:1、系统设计阶段 ;2、结构设计阶段。(13-14填9)
(二)详细设计的任务是确定每个模块的内部特性,即模块的算法。(13-14选9)
(三)总体设计是确定功能
在这里插入图片描述

15. 程序的质量由什么决定?(P182)

取决于软件设计的质量。(13-14填10)

16. 软件工程方法学有哪几个要素?(P9)简答题 (13-14简1、16-17简1)

(一)包含3要素:方法、工具和过程。
方法:是完成软件开发的各项任务的技术方法,回答“怎样做”的问题;
工具:是为运用方法而提供的自动的或半自动的软件工程支撑环境;
过程:是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。

17. 白盒、黑盒测试(P162)简答题(13-14简2)

(1)黑盒测试方法的基本含义:在程序接口进行的测试,只检查程序的功能是否按照软件规格说明书的要求正常支持。
(2)黑盒测试着重测试软件功能,黑盒测试并不能取代白盒测试,它是与白盒测试互补的测试方法,它很可能发现白盒测试不易发现的其他类型的错误。(16-17选9、15-16填8)
(3)白盒测试在测试过程的早期阶段进行,而黑盒测试主要用于测试过程的后期。
(4)单元测试主要使用白盒测试。(16-17填5)

18. 什么是软件原型?有哪些构建要点、特性?(P61)(13-14简3)

(一)概念:可以在计算机上运行的目标系统的原型。
(二)特性:快速、容易修改。
(三)构建要点:实现用户看得见的功能,省略目标系统的隐含功能。

19. 模块有哪两个域?控制域、作用域2域之间的关系?(P100)

(一)模块有作用域控制域
(二)作用域:受该模块内一个判定影响的所有模块的集合。
(三)控制域:这个模块本身以及所有直接或间接从属于它的模块的集合。
(四)2域关系:作用域在控制域之内。

20.软件可用性?软件可靠性?(P179)软件可维护性?(P194)软件有效性?(P160)

(一)软件可靠性:程序在给定的时间间隔内,按照规格说明书的规定成功运行的概率。
(二)软件可用性:程序在给定的时间点内,按照规格说明书的规定,成功地运行的概率。
(三)软件可维护性:维护人员理解、改正、改动或改进这个软件的难易程度。文档是影响软件可维护性的决定性因素。(16-17填6)
(四)软件有效性:如果软件的功能和性能如同用户所合理期待的那样,软件就是有效的。
标准:软件需求规格说明书(也是进行确认测试的基础)

软件工程导论是考研电子信息专业的一门重要课程。根据引用和引用的内容,软件工程导论的学习可以通过以下步骤进行: 1. 下载和学习资料:可以下载引用中提到的xmind脑图和引用中提到的复试笔记。这些资料可以帮助你整理和理解软件工程导论的知识点。 2. 重点整理知识点:根据引用[1]中提到的xmind脑图,可以将软件工程导论的知识点进行整理和分类。可以根据复试笔记中的内容,将知识点分为不同的模块,如软件工程导论的基本概念、软件开发过程、软件项目管理等。 3. 学习管理信息系统和其他相关课程:引用中提到了管理信息系统和其他课程的知识点。这些课程与软件工程导论有一定的关联,学习这些课程可以帮助你更好地理解和应用软件工程导论的知识。 4. 复习编译原理、计算机网络和数据库:引用中提到了编译原理、计算机网络和数据库的知识点。这些知识点在软件工程导论中也是重要的内容,复习这些知识可以加深对软件工程导论的理解。 总之,软件工程导论的考研学习可以通过下载和学习相关资料,整理知识点,学习相关课程,并复习相关知识点来进行。这样可以帮助你更好地准备考研,掌握软件工程导论的重要知识。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [【考研整理】软件工程导论.zip](https://download.csdn.net/download/weixin_40908748/12424518)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [电子信息专业 - 考研复试笔记分享(软件工程导论-第六版 + 管理信息系统-马慧).rar](https://download.csdn.net/download/weixin_41731475/12454588)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值