


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机的软件发展 一一 软软件件复复用用 软件复用的概念是在1968 年 NATO 软件工程会议上被第一次引入的 在其后的几十年中 进行了许多复用技术的研究和实践活动 但因技术和非技术方面的种种因素 造成复用技术在整 体上对软件产业的影响不尽人意 面向对象方法和技术的出现及成熟 为软件复用提供了强有力 的技术支持 尤其是软件构件技术的发展为其注入了新的活力 使得软件复用研究重新成为热点 被视为解决软件危机 提高软件生产效率和质量的一个现实可行的途径 同时也成为了避免软件 开发中重复劳动的解决方案 并在一定程度上降低了软件开发的费用 目前 软件复用技术主要 从两个方面来考虑 产品复用 过程复用 产品复用 所谓产品复用是指复用已有的软件产品 目前基于构件的和面向服务的软件开发 模式就是建立在这种软件复用的基础上的 这两种开发模式主要通过对现有的构件和服务进行合 成或集成 从而生成所需要软件的过程 产品的复用是目前软件复用技术研究的焦点 在这个复 用的过程中涉及到的关键技术是构件技术和软件架构技术 在成熟的构件和架构的技术上 可以 使产品复用达到良好的效果 二二 面面向向对对象象系系统统分分析析 OOA 阶阶段段软软件件复复用用模模型型 1 OOA 阶段可重用性的本质 编程阶段不同类型的编程软件和类有不同深度的可重用性 高深度 中深度 低深度 所谓高深度重用是指在不进行任何改变就可以直接使用重用产品的重用 像可视化开发工具 中的所有控件 就属于这方面的重用 目前 面向服务的软件开发技术中对服务的重用 只要程 序员获得服务者提供的接口 就可以直接使用别人开发的产品 这种复用也是高深度的复用技术 因此高深度的软件复用 可重用性最好 所谓中深度的重用 程序员可以根据自己的开发经验 开发出一些比较通用的组件 在具体的使用中 对这些通用的组件只要稍作修改就可以应用于具 体的项目中去 这种复用可重用性较好 当然 对于低深度的可重用性就于具体的项目相关 它 只能局限于该项目 可重用性最差 由此可见 可重用性与业务逻辑的相关性是成反比例关系的 越是与业务逻辑无关的重用 重用性越好 反之则越差 2 OOA 阶段软件复用模型研究 OOA 阶段的软件复用 在一定程度上可以说是建立在许多优秀的系统分析员实践和经验基础 之上的复用 是一种思想上的复用 在这个阶段的软件复用更具有通用性和重用性 因此 构造 这个阶段的软件复用模型 可以使复用达到更好地效果 3 范式抽象 所谓范式就是抽象的解决方案模板 它可在不同具体项目中使用 范式抽象就是在此基础上 提出的对范式的设计方法 针对不同的问题域 就应该有与之对应的设计方法 这样可以使范式 的设计达到很高的重用性 针对OOA 阶段具体现状 有三种范式抽象方法 1 关系抽象 在 OOA 阶段 针对具体的项目 会分析出大量的关系模型 例如在学校排课表系统中 需 要定义教师类 它包括教师姓名 性别 职称等有关教师的基本信息 同时 为了便于教师很快 得出自己的上课表 还需要定义一个与教师对应的教师课表类 这个类显示了一周中教师的课程 安排情况 在网上购物系统中 需要定义一个购物者类 包括了购物者的相关信息 同时为了得 到购物者所购的物品 还需定义一个购物车类 该类描述了购物者与所购买的物品的对应关系 这两个系统的具体业务是不同的 但教师类与教师课表类 购物者类与购物车类的关系却是基本 相同的 都是一个实体对另一个实体的拥有关系 同样 所进行的操作也基本相同 诸如都涉及 到对所拥有实体的查询操作等 因此可将这种关系抽象出来 定义为拥有关系 然后在此关系的 基础上定义相应的操作 这种关系就可以以范式的形式保存起来 在不同的项目中都可重用这种 范式 同样 还可抽象出许多其他的关系范式 如实体 内容关系 上下级关系等 这些 关系都是不依赖于具体的项目和业务的 可重复使用 只是在针对具体的业务时 在相关属性和 方法上稍作修改就可以了 2 相似对象抽象 在不同项目的OOA 阶段 还会分析出大量的相似对象或类 例如用户 用户组 角色 权 限等在所有涉及到权限管理的系统中都会出现这类对象 在一些相同领域的项目中 由于涉及 的领域的标准化 有些对象的相似性以及相同的机率会更大 对于这些相似程度如此大的对象来 说 由于其在项目开发中的相对独立性 把这些对象模型以范式的形式保存起来会使分析的结果 得到更大的重用 按照上述思想进行的范式抽象称为相似对象抽象 这种抽象依据的是分析阶段的对象模型 这种对象模型具有独立的 高度的相似性 抽象出来的范式可称为对象范式 这种范式与具体项 目之间的相似可称为表面相似性 表面相似越接近 范式的重用性就越大 3 领域抽象 所谓领域抽象是用于某一领域的抽象问题的解决方案 在同一个领域的项目开发过程中往往 能够总结出更多的相似性 包括关系相似性和表面相似性 将二者相结合 可构建出与行业有关 的构件 这种构件是建立在具体领域上的一种抽象 称为领域抽象 领域抽象的过程可借助领域 工程的知识和方法 其中在OOA 阶段主要用到了领域分析的方法 所谓领域分析是被称为领 域工程更大的学科中的第一项技术活动 当业务 系统或产品域被定义为长期的业务策略 则可 以展开持续的创建强健的可复用库的工作 其目标是能够在领域中以非常高的可复用构件率来创 建软件 领域分析在领域抽象过程的作用是从OOA 得出的对象 关系 行为模型的抽象出与 领域相关的领域范式 其中包括关系范式 相似对象范式和处理过程范式等 这些范式与前面提 到的范式唯一不同就是有了特定领域的标识 这在同一领域的开发中将达到高度的重用性 三三 总总结结 本文通过对软件复用技术的分析 提出了一种面向对象系统分析阶段软件复用的模型 并对 此模型中所涉及到范式抽象方法做了探讨 并把它们应用于具体的项目中去 从而很好地利用的 设计思想 大大提高了项目的完成速度 另外 对于范式库的研究也为建立在高层上的软件复用 库管理提出了新的研究课题 例如对于编码阶段复用构件库的检索条件也可以扩展为以范式为索 引的检索等 这些都成为下一步的研究课题 参考文献 1 Roger S Pressman 著 黄柏素 梅宏译 软件工程实践者的研究方法 机械工业 出版社 1999 年版 2 黄靖 赵海光 软件复用 软件合成与软件集成 计算机应用研究 2004 年 3 王丽娟
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中级财务会计(河南财经政法大学)知到智慧树答案
- 死因监测培训试题及答案
- 2025大连安居客平台全程监管下的二手房买卖合同
- 2025年度绿色金融垫资撤押贷款合同及碳排放权抵押担保协议
- 2025版蔬菜种植与农产品电商平台合作合同
- 2025年新型农业灌溉系统安装与运营管理合同
- 2025年水利工程桩基施工与生态修复合同
- 2025版跨境电商合作万能合同范本
- 数据驱动的实时监控与异常检测-洞察及研究
- 2025二手公寓房买卖及贷款担保与房屋租赁服务合同
- 2025年学历类自考专业(学前教育)学前儿童发展-学前教育原理参考题库含答案解析(5套)
- 日本设备销售合同范本
- 2025年芜湖市鸠江区医院招聘16名工作人员笔试参考题库附答案解析
- T-CBDA 86-2025 建筑幕墙、采光顶及金属屋面工程质量验收标准
- 厨房消防安全培训
- 小陈 税务风险应对常见指标与答复思路
- 2025年《中华人民共和国档案法》知识培训试题及答案
- 2025至2030年中国建筑膜行业市场调查研究及发展趋势预测报告
- 变电站新员工培训课件
- 《海上风电场工程测量规程》(NB-T 10104-2018)
- 2021年成都中医药大学辅导员招聘笔试试题及答案解析
评论
0/150
提交评论