软件架构非功能需求——可复用性

是什么

可复用性指软件的整体或其中一部分可以在其他软件的开发过程中重复使用的能力。

可复用性表现在两个方面:一个是重复使用现有代码的软件开发;另一个是以重复使用为目的的软件开发。

  • 重复使用现有代码的软件开发

重复使用现有代码的软件开发指在开发过程中重复使用项目内的既有模块、以往项目的模块和各种库等。将可重复使用的现有代码直接或变形后整合至正在开发的软件中。

  • 以重复使用为目的的软件开发

以重复使用为目的的软件开发指在当前软件开发中创造出来可供未来项目重复使用的模块。为其他软件提供可重复使用的模块是这类软件开发的目的。

为什么

为了提高软件开发的效率和软件质量,我们应该尽量避免从零开发。也就是说,从其他地方借用代码是最好的选择。

重复使用现有代码可以让我们少编写一些代码,降低软件开发的成本,缩短周期。同时,使用已取得成绩的成熟模块能够提高软件的质量。

怎么做

如果是重复使用现有代码的软件开发,我们就要设计出能作为现有结构或模块插件使用的软件架构。

这么做是为了支持软件合成。软件合成指通过利用现有模块来组成软件。为达到这一目的,我们需要实现能够作为黏合剂使用的模块,从而使现有模块适应当前的开发需求。

如果是以重复使用为目的的软件开发,我们就要设计出能将自给自足部分从正在开发的软件中分离出来的软件架构。自给自足的部分要能在不进行任何修改的情况下直接被其他系统使用。这部分最好能做成可独立构建的模块或包。

重复使用的“三之法则”

  • 三倍难度法则

该法则指开发可重复使用的模块的难度是开发在单一软件中使用的模块的难度的三倍。

在开发可重复使用的模块时,程序员需要考虑一般化问题的处理。除了模块自身要做到一般化,模块的测试也必须能在普通实例中使用。

因此,模块的可复用性越高,复杂度就越高,对想象力的要求也就越高。整个过程的难度陡然提升。在设计方面,我们必须考虑“什么是一般化问题”;在编程和测试方面,我们还需要考虑“如何处理一般化问题”。

  •        三种测试法则

该法则指可重复使用的模块在共享之前需要在三个不同的软件中通过测试。

可重复使用的模块不能满足于解决当前面对的问题,解决更加一般化的问题才是这些模块要达到的目标。

然而,在开发模块时,我们很难将一般化问题想的足够全面,很多问题只有在实践中才会暴露出来。

