非常话题──从XP『减肥』话软件开发

软件世界

大名鼎鼎的Windows XP虽然功能强大,但安装后占用大量空间,在维护备份的时候也因为体积过大而显得很慢。所以有很多人都在想方设法地将它“减肥”后使用。此外,Windows XP提供的系统还原也多被DIYer们用Ghost取代而弃用,而远程控制、自动更新等功能对很多人来说更是一安装完就关闭了……这一切都似乎在提醒人们:对于一个软件我们到底需要多少功能呢?我们又希望一个软件变成什么样子才满意呢?

软件用户的声音:

不仅仅是操作系统,我们平时常用的其他软件如Word,里面提供的“信封和标签”、“中文版式”、“联机协作”等多种功能,除了专业人士,一般用户也就是节假日做贺卡、年终做报告时才用到,平常根本用不了Word的那么多功能。
一般来说,普通软件的用户群有两大类:从事某行业需要该软件大部或全部功能的专业人士和仅仅用到该软件小部分功能的普通用户。而后者显然占了绝大多数──不过,这些普通用户对同一功能所需可能不同,很难用通用的公式来概括他们的需要,所以软件开发人员不得不在功能上面面俱到,把各方的需求都照顾到,而软件开发的成本也就相对提高了。
这种情况的根源在于长期以来软件封闭开发的模式:一帮程序员根据多多少少有点闭门造车的计划,在完全封闭的房间里开发编写程序的源代码,再编译、调试、修正一定数量的Bug,发布试用版、根据反馈意见再改进……最后出Bug较少的正式版。
在这种模式下面,开发人员得到的反馈意见只能是很有限、很不及时的,加上各个用户在各自的环境里都有不同的特殊要求,所以我们可以看到几乎每一个软件都必须不断地推出新版本修正Bug,增加新功能,而这些新功能在获得某些用户褒奖的同时,却会被另一部分用户指责为多余、华而不实,导致软件增加了体积、减慢了速度,简直是画蛇添足云云。
既然如此,为什么不采用一种为个人定制软件的开发模式呢?也就是在一个相同的基础框架下面,根据个人提出的特殊要求来进行后期的开发,这样就可以去掉软件中很多这个用户不需要的部分,从而减小了体积、加快了速度,也降低了软件的成本和价格。
这并非天方夜。目前,微软正在全力地推广.Net战略计划,该计划的重点之一就是……Web Service(我们已经在今年《电脑报》第一期B1版的《软件在2002年》中讲到过)。当然,目前此种Web服务还在雏形阶段,但从微软的行动中可以看出这是未来软件重要的发展方向。随着互联网的广泛普及应用和软件“大工业化”的浪潮,为个人定制软件开发、进行后期服务是否才是将来软件业的真正重头戏?
这里我们也希望大家能参与到我们的话题中来(chenjs@cpcw.com),谈谈自己的想法。