本节主要介绍SOA如何逐渐融入敏捷的生命周期。在这里,我们将研究一下应用生命周期管理(ALM)。
敏捷性SOA成功之秘诀(一):基础篇
敏捷SOA成功秘诀(2):质量管理
正如著名市场研究机构Forrester的Cary Schwaber所说的那样,最新的ALM平台将会改善开发过程,向应用工具提供普通服务。这一代的ALM软件在将需求、测试案例、bug跟踪和问题解决方案整合到一个应用套件中做了更多的工作。下图就简单说明了共享测试过程并把它作为协作资产。
将业务需求转换到软件中这一过程能够通过ALM工具自动完成。包括跟踪编程过程、储存源代码、执行测试案例(目的是确保功能),并记录产品的缺陷和改进。自动化测试历来只是被插入到ALM的“测试执行”阶段。这可以提供有关代码覆盖或替换成功或失败编译的统计数据。但是,功能更加强大的测试可以使ALM工具管理的生命周期的每一阶段增值。
例如,开发人员可以根据ALM库中存储的源代码检查测试,因为简单化的“基本路径”测试能够展示已经交付组建的既定功能。接着,质量保证团队会知晓有这些新资产,并运行和重复这些试验证明一个更大的可能进行的活动集。但是另外一个团队在集成和部署的过程中,可以使用开发和质量保证的所有的测试,将多个测试捆绑在一起,以确保用最小的成本得到整体回归和功能覆盖。最后,随着业务团队和支持团队的介入,他们可以运行、修改和检查对于平台的测试,以发现问题或确定ALM生命周期的下一阶段。按照这种方式实现共享,测试就变成了SOA协作资产,并增加了每个迭代周期的灵活性和速度,同时更好地确保了端到端业务流程的成功。
这种做法可以被任何测试工具所采用,无论你使用的是JUnit还是自动化程度更高的、无编码的测试工具。使用无编码测试环境的优势在于能够自动化执行测试,无需编码技能,它能够让非开发人员参与到上述周期中来。
在上面这个例子中,每次组件级的迭代被引入时,每个人都应该参与测试的制定和执行,这些测试被集成到一个更广泛的工作流程和业务流程中。一个敏捷机构允许多个团队的开发人员和非开发人员在开发结束前的很长时间就相互协作,共同致力于测试应用组件。这可以确保在每个迭代周期进行连续测试,以及更加可靠的方案修正和发布过程。
例如,一家保险公司可能会有将邮政编码与某种类型的汽车保险匹配的需求。开发人员创建一个组件,并利用一个能够显示一些邮编和保险类型匹配的简单的测试案例对它进行检查。质量保证团队可以利用一个包含完整的邮编/保险类型匹配的数据集重复这一测试,并且随后进行的系统开发都要进行这种测试。如果开发人员稍后更新了组件而所需的测试没有通过,那么这一情况就会报告给ALM系统,同时还配有问题根源分析。最后根据ALM系统的问题解决规则,有关团队互相沟通之后进行问题矫正。
在下一篇文章中,我们将讨论IT业务、监测和性能。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
你的微服务设计支持可重用并避免冗余吗?
微服务是代码小型的功能捆绑,旨在通过适当的使用来促进可重用并改善QoE以及可用性。如果使用不恰当的话,它们就会成为应用生命周期管理和资源效率的“噩梦”。
-
谁知道阿里云河南服务中心是干什么的?
一直接到阿里云服务中心的电话,说是阿里云的授权中心,主要提供阿里云的区域服务的?请问其他地方也有阿里云的服务中 […]
-
对于orchestration而言 ALM和DevOps至关重要
为了确保开发和运营能够持续同步演进,开发者需要理解DevOps与orchestration之间的差异,对自己的开发和运营策略进行重新思考,并且对重要的新兴趋势保持警觉。
-
私有云选项评估:OpenStack vs VMware
OpenStack和VMware都是混合云和私有云的可选项。那么问题来了,你的组织应该选择哪个呢?