软件工程学概述.docx

上传人:sk****8 文档编号:2404439 上传时间:2019-05-11 格式:DOCX 页数:4 大小:165.95KB
下载 相关 举报
软件工程学概述.docx_第1页
第1页 / 共4页
软件工程学概述.docx_第2页
第2页 / 共4页
软件工程学概述.docx_第3页
第3页 / 共4页
软件工程学概述.docx_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、第一章 软件 工程学概述 1.软件 危机概念、表现和产生的 原因 ? a.软件危机 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题 b.典型表现 : ( 1) 开发成本和进度的估计常常很不准确 ; ( 2) 用户对 “ 已完成的 ” 软件系统不满意 ; ( 3) “ 软件质量不可靠 ; ( 4) 软件常常是不可维护的 ; ( 5) 软件没有适当的文档资料 ;( 6)软件成本 在计算机系统总成本中所占的比例逐年上升; ( 7)软件 开发生产率提高的速度,远远跟不上计算机应用 迅速 及深入的趋势( 软件产品 “ 供不应求 ” ); c.产生 的 原因 : ( 1) 软件的规模加大、复杂性

2、提高、性能增强 ;( 2) 软件是逻辑产品,尚未完全认识其本质和特点 ;( 3) 缺乏有效的、系统的开发、维护大型软件项目的技术手段和管理方法 ;( 4) 用户和软件开发人员的理解鸿沟 ;( 5) 错误的认识和作法:忽视软件需求分析的重要性,认为软件开发就是写程序并设法使之运行,轻视软件维护等 ; 2.软件 工程定义? 软件 工程是 指导 计算机软件开发和维护的工程学科:( 1)它采用 工程概念、原理、 技术 和方法啦开发和维护软件;( 2)它 将管理 技术 与当前经过时间 考验的而证明是正确的 技术 方法结合起来;( 3)它 强调使用 生存 周期方法学和结构 技术 ;( 4) 经过 人们 长

3、期的努力和探索,围绕着实现软件优质高产这个目标,从技术到管理两个方面做了大量的努力, 逐渐 形成了“ 软件工程学 ” 这一新的学科。 3.软件 生命周期?瀑布模型和快速 原型 模型的概念、特点和应用范围? 软件 生命周期 : 软件产品或系统一系列相关活动的全周期 。 瀑布 模型的 概念: 瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终得到软件产品。 特点 :( 1) 阶段间具有顺序性和依赖性 ;( 2) 推迟实现的观点 ;( 3) 质量保证的观点 (文档驱动 )。适用范围 : ( 1)用户的需求非常清楚全面,且在开发过程中没有或很少变化;( 2)开发

4、人员对软件的应用领域很熟悉;( 3)用户的使用环境非常稳定;( 4)开发工作对用户参与的要求很低。 快速 原型模型的 概念 : 快速 建立起来 的可以在 计算机上运行的程序, 它 所能完成的功能 往往 是 最终 产品能完成的功能的一个子集。 特点 :( 1) 快速原型的本质是“快速” ;( 2) 快速原型可以取代规格说明阶段,但不是设计阶段,容易适应需求的变化 ;( 3) 有利于开发与培训的同步 ;( 4) 开发费用低、开发周期短、维护容易且对用户更友好 。 适用范围 : ( 1)对所开发的领域比较熟悉而且有快速的原型开发工具;( 2)项目招投标时,可以以原型模型作为软件的开发模型;( 3)进

5、行产品移植或升级时,或对已有产品原型进行客户化工作时,原型模型是非常适合的。 第二章 可行性 研究 1.可行性 研究 的 目的 : 不是要解决问题,而是确定问题是否值得去解决 ;用最小的代价在尽可能短的时间内确定问题是否能够解决 2.可行性 研究的 任务 : 最根本的任务是对以后的行动方针提出建议 ; 如果问题没有可行的解,应该建议停止这项开发工程,以避免时间、资源、人力和金钱的浪费 ; 如果问题值得解,应该推荐一个较好的解决方案,并且为工程制定一个初步的计划 。 从 技术可行性、经济可行性 和 操作可 行 性分析可行性 第三章 需求 分析 1. 需求 分析的 基本任务 : 基本任务是准确地回

