软件工程概论.pdf

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

软件工程

1、软件危机:软件危机是指在计算机软件的开发和维护过程中遇到

的一系列严重问题;包含两方面的问题:

1如何开发软件,以满足对软件日益增长的需求;2如何维护数量不断

膨胀的已有软件;

2、软件危机的主要表现:

1对软件开发成本和进度的估计经常很不准确;

2用户对“已完成的”软件系统不满意的现象经常发生;

3软件产品的质量往往靠不住;

4软件常常是不可维护的;

5软件通常没有适当的文档资料;

6软件成本在计算机系统总成本中所占的比例逐年上升;

7软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入

的趋势;

3、产生软件危机的原因

1从软件特点上看,软件是逻辑部件,不是物理部件;

2软件是很大的程序,复杂且有很多技术问题,但缺少严格而科学的管

理;

3软件的参与人员多且成分复杂需求人员,开发人员,用户,维护人员

等;

4在软件实践过程中或多或少的采用的错误的但当时无法知晓的方法

和技术这是主要原因

4、消除软件危机的途径

1首先应该对计算机软件有一个正确的认识;

2更重要的是,必须充分认识到软件开发不是某种个体劳动的神秘技

巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完

成的工程项目;

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

并且研究探索更好更有效的技术和方法,尽快消除在计算机系统早期

发展阶段形成的一些错误概念和做法;

4应该开发和使用更好的软件工具

总之,为了解决软件危机,既要有技术措施方法和工具,又要有必要的

组织管理措施;

5、软件工程:软件工程是从管理和技术两方面研究如何更好地开发

和维护计算机软件的一门新兴学科;

11968年NATO会议:软件工程就是为了经济地获得可靠的且能在实际

机器上有效地运行的软件,而建立和使用完善的工程原理;

21993IEEE定义:软件工程是①把系统的、规范的、可度量的途径应

用于软件开发、运行和维护过程,也就是把工程应用于软件;②研究

①中提到的途径;

6、软件工程的本质特征

1软件工程关注于大型程序的构造;

2软件工程的中心课题是控制复杂性;

3软件经常变化;

4开发软件的效率非常重要;

5和谐地合作是开发软件的关键;

6软件必须有效地支持它的用户;

7在软件工程领域中通常由具有一种文化背景的人替具有另一种文化

背景的人创造产品;

7、软件工程的基本原理

1用分阶段的生命周期计划严格管理

2坚持进行阶段评审

3实行严格的阶段性产品控制

4采用现代程序设计技术

5结果应能清楚地审查

6开发小组的人员应该少而精

7承认不断改进软件工程实践的必要性

8、软件生命周期:一个软件从定义、开发、使用和维护,直到最终被

废弃,所历经的一个漫长的时期;包括:可行性分析和项目开发计划,

需求分析,概要设计,详细设计,编码,测试,维护;

1软件定义时期:确定软件开发工程必须完成的总目标;确定工程的

可行性;导出实现工程目标应该采用的相关策略及系统必须完成的功

能;估计完成该项工程需要的资源和成本,并适当估计完成进度表;

2软件开发时期:总体设计;详细设计;编码和单元测试;综合测试;

3软件维护时期:主要任务是使软件更持久地满足用户需要;具体地说,

当软件在使用过程中发现错误时应该加以改正;当环境改变时应该修

改软件以适应新的环境;当用户有新要求时应该及时改进软件以满足

用户的新需要;

9、软件生命周期每个阶段的基本任务

1问题定义:“要解决的问题是什么”;

2可行性研究:“对于上一个阶段所确定的问题有行得通的解决方案

吗”

3需求分析:“为了解决这个问题,目标系统必须做什么;”

4总体设计:“概括地说,应该怎样实现目标系统”

5详细设计:“应该怎样具体地实现这个系统呢”

6编码和单元测试:关键任务是写出正确的容易理解、容易维护的程

序模块;

7综合测试:关键任务是通过各种类型的测试及相应的调试使软件达

到预定的要求;

8软件维护:通过各种必要的维护活动使系统持久地满足用户的需要;

10、什么是软件生命周期模型有哪些主要模型

1生存周期模型:描述软件开发过程中各种活动如何执行的模型;对软

件开发提供强有力的支持,为开发过程中的活动提供统一的政策保证,

为参与开发的人员提供帮助和指导,是软件生存周期模型化技术的基

础,也是建立软件开发环境的核心;

2主要有:瀑布模型,增量模型,螺旋模型,喷泉模型,基于知识的模型,

变换模型;

您可能关注的文档

文档评论(0)

152****4142 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档