|
知识路径: > 系统开发基础知识 > 基于构件的开发 > 构件的概念与分类 > 构件与软件重用 >
|
被考次数:4次
被考频率:中频率
总体答错率:60%  
知识难度系数:
|
由 软考在线 用户真实做题大数据统计生成
|
相关知识点:8个
|
|
|
|
对大量的构件进行有效的管理,以方便构件的存储、检索和提取,是成功重用构件的必要保证。构件管理的内容包括构件描述、构件分类、构件库组织、人员及权限管理和用户意见反馈等。
|
|
|
构件模型是对构件本质的抽象描述,主要是为构件的开发与构件的重用提供依据;
|
|
|
从管理角度出发,也需要对构件进行描述,例如,实现方式、实现体、注释、生产者、生产日期、大小、价格、版本和关联构件等信息,它们与构件模型共同组成了对构件的完整描述。
|
|
|
|
为了给使用者在查询构件时提供方便,同时也为了更好地重用构件,我们必须对收集和开发的构件进行分类,并置于构件库的适当位置。构件的分类方法及相应的库结构对构件的检索和理解有极为深刻的影响。因此,构件库的组织应方便构件的存储和检索。
|
|
|
|
(1)支持构件库的各种维护动作,如增加、删除以及修改构件,尽量不要影响构件库的结构。
|
|
|
(2)不仅要支持精确匹配,还要支持相似构件的查找。
|
|
|
(3)不仅能进行简单的语法匹配,而且能够查找在功能或行为方面等价或相似的构件。
|
|
|
(4)对应用领域具有较强的描述能力和较好的描述精度。
|
|
|
|
目前,已有的构件分类方法可以归纳为三大类,分别是关键字分类法、刻面分类法和超文本组织方法。
|
|
|
(1)关键字分类法(keyword classification):根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树形或有向无回路图结构。每个概念用一个描述性关键字表示。不可分解的原子级关键字包含隶属于它的某些构件。当加入构件时,库管理员必须对构件的功能或行为进行分析,在浏览上述关键字分类结构的同时,将构件置于最合适的原子级关键字之下。如果无法找到构件的属主关键字,可以扩充现有的关键字分类结构,引进新的关键字。但库管理员必须保证新关键字有相同的领域分析结果作为支持。
|
|
|
(2)刻面分类法(faceted classification):定义若干用于刻画构件特征的“面”(facet),每个面包含若干概念,这些概念描述构件在面上的特征。刻面可以描述构件执行的功能、被操作的数据、构件应用的语境或任意其他特征。描述构件的刻面的集合称为刻面描述符(facet descriptor),通常,刻面描述被限定不超过7或8个刻面。
|
|
|
关键字分类法和刻面分类法都是以数据库系统作为实现背景的。尽管关系数据库可供选用,但面向对象数据库更适于实现构件库,因为其中的复合对象、多重继承等机制与表格相比更适合描述构件及其相互关系。
|
|
|
(3)超文本方法(hypertext classification):与基于数据库系统的构件库组织方法不同,它基于全文检索技术。其主要思想是:所有构件必须辅以详尽的功能或行为说明文档;说明中出现的重要概念或构件以网状链接方式相互连接;检索者在阅读文档的过程中可按照人类的联想思维方式任意跳转到包含相关概念或构件的文档;全文检索系统将用户给出的关键字与说明文档中的文字进行匹配,实现构件的浏览式检索。超文本是一种非线性的网状信息组织方法,它以结点为基本单位,链作为结点之间的联想式关联。超文本组织方法为构造构件和重用构件提供了友好、直观的多媒体方式。由于网状结构比较自由、松散,因此,超文本方法比前两种方法更易于修改构件库的结构。
|
|
|
|
如果把软件系统看成构件的集合,那么从构件的外部形态来看,构成一个系统的构件可分为5类:
|
|
|
(1)独立而成熟的构件。独立而成熟的构件得到了实际运行环境的多次检验,该类构件隐藏了所有接口,用户只需用规定好的命令进行使用。例如,数据库管理系统和操作系统等。
|
|
|
(2)有限制的构件。有限制的构件提供了接口,指出了使用的条件和前提,这种构件在装配时,会产生资源冲突、覆盖等影响,在使用时需要加以测试。例如,各种面向对象程序设计语言中的基础类库等。
|
|
|
(3)适应性构件。适应性构件进行了包装或使用了接口技术,处理了不兼容性、资源冲突等,可以直接使用。这种构件可以不加修改地使用在各种环境中,例如ActiveX等。
|
|
|
(4)装配的构件。装配的构件在安装时,已经装配在操作系统、数据库管理系统或信息系统不同层次上,使用胶水代码(glue code)就可以进行连接使用。目前一些软件商提供的大多数软件产品都属这一类。
|
|
|
(5)可修改的构件。可修改的构件可以进行版本替换。如果对原构件修改错误、增加新功能,可以利用重新“包装”或写接口来实现构件的替换。这种构件在应用系统开发中使用得比较多。
|
|
|
|
构件库系统是一个开放的公共构件共享机制,任何使用者都可以通过网络访问构件库,这在为使用者带来便利的同时,也给系统的安全性带来了一定的风险,因此有必要对不同使用者的访问权限作出适当的限制,以保证数据安全。
|
|
|
一般来讲,构件库系统可包括5类用户,即注册用户、公共用户、构件提交者、一般系统管理员和超级系统管理员。他们对构件库分别有不同的职责和权限,这些人员相互协作,共同维护着构件库系统的正常运作。同时,系统为每一种操作定义一个权限,包括提交构件、管理构件、查询构件及下载构件。每一用户可被赋予一项或多项操作权限,这些操作权限组合形成该人员的权限,从而支持对操作的分工,为权限分配提供了灵活性。
|
|
|