如何实现从模型制品到组件制品的软件产品工程
1. 引言
软件系统开发正期待着一场范式转变,从基于手工工艺、根据用户需求在模型中定制解决方案的开发结构,向市场驱动的产品化开发方式转变。用户有望自行选择并组合有意义的组件来满足自身需求。然而,要实现这一转变,需要解决软件系统工程方法论中存在的诸多问题,如成本高、耗时长、缺乏灵活性等。
传统上,软件系统工程(SSE)遵循特定的方法论,该方法论为工程过程带来结构、规划、阶段控制和质量管理,以生产高质量的软件系统。它分为系统工程和软件工程两个领域,前者侧重于规划、分析和设计,后者则负责编程和产品实现。随着时间的推移,方法论不断演变,涵盖了多种开发方法,软件系统和应用领域也日益广泛。但目前,软件产品开发与设计和建模仍相互分离。
从工程角度来看,要实现从模型到组件化定制解决方案,再到市场驱动的产品化开发的转变,需要对软件系统工程方法论进行彻底变革:
- 建模需适应实践社区,并依据适应的方法论进行。
- 开发即插即用的组件,以便根据实践社区、用户和非专业程序员设计的模型生成软件产品。
2. 软件系统工程方法论
SSE方法论将系统工程和软件工程过程管理与一套软件系统设计和开发工具相结合,用于开发软件产品。该方法论必须支持软、硬SSE任务和场景,其采用取决于实践社区。
软件系统的质量依赖于SSE方法论。该方法论通过在SSE生命周期的不同阶段集成一套建模工具,将质量保证融入系统工程过程。质量不能仅在软件质量测试阶段保证,而应在系统工程早期通过建模和编程工具来构建。
系统开发文化会影响模型的开发、不同阶段和生命周期场景中使用的建模工具集,以及软件开发过