6、答“系统必须做什么 ?” ;“ 分析软件需求和书写 软件需求规格说明书 ” 。 具体 任务 : 确定对系统的综合要求 ; 分析系统的数据要求 ; 导出系统的逻辑模型 ; 修正系统开发计划 。 2. 层次 方框图和层次结构图的区别? a.层次方框图 : 描述系统数据的层次结构; 图中 的连线表示数据的组成关系。 b.层次结构图 :(层次图、功能模块图 ) 描述系统的软件结构 : 图中的连线表示模块的调用关系。 第五章 总体 设计 1.总体 设计的 任务 :( 1) 方案设计 ( 寻找实现目标系统的各种不同的方案,选出最佳的方案,制定实施计划 ); ( 2) 系统划分 ( 程序、文件、数据库、人工

7、过程和文档等 ); ( 3) 设计软件的结构 ( 每个程序是由哪些模块组成,以及这些模块相互间的关系 )。 2.模块 独立 和模块化 a.模块化 : 把程序化分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成制定的功能满足用户的需求 。 b.模块 独立 : 模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果 。 每个模块完成一个相对独立的子功能,并且与其它模块间的接口简单 。 3.模块 独立的衡量标准 ( 1) 耦合 是 不同模块之间互连程度的度量 。 (a-e 耦合 由高到 低 ) a.内容耦合 :一个模块访问另一个模块的内部数据; 一

8、个模块不通过正 常入口而转入另一个模块的内部;两个模块的代码部分重合; 一个模块有多个 入口。 b.公共 环境 耦合 : 两个以上模块之间通过公共环境进行数据的存取 。 c.控制耦合:一个模块给另一个模块传递控制元素。 d.特征耦合:一个模块通过数据结构向另一模块传递信息,而另一模块只需要数据结构的一部分属性。 e.数据耦合 :两个模块之间仅通过模块参数交换信息,且交换的信息全部为简单数据项或数据结构,但要求被调用模块使用数据结构的所有元素。 ( 2) 内聚 是 模块内各个元素彼此结合的紧密程度 。 (a-h 内聚 由低到高) a.偶然性内聚 :如果 一个模块完成一组任务,这些任务彼此间 即使

9、 有关系,关系也是很松散的。 b.逻辑性内聚 :如果 一个模块完成的任务在逻辑上属于相同 或 相似一类 c.时间性内聚 : 如果一个模块包含的任务必须在同一段时间内执行。 d.过程性内聚 : 如果一个模块内 的 处理元素是相关的,而且必须以特定次序 执行 。 e.通信性内聚 :如果 模块中所有元素都使用同一个输入数据和(或)产生同一个输出数据 。 f.顺序内聚 :如果 一个模块内的处理元素 和 同 一个 功能密切相关 , 而且这些处理必须顺序执行。 g.功能性内聚 : 如果模块内所有处理元素属于一个整体,完成一个单一的功能 。 h.信息 性内聚: 执行一系列操作、每个操作都有各自的入口点,每个

10、操作的代码相对 独立,而且所有操作都在相同的数据上完成 。 第六 章 详细 设计 1.详细设计 的 任务 : 不是具体地编写程序,而是设计程序的“蓝图” ; 详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能简明易懂 。 过程设计即确定每个模块的实现算法 ; 数据设计 即 设计软件中所需要的数据结构;接口设计 即 设计软件内部各个模块之间、软件与协作系统之间以及软件与使用它的人之间的通信方式 。 2.结构程序设计 是一种 进行程序设计的原则和方法,按照这种原则和方法设计出的程序的特点: 结构清晰 、 容易阅读 、 容易修改 、 容易验证 。 第七 章 实

11、现 1.选择程序设计语言的因素 : 系统用户的要求 ; 可以使用的编译程序 ; 可以得到的软件工具 ; 工程规模 ; 程序员的知识 ; 软件可移植性要求 ; 软件的应用领域 。 2.编码风格 是指编程时表现出来的特点、习惯、逻辑思路等。衡量程序好坏的重要标准 : 程序代码的逻辑简明清晰、易读易懂 ; 使用一致和有意义的标识符名 ; 用缩进显示程序结构 ; 用加括号的方式排除二义性 ; 避免大量使用循环嵌套和条件嵌套 ; 当心运算符的副作用 ; 把数定义成常量 ; 利用 sizeof()计算对象的大小 ;清晰的代码,而非最巧妙的代码 。 3.集成 测试 是 测试和组装 软件 的系统化技术。 4.

12、渐增 式测试 :把 下一个要测试的模块同已经测试 好 的那些模块结合起来进行测试,测试完以后再把下一 个 应该测试的模块结合起来测试 。 这种每次 增加一个模块的方法称为渐增式测试。它 有 自顶向下和自底向上两种集成策略。 5.白盒测试 : 此方法把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑 结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试;通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。 黑盒测试 : 这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性, 只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明;黑盒测试又叫做功能测试或数据驱动测试。 第 八章 软件 维护 1.软件 维护的定义 : 在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。 保证软件在一个相当长的时期能够正常运行。 2.软件 维护的类型 : 改正性 维护; 适应性 维护; 完善 性维护; 预防性 维护 。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。