来源:
c:\Users\26947\Desktop\考试\专业课速记\05_软件工程与系统架构.md用途:分类保存“原文完整迁移”基准,供完整阅读与逐字核对;以下正文保持源文件原样,不压缩、不改写。
软件工程与系统架构¶
1. 软件开发模型¶
- 瀑布模型:阶段清晰,需求变更成本高。
- 增量模型:分批交付功能。
- 螺旋模型:强调风险分析,适合大型复杂项目。
- 敏捷开发:快速迭代、持续交付、拥抱变化。
- Scrum 常见角色:Product Owner、Scrum Master、开发团队。
2. 软件测试¶
测试层次:
- 单元测试
- 集成测试
- 系统测试
- 验收测试
测试类型:
- 黑盒测试:关注输入输出,不关注内部实现。
- 白盒测试:关注代码逻辑和路径。
- 回归测试:修改后重新测试,确认原有功能未被破坏。
- 压力测试:高负载下观察系统表现。
- 性能测试:关注响应时间、吞吐量、并发数等。
3. 软件设计¶
- 高内聚:模块内部功能相关性强。
- 低耦合:模块之间依赖少。
- 高内聚、低耦合是软件设计的重要目标。
4. 常见架构¶
- 单体架构:部署简单,但扩展和维护容易受限。
- 分层架构:表现层、业务层、数据层。
- 微服务架构:服务独立部署,扩展性强,但带来分布式事务、服务治理、链路追踪等复杂性。
- SOA:面向服务的架构思想。
- 事件驱动架构:通过事件解耦系统模块。
5. 分布式系统¶
CAP:
- Consistency:一致性
- Availability:可用性
- Partition tolerance:分区容错性
网络分区一定要考虑,因此分布式系统通常在一致性和可用性之间权衡。
BASE:
- Basically Available:基本可用
- Soft state:软状态
- Eventually consistent:最终一致性
🟡 本分册解释为通用计算机知识补充,可能与你老师讲的不完全一致;专业范围以《考试大纲》"金融监管计算机类"部分为准。