- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程导论复习要点总结
软件工程导论要点总结:
罗少强----1.2章
李文科----3.4章
丁介然----6.7.8章
杜枭雄----9.13章
共计9章
第一章 软件工程学概述
软件工程产生的原因
随着计算机应用的日益普及,软件数量急剧膨胀增加。在程序运行时发现的错误必须及时改正;用户有了新的需求时必须相应的修改程序;硬件或操作系统更新时,通常需要修改程序以适应新的环境;严重的是,许多程序的个体化特性使得他们最终是不可维护的。这就产生了“软件危机 ”,软件危机的具体表现有:
(1)对软件开发成本和进度的估计常常很不准确。
(2)用户不满意已完成的软件系统。
(3)软件产品的质量往往靠不住。
(4)软件常常是不可维护的。
(5)软件常常没有适当的文档材料。
(6)软件成本在计算机系统中所占的成本比例逐年上升。这些危机的产生,不仅与软件本身的特点有关,还与软件的开发和维护的方法是否正确有关。
软件工程的功能
软件工程的定义:
(1)把系统的、规范的、可度量的途径应用于软件开发、运行和维护,也就是把工程应用于软件
(2)研究(1)中提到的途径。具有的功能有:
①软件工程应可以进行大型程序的构造;
②软件工程可以管理其控制复杂性;
③软件必须随着所模拟的现实世界一同变化;
④开发软件必须有高的效率;
⑤软件应该由团队合作开发;
⑥软件必须有效地支持其他用户;
⑦软件工程领域应该有文化领域的支持。
软件工程的基本原理
⑴用分阶段的生命周期计划严格管理:应该把软件生命周期划分成若干阶段,并制定出相应的可行计划,不同层次的人员按照严格计划对软件的开发与维护进行管理。
⑵坚持进行阶段评审:即在每个阶段都要进行严格的评审。
⑶实行严格的产品控制:软件开发过程中改变需求在所难免,而且需要付出较高的代价,因此采用基准配置管理来控制。
⑷采用现代程序设计技术
⑸ 结果能清楚地审查
⑹开发小组的人应该少而精
⑺ 承认不断改进软件工程实践的必要性
软件工程方法学分类
软件工程方法学分别是传统方法学和面向对象方法学。传统方法学:采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。面向对象方法学:把数据和行为看成是同等重要的,是一种以数据为主线,把数据和对数据的操作紧密结合起来的方法。
软件生命周期8个阶段
软件生命周期有软件定义、软件开发和软件维护3个时期组成,每个时期有具体的分为若干阶段。其具体阶段分别是:
(1)问题定义:要解决的问题是什么;
(2)可行性研究:对确定的文体有可行性的方法;
(3)需求分析:目标系统必须做什么;
(4)总体设计:应该怎样实现目标系统;
(5)详细设计:应该怎样具体实现这个系统;
(6)编码和单元测试;
(7)综合测试;
(8)软件维护。
软件设计的几种模型及特点
(1)瀑布模型
特点:①阶段间具有顺序性和依赖性:完成前一阶段工作之后才能开始后一阶段的工作,掐一阶段的输出文档就是后一阶段的输入文档;②推迟实现的观点:清楚地区分逻辑设计与物理设计,尽可能的推迟程序的物理实现;③质量保证的观点:每个阶段必须完成规定的文档,每个阶段结束前都要对完成的文档那个进行评审,尽早改正问题。
优点:强迫开发人员采用规范的方法;严格规定每个阶段必须提交文档;要求每个阶段交出的所有产品都必须经过质量保证的检验。
缺点:是一种有文档驱动的一种模型,用户只能通过文档静态的了解产品,很难全面的认识动态的软件产品。
(2)快速原型模型
特点:其第一步是快速建立一个能反映用户主要需求的原型系统,让用户通过实践了解目标系统的概貌,当用户需求有所变化可以快速修改原型系统。
优点:软件产品的开发基本上是线性顺序的;原型系统已经通过与用户交互而得到验证,据此产生的规格文档正确地反映了用户的需求;开发人员通过建立的原型系统知道系统应该做什么,不应该做什么。
(3)增量模型
特点:把软件产品作为一系列的增量构件来设计、编码、集成和测试。每个构件又多个相互作用的模块组成,并且能够完成特定的功能。每个增量构件往往实现软件的基本需求,提供最核心的功能。
优点:能够在较短的时间内向用户提交可完成部分工作的产品;逐步增加产品功能可以使用户有较充裕的时间适应和学习新产品。
困难之处:在把每个新的增量构件集成到现有软件体系结构中时,必须不破坏原来以开发的产品。
(4)螺旋模型
特点:螺旋线的角度值代表开发进度,螺旋线每个周期对应一个开发阶段。通常用建造原型的方法来排除风险。主要适用于内部开发的大规模软件项目。
优点:对可选方案和约束条件的强调有利于已有软件的
文档评论(0)