08架构管理之架构检查方法

一句话导读

架构检查是确保软件系统设计和架构质量的关键步骤。通过结合文档审查、模拟和测试等多种方法,可以全面评估系统的性能、可维护性、安全性和可扩展性。有助于团队对于公司制度的理解,有助于公司管理部门对相关制度的落地。能够帮助公司项目降低风险、保证软件系统的稳定性和可靠性。

目录

一句话导读

一、什么是架构检查及意义

二、什么时候做架构检查

三、如何做架构检查

1.定义架构检查指标及标准

2.定义架构检查的范围

3.制定架构检查的计划

4.架构检查内容


一、什么是架构检查及意义

定义:

架构检查是软件开发过程中的一项重要活动,它旨在评估和审查系统的整体架构,以确保系统的设计和架构满足质量、性能、可维护性和安全性等方面的要求

意义:

  • 发现问题和风险: 架构检查有助于早期发现系统设计中的问题和潜在风险。通过审查设计文档、模拟和测试,可以在实际开发之前识别和解决潜在的设计缺陷,减少后期的修复成本和风险。在开发过程中及时发现系统中存在的问题,及时进行修复,从而保证软件系统的稳定性和可靠性。
  • 确保质量: 架构检查有助于确保系统的整体质量。它可以评估系统的性能、可用性、可扩展性和安全性,以确保系统在实际运行中表现良好并满足用户需求。
  • 指导设计决策: 架构检查提供了对系统设计的外部视角,帮助团队成员更好地理解系统的整体结构和互操作性。这有助于指导设计决策,确保设计与预期一致。
  • 支持决策制定: 架构检查提供了有关系统设计的重要信息,可以用于支持项目决策制定。例如,在架构检查中发现的问题可以用于优化项目计划和资源分配。
  • 提高可维护性: 通过审查和改进系统的架构,可以增加系统的可维护性。清晰的架构设计使系统更容易理解、维护和扩展。
  • **减少后期成本:**通过及早发现和解决问题,架构检查可以减少后期开发和维护的成本。修复问题的成本通常随项目进展而增加,因此越早发现问题越有利于成本控制。

二、什么时候做架构检查

架构检查的最佳时间是在系统设计阶段或系统架构设计完成之后。但是价格检查作为软件开发过程中的一项关键活动,应该在项目不同阶段均可进行。以确保项目顺利进行并满足设计和质量要求,如:

  • **项目启动阶段:**架构检查用来审查项目的需求和目标,确保团队对项目的整体架构理解的一致性,有助于制定项目的计划和资源分配
  • **系统设计阶段:**此时进行架构检查可以包括模块划分、数据流程、组件交互等各个方面,保证系统设计的合理性,满足项目需求。
  • **关键决策点:**项目迭代周期完成时、项目提交测试时、项目交付前等。以确保和最初架构设计一致,满足系统的质量、性能、安全要求。
  • **周期性检查:**亦可根据公司架构管理部门要求,定期对公司所有项目进行架构检查。

三、如何做架构检查

1.定义架构检查指标及标准

对架构检查的指标进行筛选和定义,那些项目是在架构检查的时候能够直接量化的,并对量化的指标做一个通过标准定义。

2.定义架构检查的范围

架构管理部门可以对公司的项目进行梳理,梳理出需要做架构检查的项目,确定要检查的系统、模块或组件

3.制定架构检查的计划

架构管理部门制定架构检查计划,确定好开始时间、结束时间、复盘时间、回头看时间,邀请各相关负责人,评审人员,预约会议时间等。

