SOA菜谱参考示例(一)

我们将结合一个参考示例来说明可以如何使此菜谱。此菜谱使用模型驱动的开发环境(RationalSoftwareArchitect就提供了此类环境)。菜谱还将使用RationalUnifiedProcess作为使用的方法,该方法是以用例为中心的方法,包含迭代开发和和可视模型。

我们首先对SOAImplementationandOptimizationofServicesRecipe和参考示例进行一下介绍,以便说明可以如何将菜谱应用到参考示例。该参考使用模型驱动的开发方法,并利用RationalSoftwareArchitect建模功能来开发用例模型、分析模型、设计模型和服务模型。

ImplementationandOptimizationofServicesRecipe

此菜谱有两个主要的指南:

·选择实现选项·将模式应用到服务实现

选择实现选项

顾名思义,该菜谱处理两种类型的服务:

图1是SOAImplementationandOptimizationofServicesRecipe的关系图,说明了架构师所要遵循的步骤,以评估用例的用户需求和实现与优化服务方面的功能与非功能需求。

图1.SOAImplementationandOptimizationofServicesRecipe略图此菜谱使用模型驱动的开发(MDD)方法,并允许建模人员或架构师将重点放在抽象层,以更好地设计解决方案的体系结构。

从其本质而言,菜谱将尽可能调用更为丰富的信息源,由于我们在使用MDD方法开发SOA解决方案,因此菜谱的第一个调用是链接到RationalUnifiedProcess,以便使用SOA。RationalUnifiedProcess提供软件开发流程指南,这些指南是通过对大量开发活动中使用的最佳实践进行提炼得到的。

菜谱表明,将首先分析用例,以确定需要构建哪些用例以及哪些可以利用现有的遗留服务或应用程序。

·对于现有应用程序,将分析非功能需求(NFR),并基于这些NFR应用响应的模式。·对于需要构建的服务,将分析以前的服务实现,以实现体系结构一致性。

在这两种情况下,如果可用,将对服务模型和实体模型进行分析。在RationalSoftwareArchitect之类的MDD环境中,这些模型将是作为基本安装的一部分提供的RationalSoftwareArchitect模型,其用户体验方面将遵循RUP的风格。菜谱使用了与图2中所示类似的n层体系结构,可在其中将SOAIF模式应用到相应的层。

SOA模式

在讨论SOA模式的概况前,将n层体系结构视为以下所给出的情况。简单的三层体系结构将包括表示层、业务层和持久层。在SOA环境中,我们可以将业务层进一步划分为服务层、控制器层和实体/对象管理层。此分层情况如图2中所示。会话Faade、消息Faade和业务委托等核心EnterpriseJavaBean模式属于控制器层。

讨论模式时——以GangofFour的《DesignPatterns》为例——会涉及到人们感兴趣的两个不同元素。一个是描述模式的实际文本。这就是将在书上看到的内容,如有关适配器模式的章节。

另外,还有实现该模式的设计工具元素。例如,RationalSoftwareArchitect中就有实现GangofFour书中的不同设计模式的UML构件。因此,如果希望将适配器应用到设计中,将从选择面板选择对应的元素,并在工具中进行一些操作,以对设计进行转换,从而实使用该模式。

·WS响应模板模式(有关模式规范,请参阅参考资料)提供了对粗粒度服务的细粒度访问,并提供了服务定义的灵活性。·请求端缓存模式(有关模式规范,请参阅参考资料)提供了请求端缓存功能。·首选数据源模式是用于进行服务聚合的一种微流模式。·面向方面的模式将结合使用方面、AJDT和模型驱动的开发。

图2:n层体系结构这种业务层细化方式具有很多好处:

·将服务定义同业务逻辑(控制器)以及数据(实体)访问分离,可确保实体中不会透露任何业务逻辑。·在Web服务实现中,服务可以委托给控制器,以对有关方面进行恰当的分离。仅在进行消息拦截时会考虑服务,但将委托给控制器,以确定业务已完成。·控制器将访问其他服务或通过其创建、读取、更新和删除(CRUD)操作访问后端实体,从而实现服务业务逻辑。·现在可以在每个层实现相应的模式,从而满足服务功能需求和系统要求,并产生体系结构一致的应用程序和服务。

为了帮助架构师或开发人员更好地理解此菜谱,还将提供一个示例。

SOA参考示例

