计算之智与哲学之慧分享 http://blog.sciencenet.cn/u/huangfuqiang

博文

软件复杂性问题20100404

已有 3152 次阅读 2010-4-4 16:32 |个人分类:计算机软件理论与工程|系统分类:科研笔记| 软件复杂性问题

       随着行业需求与软件规模的不断增加,加之软件形态的多样性,现在造成软件有效生产能力很难适应产业发展的需要,基于这样的不均衡性就形成了现在的比以前更严重的软件危机现象,软件也就成了信息产业发展的瓶颈。自从1968年提出软件工程这个术语以来,探究提升软件工程相关理论与方法的学术活动与产业活动就从来没停止过,然而问题还依然存在。我认为这个问题值得反思,我想软件的日趋复杂性问题是症结所在,应该把软件作为一个系统来研究,也就是应在软件工程研究中合理引入和重新审视系统科学与系统工程的方法,运用这些方法进行方法再造。实际上软件工程的方法中早已经引入了系统科学的方法了,比如系统分析的方法等。现在的问题是能否经过重新建构使这些方法更有效,在这个过程中还可以引入新的理念,比如复杂性理论。
       此处我不对软件与程序进行区分,业内学者都清楚,软件等于程序加文档资料。软件是有模块的,模块内与模块间是有结构与联系的,模块内与模块间是有层次的,是作为整体向外界提供功能的,与业务环境是有数据、信息、知识交流的,良好的软件应该
动态可维护的,在强调一下人的因素,这不是一个系统吗?很显然它是一个系统,可大可小,大可至形成复杂的巨系统,比如Internet的层次。程序设计语言、开发模式、程序设计方法、CASE工具、软件过程改进等等因素都作用这个系统,造成它在有序与无序间的系统运动。软件工程包括软件理论研究的很多方面,这里我就不谈了,还应引入软件的复杂性研究方向。
       从某种程度上讲,我们使用的软件都是有脆弱性的和不可靠的,有的单体表现不可靠,有的协同表现不可靠,这也成了软件工程演进的动力源了。各种错误观念要放弃,比如说,软件开发就是写程序,会写程序就行了,这里咱不论写的好与坏,只谈这个想法,就错了,那你永远是程序员,达不到软件工程师的境界,编码是实施的环节,有效的分析与设计更重要,团队不同层次角色思想协同更更重要。


https://blog.sciencenet.cn/blog-89075-308790.html

上一篇:有监督的机器学习算法在音乐创作中的应用
下一篇:用户界面定制技术新突破Prefab
收藏 IP: .*| 热度|

3 吴雄斌 吉宗祥 pkuzeal

该博文允许实名用户评论 评论 (1 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-7-28 19:21

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部