技术开发 频道

架构与模式(Architecture & Patterns)

    尽管有许多角度,但是从这些角度看到的只是一个企业体系结构。企业体系结构的价值不在于任何一个单独的角度,而在于各角度之间的相互关系、相互作用和相互依赖。尽管所有角度都是企业体系结构的关键元素,而本专题将集中讨论应用程序和技术角度。

    “应用程序体系结构”是自动服务的体系结构,用于支持和实现这样的业务需求,包括该业务与其他应用程序之间的接口。它描述了应用程序的结构,以及该结构如何实现组织的功能需求。虽然在理想情况下,一个组织应该只有一个应用程序体系结构,但实际上,一个组织往往会有许多不同的应用程序体系结构。
 
    软件系统的“运作”需求定义了软件的可靠性、可管理性、性能、安全性和互操作性等。常见的例子是仅对授权用户开放的服务,这种服务要求在99.999%的时间内都能正确实现它的功能。

    “技术体系结构”是支持组织以及实现运作(非功能)需求(尤其是组织的应用程序和信息体系结构)的硬件和软件基础设施的体系结构。它描述了所使用技术的结构和内部关系,以及这些技术如何支持组织的运作需求。
 
    好的技术体系结构可以提供安全性、可用性和可靠性,还可以支持各种其他运作需求。但是如果应用程序的设计没有利用技术体系结构的优点的话,它的执行效果会很差,或者会难以部署和运作。同样,即使一个优秀的应用程序体系结构是通过使用最新的技术、利用可重用软件组件来构建的,能很好地满足业务过程的需求,它也可能不能很好地反映实际的技术配置,例如:服务器没有经过正确配置来支持应用程序组件,网络硬件设置不能支持信息流等。这显示了应用程序体系结构和技术体系结构之间的相互关系:一个好的技术体系结构能够支持组织中关键的应用程序,而一个好的应用程序体系结构能够充分利用技术体系结构,在整个运作需求中提供一致的性能。

 

 

    图:体系结构之间的关系

    所有体系结构角度都有多种体系结构视图,通常分为概念、逻辑和物理视图。“概念视图”是最抽象的视图,一般用系统用户(非IT专业用户)熟悉的术语来描述。概念视图用于定义应用程序的功能需求和商业用户视图,以便生成业务模型。“逻辑视图”显示了主要的功能组件和它们在系统中的关系,而不涉及功能的实现细节。体系结构设计师创建的“应用程序模型”就是业务模型的逻辑视图,因为它们决定了如何满足业务目标和需求。应用程序模型表示应用程序体系结构的逻辑视图。“物理视图”是最不抽象的,它们表示特定的实现组件和它们之间的关系。物理视图中的每个元素一般都由设计和开发过程来实现,如软件和硬件系统。


 

    图:体系结构视图

    每一个体系结构级别均可能有(事实上通常都会有)多个视图,例如,每个应用程序通常都会有一个逻辑应用程序体系结构。这些视图由一组需求来驱动,反过来又会生成设计、开发、配置和运作过程及系统的输入。

 

    图:体系结构视图和模式
    以.NET为代表的Microsoft产品线向我们展示了“架构为基础,模式为指导”的企业解决方案设计理念,秉承微软产品一贯以来的简单易用以外,同时我们将看到使用.NET构建企业应用平台上使用.NET的优势。毫不夸张地说,.NET不是第一个体现架构和模式的软件应用平台,确是目前为止最后的实现了架构和模式的平台,在随后的文章介绍中,你将会发现,架构设计和模式应用会是如此简单。

0
相关文章