软件工程课后作业:软件工程方法论对软件开发的作用

软件开发过程是随着开发技术的演化而随之改进的。从早期的瀑布式(Waterfall)的开发模型到后来出现的螺旋式的迭代(Spiral)开发,以致最近开始兴起的敏捷软件开发(Agile),他们展示出了在不同的时代软件产业对于开发过程的不同的认识,以及对于不同类型项目的理解方法。

123

软件开发方法论概述

在60年代的软件开发行业,随着所开发的软件复杂度不断提升,使用原先的方法(1)开发出来的软件终于不能满足需要,其所出现的问题是层出不穷,而且由于缺少必要的文档,人们又没办法寻找定位出其中的问题所在。更有甚者,就算是找出其中的问题,但由于软件设计的杂乱不堪,其修改起来也是叫人头大…于是,终于爆发了所谓的软件危机。

危机爆发后,人们认识到之所以出现这类危机的原因,那是因为没有使用一种系统性的方法来规范软件的开发过程,导致开发出的软件缺少架构不明晰,代码编写不规范,文档缺乏等等问题。最终使得开发出来的软件可靠性大大下降,以至于到了不可使用的地步。

为了解决这种问题,北约组织各国的计算机专家于60年代末召开了两次国际会议(NATO Software Engineering Conference(2))来讨论软件危机问题。会议上提出了“software engineering”一词。从此,为解决软件危机问题,诞生了一门新兴的学科——软件工程学。

经历了几十年的发展,软件工程学这门学科,提出了很多实际可用的软件开发方法。这其中,最著名的,也是业界使用最广泛的,当属结构化的方法和面向对象的方法。本文标题内面向过程的分析(POA),其实就是结构化的分析(SA)。

记得我们在前面介绍课程的时候,说过任何程序都是由数据和处理这些数据的方法构成的,那么对于软件开发方法论来说,您仍然可以从这两方面去考虑。简单来说,您要仔细体会在某一个软件开发方法下,人们是如何考虑下面三点的:

⒈ 人们如何从现实的待解问题中抽象出要处理的数据的?
⒉ 人们是如何抽象出要处理这些数据的方法,并通过它们去解决整个问题的?
⒊ 人们在将所抽象出的数据和方法映射到程序的时候,是如何考虑的?是数据方法分开考虑呢,还是一并考虑?

作用

当公司得体量大到一个程度时。
当公司得人员流动量开始变大时。
软件工程对于软件开发整个过程得意义就体现出来了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值