




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第1010章章 软件复用软件复用中南大学医药信息系管理信息系统中南大学医药信息系编码与测试主要内容中南大学医药信息系编码与测试中南大学医药信息系编码与测试中南大学医药信息系编码与测试复用具有许多明显的优点,但目前应用不广泛的主要原因是:复用具有许多明显的优点,但目前应用不广泛的主要原因是: (1)技术因素技术因素 构件与应用系统之间的差异;构件与应用系统之间的差异; 构件要达到一定的规模,才能支持有效的复用;构件要达到一定的规模,才能支持有效的复用; 发现合用构件的困难;发现合用构件的困难; 基于复用的软件开发方法和软件过程需要一些新的理论、技基于复用的软件开发方法和软件过程需要一些新的理论
2、、技术及支持环境。术及支持环境。(2)人的因素人的因素喜欢自己创造而不喜欢使用别人的东西。喜欢自己创造而不喜欢使用别人的东西。(4)教育因素教育因素软件科学技术的教育与培训中,缺乏关于软件复软件科学技术的教育与培训中,缺乏关于软件复用的内容,缺少专门教材和课程。用的内容,缺少专门教材和课程。(3)管理因素管理因素把复用构件和一般软件构件同等看待,把复用看把复用构件和一般软件构件同等看待,把复用看作可有可无的事。作可有可无的事。中南大学医药信息系编码与测试中南大学医药信息系编码与测试中南大学医药信息系编码与测试中南大学医药信息系编码与测试中南大学医药信息系编码与测试中南大学医药信息系编码与测试n
3、 领域分析领域分析(Domain Analysis)是对一类应用系统的是对一类应用系统的共同应用领域进行系统化分析,以发现该领域共同应用领域进行系统化分析,以发现该领域的共同知识、需求及其应用系统的共同特征。的共同知识、需求及其应用系统的共同特征。 领域分析又称作领域工程领域分析又称作领域工程(Domain Engineering),是软件工程的发展与延伸。,是软件工程的发展与延伸。领域分析是一项比系统分析更难的工作。领域分析是一项比系统分析更难的工作。领域分析方法可采用结构化方法和面向对象方领域分析方法可采用结构化方法和面向对象方法,而后者将成为主流。法,而后者将成为主流。 领域分析是对特定
4、应用领域中共同的特征、知识、需求领域分析是对特定应用领域中共同的特征、知识、需求的标识、分析和规约。领域分析是特定领域内软件重用的基的标识、分析和规约。领域分析是特定领域内软件重用的基础,它的目标就是:发现和挖掘在特定领域内可以被复用的础,它的目标就是:发现和挖掘在特定领域内可以被复用的构件。领域分析活动中输入和输出如图所示:构件。领域分析活动中输入和输出如图所示:领域分析领域分析输入信息输入信息技术文献技术文献已有应用已有应用专家经验专家经验/ /建议建议当前与未来的需求当前与未来的需求输出信息输出信息领域语言领域语言复用标准复用标准分类方法分类方法功能功能/行为模型行为模型领域分析的输入和
5、输出领域分析不是针对某个特定的软件系统,而是领域分析不是针对某个特定的软件系统,而是针对一类软针对一类软件系统件系统的共同的特征、知识和需求的共同的特征、知识和需求。比需求分析更一般、更抽比需求分析更一般、更抽象、更广泛的特征。象、更广泛的特征。 中南大学医药信息系编码与测试中南大学医药信息系编码与测试中南大学医药信息系编码与测试中南大学医药信息系编码与测试中南大学医药信息系编码与测试构件库构件库(Component Library)用于对可复用构件进行存用于对可复用构件进行存储和管理。它是支持软件复用的必要设施。构件库必须有大储和管理。它是支持软件复用的必要设施。构件库必须有大量的可复用构件
6、。量的可复用构件。构件库系统应提供的主要功能:构件的存储、管理、检构件库系统应提供的主要功能:构件的存储、管理、检索以及库的浏览与维护等。索以及库的浏览与维护等。关键是支持使用者高效而准确地发现所需的可复用构件。关键是支持使用者高效而准确地发现所需的可复用构件。相关的主要技术是分类方法和检索方法。相关的主要技术是分类方法和检索方法。支持方便的、友好的用户管理和使用界面。支持方便的、友好的用户管理和使用界面。构件分类构件分类构件检索构件检索大多数的构件分类模式可以归纳为以下三种类型:大多数的构件分类模式可以归纳为以下三种类型: 1 1)枚举分类)枚举分类通过定义一个层次结构来对构件进行分类。构件
7、库中的可通过定义一个层次结构来对构件进行分类。构件库中的可复用构件按照某种标准被分成了若干个大类,而每个大类中的复用构件按照某种标准被分成了若干个大类,而每个大类中的构件再被划分成若干个小类,依此类推,这样就形成了一个构构件再被划分成若干个小类,依此类推,这样就形成了一个构件分类的层次结构,件分类的层次结构, 图形用户界面类图形用户界面类窗口类窗口类菜单类菜单类图形窗图形窗口构件口构件文字窗文字窗口构件口构件系统菜系统菜单构件单构件弹出式菜弹出式菜单构件单构件普通菜普通菜单构件单构件枚举分类的层次结构(1 1)构件的分类)构件的分类2 2)刻面分类)刻面分类一个刻面描述构件某一个方面的特征。刻
8、面分类则是从不一个刻面描述构件某一个方面的特征。刻面分类则是从不同的侧面对构件进行分类,每一种分类方式称为一个刻面。不同的侧面对构件进行分类,每一种分类方式称为一个刻面。不同的刻面根据其重要性可以设置不同的优先级。同的刻面根据其重要性可以设置不同的优先级。刻面刻面应用领域应用领域对象对象功能功能编程语言编程语言刻面值刻面值图形用户界面编程图形用户界面编程菜单菜单动态修改菜单项动态修改菜单项JAVA对构件的每个刻面赋予相应的值,用以描述该构件。刻面对构件的每个刻面赋予相应的值,用以描述该构件。刻面分类具有较好的灵活性,易于加入新的刻面值,因此刻面分类分类具有较好的灵活性,易于加入新的刻面值,因此
9、刻面分类比枚举分类更易于扩展和修改。比枚举分类更易于扩展和修改。该方法首先是为构件库中的所有构件定义一组属性,并赋该方法首先是为构件库中的所有构件定义一组属性,并赋予相应的属性值。开发人员通过指定一组属性值在构件库中对予相应的属性值。开发人员通过指定一组属性值在构件库中对构件进行检索。构件进行检索。 刻面分类法刻面分类法(Faceted Classification):支持多重观点对构件进行分类,例如从构件的应用领域、构支持多重观点对构件进行分类,例如从构件的应用领域、构件所描述的对象、构件的观点和编程语言等不同的方式来分类。件所描述的对象、构件的观点和编程语言等不同的方式来分类。 每一种分类
10、方式称为一个刻面。每一种分类方式称为一个刻面。 每个刻面把构件集合划分为一个子集,各刻面所划分的子集每个刻面把构件集合划分为一个子集,各刻面所划分的子集形成一些较小的交集。形成一些较小的交集。 一个构件对每个刻面有一个刻面值,例如:一个构件对每个刻面有一个刻面值,例如:应用领域应用领域 = = 计算机绘图计算机绘图 对象对象 = = 椭圆椭圆功能功能 彩色填充,彩色填充, 编程语言编程语言 = C+= C+检索一个构件时,给出一组刻面值,将确定一组检索一个构件时,给出一组刻面值,将确定一组子集合,构件应该在这些子结合的交集中,从其中确子集合,构件应该在这些子结合的交集中,从其中确认所需的构件就
11、比较容易。认所需的构件就比较容易。构件可用属性描述,例如构件类型、开发单位、构件可用属性描述,例如构件类型、开发单位、作者、提交日期等属性。检索时通过构件的属性可以作者、提交日期等属性。检索时通过构件的属性可以缩小搜索范围。缩小搜索范围。刻面和属性都不涉及构件内部实现,只是为了便刻面和属性都不涉及构件内部实现,只是为了便于构件的管理、检索和使用。如果把构件比作一只箱于构件的管理、检索和使用。如果把构件比作一只箱子,其内容如同箱子中装的东西,刻面和属性则如同子,其内容如同箱子中装的东西,刻面和属性则如同箱子外边的标签。箱子外边的标签。刻面分类法可以看作层次分类法的扩充刻面分类法可以看作层次分类法
12、的扩充。中南大学医药信息系编码与测试构件库中检索一个构件和在数据库中检索一个记录是不同构件库中检索一个构件和在数据库中检索一个记录是不同的。的。构件库检索的不确定性带来两种相互矛盾的结果:检索的构件库检索的不确定性带来两种相互矛盾的结果:检索的结果可能是一个较大的构件集合,要从中找到所需的构件仍然结果可能是一个较大的构件集合,要从中找到所需的构件仍然很费力;检索得到的集合没有把真正需要的构件包括在内。很费力;检索得到的集合没有把真正需要的构件包括在内。解决方法:解决方法: ( (一一) )一般构件库系统能对提出的检索条件作广义解释。一般构件库系统能对提出的检索条件作广义解释。建立同义词对照表,
13、例如建立同义词对照表,例如“商品销售商品销售”、“售货售货”、“卖卖货货”看作一组同义词;看作一组同义词; 建立近意词对照表,例如把建立近意词对照表,例如把“商业商业”、“商场商场”、“连锁连锁店店”看作一组近意词。看作一组近意词。 系统首先匹配同义词,再匹配近意词,都可以被包括到广系统首先匹配同义词,再匹配近意词,都可以被包括到广义结果集合中。义结果集合中。(2)构件检索)构件检索(二二)使检索得到的构件集合尽可能不包括对用户无用的构件。使检索得到的构件集合尽可能不包括对用户无用的构件。增加更多的刻面与构件属性:较多的刻面和属性值,将得增加更多的刻面与构件属性:较多的刻面和属性值,将得到更小
14、的子集合文集,减轻最终发现和确认所需构件的难度;到更小的子集合文集,减轻最终发现和确认所需构件的难度; 建立构件关键词:根据构件内容提炼关键词,如同学术论建立构件关键词:根据构件内容提炼关键词,如同学术论文的关键词,反映有关构件内容的一些主要信息。文的关键词,反映有关构件内容的一些主要信息。 例如,找功能构件的关键词有例如,找功能构件的关键词有“压入压入”、“弹出弹出”、“后后进先出进先出”等等。如果通过刻面和构件属性得到的构件子集较大,等等。如果通过刻面和构件属性得到的构件子集较大,可用关键词作进一步的检索,以缩小搜索范围。可用关键词作进一步的检索,以缩小搜索范围。改进构件检索的其它措施:改进构件检索的其它措施: (1)(1)记录用户使用构件库的经验,并根据这些
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 劳动人力培训
- 高开发强度地区的耕地保护集聚区划定研究-以珠三角为例
- 指向深度学习的高中地理单元复习课教学研究
- 拉康三界理论视域下《舒吉·贝恩》中的自我建构研究
- DB43∕T 1767-2020 森林康养培育技术规程
- 家校合作对中小学生欺凌行为的影响
- 工程项目环境适应性分析
- 结合体验式教学的高中物理整体性情境教学模式研究-以必修一“相互作用”单元为例
- (高清版)DB13∕T 453-2001 无公害蔬菜生产农药使用准则
- 信息战争基础知识课件
- 2023年盐城市阜宁县人民医院医护人员招聘笔试题库及答案解析
- 毕业论文答辩
- 染缸操作规范
- (品管圈)良肢位摆放演示教学课件
- 园林绿化及广场施工方案
- 可下载打印的公司章程
- 129平米全包装修报价明细表
- 企业陪跑服务协议书
- GB∕T 30027-2021 起重用钢制短环链 手动链式葫芦用高精度链 VH级
- 2021年吉林财经大学教师招聘笔试题目及答案
- --水库除险加固工程下闸蓄水验收建设管理工作报告
评论
0/150
提交评论