软件产品线概念在这里不详细说,网上有很多,实现有必要说一下,软件产品线和传统开发过程重要区别在于原来开发过程区分领域积累或者叫做资产管理环节,软件产品线通过两阶段开发方式解决这个问题,使开发过程更加丰满,按照现在流行说法叫"Sexy".具体实现有几个关键部分,模型、装配(工具精细化开发)、资产化(模板、组件、扩展点)。
产品线的背景、国内应用情况等情况以及发展前景等问题问题域太大,我没有能力也不想谈,我只想列一下实现了会面对的目前基于Java的解决方案的企业开发的一些阻碍,个人认为克服这些阻碍是想实现软件产品线的公司必须考虑的问题,说来惭愧目前这些问题我没有一个想出答案。
1 历史资产如何处理,基于OSGI对历史资产不模型化是个思路,但是似乎和模型驱动被动而弛,这个问题核心是成本
2 业务逻辑如何模型化,不模型化似乎是解决方案,但是UI是否要模型化
3 初始阶段是否应该两阶段开发,问题是能否活着得到受益
4 工具大量投入是否达到无法控制的底部,核心问题是工具的控制域