我在今年初的文章中曾断言,未来的应用会是跨设备、跨媒体的。无论是“PDA+手机”还是“手机+PDA”,最终个人移动终端会是我们不可缺少的随身工具。越贴近移动终端特性的应用,需求也越大。通讯、日程管理、商务,是移动设备应用的三大主题。

这块奶酪到底能不能动?个人移动终端软件应用会是极其庞大的市场,不过最好厂商之间的隔离、操作系统之间的隔离考虑在内,甚至同一厂商和操作系统,你也有可能需要为每个机型做一个单独的版本。“一次编写,到处运行”在移动终端上现在还行不通,哪怕是J2ME也不能完全做到。所以,你针对的用户,将会是整块奶酪上面的一小粒。为了获得另外一小粒,要付出的力量可不小。与硬件紧密相关的特点,使得移动终端开发具有相当陡峭的学习曲线(仅就各主要手机型号的native的代码而言,不包括Java,也不包括WinCE)。选择移动终端应用开发,或许得抱着不成功则成仁的决心。
精致化遭遇软件作坊
李维先生在《Borland传奇》一书中写道:“精致化的程序开发能力、面向对象和Modeling技术的平民化,则是属于比较贴近开发人员的发展,也是开发人员能够掌握和进一步控制的因素,是软件人员必须了解未来继续从事软件开发工作时必须克服和掌控的技术趋势。”各个开发工具厂商都在推自己的“精致化”方案,例如Borland的ALM/SDO,IBM Rational的六种开发角色。事实上这些方案都是关注开发过程本身,力图使其中各种参与角色和环节达到最优化的配置与协同。
这些概念在多数中国软件公司中遭遇了困境。
我们不得不承认,许多软件公司的开发过程仍然停留在作坊时代,甚至连最基本的配置管理都没有做到。在工作中没有使用任何源代码版本管理工具的竟然占总数的34.1%,因此带来的混乱和损失之巨大几乎无法估量。在开发工作的尾声,没有使用任何自动化测试工具的占到总数的60.24%,这样做出来的产品谁用谁倒霉。

