基于组件的非线性软件开发过程研究*
2012-02-28臧影
网络安全与数据管理 2012年16期
臧影
(云南科技信息职业学院,云南 昆明 650224)
1 软件开发方法的演变
软件开发方法经历了从结构化程序设计到面向对象设计、分布式对象/系统设计等方法的演变过程,近年又产生了基于组件的开发方法。组件是可以插入系统中的对象。基于组件的开发(CBD)是一种软件开发方法,采用这种方法开发,生命周期中的所有问题和阶段,包括需求分析、体系结构、设计、构建、测试、部署、支持技术和项目管理,都是基于组件进行的。
然而,现有的软件工程体系颠倒了人与软件开发过程的主次关系,放任软件缺陷的引入与传播,盲目进行软件的修改维护,分不清软件工程的主要和次要矛盾,导致软件产品不完整、软件开发效率低、软件质量差、开发费用高昂。造成这些问题的根源在于,现有的软件工程体系都是采用了线性增量单向迭代模型,都是线性思维和简单科学的产物,而软件是由开发团队和客户这些非线性的人组成的复杂系统所创造的逻辑思维的产物,其本身也是一个复杂的、非线性的系统,两者存在根本性的矛盾,这在很大程度上削弱了基于组件开发方法带给软件企业的好处[1]。
因此,为了最大限度地发挥基于组件开发方法的优点,必须摒弃传统的线性软件工程体系,取而代之以非线性、整体性、相关性、关键性、层次性、目的性、开放性、动态性、适应性等原则和综合设计、增量集成、双向迭代、主动防错、全程评审、协同开发、信息共享、实时沟通等扩展原则的非线性软件工程体系[1]。……
登录APP查看全文
