基于构件软件开发实践.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于构件软件开发实践

基于构件软件开发实践   [摘要]基于构件的软件开发方法与传统的面向过程、面向对象的软件开发方法相比,具有良好的适应性、灵活性和易维护性,能较好地支持软件复用。   [关键词]软件重用构件实现软件开发   中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)1110085-01      一、构件软件开发过程      基于构件的软件开发(CBSD)通过整合已有的构件来完成大型软件系统的开发,其核心就是构件级的可重用。CBSD通过提高系统的可扩展性和可维护性来减少软件开发的费用,更快的整合系统,并能有效的降低大型系统的维护和升级压力。应用系统的软件构造过程包括分析构件、设计构件、实现构件和组装构件。   CBSD的理论基础是在大型软件系统中有相当的部分会重复出现,这些共同的部分应该通过构件组合起来,而不是一遍一遍的重写。   在CBSD中,通过写代码来构建系统让位于使用已有的构件来装配和整合系统。在传统的软件开发模式中,系统整合往往是系统实现的收尾阶段的任务。在基于构件的软件开发中则相反,整合处于整个开发过程的核心地位。正因如此,决定构件的获得、重用和使用的关键在于它能否与其它构件整合在一起。   (一)构件选取。构件选取是将过去开发的组件按照适合新系统的原则选取出来的过程。也可以是在构件交易中购买合适构件的过程。这个过程甚至延伸到开发构件和维护构件的质量保证。   构件选取包括两个阶段:发现阶段和评估阶段。在发现阶段,构件将会被明确属性。如构件的功能(能提供什么样的服务),构件的接口(使用的方法)。这些属性还应包括一些不能孤立看待的要求,如构件的可靠性、可用性、可扩展性。在有些情况下也要考虑构件的非技术特性,如提供者的市场占有率,构件开发组织的过程和成熟度等。   在评估方面,现在已经有了好多种成熟的评估方法。例如Standards Organization(ISO)描述的产品评估的通用标准,以及IEEE的特定域的构件评价技术,还有适用于特定问题域的技术。这些方法都是基于一定的构件研究理论产生的解决构件质量评估的方法。但就构件评价技术本身来说是不确定的,这是使用难以互相比较的标准,不明确的系统期望,不精??的评价方法以及构件的快速修改造成的。   (二)构件的调整。由于单个的构件是为了完成特定的需求,基于不同的上下文假设。因此构件在应用于新系统之前需要调整。必须将构件之间的冲突降低到最小。常用的方法包括:(1)白盒法。用户可以通过修改构件的源码使构件能与其他构件相互作用。该方法可以对构件的特性进行细致的控制,但修改源码可能会导致维护和升级问题。(2)黑盒法。用户可以得到构件的二进制可执行形式,构件没有提供扩展机制或API。(3)灰盒法。源码不可以修改,但提供了构件自身的扩展机制或可编程接口(API)。      二、系统的实现      (一)系统中的构件实现   软件工程网络课堂教学系统的开发环境为前台开发选择ASP,后台采用SQL Server 2000数据库,构件模型通过B/S构架的三层体系结构(表示层、业务逻辑层和数据访问层)实现。   现以课件构件的开发过程为例,说明一个构件中的用户界面/表示层、功能/业务逻辑层和数据访问层的实现。   1.课件上传构件的用户界面层实现。表示层的用户界面可分成动态和静态两种。通过Dreamweave的模板实现静态界面功能,通过ASP技术生成动态页面。动态页面中常见的动作是:解释用户请求;分发这些请求到相应的业务逻辑;选择下一个显示视图;生成和传送下一个视图给用户。   2.课件上传构件的功能/业务逻辑层实现。课件上传的业务逻辑层的作用是将用户上传的文件存入数据库,并将与文件相关的说明在用户界面层上显示出来。出于系统安全性的考虑,在构件设计时,对文件格式进行了限制,只能上传RAR压缩文件,并按照上传时间以?“年+月+日+分+秒”的数字组合为文件重新命名,这将有效避免文件重名。   该层实现上使用VBScript脚本语言构造了一个类模块(add.asp)。该类包括如下属性:MMtitle(课件标题)、MMteacher(上传用户(系统自动生成))、MMunit(所属章节)、MMdiscrib(内容说明)、set upload(上传路径)、set file(存储路径(系统自动生成))。   3.课件上传构件的数据访问层实现。在系统数据库的开发过程中,为了方便今后数据库的维护与重用,将其具体功能如查询、插入等操作封装到一个构件(kejian.asp)中。      (二)基于构件的系统组装   1.原子构件的组装。现以课件上传构件为例,说明原子构件的组装过程。原子构件组装的思想是将构件模型中涉及到的三个层次组装成构件

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档