京投公司:软件工程将来会怎样发展?

来源:百度文库 编辑:高校问答 时间:2024/05/02 00:53:00
我想知道软件工程的发展方向在哪里,请高手指点一二。

这个问题很复杂,恕在下自不量力说几句。
软件工程的目标是最小的成本、最高的质量、最短的开发时间开发软件产品。眼下流行的各种软件工程方法对这个目标的实现都差强人意。以RUP为代表的重量方法用来做计划、准备的时间太多,真正用在开发的精力却很少,以为只要企业保证软件过程的实施,其他的事情都好办,这种极端压抑人性的方法不会取得很好效果。轻量方法要好一些,毕竟绝大部分注意力都在开发上,大家都很喜欢,可是仅依靠少数几个人,对付不了大型项目。当然,大家都在改进各自的缺点,吸收对方的优点。
G.Booch说过,自动化不足是软件开发过程中大量问题存在的重要原因,在下深以为然,并且认为是最小的成本、最高的质量、最短的开发时间之目标难以实现的根本原因。因此,将来的软件工程必然要发展到以软件自动化技术为核心的阶段——4GL时代。
为什么4GL时代还没有来临,这是因为软件自动化太困难,眼下所取得的成果局限在某些很窄的领域内,达不到实际项目要求,而且这种技术太难理解,需要对理论的深入学习,一般的开发人员难以接受。软件自动化技术没有大发展的重要愿意是目前描述动作语义的技术都很低级,因此即便用形式化方法作设计也是很费时间的,虽然可以提高一定的效率,但是还是远远不够的。
为了解决这个问题,只有从利用以前的成果入手了,也就是复用构件,但不是用今天的构件技术。将来,实现了机器检索的大型构件库,这是计算机实现对构件的查找、转配等自动化的构件库,不是今天的手工构件库。但这样的构件库为什么没有出现,还是老问题,我们还没有一个很理想的描述动作语义的方法,计算机无法判定两个构件或规约和构件之间是否等价,或者有等价的成分,当然也就无法进行自动检索了。
虽然有很多困难,但我相信将来软件工程的发展方向必将是高度自动化的构件式开发方法。
上面说的,完全是个人观点,也许不足采信。