因此,我们不可能一开始就做出完美的一般化模块。比较明智的做法是先发开出原型,然后把它放到实际的问题领域中不断完善。所以,用于重复使用的模块在开发完成之后,最少要在三个问题领域中进行测试。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据中心需求分析报告---v1 项目概述 项目背景 "十二五"是我国经济结构战略调整和转变经济发展方式的重要时期,产业结构、收入分配结构和消费结构面临重大调整,国民收入和消费水平逐步提高,我国将全面进入机动化社会,交通规模快速扩张,交通出行安全、便捷、快速的需求日益增长,交通监测、管理和服务面临着巨大的压力。 交通运输部《交通运输"十二五"发展规划》中明确提出,需要"完善部省两级数据中心体系,提升行业数据服务能力。完善交通行业信息资源目录体系建设,结合重大工程和核心业务系统建设,健全和完善行业基础信息资源数据库;完善部省两级数据交换平台,满足行业数据交换和共享要求;建设运行维护综合管理平台,实现数据和设施设备的维护管理。" 在部颁的《公路水路交通运输信息化"十二五"发展规划》中更是明确提出的"加快交通行业信息资源目录体系建设,完善信息共享规则、标准和机制,提高数据资源共享水平,有效避免数据重复和无效采集。完善行业基础数据库建设,结合重大工程和核心业务系统建设,健全和完善公路、港口、航道、车辆、船舶、从业人员、经营业户、建设项目等行业基础信息资源数据库,积极推进1:50000交通地理空间基础信息库建设,全面提升行业基础信息共享和服务能力。完善部省两级数据交换平台,满足行业数据交换和共享要求。建设运行维护综合管理平台,实现数据和设施设备的维护管理。" 《江苏交通运输信息化"十二五"发展规划纲要》中明确提出:以数据管理为基础。"十二五"要实现业务需求驱动下的数据管理,实现数据按需交换共享。要通过技术创新、机制创新进一步提高数据采集、更新与传输的质量,构建以全省统一基础数据库为核心的数据中心,紧密关联基础应用,形成上层综合应用的数据基础。 如何做好"信息化智能化引领综合交通发展",交通运输信息化"十三五"提出了主要的建设思想,一是构建惠民便民信息服务体系,二是打造互联互通综合管理体系,三是建立协同联动交通执法体系,四是推动综合运输体系智慧发展,五是提升交通运输宏观决策水平,六是完善网络与信息安全体系,七是增强关键技术自主创新能力,八是创新持续健康发展体制机制。其中前五项的任务都需要数据的综合支撑,如何做好十三五信息化建设的关键就在于如何管理好数据、应用好数据。 在此背景下,2014年12月,江苏省交通运输厅提出行业数据中心建设。 建设目标 数据中心的筹建,应按体系化的思想,系统地梳理信息化发展过程中的各项成果和规划任务;按总体发展的要求,整合基础设施信息、运行环境信息等多方面信息资源;按宏观应用的需要,建立综合运输体系多维度的统计数据;按共享服务的需要,建立省、市、行业之间信息交换的渠道,最终达到为数据中心建立全省统一基础资源库、多项服务能力、一套管控治理体系的项目总体目标。 构建统一的基础支持环境 完成省厅基础软硬件基础设施整合,建设统一省厅数据中心,对数据中心信息化基础设施采用计算和存储虚拟化技术,逐步实现省厅业务系统快速部署、资源的统一监控、数据中心硬件和软件系统资源复用,大大提高调配资源的灵活,初步实现计算资源、网络资源和存储资源的统一管理,完成基础支撑环境建设,为各类应用提供稳定、高效、弹、可扩展的支撑和管理平台,为今后建设全省交通专有云数据中心和灾难备份中心建设打下基础。具体包括:网络资源建设、计算资源建设、存储资源建设、备份架构建设、安全体系建设。 ——基础硬件支撑提供信息化运行的硬件支撑环境,包括网络资源、计算资源、存储资源、备份、安全以及管理服务等。 ——基础软件支撑提供信息化运行的软件支撑环境,包括数据库、应用中间件、操作系统以及应用集成服务所必须的统一用户组织权限管理、统一应用桌面框架、ESB企业服务总线。 形成基础资源库 江苏省交通运输数据中心将根据全行业信息共享和战略发展需求,基于数据架构,并结合JT/T697《交通信息基础数据元》标准,提出行业基础数据模型及共享数据模型,数据模型涵盖行业从业人员、车/船、路/航道、业户,安全、信用等数据;设计数据资源库群,建立涵盖省级交通数据资源库体系。实现行业基础、全局和战略的权威数据在省厅上收集中管理,形成江苏省交通运输行业唯一、完整、准确、及时、可用的战略数据资源。 提供多项服务能力 (1)数据采集与交换能力 建立省级信息资源目录体系和交换体系,将信息作为可交换的资源,将厅机关、行业局、地市交通主管部门、行业内大型企业等作为交换服务的对象,实现跨部门、跨领域信息共享、交换,满足和支持多部门多业务协同应用的需要。 (2)数据服务能力 通过在厅级层面汇聚的基础、规范、战略数据资源,打通因部门、地域造成的信息壁垒,合理共享信息,盘活数据资源,通过统一的主数据服务、GIS共享服务、GPS位置服务、视频服务、数据标准服务等,为业务协同、数据共享服务、其他信

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值