如果您正在使用 OpenAPI 规范 (OAS) 开发 API,并使用 Swagger 工具,那么您可能听说过采用“设计优先”方法的重要性。
设计优先的方法提倡使用 OAS 等通用标准来定义您的 API,并在开始开发 API 之前就 API 的设计达成一致。在设计优先的方法中,API 定义充当 API 开发的真理来源,并有助于简化 API 生命周期中的流程,包括开发、测试、文档等。
但是,大规模采用设计优先的方法也可能面临挑战。因此,我们很高兴邀请 Viasat 的系统工程师 Cyndi Recker 作为即将举行的 SmartBear Connect 会议的演讲者。在她的演讲“通过设计优先的方法支持系统的快速增长”中,Cyndi 将向您展示如何控制系统的深远元素,使用设计优先的方法来建立通用的分层数据字典,并创建可重用的组件来构建系统 API。
我们最近有机会与 Cyndi 交流,了解更多关于她的组织如何使用 SwaggerHub 采用设计优先的方法,并预先了解她在 SmartBear Connect 上的演讲。
请继续阅读以了解更多信息。
在不重复您的个人简介的情况下,您希望与会者了解您的哪些方面?
我对所做的几乎所有事情都充满热情。无论是在工作中还是在个人时间。我精力充沛,需要将其全部消耗掉,并尝试像对待冒险一样对待生活中的每一项任务。
您在使用 SmartBear 工具(如 SwaggerHub)方面的经验如何?
我曾在以前的职位中使用过 Collaborator(以前称为 Code Collaborator),它对我们的团队非常有效。我们是全球分布的;我的团队成员在圣何塞、亚利桑那州、印度和波士顿。Collaborator 的作用是帮助我们跨越时间和语言障碍。
转到我在 SwaggerHub 方面的经验,我在 Viasat 工作超过一年,担任系统工程师,负责系统的硬件和软件架构。商业移动系统很复杂,具有在飞机、卫星和地面之间延伸的通信接口,为航空旅客提供 Wi-Fi 服务。
像许多架构一样,该系统随着时间的推移而发展,并且出现了异常,导致接口出现问题。有许多系统到系统的消息,其中从起始点(如门户)获得的信息在到达最终目的地之前需要进行多次跳转。例如,一个对象(例如飞机)已被多次创建,具有不同的名称和属性。MAC 地址也是如此。
过去,我曾在一个用于天基通信的军事项目中工作,我手工制作了一个数据字典和一个需求可追溯性工具,因为市场上没有符合我们需求的产品。几年后,我在 Viasat 工作,面临着类似的工具需求。
因此,当我一年多前担任这个角色时,我们希望 SwaggerHub 域技术能够帮助我们解决一些问题。尽管不是完美匹配,但它使我们能够在维护当前系统的同时进行新设计。我们可以使用一组通用的数据实体和消息作为基础来构建分层模型。SwaggerHub 正在为我们的业务解决一些问题,最重要的是它正在帮助我们管理数据。
总而言之,我认为优点是:
首先,使用域会使您能够组织数据,以便在了解所有更改的影响方面获得最大的收益。
其次,使用 SwaggerHub 工具,您可以单击 API 中的引用,该引用将导航到另一个文档中的反向引用定义。这可以帮助您识别使用该实体的 API 和域。将来,我希望看到一个功能,允许我单击一个定义并提供使用数据实体的所有 API 的摘要。
最后,SwaggerHub 提供了一种与不同角色(如架构师、开发人员、测试、质量保证等)的各种团队成员协作的方式,他们都可以接触信息并保持项目在管道中移动。
Viasat 何时转向设计优先方法?
我认为 Viasat 一直都有设计优先的方法,但没有很好的工具支持来支持架构和设计任务。
您认为谁最能从参加您的演讲中受益?
我认为本次会议对许多不同的参与者都有好处。我将展示域如何在将门户 UX/UI 到较低级别系统到系统消息的多种类型的接口组合在一起时提供帮助。我也认为它对于那些需要使用包含通用数据的 API 来扩展系统以实现增长的人员以及那些使用 Swagger.io 但没有尝试过 SwaggerHub 的人员也有好处。
您对 SmartBear Connect 最期待什么?
我真正感兴趣的两件事是:一是培训和了解其他一些产品,二是与我的一些同行会面,看看他们如何解决我尚未想出解决方案的其他一些问题。
如果您希望与同行会面讨论类似的问题,您是否希望与他们讨论您正在处理的任何问题?
我使用 SwaggerHub 的设计优先方法遇到的问题之一是真正达到代码生成的程度。您无法真正通过代码生成实现全面的成熟度,您仍然需要手动操作代码。因此,我将对从 SwaggerHub 生成代码的主题进行讨论感兴趣。我要问的是,“您成功了吗?”如果成功了,“您如何才能完成代码的编写?”
我也非常有兴趣对我们的 API 进行自动化测试,并了解一些相关的工作原理,因为我们 Viasat 还没有做过这方面的工作。
你们目前是如何测试 API 的?
我们结合了内部测试,并在某些情况下使用 Soap UI。最近,我们的组织采用了 DevOps 方法,其中测试是团队的一部分。一些团队正在考虑使用 SoapUI Pro 和 LoadUI Pro 的 ReadyAPI 解决方案。我期待在 SmartBear Connect 的培训课程中更仔细地了解这些产品。
今年 10 月 29 日和 30 日,Cyndi 将在SmartBear Connect 准备好与您交流。她非常期待来到波士顿与您见面。想加入我们的 SmartBear Connect 吗?使用促销代码 "SwaggerHub_Connect18" 可节省 100 美元的门票费用。