基于构件的软件开发过程什么样?
当软件构件库足够丰富,软件开发将会迈入基于构件的开发过程。
基于构件的软件开发过程,不等同于基于构件的软件开发(即将现有的构件组装成软件系统),基于构件的软件开发只是基于构件的软件开发过程的一个重要方面(即实现过程),而基于构件的软件开发过程,是以构件为中心的思想来指导软件生命周期的各个阶段,不仅包括需求分析、设计、实现、测试和维护等工程活动,也包括项目管理活动。
-
需求分析
基于构件的软件开发过程的需求分析要完成以下任务:确定领域需求,划分业务构件。
在需求分析阶段,我们通过对领域需求的挖掘、分析和确认等活动,明确软件应实现的功能,并按照一定的规则(如模块化)将其分配到不同的业务构件,形成基于构件的业务模型。
-
设计
基于构件的软件开发过程的设计要完成以下任务:确定系统架构,划分服务构件。
在设计阶段,我们需要进行系统设计,将上一阶段获得的业务构件按照设计原则有机地组织起来,再结合表示层和逻辑层等的服务构件,形成具有健壮性、可靠性和可扩展的软件架构。
-
实现
基于构件的软件开发过程的实现要完成以下任务:创建新的构件或获取已有构件,按照系统架构组装软件系统。
在实现阶段,我们需要获得设计过程中组成软件的业务构件和服务构件,并且实现构件间的相互调用。获得构件的方式是通过检索组织的构件库下载使用所需要的构件。如果构件库中没有所需的构件,就需要把它开发出来。如果构件只能部分复用,就需要对构件进行适应性修改。
-
测试
基于构件的软件开发过程的测试要完成以下任务:测试新开发的服务构件和业务构件,以及它们之间的接口,测试整个软件的功能、性能和外部接口。
在测试阶段也是基于构件进行的。新的构件需要进行功能和接口测试,而构件库中获取的构件不需要对其自身进行测试,而只需要对它的外部接口进行测试。除此之外,测试阶段要完成整个软件的系统测试。
-
维护
基于构件的软件开发过程的维护要完成以下任务:更新、替换已有构件。
在维护阶段,我们也只需要针对要维护的构件进行维护活动,即通过更新、替换相关构件来完成维护。
-
项目管理
构件既是软件开发工程活动的产物,同时它也为项目计划与分工提供了良好的支持。
-
项目计划
计划是通过对软件规模、工作量以及资源的估计结果制定的,原来的规模估计是基于模块进行的,基于构件的开发过程则是基于构件进行的——如果构件是可重用的,那么不需要开发构件,只需要实现构件的调用,而且不需要对构件进行测试,只需要进行集成测试;如果构件是新开发的,则要估计构件的大小、开发的工作量、构件测试的工作量。
-
任务分配
在基于构件的开发中,开发人员可以分为构件开发者和组装者。构件开发者负责新构件的开发,组装者负责构件的组装和调用。
-
测量分析
在项目的度量上,也同样按照构件划分。比如,通过测量构件的生产率来测算项目的生产率。
总之,基于构件的软件开发过程是以构件为中心来进行软件开发的工程活动和管理活动。
这正是:
构件开发什么样,构件核心不要忘
无论何种活动中,适用软件全生命
参考书目:软件构件技术,作者:夏榆滨,出版社:清华大学出版社
作者简介:王小双,长期从事GJB5000推广、实施、评价、改进的工作,创建《软件工程之思》微信公众号,一直在《软件工程之思》分享GJB5000、CMMI、软件工程的知识和感悟。现致力于GJB5000咨询以及软件过程改进、软件工程能力提升的研究工作。
《基于构件的软件开发过程什么样?》来自互联网,仅为收藏学习,如侵权请联系删除。本文URL:http://www.bookhoes.com/456.html