软件工程基础知识点总结.doc
《软件工程基础知识点总结.doc》由会员分享,可在线阅读,更多相关《软件工程基础知识点总结.doc(14页珍藏版)》请在咨信网上搜索。
软件工程基础部分知识点总结 知识点一 软件工程的基本概念 1、软件定义:是计算机系统中与硬件相互依存的另一部分,是包括程序、数据以及相关文档的完整集合。 1)程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令(语句)序列。 2)数据是使程序能够正常操作信息的数据结构。 3)文档是与程序开发、维护和使用有关的图文资料。 国标(GB)计算机软件的定义:与计算机系统的操作相关的计算机程序、规程、规则以及可能有的文件、文档及数据。 2、软件特点: 1)软件是一种逻辑实体,而不是物理实体,具有抽象性,是计算机的无形部分; 2)软件的生产与硬件不同,它没有明显的制作过程; 3)软件在运行、使用期间不存在磨损、老化问题; 4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题; 5)软件复杂性高,成本昂贵; 6)软件开发涉及诸多的社会因素 3、软件的分类: 按照功能可以分为:应用软件、系统软件、支撑软件(或工具软件) 1)应用软件是为解决特定领域的应用而开发的软件。 2)系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。 3)支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具软件。 4、软件危机:是指在软件的开发和维护过程中所遇到的一系列严重 问题。 软件危机主要体现在以下几个方面: ① 软件开发的实际成本和进度估计不准确 ② 开发出来的软件常常不能使用户满意 ③ 软件产品的质量不高,存在漏洞,需要经常打补丁 ④ 大量已有的软件难以维护 ⑤ 软件缺少有关的文档资料 ⑥ 开发和维护成本不断提高,直接威胁计算机应用的扩大 ⑦ 软件生产技术进步缓慢,跟不上硬件的发展和人们需求增长 5、软件工程:此概念的出现源自软件危机。软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来开发与维护软件的学科。 1)研究软件工程的主要目的就是在规定的时间、规定的开发费用内开发出满足用户需求的高质量的软件系统(高质量是指错误率低、好用、易用、可移植、易维护等)。 2)软件工程的三个要素:方法、工具和过程。 ①方法:完成软件工程项目的技术手段; ②工具:支持软件的开发、管理、文档生成; ③过程:支持软件开发的各个环节的控制、管理。 3)软件工程的核心思想:把软件产品看作是一个工程产品来处理。 知识点二 软件的生命周期 1、软件生命周期概念:将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。 2、软件生命周期一般划分为定义、开发和维护3个阶段: 1)定义阶段:可行性研究、需求分析2个阶段; 软件定义阶段:包括制定计划和需求分析。 ①制定计划:确定总目标;可行性研究;探讨解决方案;制定开发计划。 ②需求分析:对待开发软件提出的需求进行分析并给出详细的定义。 方法:1)结构化需求分析方法;2)面向对象的分析方法。 任务:导出目标系统的逻辑模型,解决“做什么”的问题。 步骤:需求分析一般分为需求获取、需求分析、编写需求规格说明书和需求评审四个步骤进行。 2)开发阶段:概要设计、详细设计、编码实现和测试4个阶段; ①软件设计:分为概要设计和详细设计两个部分。 ②软件实现:把软件设计转换成计算机可以接受的程序代码。 ③软件测试:在设计测试用例的基础上检验软件的各个组成部分。 3)维护阶段:使用、维护、退役阶段。 软件运行维护阶段:软件投入运行,并在使用中不断地维护,进行必要的扩充和删改。 软件生命周期中所花费最多的阶段是软件运维护阶段。 4)软件工程原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。 5)软件工具就是帮助开发软件的软件。它们对提高软件生产率,促进软件生产的自动化都有重要的作用。 6)软件开发环境(或称软件工程环境)是全面支持软件开发全过程的软件工具的集合,这些软件工具按照一定的方法和模式组合起来,共同支持软件生命周期内的各个阶段和各项任务的完成。 知识点三 软件设计基本概念 1、软件工程过程:问题定义——可行性研究——需求分析—— 软件设计——软件编码——软件测试——软件维护 2、软件设计分为总体设计和详细设计 1)总体设计 目的:要解决的问题是“怎样实现目标系统” 任务:确定软件的总体结构,进行模块划分,确定每个模块的功能、接口及模块之间的调用关系,并对全局数据结构进行设计,同时产生概要设计说明书 2)详细设计 目的:要解决的问题是“应该怎样具体实现目标系统” 任务:在概要设计的基础上,设计每个模块实现的细节及对局部数据进行设计(包括模块的数据结构和所需的算法),同时产生详细设计说明书 3、软件编码 目的:产生能在计算机上执行的程序 任务:根据系统的要求和开发环境,选用合适的程序设计语言,把详细设计的结果翻译成用该程序设计语言编写的程序代码(源程序) 4、软件测试是为了发现程序中的错误而执行程序的过程 目的和任务:通过在计算机上执行程序来尽可能多地发现软件产品中的错误和缺陷,并改正程序中的错误,以保证程序的可靠运行 5、软件维护阶段是长期的过程,因为,经过测试的软件还可能有错,用户的要求还会发生变化,软件运行的环境也可能变化等等。因此,交付使用的软件仍然需要继续排错、修改和扩充,这就是软件维护。 软件维护的目的是满足用户对已开发产品的性能与运行环境不断提高的需要,进而达到延长软件的寿命 软件维护就是在软件交付使用之后,为了改正错误或满足新的需要而修改软件的过程。 软件维护的类型有如下几种: 1)改正性维护:诊断和改进错误的过程。 2)适应性维护:为与变化的环境适当配合而进行的修改软件的活动。 3)完善性维护:为了满足用户提出的增加新功能或修改已有功能的建议而进行维护。 4)预防性维护:为了改进未来的可维护性和可靠性。 软件开发时期要完成设计和实现两大任务,其中设计任务用需求分析和软件设计两个阶段完成,实现任务用编码和测试两个阶段完成。 开发任务完成的好与坏,关系到软件产品的质量,完成开发任务的关键是选择好的软件开发方法。 目前,软件开发方法主要有结构化开发方法和面向对象开发方法 知识点4软件设计的基本原理 软件设计的基本原理包括:抽象、模块化、信息隐蔽和模块独立性。 1、模块化:指解决问题时自顶向下的方法逐层把软件系统划分成若干个模块的过程 2、抽象:认识复杂过程中使用的思维工具,即抽出事务的本质的共同的特性而暂不考虑它的细节和其他因素。 3、信息隐蔽:旨在设计和确定模块式的时候,是的一个模块内包含的信息,对于不需要这些信息的其他模块来说不可访问 4、模块独立性:指每个模块只完成系统要求的独立的功能,并且与其他模块联系最少且接口简单 模块的耦合性和内聚性是衡量软件的模块独立性的两个定性指标。 1)内聚性:是对模块功能强度的度量,即对一个模块内部各个元素(语句之间、程序段)间彼此结合的紧密程度的度量。 2)耦合性:是模块间互相连接的紧密程度的度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。 一个设计良好的软件系统应具有高内聚、低耦合的特征。 在结构化程序设计中,模块划分的原则是:模块内具有高内聚度,模块间具有低耦合度。 软件设计有两个步骤: (1)概要设计(又称结构设计)是将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式; (2)详细设计是确定每个模块的实现算法和局部数据结构,通过对结构表示进行细化,得到软件的详细数据结构和算法。 知识点5 结构化分析方法 结构化方法的软件开发过程 编码并测试 软件计划后 结构化分析 结构化设计 结构化程序设计 面向对象方法的软件开发过程 软件测试 软件计划后 面向对象分析 面向对象设计 面向对象编程 1、结构化分析(简称SA)方法是面向数据流进行需求分析的方法。 2、结构化分析方法的常用工具:数据流图、数据字典、结构化语言、判定树、判定表 3、SA的基本步骤如下: ① 自顶向下对系统进行功能分解,画出分层的数据流图 ② 由后向前定义系统的数据和加工,编制数据字典和加工说明 ③ 写出需求规格说明书(SRS) 4、数据流图是以图形的方式描绘数据在软件系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。 数据流图由数据流、加工(又称数据处理)、数据存储(又称文件)、数据源点或终点四种基本成分组成。 数据流图(简称DFD)图形元素: ① 数据流:是数据在系统内传播的路径。使用箭头代表数据的流向,数据名称标在箭头的边上 ② 加工:输入数据经过加工变换产生输出。使用圆框代表加工 ③ 数据存储:指处理过程中存放各种数据。使用双杠(或单杠)表示数据文件或数据库。文件与加工之间用箭头线连接,单向表示只读或只写,双向表示可读可写 ④ 数据源点或终点:指软件系统外部环境中的实体(包括人员、组织或其他软件系统,统称为外部实体)。使用方框表示数据的源点和终点 5、建立数据流图的步骤: 第一步:由外向里:先画系统的输入输出,然后画系统的内部。 第二步:自顶向下:顺序完成顶层、中间层、底层数据流图。 第三步:逐层分解。 6、DFD图的数据流可分为两种类型:变换流和事务流 变换流:信息沿着输入通路进入系统,同时将信息的外部形式转换成内部形式,通过变换中心处理之后,再沿着输出通路转换成外部形式输出 事务流:信息沿着输入通路到达一个事务中心,事务中心根据输入信息的类型在若干个动作序列中选择一个来执行,这种信息流称为事务流 7、数据字典就是用来定义数据流图中的各个成分的具体含义和详细的描述。它和数据流图共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分。是结构化分析方法的核心。 数据字典是为分析人员查找数据流图中有关名字的详细定义而服务的。 数据字典有四类条目:数据流、数据项、数据存储和基本加工。 8、SD方法的中心任务就是把用DFD图表示的系统分析模型方便地转换为软件结构的设计模型。 识点6软件测试的目的和准则 1、软件测试是保证软件质量的重要手段,其主要过程涵盖了整个软件生命周期的过程,包括需求定义阶段的需求测试、编码阶段的单元测试、集成测试以及后期的确认测试、系统测试、验证软件是否合格、能否交付给用户使用。软件测试就是使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。 2、软件测试的原则: 1)所有测试都应追溯到需求 2)严格执行测试计划,排除测试的随意性 3)避免由软件开发人员测试自己的程序 4)充分注意测试中的群集性现象 5)除了很小的程序外,“彻底”的穷举测试是不可能的 6)妥善保存测试计划、测试用例、出错统计和最终的分析报告,为维护提供方便 软件测试的每一次测试都需要准备好一些测试数据,与被测程序一起输入到计算机中执行; 知识点7软件测试的方法和实施 1、测试是对软件规格说明、设计和编码的最后的复审,所以软件测试贯穿在整个软件开发期的全过程。对于软件测试方法和技术,可以从不同的角度加以分类。 ①从是否需要执行被测软件的角度,软件测试分为静态分析和动态测试 ②按照功能划分,动态测试又分为白盒测试和黑盒测试 2、静态测试一般是指人工评审软件文档或程序,借以发现其中的错误,由于被评审的文档或程序不必运行,所以称为静态的。 静态测试包括代码检查、静态结构分析、代码质量度量等。 3、动态测试是指通过运行软件来检查软件中的动态行为和运行结果的正确性,也就是常说的上机测试。 动态测试一般包括两个基本要素:被测程序和测试数据 4、测试能否发现错误取决于测试用例的设计。 动态测试的设计测试用例的方法一般分为黑盒测试和白盒测试。 ①白盒测试也称结构测试,它与程序内部结构相关,要利用程序结构的实现细节设计测试用例,它涉及程序风格、控制方法、源程序、数据库设计和编码细节。 ②黑盒测试是测试者已经知道被测程序的功能,而对程序内部的逻辑结构和处理过程完全不用考虑,只是对它的每一个功能进行测试,将测试后的结果与期望的结果进行分析比较,检查程序的功能是否符合规格说明书的要求。黑盒测试是在程序接口进行的测试 5、测试用例是由测试数据和期望结果组成。设计测试用例的目的就是用尽可能少的测试数据,达到尽可能大的程序覆盖面,发现尽可能多的软件错误和问题 6、用白盒法设计测试用例常用以下几种技术: ① 语句覆盖 ② 判定覆盖 ③ 条件覆盖 ④ 判定/条件覆盖 ⑤ 条件组合覆盖 ⑥ 路径覆盖 7、用黑盒法设计测试用例常用以下几种技术: ① 等价类划分法 ② 边界值分析法 ③ 错误推测法 ④ 因果图法 8、软件测试的实施 ① 单元测试:是对每一个编制好的模块进行测试,其目的在于发现和排除各模块内部可能存在的差错及详细设计中产生的错误。进行单元测试时,根据程序的内部结构设计测试用例,主要采用白盒测试法 ②集成测试。是在单元测试的基础上,将所有模块按照设计要求组装成为系统而进行的测试,它的任务是检查模块间的接口和通信、各子功能的组合能否达到预期要求的功能、全程数据结构是否有问题等。集成测试主要发现设计阶段产生的错误,通常采用黑盒测试法 。集成测试时,将各个模块组装成系统的方法有:非增量组装方式是先分别对每个模块进行单元测试,再把所有模块按设计要求组装在一起进行测试,最终得到所要求的软件增量组装方式是把下一个要测试的模块同已经测试好的那些模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试 ③ 确认测试。确认测试是在集成测试通过后,在用户的参与下进行确认测试。这时通常使用实际数据进行测试,以验证系统是否能满足用户的实际需要。它的任务就是以需求规格说明书作为依据来验证软件的性能、功能及其他特征是否与用户的要求一致,通常采用黑盒测试 ④ 系统测试。系统测试是在更大范围内进行的测试。系统测试是把通过确认测试后的软件与计算机硬件、外设、某些支持软件、数据和人员等结合在一起,在实际运行环境下,对计算机系统进行的一系列集成测试和确认测试 知识点八 程序的调试 1、调试也称排错或纠错。 2、程序调试的任务:诊断和改正程序中错误。 软件测试贯穿整个生命周期,调试主要在开发阶段。 3、程序调试的基本步骤: 1)错误定位; 2)纠正错误; 3)回归测试。 4、对软件主要的调试方法可以采用: 1)强行排错法。 2)回溯法。 3)原因排除法。 5、软件调试可分为静态调试和动态调试。 1)静态调试就是指对源程序进行分析,然后确定可能出错的地方并进行排错。 2)动态调试是指对程序的运行进行跟踪并观察其出错点,然后进行排错。 5771001803090012095 579036822859633082 5771001803090012386 576137399735760696 5771001803090013594 578077579902515512 5771001803090012387 577164982601818051 5771001803090012138 572131192158918326 5771001803090012359 579036822361076053 5771001803090012356 576135286143791742 5771001803090012355 575087869704693279 17088100343355274 101229944325833379 17088100343355275 101866732938832008 17088100343356107 101581152501500522 17088100343356108 101000180059871732 17088100343354295 101074194142687017 17088100343356184 101878660869628802 17088100343356185 101775831174086674 17088100343356109 101086014373572846 17088100343356110 101152207216014916 17088100343355237 101027041605702709 17088100343355238 101229364861425414 17088100343356169 101862204402635718 17088100343354928 101760654089788804- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 基础 知识点 总结
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文