4.架构检查内容

  • 技术栈符合性检查:基于技术栈规范进行检查
    • 评分标准:
      • 符合-100:完全符合架构评审文档中定义
      • 大部分符合-80:符合项大于等于80%
      • 基本符合-60:符合项大于等于60%,小于80%
      • 少部分符合-40:符合项大于等于40%,小于60%
      • 不符合-0:符合项小于40%
  • 服务划分合理性检查:微服务的划分是否和架构评审文档一致
    • 评分标准:
      • 1.符合-100:完全符合架构评审文档中定义
      • 2.大部分符合-80:符合项大于等于80%
      • 3.基本符合-60:符合项大于等于60%,小于80%
      • 4.少部分符合-40:符合项大于等于40%,小于60%
      • 5.不符合-0:符合项小于40%
  • 部署情况检查:判断生产环境部署的服务和架构设计文档中的是否一致
    • 评分标准:
      • 符合-100:完全符合架构评审文档中定义
      • 基本符合-60:有一项不符合
      • 不符合-0:有两项不符合
  • 网络划分合理性检查:判断生产环境部署的网络划分是否和架构设计文档中一致
    • 评分标准:
      • 符合-100:完全符合架构评审文档中定义
      • 基本符合-60:有一项不符合
      • 不符合-0:有两项不符合
  • 代码扫描检查:通过sonar对项目代码进行扫描
    • 评分标准:
      • 符合-100:代码扫描结果没有严重、高危级别问题
      • 不符合-0:有严重、高危级别问题
  • 分支管理检查:按照公司的分支管理规范进行检查
    • 评分标准:
      • 符合-100:完全符合《开发技术规范》
      • 基本符合-60:有一项不符合
      • 不符合-0:有两项不符合
  • 版本管理检查:按照公司的版本管理规范进行检查
    • 评分标准:
      • 符合-100:完全符合《开发技术规范》
      • 基本符合-60:有一项不符合
      • 不符合-0:有两项不符合
  • 环境管理:按照公司的环境管理办法进行检查
    • 评分标准:
      • 符合-100:完全符合《开发技术规范》
      • 基本符合-60:有一项不符合
      • 不符合-0:有两项不符合
  • 代码评审情况检查:根据公司的代码评审要求进行检查
    • 评分标准:一般一个迭代进行一次
    • 符合-100:每月两次或者每个迭代一次,并有记录
    • 基本符合-60:每月一次或者一个里程碑一次
    • 不符合-0:代码评审频次超过一个月一次
  • 单元测试检查:按照公司开发规范要求,对单元的覆盖率进行扫描
    • 评分标准:
      • 符合-100:完全符合《开发技术规范》
      • 基本符合-60:有一项不符合
      • 不符合-0:有两项不符合
相关推荐
一抓掉一大把14 小时前
秒杀-StackExchangeRedisHelper连接单例
java·开发语言·jvm
升鲜宝供应链及收银系统源代码服务14 小时前
升鲜宝生鲜配送供应链管理系统--- 《多语言商品查询优化方案(Redis + 翻译表 + 模糊匹配)》
java·数据库·redis·bootstrap·供应链系统·生鲜配送·生鲜配送源代码
青山的青衫14 小时前
【JavaWeb】Tlias后台管理系统
java·web
蒟蒻的工具人14 小时前
SSE实时推送订单状态
java·eventsource·sse协议
小蒜学长14 小时前
springboot基于Java的校园导航微信小程序的设计与实现(代码+数据库+LW)
java·spring boot·后端·微信小程序
虾米Life14 小时前
基于微服务脚手架的视频点播系统 (仿B站) [客户端] -1
c++·qt·微服务·架构
悠闲蜗牛�15 小时前
智能时代技术融合之道:大模型、微服务与数据安全的系统化实践
微服务·云原生·架构
胡耀超15 小时前
通往AGI的模块化路径:一个可能的技术架构(同时解答微调与RAG之争)
人工智能·python·ai·架构·大模型·微调·agi
王元_SmallA15 小时前
IDEA + Spring Boot 的三种热加载方案
java·后端
小苏兮15 小时前
【把Linux“聊”明白】编译器gcc/g++与调试器gdb/cgdb:从编译原理到高效调试
java·linux·运维·学习·1024程序员节