2023年软件工程导论第版知识点总结复习课.doc
《2023年软件工程导论第版知识点总结复习课.doc》由会员分享,可在线阅读,更多相关《2023年软件工程导论第版知识点总结复习课.doc(39页珍藏版)》请在咨信网上搜索。
1、复习课-酷爱 YC 第一章 1、什么是软件危机,什么是软件工程 软件危机是指在计算机软件开发、使用与维护过程中碰到的一系列严重问题和难题。它涉及两方面:(1如何开发软件,以满足对软件日益增长的需求;(2如何维护数量不断膨胀的已有软件。软件工程:采用工程的概念、原理、技术和方法来开发与维护软件,把通过时间考验而证明对的的管理技术和当前可以得到的最佳的技术方法结合起来,以经济地开发出高质量的软件,并有效地维护它。2、完整的软件配置由哪些内容组成 软件配置重要涉及程序,文档和数据等成分。3、软件生命周期分为哪 3个时期和 8个阶段,每个阶段的任务(工作分别是什么,重要性如何 概括地说,软件生命周期由
2、软件定义、软件开发和运营维护 3个时期组成 1、软件定义(系统分析。软件定义时期的任务是:拟定软件开发工程必须完毕的总目的;拟定工程的可行性;导出实现工程目的应当采用的策略及系统必须完毕的功能;估计完毕该项工程需要的资源和成本,并且制定工程进度表。这个时期的工作通常又称为系统分析,由系统分析员负责完毕。软件定义时期通常进一步划提成 3个阶段,即问题定义、可行性研究和需求分析。(1 问题定义,拟定系统要解决的问题是什么。成果:关于问题性质、工程目的和工程规模的报告。(2 可行性研究,拟定问题是否有可用的、能行得通的解(涉及:技术、经济、操作、社会等方面的可行性。这个阶段的任务不是具体解决问题,而
3、是研究问题的范围,探索这个问题是否值得去解,是否有可行的解决办法。成果:可行性研究报告。(3 需求分析,拟定软件系统的必须实现的功能、必须达成的性能、必须满足的运营环境规定。系统分析员在需求分析阶段必须和用户密切配合,充足交流信息,以得出通过用户确认的系统逻辑模型。通常用数据流图、数据字典和简要的算法表达系统的逻辑模型。在需求分析阶段拟定的系统逻辑模型是以后设计和实现目的系统的基础,因此必须准确完整地体现用户的规定。成果:软件需求规格说明书(SRS,内容涉及:系统的逻辑模型;系统(子系统的名称、功能描述、接口、基本数据结构、性能、设计需求、开发标准、验收原则等。2、软件开发。开发时期具体设计和
4、实现在前一个时期定义的软件,它通常由下述 4个阶段组成:总体设计,具体设计,编码和单元测试,综合测试。其中前两个阶段又称为系统设计,后两个阶段又称为系统实现。(1 总体设计(概要设计,回答“如何实现目的系统”。建立系统的总体结构,划分子系统;拟定系统由哪些模块组成,各子系统间、各模块间的关系(涉及定义各子系统接口界面和各功能模块的接口,设计全局数据库或数据结构,规定设计约束,制定组装测试计划。成果:概要设计说明书、数据库或数据结构说明书、系统的组装(集成测试计划等文档。(2 具体设计任务就是把解法具体化,也就是回答:“应当如何具体地实现这个系统呢?”,设计每个程序模块的内部细节,涉及数据结构、
5、算法以及各程序模块间的接口信息,并设计模块的单元测试计划。成果:具体设计规格说明和单元测试计划等具体设计文档。以上(1、(2 又合称为软件设计。(3 编码和单元测试这个阶段的关键任务是写出对的的容易理解、容易维护的程序模块。根据具体设计规格说明,选用某种程序设计语言把具体设计的结果转化为机器可运营的源程序模块;运营和调试每一个程序模块;每编写出一个程序模块的源程序,调试通过后,即对该模块进行单元测试。成果:按一定规则存在盘上的通过了单元测试的各功能模块的集合;具体的单元测试报告等文档。(4 综合测试通过各种类型的测试(及相应的调试使软件达成预定的规定。最基本的测试是集成测试和验收测试。成果:满
6、足概要设计规定、可运营软件系统和源程序清单;组装测试报告等文档。验收测试报告、项目开发总结报告,向用户提交的源程序清单、最终用户手册、操作手册等文档资料;由专家、用户负责人、软件开发和管理人员组成软件评审小组对软件验收测试报告、测试结果和软件进行评审,最终验收软件产品。以上(3、(4又合称为软件实现。三种不同的软件测试:单元测试、集成测试、验收测试。3、软件运营与维护 软件技术人员通过各种维护活动使软件系统持久满足用户需要。通常有 4类维护活动:改正性维护,也就是诊断和改正在使用过程中发现的软件错误;适应性维护,即修改软件以适应环境的变化;完善性维护,即根据用户的规定改善或扩充软件使它更完善;
7、防止性维护,即修改软件为将来的维护活动预先做准备。成果:更新后的软件产品;准确记录维护活动的文档。4、几种传统软件工程生命周期模型:瀑布模型:基本思想、重要优点 传统的瀑布模型 基本思想:瀑布模型严格按照软件生存周期各个阶段来进行开发,上一阶段的输出即是下一阶段的输入,并强调每一阶段的严格性。它规定了各阶段的任务和应提交的成果及文档,每一阶段的任务完毕后,都必须对其阶段性产品(重要是文档进行评审,通过后才干开始下一阶段的工作。因此,它是一种以文档作为驱动的模型。优点:可逼迫开发人员采用规范的方法;严格地规定了每个阶段必须提交的文档;规定每个阶段交出的所有产品都必须通过质量保证小组的仔细验证。快
8、速原型模型:基本思想 基本思想:软件开发人员根据用户提出的软件基本需求快速开发一个原型,以便向用户展示软件系统应有的一部分或所有功能和性能,同时使用户熟悉系统。在征求用户对原型的初步意见后,进一步使需求全面化、精确化,并据此改善、完善原型。如此迭代,直到软件开发人员和用户都通过原型确认软件系统的需求并达成一致的理解为止。软件需求拟定后,便可进行设计,编码、测试等以后的各个开发环节。增量模型:基本思想、重要优点 基本思想:把一个软件产品划分为一系列的增量构件来设计、编码、集成和测试,并逐个添加到软件产品中去,逐步向用户提交产品。每个构件可以完毕特定的功能 优点:(1软件的实现和维护阶段没有明显的
9、分界线;(2 用户在很短时间内就可以使用产品的部分功能(3 用户适应新产品的时间较富余(4 构件的分解要易于测试、规模适中(5 软件的体系结构是开放的,易于扩充和维护 螺旋模型:引入的因素,与瀑布模型、快速原型模型的联系 基本思想:软件风险是任何软件开发项目中都普遍存在的实际问题,项目越大,软件越复杂,承担该项目所冒的风险也越大。软件风险也许在不同限度上损害软件开发过程和软件产品质量。构建原型是一种能使某些类型的风险降至最低的方法。螺旋模型的基本思想是,使用原型及其他方法来尽量减少风险。联系:简化的螺旋模型是在快速原型模型的基础上扩展而成的,把它看作在每个阶段之前都增长了风险分析过程的快速原型
10、模型。完整的螺旋模型,将瀑布模型与原型模型结合起来,并且加入前两种模型均忽略了的风险分析 什么是:经济可行性、技术可行性、运营与操作可行性、法律可行性(1 经济可行性:这个系统的经济效益能超过它的开发成本吗?估算项目的开发成本和系统投入使用后也许带来的利润,进行成本/效益分析,从经济角度判断系统开发是否“合算”。(2 技术可行性:使用现有的技术能实现这个系统吗?根据客户提出的系统功能、性能规定,从开发者的技术实力、以往工作基础、问题的复杂性等出发,判断系统开发在时间、费用及其他各项约束条件限制下成功的也许性。(3 运营、操作可行性:系统的操作方式在这个用户组织内行得通吗?重要研究系统的运营方式
11、在用户单位是否可以被有效地实行,是否与原有其他系统相矛盾;系统的操作规程在用户单位内是否可行,它涉及人事、科技政策、管理方法等等。(4 法律可行性:系统的开发使用,在当国本地当时合法吗?运用软件工程的方法设计开发软件系统的过程 需求分析的基本任务 1.拟定需求-拟定对系统的综合规定(1 功能需求(2 性能需求(3可靠性和可用性需求(4 犯错解决需求(5 接口需求(6 约束(7逆向需求(8将来也许提出的规定 2.建立数据模型-运用图形工具描述系统数据结构并将数据结构规范化,建立数据模型 3.导出系统的逻辑模型-通常用数据流图、实体-联系图、状态转换图、数据字典和重要的解决算法描述整个逻辑模型 4
12、.编写需求规格说明书 5.修正系统开发计划 本阶段结束形成的基本文档 软件需求规格说明书 结构化分析应建立哪三大模型,分别用什么工具描述 数据模型数据流图 功能模型实体-联系图(E-R 图 行为模型状态图 数据流图、E-R 图、状态转换图的构成 数据流图-系统逻辑功能的描述工具 4 种成分:源点和终点,解决,数据存储,数据流 E-R 图:实体(即数据对象-矩形框,关系-菱形框,属性-椭圆形或圆角矩形状态转换图:状态,事件,状态转换 第五章 1、总体设计过程包含哪两个工作阶段,各完毕什么任务 第一阶段:系统设计阶段,拟定系统的物理实现方案(1 设想(完善供选择的方案(2 选取合理的方案(3 推荐
13、最佳方案 第二阶段:结构设计阶段,拟定软件的结构(1 功能分解,从实现的角度细化逻辑模型(2 设计软件结构(3 设计数据库(4 制定测试计划(5 书写文档(6 审查和复审 2、软件工程的中心课题是控制软件的复杂度;在总体设计阶段,软件复杂度重要体现为模块独立性(和全局数据结构复杂度;描述模块独立性的两个指标分别是耦合和内聚 3、耦合的含义,1-8 级耦合的具体含义,耦合级别的排列 耦合(Coupling:是对软件结构内不同模块之间互相关联限度的强弱的度量。它取 决于各个模块之间接口的复杂限度、进入或访问一个模块的点以及哪些信息通过接口传递。耦合度可以分为若干级别:(1 非直接耦合-两个模块没有
14、直接关系(如模块 1和模块 2,每一个都能独立地工作而不需要另一个模块的存在。非直接耦合两个模块间的独立性最强。非直接耦合(2 数据耦合-两个模块彼此间通过参数互换信息,并且互换的信息仅仅是简朴的数据信息。这属于松散耦合。(3 标记耦合-两个模块通过传递数据结构参数加以联系(不是简朴数据,而是记录、数组等,则称这两个模块间存在标记偶合。数据耦合特性耦合(标记耦合(4 特性耦合-属于标记耦合,把整个数据结构作为参数传递,而被调用的模块只需要使用其中一部分数据元素。P39 控制耦合公共环境耦合(5 控制耦合-一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的某部分功能。控制耦合增
15、长了理解和编程的复杂性,调用模块必须知道被调模块的内部逻辑,增 加了互相依赖。去除模块间控制耦合的方法:a.将被调用模块内的鉴定上移到调用模块中进行 b.被调用模块分解成若干单一功能模块(6 外部耦合-一组模块都访问同一全局简朴变量,并且不是通过参数传递该全局变量的信息。(7 公共环境耦合-两个或多个模块通过一个公共数据环境互相作用。公共环境可以是全程变量、共享的通信区、内存的公共覆盖区、任何存储介质上的文献、物理设备等等。公共环境耦合的复杂限度随耦合的模块个数而变化,当耦合的模块个数增长时复杂限度显著增长。公共环境偶合必不可少,但耦合模块的数目应尽量少。(8 内容耦合P41 内容耦合 4、内
16、聚的含义,1-7 级内聚的具体含义,内聚级别的排列 内聚(Cohesion:标志同一个模块内各个元素彼此结合的紧密限度,它是信息隐藏 和局部化概念的自然扩展。高内聚:模块内部完毕单一的解决;低内聚:模块内部各部分关联不紧密,完毕分散的多个解决任务;设计时应当力争做到高内聚。内聚度也可以分为若干级别:(1 偶尔内聚-当模块内各部分之间没有联系,或者即使有联系,这种联也很松散,则称 这种模块为偶尔内聚模块,它的内聚限度最低。(2 逻辑内聚-把几种相关功能或逻辑上相似的功能组合在一个模块内,每次调用由传给模块的参数拟定执行哪种功能。偶尔类聚逻辑类聚(3 时间内聚-一个模块包含若干必须在同一段时间内执
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 软件工程 导论 知识点 总结 复习
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。