
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的软件被开发推广上线,而本文我们就通过案例分析来简单了解一下,软件开发规范都有哪些要求。
1、研发流程规范
研发流程规范,指的是一个需求从提出到完成的整个过程应该是怎样流转的。一般的需求研发流程包括:产品提出需求、技术预研、需求评审、技术方案设计、测试用例评审、技术方案评审、测试用例评审、需求开发、CodeReview、需求测试。不同公司根据情况会有所调整,但大差不差。
2、发布流程规范
发布流程规范主要是为了控制发布权限以及频率的问题。
在项目初始,为了快速响应业务,一般权限控制都很松,很多人都可以进行线上服务的发布。但随着业务越来越多、流量越来越大,相对应的故障也越来越多,到了某个时候就需要对权限做管控,并且需要对需求的发布频率做控制。
对于需求发布流程来说,一般有几种发布方式,分别是:ReleaseTrain方式、零散发布方式。ReleaseTrain意思是固定时间窗口发布,例如每周四发布一次。如果无法赶上这次发布时间,那么就需要等到下次发布窗口。零散发布方式,指的是有需要就发布,不做发布时间控制。但这种方式一般只在项目初期发挥作用,后期一般都会收紧。
除此之外,发布流程中都会设有紧急发布流程,即如果某个需求特别重要,或者有紧急漏洞需要修复,那么可以通过该流程来紧急修复,从而避免因未到时间窗口而对业务产生影响。但一般来说,紧急发布流程都比较麻烦,除非迫不得已不然不要审批通过,不然ReleaseTrain方式可能会退化成零散发布方式。
3、高可用设计
高可用设计指的是为了让系统在各种异常情况下都能正常工作,从而使得系统更加稳定。其实这块应该是属于研发流程规范中的技术方案设计的,但研发流程规范更加注重于规范,高可用设计更加注重高可用。另外,也由于高可用设计是非常重要,因此独立拿出来作为一块来说说。
对于高可用设计来说,一般可分为两大块,分别是:服务治理和容灾设计。
服务治理就包括了限流、降级、熔断、兜底、隔离等,这一些考虑点都是为了让系统在某些特殊情况下,都能稳定工作。例如限流是为了在上游请求量太大的时候,系统不至于被巨大的流量击垮,还可以正常提供服务。
容灾设计应该说是更加点的设计了,指的是当下游系、中间件挂了,如何保证系统还能正常运行?可以说容灾设计比起服务治理,其面临的情况更加糟糕。例如支付系统终是通过A服务商进行支付的,如果A服务商突然挂了,那我们的支付系统是不是就挂了?那有什么办法可以在这种情况(灾难)发生的时候,让我们的系统还能够正常提供服务呢?这就是容灾设计需要做的事情了。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。