该示例演示各个SOA模式如何以可组合的方式一起工作,并说明这些模式如何与其他模式进行交互。此示例基于零售链进行松散耦合,重点是一个名为“LookupItem”的业务服务。LookupItem通常将用于需要在销售前在库存系统中查询商品的零售方案中。通常可将“Lookupitem”作为粗粒度业务服务的一个例子,我们希望从其中了解提供此业务服务所需的对应IT服务。

图3.Lookupitem业务服务业务流程分解可帮助更好地理解用于提供此业务服务的复杂流程。图4显示了此业务流程内的复杂情况。其中使用了两个其他服务,catalog和inventory服务。

·catalog服务用于查找正在寻找的商品的编号或SKU。·inventory服务使用此SKU来确定库存系统中是否存在此商品。该服务将首先查找本地库存系统。如果此查找失败,它将搜索数据仓库目录。该流程还可以随后搜索外部供应商等。图4中更为详细地对此进行了说明:

图4.Lookupitem业务流程分解业务流程分解会将业务服务与业务流程分离开。业务分析人员现在可以不必了解服务实现的复杂性,而直接考虑将作为某个总体服务流程的一部分的Lookupitem服务。业务流程分解还可帮助理解提供此流程及其服务所必需的IT服务。

用例

此用例模型作为可重用资产规范(ReusableAssetSpecification,RAS)资产存储在dWRAS存储库中,可以从该菜谱进行访问。图5显示了如何从此菜谱访问和导入用例模型。请确保将用例模型导入到之前创建的Retail项目。

图5.从菜谱导入用例模型资产用例模型可帮助架构师或开发人员理解需要构建的软件构件和服务。图6中所示的用例模型与图3中所示的业务流程模型非常相似。在此示例中,业务服务和IT服务之间存在非常紧密的映射,但并非总是如此。该用例模型从IT的角度对Lookupitem进行了说明。

图6.Lookupitem用例模型服务标识

在本例中,业务服务和IT服务之间存在一对一的映射关系。但并非总是这样。将IT服务和业务服务视为一体,认为二者一样,这是一种常见且非常危险的错误想法。SOA模式参考体系结构中包括两个IT服务。分别是:

·catalog服务,在产品目录中查找商品编号·inventory服务,根据库存系统查询这些商品的现货数量。

架构师将确定哪些用例可以使用之前已有的应用程序或服务实现,而哪些用例需要进行构造或扩展。在SOA模式参考示例中,有一个之前已有的catalog应用程序,该应用程序公开了一个Java接口。库存系统需要包含一系列对现有后端数据库(如本地商店数据库和中央仓库数据库)的调用。在服务定义的下一部分,将从UML和WSDL的角度对每个用例进行更为详细的复查。

·自顶向下方法:在IBM面向服务的建模方法(ServiceOrientedModelingApproach,SOMA)等自顶向下方法中,将通过使用业务分析对服务进行标识和优先排序。服务的细节通过业务流程模型进行确定。保险行业丰富的领域特定模型(如业务流程模型、业务对象模型)的一个例子就是IBMInsuranceApplicationArchitecture(请参阅侧栏)。服务的细节是从业务流程模型确定的。描述IT服务的WSDL是从在WebSphereBusinessIntegrationModeler等工具中创建的业务流程模型生成的。·自底向上方法:在自底向上方法中,服务是使用现有应用程序包及其接口的知识并结合用于创建组合服务的流程编排方法来定义的。这些服务的WSDL通常从类模型生成。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

