软件工程笔记整理.docxVIP

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

软件工程笔记整理

1)、软件工程的目的:倡导以工程的原理、原则与方法进行软件开发,以解决当时出现的软件危机。

A、如何开发软件以满足对软件日益增长的需求。

3)、软件危机的要紧表现形式

A、软件开发成本高,研制进度无法准确估计,用户不满意。

B、软件产品的可靠性得不到保证。

C、软件产品难以保护。

D、软件进展跟不上硬件的进展与用户的要求,硬件成本逐年下降,软件成本越来越昂贵。

2、软件工程概念

1)、软件:计算机系统中的程序及其文档。程序是计算任务的处理对象与处理规则的描述;文档是为了便于懂得程序所需的阐明性资料。细言之,软件有三层含义:

A、个体含义:即指计算机系统中的程序及其文档。

B、整体含义:即指在特定计算机系统中所有上述个体含义下的软件的总称。

3)、软件工程:应用计算机科学、数学及管理科学等原理,开发软件的工程。它借鉴传统工程的原则、方法,以提高质量,降低成本为目的。其中,计算机科学、数学用于构造模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。

3、软件工程框架(参见附图软件工程框架示意图)

1)、软件工程目标:生产具有正确性、可用性与开销合宜的产品。

A、正确性:是指软件产品达到预期功能的程度。

B、可用性:是指软件基本结构、实现与文档为用户可用的程度。

2)、软件开发活动:生产一个最终满足需求且达到工程目标的软件产品所需要的活动。软件开发的基本活动包含:需求、设计、实现、确认、与支持。

A、需求:就是定义问题。

B、设计:在需求的基础上,给出被建系统的软件设计方案。

D、确认:需求复审、设计复审及程序测试。

E、支持:为系统的运行提供纠错性保护与完善性保护。

3)、软件工程原则:围绕软件开发,提出了下列基本原则。

C、提供高质量的工程支持:如其它工程一样,需要提供高质量的工程支持,比如配置管理、质量保证等,才能按期交付高质量的软件产品。

4)、软件工程学科研究的内容:软件开发模型、软件开发方法、软件过程、软件工具、软件开发环境、计算机辅助软件工程与软件经济学等。

5)、软件开发方法学:是一种已定义好的技术集与符号表示习惯,来组织软件开发的过程,通常表示为一系列步骤,包含结构化方法、面向对象方法、Jackson方法、Warnier方法、PAM方法、可视化方法等。

软件开发模型

2、软件生存周期:软件产品从定义开始,通过开发、使用与保护,直到最后被淘汰的整个过程。

3、软件过程:是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。

4、瀑布模型(参见瀑布模型示意图)

1)、概述:将软件生存周期的各项活动规定为依固定顺序连接的若干阶段工作,形如瀑布流水,最终得到软件产品,是一种线性模型。

2)、各阶段活动:提出系统需求、提出软件需求、需求分析、设计、编码、测试与运行。

3)、每一阶段的特征

A、从上一阶段同意本阶段工作的对象,作为输入。

B、对上述输入实施本阶段的活动。

4)、优缺点

A、优点:在支持结构化软件开发、操纵软件开发的复杂性、促进软件开发工程化等方面起着显著作用。

B、缺点:缺乏灵活性,无法通过开发活动澄清本来不够确切的软件需求。

5、演化模型(参见演化模型示意图)

1)、概述:演化模型要紧针对事先不能完整定义需求的软件开发。

2)、开发过程:首先开发核心系统,当核心系统投入运行后,开发人员根据用户的反馈,实施开发的迭代过程。每一迭代过程均由需求、设计、编码、测试、集成等阶段构成,直到软件开发结束。

3)、优点:一定程度上减少了软件开发活动的盲目性。

6、螺旋模型(参见螺旋模型示意图)

1)、概述:在瀑布模型与演化模型的基础上,加入两者所忽略的风险分析所建立的一种软件开发模型。

2)、特点:沿螺旋模型顺时针方向,依次表达了四个方面的活动,制定计划、风险分析、实施工程、客户评估。

7、喷泉模型:它表达了软件创建所固有的迭代与无间隙特征。要紧用于面向对象开发过程。(参见喷泉模型示意图)

8、增量模型:在设计了软件系统整体体系结构之后,首先完整的开发系统的一个初始子集,继之,根据这一子集,建造一个更加精细的版本,如些不断地进行系统的增量开发。(参见增量模型示意图)

9、各类模型之间的区别与联系

1)、瀑布模型、演化模型、螺旋模型之间的异同。

A、相同点:都分为多个阶段。

B、不一致点:瀑布模型一次完成软件;演化模型分为多次完成,每次迭代完成软件的一个部分;螺旋模型也分为多次完成,每次完成软件的一个新原型,并考虑风险分析。

2)、演化模型与增量模型的区别

B、增量模型:首先完整的开发系统的一个初始子集,然后不断的建造更精细的版本。

3)、需要完整定义需求的模型:瀑布模型、增量模型。

4)、属于迭代风范的模型:演化模型、

文档评论(0)

jiangwen666 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档