河北工业大学软件工程期末复习.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
河北工业大学软件工程期末复习

软件工程期末复习总结 第一讲 概述(选择U填空U简答) 1.1 软件工程的研究内容 软件工程要考虑专业软件开发所需要的理论、方法和工具----工程技术问题 软件工程要考虑如何有效的在软件开发中利用有限的成本资源----工程管理的问题 1.2 什么是软件? 软件包括:---软件的内涵 ① 能够提供客户所需功能与性能的计算机程序; ② 使程序能够适当的操作信息的数据结构; ③ 用以描述程序开发过程及使用的文档。 软件产品可以为一个特定的用户设计开发,也可以为某一类通用的市场设计开发。 软件产品可以分成: 一个新的软件并不一定是全新开发,可以由现有软件或可复用软件成分配置形成。 1.3 什么是软件工程 ? 软件工程是涉及软件生产各个方面的一门工程学科 软件工程涉及软件生命周期的各个方面,从软件需求的确定到软件退役。 软件工程:(1)将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件;(2)研究(1)中的方法. ——IEEE[IEE93] 1.4 什么是成功的软件项目 一个成功软件项目的三个要素包括: 按时交付 不超预算 满足用户要求。 1.5 软件过程与软件生命周期的相关概念 软件过程是指开发或制作软件产品的一系列活动及其成果. 所有的软件过程中都包括四个基本活动:(填空) 1. 描述( Specification)- 系统应该提供的功能及其开发约束; 2. 开发( Development)- 软件产品的生产过程; 3. 有效性验证(Validation )- 检验软件产品是否满足了客户的需要; 4. 进化( Evolution )- 按照用户的变更要求不断的改进软件。 软件生命周期是软件过程的另一种形象描述,通常包括需求定义、分析与描述、软件设计、实现、测试、维护与退役等活动。 1.6什么是优良软件的属性? P8 (填空U选择) 优良的软件应能交付相应的功能与性能,而且应具有良好的可维护性、可依赖性、有效性和可用性:(选择题,考法内涵匹配) 可维护性(Maintainability) Software must evolve to meet changing needs; 可依赖性(Dependability) Software must be trustworthy; 有效性(Efficiency) Software should not make wasteful use of system resources; 可接受性(Acceptability) Software must be accepted by the users for which it was designed. This means it must be understandable, usable and compatible with other systems. 第二讲 软件过程(画法+特点+结构+缺点+适用场合) 2.1 瀑布模型(顺序模型)(特点:变更少)(画法+特点+结构+缺点+适用场合) 需求分析和定义2.系统和软件设计3.实现和单元测试4.集成和系统测试5.运行和维护 (中文解释) 瀑布模型的缺点和适用情况 这种模型生硬的把一个软件过程划分成几个界限清晰的阶段,而且这些阶段前后有严格的顺序,这导致它很难对用户的需求变更做出及时的调整; 因此,瀑布模型只适合需求非常清楚和需求变更被严格限制的情况下。 实际的软件开发过程中,几乎没有多少业务系统具有稳定的需求。 瀑布模型反映了工程设计的基本思想。 2.2 进化式开发模型(画法+特点+结构+缺点+适用场合) 基本思想:通过开发系统原型和用户反复交互,以明确需求,使系统在不断调整与修改中得以进化成熟。又叫做原型式开发方法。 两种基本类型: 探索式开发; 抛弃式原型法. 2.2进化式开发模型 问题 缺乏过程可见性; 系统结构通常会很差; 需要一些特别的技术(如原型快速开发技术),通常与主流技术不兼容. 适用情况 适合中小规模的交互系统; 可用于大型系统的局部开发(如系统界面),可以和瀑布模型混合使用; 生命周期较短的系统 2.3 基于过程反复的过程模型 对于大型项目而言,系统需求的变更是无法避免的,因此开发过程的反复是软件开发的必要手段; 过程反复可以和任何一种一般过程模型结合使用。 两种支持过程反复的过程模型: 增量式开发; 螺旋式开发。 2.3 增量式开发 增量式开发的特点 在这种开发方式中,系统不是作为一个整体交付,而是被分解成若干个增量,每个增量交付系统的部分功能。

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档