跳转至

来源:c:\Users\26947\Desktop\考试\专业课速记\05_软件工程与系统架构.md 用途:分类保存“原文完整迁移”基准,供完整阅读与逐字核对;以下正文保持源文件原样,不压缩、不改写。


软件工程与系统架构

1. 软件开发模型

  • 瀑布模型:阶段清晰,需求变更成本高。
  • 增量模型:分批交付功能。
  • 螺旋模型:强调风险分析,适合大型复杂项目。
  • 敏捷开发:快速迭代、持续交付、拥抱变化。
  • Scrum 常见角色:Product Owner、Scrum Master、开发团队。

2. 软件测试

测试层次:

  1. 单元测试
  2. 集成测试
  3. 系统测试
  4. 验收测试

测试类型:

  • 黑盒测试:关注输入输出,不关注内部实现。
  • 白盒测试:关注代码逻辑和路径。
  • 回归测试:修改后重新测试,确认原有功能未被破坏。
  • 压力测试:高负载下观察系统表现。
  • 性能测试:关注响应时间、吞吐量、并发数等。

3. 软件设计

  • 高内聚:模块内部功能相关性强。
  • 低耦合:模块之间依赖少。
  • 高内聚、低耦合是软件设计的重要目标。

4. 常见架构

  • 单体架构:部署简单,但扩展和维护容易受限。
  • 分层架构:表现层、业务层、数据层。
  • 微服务架构:服务独立部署,扩展性强,但带来分布式事务、服务治理、链路追踪等复杂性。
  • SOA:面向服务的架构思想。
  • 事件驱动架构:通过事件解耦系统模块。

5. 分布式系统

CAP:

  • Consistency:一致性
  • Availability:可用性
  • Partition tolerance:分区容错性

网络分区一定要考虑,因此分布式系统通常在一致性和可用性之间权衡。

BASE:

  • Basically Available:基本可用
  • Soft state:软状态
  • Eventually consistent:最终一致性

🟡 本分册解释为通用计算机知识补充,可能与你老师讲的不完全一致;专业范围以《考试大纲》"金融监管计算机类"部分为准。