本文转载自微信公众号《电脑世界》,作者BobLewis。转载本文请联系电脑世界公众号。如果用一个词来形容企业的技术架构,那就是“非常复杂”。好吧,这是两个词,但大多数技术架构确实很复杂。要弄清楚如何简化和改进它们?我们需要多重复几次“非常”,也就是非常非常非常复杂。当事情变得复杂或令人费解时,有助于在制定改进计划之前将事情分解。这篇文章是关于如何去做的,将帮助您消除一些“复杂性”,这样您就可以制定一个实用的策略来确保您公司的技术架构最好地服务于业务。拆解技术架构技术架构可以分解为三个组件及其子组件:应用程序:记录系统、接口和集成以及附属应用程序。数据:结构化和非结构化。技术:设施、基础设施和平台。然而,要从这里制定一个改进技术架构的有效计划,您需要解决每个组合和子组合中每个组件的配置,即它需要如何更改和实现其配置优先级。具体细节取决于您使用的投资组合和子投资组合。在这里,我们将分解并自下而上地讲述。在改进您的技术架构时,设备和基础设施优先级应该始终是您的首要任务。使用流程、框架和标准,根据依赖每个组件的应用程序的数量,对每个组件的健康状况和重要性进行评分。每个组件的优先级指数是通过将健康状况乘以重要性分数来计算的。结果可视化为热图,其中组件越红,其优先级越高。接下来是处置工作。对于设备和基础设施,您的处置选项包括:退役:虽然不太可能,但您可能会发现未使用的设备或基础设施。关闭它们,停止使用它们,并取消它们的所有租约或支持合同。更新:您可能会发现设备或基础设施的组件已过时、不受支持或需要更新到产品的最新版本。请更新它们。更换:您可能会发现一个过时的、不受支持的组件,如果您认为即使使用更新的版本它也无法工作,请停止使用它并用功能等效但更健康的产品替换它。合并:技术架构通常具有冗余设备或基础架构组件。尤其是在合并或收购之后,多个数据中心或网络通常会带来整合机会。您现在清楚地知道设备和基础设施最紧迫的问题是什么以及如何处理这种情况。平台以不同于设备和基础设施的方式对平台进行优先级排序和部署,因为平台之间存在更多的相互依赖关系,处理这种复杂性的一个好方法是定义每个堆栈。堆栈是指至少一个应用程序使用的平台组合,包括服务器操作系统、开发环境(包括库)、DBMS、CMS(内容管理系统)、Web服务器和支持浏览器(假设应用程序的UI是通过浏览器打开)和运行各种平台的操作系统。值得注意的是,堆栈是递归的:也就是说,平台可以放在其他平台之上。还值得注意的是,某些应用程序也可以是平台。例如,SharePoint是一个应用程序,但它也可以用作构建自定义应用程序的开发环境。优先级:堆栈的健康状况是其组件健康状况的平均值,可以使用流程、框架和抽样标准对其进行评分。它的优先级是什么?对此没有万无一失的“最佳实践”。降低复杂性的一种方法是确定如果对不健康的平台进行修复,是否可以最大限度地改进堆栈。为了说明这一点,假设您在技术架构中定义了60个堆栈,并假设生产中运行状况最差的平台是WindowsServer2003,并假定它的运行状况评分为-1.5。在这个假设的示例中,如果您将他们的评级提高到+2,这会将14层从-1移动到0,将6层从0移动到+1。这表明通过修复Windows2003Server可以改进22个堆栈。Windows2003Server的优先级指数是60个改进堆栈中的20个,即0.33。对每个平台组件重复此操作,您就有了一种确定平台优先级的实用方法。配置-平台配置类似于为设备和基础设施定义的配置:退休:虽然不太可能,但您可能会识别未使用的平台。关闭它们,停止使用它们,并确保取消它们的许可协议和支持合同。更新:您可能会发现平台不受支持或已过时,请将它们升级到最新版本。替换:发现一个过时的、不受支持的平台,或者您认为升级到该平台的较新版本不可行的平台是很常见的。扔掉它并用功能相同但更健康的替代品取而代之。整合:不使用冗余平台的技术架构很少见。在服务器操作系统、数据库管理系统、集成开发环境等中,选择健康评级最高的作为公司标准,并将其余部分迁移到这些标准,提供了大量简化和改进的机会。作者:BobLewis,专栏作家原文网址:http://www.cio.com/article/3640510/the-secret-art-of-technical-architecture-improvement.html