THE END
1.RECIPE13道菜谱 跟我吃瘦成一道闪电 大润小厨 516850 13132 Unique包菜卷 吃一只力气气 623612 33945 胡萝卜配西兰花 风中小荷 27292476 222276 蔬菜瘦身汤 独佳记忆2010 217455 9156 黄瓜胡萝卜卷 食尚煮易爱下厨 490318 13152 什锦蔬菜减肥汤 SunJerry 80651 3688 家常开水白菜 愿只如初见 346138 5896 https://m.douguo.com/caidan/4112149/
2.美食推荐:烧汁牛仔骨海鲜沙拉配牛油果蟹黄豆腐制作方法洋葱牛仔骨500克。 辅料: 洋葱半个克、鸡粉8克、糖3克。 调味料: 家乐和味烧汁20克、盐4克。 烹饪步骤: 1、牛仔骨以盐、糖、鸡粉腌制一小时; 2、洋葱切丝备用; 3、牛仔骨走油,再下锅半煎炸至八成熟; 4、爆香洋葱丝,加上家乐烧汁快炒,牛仔骨回锅至收干烧汁。 https://www.163.com/dy/article/JIJ3VI1J0553TKGX.html
3.步骤图高笋炒肉片(万能炒菜模板)的做法【高笋炒肉片(万能炒菜模板)】01.腌肉。拿一个容器放猪瘦肉片,加酱油,香油,姜,淀粉腌制肉片10~20分钟。此步骤可以增加肉的香味和嫩度。,11.备菜。高笋去皮,切片。切蒜和小米椒,小米椒视个人口味加多加少,切5个炒出来吃很爽。,21.热锅下油,加蒜和小米椒爆炒出香味https://hanwuji.xiachufang.com/recipe/107326260/
4.使用微信小程序开发制作一个简易的菜谱分享应用美食列表微信小程序pages/recipeDetail/recipeDetail.wxss:用于编写菜谱详情的样式。 pages/recipeUpload文件夹:用于创建菜谱上传页面。 pages/recipeUpload/recipeUpload.js:用于处理菜谱上传的逻辑。 pages/recipeUpload/recipeUpload.wxml:用于编写菜谱上传的模板。 pages/recipeUpload/recipeUpload.wxss:用于编写菜谱上传的样式。 https://blog.csdn.net/qq_67153941/article/details/139729668
5.菜单模板菜单设计模板浏览我们海量的菜单模板,即使你不是设计师,也能创建令人惊艳的设计。免费个性化。https://www.canva.cn/learn/recipe-design-template/
6.JamieOliverOfficialwebsiteforrecipes,books,TVshowsJamieOliver.com is your one stop shop for everything Jamie Oliver including delicious and healthy recipes inspired from all over the world, helpful food tube videos and much more.https://www.jamieoliver.com/
7.食谱英文翻译结果:食谱的英文翻译为“recipe”。 应用场景:“recipe”这个词在日常英语交流中非常常见,通常用于描述烹饪的步骤和方法。它可以用在烹饪书籍、电视节目、网站或日常生活中,当人们想要分享或学习如何制作某道菜肴时。 造句例句: a. 我正在寻找一个制作巧克力蛋糕的食谱。 I'm looking for ahttps://localsite.baidu.com/site/wjzsorv8/8cd47d9a-7797-42f3-9306-b902ded71161?qaId=107777&categoryLv1=%E6%95%99%E8%82%B2%E5%9F%B9%E8%AE%AD&efs=2&ch=54&srcid=10014&source=natural&category=%E8%8B%B1%E8%AF%AD&eduFrom=136&botSourceType=46
8.幼儿园每周饮食食谱公示可爱绿色模板公众号模板相关标签: 简约 黄色 绿色 GIF动图 清新 学校 健康 菜谱食谱 动态 校园 幼儿园 幼儿园食谱 每周食谱 作品简介 135编辑器提供的幼儿园每周饮食食谱公示可爱绿色模板模板样式,此作品素材ID:141309,该素材可用于:简约、黄色、绿色、GIF动图、清新、学校、健康、菜谱食谱、动态、校园、幼儿园、幼儿园食谱、每周食谱https://www.135editor.com/editor_styles/141309.html
9.Forthepizzarecipe,IwillgetbacktoyouASAP.的翻译是aVolt provides a set of basic but powerful control structures for use in templates 伏特提供一套基本,但强有力的控制结构用于模板[translate] aThe fabrics recall the reassuring feel of tricot, and the flannels are teamed with exquisite yarns such as cashmere, alpaca, Shetland and kid mohair. 织品http://eyu.zaixian-fanyi.com/fan_yi_14062251
10.尤克里里Wordsthatareoftenconfused经常混淆的单词A recipe is a set of instructions for cooking something. A recipe是菜谱 A receipt is a piece of paper you are given after you pay for something. A receipt是收据 A prescription is a piece of paper a doctor gives you to get the medicine you need. A prescription是处方 相关http://m.hujiang.com/en_ukulele/p1201582/
11.SuperCookSupercook is a recipe search engine that lets you search by ingredients you have at home. Find thousands of recipes you can make right now with the ingredients you have available at home. Supercook can help you save hundreds on grocery bills by showing https://www.supercook.com/
12.家常菜谱大全(MyRecipe)软件介绍 家常菜谱大全(MyRecipe)是一个简单易用、设计贴心的菜谱家常菜做法软件。它收录了美食天下菜谱、菜谱大全、夏季菜谱等等,可以帮助厨房新手轻松做出美味佳肴,也可以帮助厨艺高手整理记录自己的菜谱。它内置的几项功能更可以帮助你制定饮食计划,管理购物清单。相信它可以给您的生活带来极大的便利。 https://m.crsky.com/soft/25784.html