软件工程-第1章-概述.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

软件工程导论;掌握系统的软件开发理论、技术和方法,

开发出成本低、可靠性好、能高效运行的软件

为今后从事软件开发和维护打下坚实的基础;参考文献;总目录;总目录;第1章 软件工程学概述;1.1软件危机;二、产生软件危机的原因:

1.软件本身的特点:

不同于硬件

不同于一般程序:规模庞大

2.软件人员的主观原因:

开发与维护的方法不正确。早期软件开发个体化。至今,无视软件需求分析的重要性,轻视维护。〔切记:要充分、完整、准确地认识用户的要求,不要匆忙着手编写程序。〕;三、解决软件危机的途径:

正确认识软件:

软件是计算机系统中与硬件相互依存的另一局部,它是包括程序、数据及其相关文档的完整集合。

程序是按事先设计的功能和性能要求编写的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发、维护和使用有关的图文材料。

1.推广使用在实践中总结出来的开发软件的成功技术和方法

2.研究、探索更好更有效的技术和方法

3.开发和使用更好的软件工具

4.有必要的组织管理措施;1、“软件工程”;软件工程的本质特性;2、软件工程的七条根本原理;软件工程;一、传统方法学

生命周期方法学或结构化范型

采用结构化技术〔结构化分析、设计和实现〕

把软件生命周期划分成假设干阶段:每一阶段结束前都必须进行技术审查和管理复审,试图以每一阶段的正确性和完整性来保证最终产品的质量。

面向行为或面向数据,把数据和操作人为别离,增加软件开发与维护的难度。

应用广泛;二.面向对象方法学

数据和数据的操作是被封闭在一个个称为“对象“的统一体中

把所有对象都划分成类。类是对具有相同数据和相同操作的一组相似对象的定义。

继承:下层派生类自动拥有上层基类中定义的数据和操作

对象之间那么是通过”消息”〔message”〕进行相互联系的,对象是数据处理的主体

采用该方法可以大大提高软件的可重用性,降低软件的调试、维护难度,而且特别适合于需要多人合作的大型软件的开发。;三.基于组件的软件工程方法学?

基于组件的软件方法学是以接口为中心、??向行为的、基于体系结构设计的,它把应用逻辑和实现别离,提供标准接口和框架,使软件开发变成组件的组合.

在基于组件的软件设计方法学方面,近期的研究主要包括:组件模型、组件组合、组件的选择、工具支持。组件组合是基于组件的开发方法的重点.

应用基于组件的软件设计方法学可以更有效地支持复用技术,改善软件质量,减少软件设计和开发的工作量,降低软件开发的费用和提高生产力。;;问题定义;各阶段的根本任务;二、软件开发

总体设计:概括地说,应如何解决该问题?

设计软件的结构〔用层次图或结构图描述〕,即确定

程序由哪些模块组成以及模块间的关系。

详细设计:应怎样具体实现这个系统?

详细设计每个模块,确定实现模块功能所需要的算法和数据结构。

编码和单元测试:编写代码,测试模块

程序员选取一种适当的高级语言〔或汇编语言〕把模块的过程性描述翻译为源程序。仔细测试编写出的每一个模块。

综合测试:通过各类型测试,使软件到达要求

最根本的测试是集成测试和验收测试方法。

用正式文档将测试方案、详细测试方案以及实际测试结果保存。;三、软件维护:

通过各种维护活动使系统持久地满足用户地需要

四类维护:

改正性维护:诊断和改正使用过程中发现的软件错误。

适应性维护:修改软件以适应环境变化。

完善性维护:根据用户要求,改进或扩充软件。

预防性维护:修改软件为将来的维护预先准备。

每一项维护活动都要经过提出维护要求、分析维护要求、提出维护方案、审批维护方案、确定维护方案、修改软件设计、修改程序、测试程序、复查验收等一系列子步骤,相当于一次压缩和简化了的软件定义和开发的全过程。

每一项维护活动都应准确记录下来,作为正式文档资料保存。;;一、瀑布模型〔线形模型〕;瀑布模型;

;优点:提供了软件开发的根本框架,有利于大型软件开发过程的人员的组织和管理

有利于开发方法和工具的使用

提高了软件的质量和效率

缺点:初始阶段不可能指出全部需求

几乎完全依赖于书面的规格说明,可能导致最终开发出的软件不能真正满足用户的需要.

;加工

原型;快速原型模型;快速原型模型是不带反响环的,这正是这种过程模型的主要优点:软件产品的开发根本上是线性顺序进行的。

〔1〕原型系统已经通过与用户交互而得到验证,据此产生的规格说明文档正确地描述了用户需求,因此,在开发过程的后续阶段不会因为发现了规格说明文档的错误而进行较大的返工。

〔2〕开发人员通过建立原型系统已经学到了许多东西,因此,在设计和编码

文档评论(0)

寒傲似冰 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8071104010000026

1亿VIP精品文档

相关文档