领导力大挑战
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
该内容已经被标记书签!
标记书签错误,请重试!
作者 Boris Lublinsky 译者 黄璜 发布于 2008年12月23日
SOA设计技巧的主流是以企业IT资产的功能分解为中心的,常常是事后才想起对SOA信息方面进行处理。在实际中,SOA解决方案需要囊括一组广泛的设计考虑,反映出信息架构的最佳实践,以全面支持可伸缩的、一致的并且可重用的信息访问。在他们的新文章中,Brian Byrne、David McCarty、Guenter Sauter、Peter Worcester以及John Kling介绍了代表SOA设计中的信息透视图的一系列模式和能力。他们的方法保证了最佳的方式利用信息以支持SOA解决方案的技术目标和业务目标:
- 服务可以跨整个企业重用。
- 向消费者公开的业务数据是准确、完整和及时的
- 跨业务领域和技术层共享的数据具有共同的结构,对于所有参与方具有共同的含义。
- 将企业的各个业务领域链接在一起的核心数据实体跨所有业务线保持一致和可信。
- 企业能够从它的数据和数据系统获得最大的业务价值。
这篇文章定义了三个主要的SOA相关模式:
任何成功的SOA都需要建立一个通用的容易访问的业务术语表,业务术语表定义与过程、服务和数据相关的术语。SOA实施人员在整理组织中公认的业务语言和缩写词时,常常发现术语存在不一致的地方。如果客户、渠道、收入等关键术语的定义不一致,就不可能实现与这些术语相关的服务。如果相关人员对服务的参数(即服务获得的数据集)的含义有不同的解释,服务的实现就不可能成功。关键在于,业务分析师和技术人员必须对SOA领域的所有方面(包括过程、服务和数据)使用的术语有共同的理解。业务术语表可以消除在描述核心业务概念时出现歧义的可能性,从而避免误解数据需求。业务术语表建立一个通用的词汇表来控制词汇的定义,从而消除误解。每个词汇的定义包含描述和其他元数据,还要确定它在分类体系中的位置。由专人负责术语的定义:他们帮助定义术语并支持对术语的管理。
在设计服务时,一致的术语表是好的起点,但是仅有术语表还不够。还必须清楚地了解业务信息的结构。服务的输入和输出参数(即消息)常常不是单一数据类型那么简单。它们代表着复杂的实体及其关系定义。如果SOA架构师在设计公开的服务模型数据格式时使用规范化模型,那么可以大大改进SOA项目的开发时间和质量。过程、服务/消息和数据模型的规范化会加快设计速度,利用数据建模的规范化方针,避免不必要的转换。从而产生能够满足不同服务消费者需要的服务定义,因此可以减少重复的服务。规范化数据模型在数据层建立这种统一的格式,而规范化消息模型在服务层定义这种统一的格式。规范化数据模型和消息模型的模式将在本系列的后续文章中讨论。Industry Models提供一组过程、服务和数据模型,可以使用它们进行服务体系结构的分析和设计,确保跨建模领域的数据定义保持严格一致。它们定义对特定行业领域进行建模的最佳实践,并提供一个可扩展的框架,这样在添加更多服务时不必重新设计SOA。
如果考虑了上面描述的概念,设计师就可以让服务设计在模型和元数据工件之间保持高度的一致性。但是,这并不能够保证服务返回的数据质量是可接受的。数据即使满足它原来的存储库和应用程序的规则和约束,也不一定能够满足企业级的需求。在将数据通过SOA向企业范围公开时,在原来的应用程序中无关紧要的质量问题可能会变成很严重的问题。因此,问题就是:公开的数据的质量是否满足SOA项目的需求,以及如何有效地做出这一判断?建议的解决方案是在服务分析和设计期间进行数据质量评估。在对支持服务的源系统进行分类之后,就可以开始研究它们的数据质量问题。……应该检查数据是否符合相关的完整性规则。应该检查是否存在重复的数据,研究在数据匹配和聚合期间如何解决重复的数据。以这些分析为基础,可以采取适当的措施来确保服务的实现能够满足潜在服务消费者对数据精确性和含义的要求。
随着SOA成熟,SOA信息设计的问题变得越来越重要。SOA从业者开始认识到使用规范数据(相较于EAI里的规范数据)是构建可重用组合式服务而不会遭遇映射中介大杂烩的必要条件。
查看英文原文:The Information Perspective of SOA Design
译者 黄璜 糊口靠的是Java Web,赶过SOA的潮,追过Cloud的风,真正欢喜的是Linux,向往的事情是研究网格计算。
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
论道WP第三篇专栏,以应用程序栏的使用为中心,包括了软键盘带来的问题、应用程序栏介绍、如何绑定应用程序栏的属性等几个方面的具体话题,为开发者顺利使用应用程序栏开发提供了具体指导。
在多线程并发编程中Synchronized一直是元老级角色,很多人都会称呼它为重量级锁,但是随着Java SE1.6对Synchronized进行了各种优化之后,有些情况下它并不那么重了,本文详细介绍了Java SE1.6中对于锁的性能优化,以及锁的存储结构及升级过程。
本次分享将首先介绍现代富文本编辑器的组成和实现,然后结合UEditor的开发过程,与参会者分享UEditor在设计和实现的过程中,所涉及到的核心功能的细节实现。
本次演讲视频录制于百度技术沙龙。
我们所开发的应用程序大多都需要提供一个图形用户界面(GUI)。关于GUI应用的架构设计,已经有了Form & Control、MVC,、MVP、 Passive View等多种模式。模式可以帮助我们建立优雅的架构,但前提是弄清楚模式的应用场景。弄清楚GUI应用面临的设计上的问题,有助于我们正确的挑选设计方案。
MongoDB是一种非常易用的NoSQL方案,Brian C. Dilley在这篇文章里介绍了MongoDB的优劣势,并介绍了MJORM项目。MJORM用于MongoDB,是一个没有注解的Java ORM库。
随着网络基础设施的逐步成熟,从RPC进化到Web Service,并在业界开始普遍推行SOA,再到后来的RESTful平台以及云计算中的PaaS与SaaS概念的推广,分布式架构在企业应用中开始呈现出不同的风貌,然而殊途同归,这些分布式架构的目标仍然是希望回到建造巴别塔的时代,系统之间的交流不再为不同语言与平台的隔阂而产生障碍。
没有回复
关注此讨论 回复