`
psy_yd
  • 浏览: 23168 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
  • henchong: 我想实现这个功能。。。控制地图的显示范围。。但不知道地图的级别 ...
    地图实现原理

JAVA架构设计(摘录)

 
阅读更多
高新企业为了生存,因此他们所依靠的软件必须能提供其所需的功能;所需的高质量;所承诺的可用性,和可接受的价格。

架构是在组件,彼此间和与环境间的关系,引导设计发展原则中体现的系统的基本结构。

Architecture is the fundamental organization of a system embodied in its components, their relationships to each other, and to the environment, and the principles guiding its design and evolution. [IEEE 1471]


系统是为实现某个(些)特殊作用的组件的集合。专用系统包括个人应用,传统概念上的系统,子系统,系统中的系统,产品线,产品系列,整个企业和其他利益集团。一个系统是为了实现一个或多个任务而存在。[IEEE 1471]

A system is a collection of components organized to accomplish a specific function or set of functions. The term system encompasses individual applications, systems in the traditional sense, subsystems, systems of systems, product lines, product families, whole enterprises, and other aggregations of interest. A system exists to fulfill one or more missions in its environment. [IEEE 1471]


环境决定了开发,操作,策略和其他影响系统的设置和条件。[IEEE 1471]

The environment, or context, determines the setting and circumstances of developmental, operational, political, and other influences upon that system. [IEEE 1471]


任务是指系统为了实现对对象设置的使用或操作。[IEEE 1471]

A mission is a use or operation for which a system is intended by one or more stakeholders to meet some set of objectives. [IEEE 1471]


涉众是对于系统有利益关系或关注的个人,团队或组织。[IEEE 1471]

A stakeholder is an individual, team, or organization (or classes thereof) with interests in, or concerns relative to, a system. [IEEE 1471]

正如我们所见,“组件”贯穿于这些定义。正如有意留下一个模糊的概念来解释,大部分架构定义没有提到“组件”,IEEE 1471也不例外。组件也许是逻辑上的或物理存在的,技术上独立的或特定的,规模大的或规模小的。由于文章的原因,我使用了UML 2.0规范的组件定义;并且我相当宽松的使用这个概念来包含各种所遇到的架构成分,包括了对象,技术组件(例如Enterprise JavaBean),服务,程序模块,遗留系统,包应用程序等。这些是 UML 2.0中对“组件”的定义:

[组件]是包括内容的系统模型部分,且它的显示是可替换的。组件定义了所需接口的行为。例如,组件类似类型(type),它与所需接口行为一致。(包括静态和动态语义)

[A component is] a modular part of a system that encapsulates its contents and whose manifestation is replaceable within its environment. A component defines its behavior in terms of provided and required interfaces. As such, a component serves as a type, whose conformance is defined by these provided and required interfaces (encompassing both their static as well as dynamic semantics).

架构是对软件系统组织、结构部分和系统包含接口的选择,集合部分的特定行为,较大子系统部分的构成和架构风格的重大决定的设置。

An architecture is the set of significant decisions about the organization of a software system, the selection of structural elements and their interfaces by which the system is composed, together with their behavior as specified in the collaborations among those elements, the composition of these elements into progressively larger subsystems, and the architectural style that guides this organization -- these elements and their interfaces, their collaborations, and their composition. [Kruchten]

大部分定义都指出一个架构关注于结构和行为,仅关注于重要决定,可以与架构风格一致,受涉众和环境的影响,体现基于原因的决定。

--架构定义结构

   许多架构的定义不但承认了他们自己的结构元素,而且还有结构元素的组成,关系(任何连接部分都需支持这样的关系),接口。

--架构定义行为

   与定义结构元素一样,架构定义了这些结构元素的相互作用。这些作用可以实现所期望的系统行为。

--架构关注于重要元素

   当一个架构定义了结构和行为,它不会在意所有的结构和行为的定义。它只在意那些被认为是重要的元素。重要的元素是那些有持久影响的,例如结构部分的主要部分,与核心行为相关的元素,和对诸如可靠性和可测量性等重要品质相关的元素。总的来说,架构不关心这些元素的细节。架构的重要性还可以以经济的重要性来表达,因为某些元素的主要驱动者是创建的成本和变更的成本。

--架构可以平衡涉众需求

   架构是为了实现涉众的需要而创造的。但是,一般来说不可能满足所有的需求。不同的涉众之间可能有相互冲突的需求,所以应满足适当的平衡性。所以作折中是构建进程的主要方面,且妥协是架构的重要属性。

--架构基于基本原理体现决策

   An important aspect of an architecture is not just the end result, the architecture itself, but the rationale for why it is the way it is. Thus, an important consideration is to ensure that you document the decisions that have led to this architecture and the rationale for those decisions.

--架构可以符合一个架构样式

   架构风格的例子包括分布式的风格,管道和过滤器风格,数据中心风格,基于规则的风格等。

[架构风格] 按照结构组织的模式定义了系统。更具体的,架构风格定义了组件和连接型的语法,和连接的方法。

[模式] 是对于普遍问题的普遍解决方案。

--架构被其环境所影响

   影响架构的环境的因素包含架构所支持的商务环境,系统涉众群,内部技术限制(例如需要符合组织标准),和外部技术限制(例如对外部系统的接口或遵守外部规则的标准)

--架构影响团队结构

--架构呈现在每一个系统中

--架构拥有一个特定的范围

   我们会遇到诸如企业架构,系统架构,组织架构,信息架构,硬件架构,应用架构,基础设施架构等。你会见到其他类型的,每种类型都定义了一个架构的具体范围

分享到:
评论

相关推荐

    JAVA认证设计师大全

    这个认证设计可能是指Sun Certified Enterprise Architect for Java EE(SCEA)等认证,它针对的是那些希望证明自己在Java EE架构设计方面专业能力的开发人员。 2. JAVA高级开发技术:描述中提到,文档“包括了所有...

    JAVA上百实例源码以及开源项目源代码

    例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在...

    基于java-ee的个人数字图书馆的设计与实现毕业论文设计.doc

    【基于Java-EE的个人数字图书馆的设计与实现】 在当今信息爆炸的时代,个人知识管理和有效组织信息成为了一项至关重要的任务。个人数字图书馆作为一种新型的信息管理工具,它满足了网络环境中用户对个性化信息的...

    基于J2EE架构的分布式静态页面生成分析与设计.pdf

    J2EE架构是一种用于简化企业级解决方案开发、部署和管理的技术架构,其核心是利用Java 2平台,解决企业应用系统开发过程中的复杂性问题。 描述中的"资源达人分享计划"可能指的是一系列分享IT领域知识点和专业指导的...

    JAVA卡 运行环境规范2.2.1

    1. **基础架构与组件**:JavaCard平台2.2.1版本的基础架构包括Java虚拟机(JVM)、API集合、安全模型等核心组件。这些组件为开发者提供了构建复杂应用所需的工具和环境。 2. **安全特性**:JavaCard平台强调安全性,...

    《架构师》读书笔记模板.pptx

    这本书关注的是IT行业中与架构设计相关的热点问题、理论探讨以及技术趋势,特别是针对云原生、大数据分析和数据架构的变革。通过思维导图、内容摘要和精彩摘录等形式,读者可以系统地理解和吸收书中的核心观点。 1....

    Java P2P技术内幕 1

    在“Java P2P技术内幕 1”中,可能涵盖了Java平台下实现P2P网络的基本原理、架构设计、以及相关的编程实践。 1. **P2P技术基础**: - **P2P网络模型**:介绍P2P网络的结构,包括中心化的、去中心化的和混合型P2P...

    java每月新闻杂志13

    4. **编程实践**:分享一些Java编程的最佳实践,例如代码优化、异常处理、多线程编程的注意事项,以及如何利用设计模式提升软件架构。 5. **行业动态**:分析Java在移动开发(比如当时的Java ME)、云计算、大数据...

    基于JAVA的国家地震速报灾备中心流服务路由智能切换技术的设计与实现.pdf

    以上知识点是基于文档内容的片段摘录所提取的,实际文档可能包含更多详细信息,包括系统架构设计、算法选择、性能优化策略等内容。然而,由于提供的内容片段有限,我们只能从当前信息中推断出这些知识要点。对于完整...

    The Java™ Virtual Machine Specification Third Edition

    - **The Java™ Virtual Machine Specification**:这部分由Tim Lindholm、Gilad Bracha、Alex Buckley和Frank Yellin等人编著,详细阐述了Java虚拟机的架构、设计原则和技术细节。它是Java开发人员理解JVM工作原理...

    试析用Java实现链表数据结构.pdf

    从文章的摘录来看,内容涉及了Java内存分配与回收机制,以及链表数据结构在Java中的实现。首先,文章讲解了Java的内存分配机制,这包括了对栈内存和堆内存的介绍。在Java中,栈内存用来存储基本类型变量和对象的引用...

    java and xml

    - **适用性**:适用于希望在Java EE环境中开发Web服务的应用程序开发者和架构师。 #### 2. 许可与使用条款 - **评估目的许可**:Sun授予用户非独家、不可转让的全球许可,用于内部评估目的,包括但不限于: - ...

    一种抽象泛型机制的新型Java实现.pdf

    在提供的文件内容摘录中,作者提到了一个名为“Apla”的抽象编程语言,它在形式化方法PAR中的定义中体现了功能抽象和数据抽象的程序设计思想。Apla语言的泛型机制主要分为两种类型:类型参数化和数据结构泛型化。...

    基于安卓系统的游戏开发与设计.pdf

    文档可能包含了诸如安卓游戏架构、安卓SDK(软件开发工具包)的使用、游戏循环、资源管理、安卓界面设计和用户交互等方面的知识。 5. 安卓游戏开发过程中的实际操作:文档提及了Hello World实例,这通常是学习一种...

Global site tag (gtag.js) - Google Analytics