软件产品开发中的灵活性与可变性管理
1. 引言
在软件密集型产品开发领域,灵活开发(灵活性)和产品可变性(可变性)已成为关键的战略挑战。尽管二者常被混淆,但本质上是不同的问题。灵活开发指高效响应新市场机会的能力,即把创意推向市场的速度;产品可变性则是高效为客户提供大量产品变体的能力。对许多软件密集型产品开发商而言,解决其中一个甚至两个挑战,都可能带来竞争优势。
然而,尽管有大量关于灵活性和可变性管理的技术,但实施有效的灵活性和可变性策略仍面临诸多挑战。主要原因有二:一是公司常忽视在特定产品开发模型中解读这些挑战,盲目应用现有技术;二是业务环境和技术背景的变化使公司不断向其他开发模型过渡,这就要求公司持续重新解读灵活性和可变性策略。
2. 软件密集型产品开发
产品开发涵盖从感知市场机会到产品生产、销售和交付的一系列活动。软件在产品开发中的作用日益重要,主要有两种使用模式:
- 支持性模式 :软件不成为最终产品的一部分,而是间接辅助其他产品或服务的创建。对产品开发商来说,软件只是工具,开发软件并非核心活动,常通过购买(COTS)或定制获取。
- 融入最终产品模式 :软件成为最终产品的重要组成部分,是产品创新的关键工具。越来越多的产品将具备软件功能,采用这种模式的公司需具备一定的软件工程技能。
3. 软件产品开发模型
公司采用不同的软件密集型产品开发模型,可根据领域工程和应用工程的比例进行分类:
|开发模型|描述|特点|
| ---- | ---- | ---- |
|项目型开发(承包商模式)|
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



