论文部分内容阅读
众所周知,软件危机极大地阻碍了软件工业的发展。在这种情况下,软件工业的先驱们尝试着寻找新的方式来解决当前的危机。组件技术的出现为软件开发带了新的思路,并越来越得到软件开发人员的重视。基于组件的软件开发的目标是创建一个可重用的组件集合,应用软件的开发变成了选择、修改以及合成组件,而不是完全从头开发。采用基于组件的软件开发模式能够实现软部件的重用,因此这种开发模式在提高软件开发效率的同时也提高了软件的可维护性。然而这种开发模式也存在着风险,还有待改进之处,值得深入地研究探讨。 基于组件的软件开发的目标是改进软件开发的过程,手段是通过一些预先构建的软件组件组成新的应用软件,而不是从头开发。本文从组件技术出发,分析组件的特点,要求,为后续工作打下基础。然后论述了基于组件的软件工程,它涉及到基于组件的软件开发过程、可重用软部件的设计与开发、部件库的组织。 在应用方面的研究,首先结合了基于COM+的进销存系统开发实例,分析了Windows平台下组件软件开发的特点。从中可以看出,COM的组件模型相对简单,对设计模式的支持不足,同时由于Windows平台的限制,基于COM的组件软件一般面向中小企业应用。但是它开发速度快,拥有庞大的客户群,所以COM技术得到了广泛的应用。然后结合基于EJB的电子商务系统开发实例,分析了J2EE平台的组件软件的开发特点。在J2EE平台上,EJB划分了组件类型,因而对设计模式提供更好的支持,而且突破平台的限制,所以它具有良好的性能和扩展性,一般面向大型应用领域。但是EJB对组件开发者要求较高,缺乏好的开发工具的支持,所以开发速度相对缓慢。 这两种组件软件具有CBD的共同性质。从软件工程的角度:CBD的关键和难点在于管理已有资源,如何部件开发人员进行软部件的开发。从系统分析的角度,CBD的关键在于域分析。从横向纵向的角度分析出域之间和域内部可重用的元素,以便于部件的开发并重用到不同的项目中。从系统设计的角度:如何设计可重用、易扩展的部件是CBD的关键所在。从系统实现技术角度:目前有三种主流的组件模型,各有优缺点和适用条件,这要求部件开发人员掌握多项技能,不断地积累开发经验。 微软.Net推出的以及SUN发布新的EJB规范将会推动着组件技术向更高的层次发展。组件软件工程的不断成熟,组件市场的不断扩大,基于组件的软件开发在未来的软件开发中发挥更加重要的作用。