《软件工程之美》总结四:系统设计、开发编码、软件测试、运行维护

本文详细探讨了软件工程的各个方面,包括架构设计的重要性、步骤和技术选型的决策过程,强调了持续交付和自动化测试在提高开发效率和保障软件质量中的关键作用。同时,文章还涵盖了技术债务的管理、预防策略,以及如何应对线上故障和项目复盘,为软件开发提供了全面的指导。
摘要由CSDN通过智能技术生成

架构设计

复杂的软件项目通常有两个特点:需求不确定和技术复杂

技术复杂主要体现在:需求复杂导致、人员过多导致、技术本身导致、软件稳定运行导致

架构设计可以降低满足需求和需求变化的开发成本、可以帮助组织人员一起高效协作、可以帮助组织好各种技术、可以保障服务稳定运行

什么是架构设计

用最小的人力成本来满足需求的开发和响应需求的变化,用最小的运行成本来保障软件的运行

架构设计的本质要求就是组织人员和技术把系统和团队拆分,并安排好切分后的排列关系,让拆分后的部分能通过约定好的协议相互通信,共同实现最终的结果

步骤

1 分析需求

2 选择相似的成熟的架构设计方案

3 自顶向下层层细化

部署架构、开发架构(如分层)、API/数据库表/模块设计

4 验证、优化架构设计方案

可参考《从零开始学架构》,也可以看本人关于此课程的总结

技术选型

受制于时间、范围和成本的约束,要分析可行性和风险,要考虑利益相关人

步骤:问题定义、调研、验证、决策,也是根据工程思维得出来的

1 问题定义

为什么需要技术选型?技术选型的目标是什么?

只有明确了技术选型的目标,才能有一个标准可以来评判该选择哪一个方案

2 调研

满足技术选型目标吗? 满足范围、时间和成本的约束吗? 是不是可行? 有什么样的风险?风险是不是可控? 优缺点是什么?

3 验证

可以通过一 个小型的快速原型项目,用候

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值