软件工程知识点
开发模型:
开发方法:
敏捷方法 | 优点 | 缺点 | 如何分辨 |
---|---|---|---|
极限编程 (XP) | - 强调技术卓越和软件质量 - 鼓励客户持续参与 - 响应变化快 - 通过对话编程和测试驱动开发(TDD)促进团队协作 | - 对客户的持续参与需求高 - 对于传统团队可能难以适应 - 文档可能较少,依赖口头交流 | - 频繁的小版本发布 - 对话编程和代码复审普遍存在 - 测试驱动开发(TDD)和持续集成(CI)的实践 |
水晶法 | - 强调与项目规模和重要性相适应的方法 - 较低的管理开销 - 强调人员沟通和团队协作 | - 缺乏统一的方法论和实践标准 - 对于需要严格合规的环境可能不够 | - 方法的实施随团队大小和项目复杂性调整 - 侧重于面对面沟通和最小的文档化 - 项目管理和实践的灵活性 |
Scrum (并列争球法) | - 结构清晰,角色和职责明确 - 适合复杂和快速变化的项目 - 定期的复审和调整机制 | - 对Scrum Master的依赖较大 - 在规模较大的项目中可能需要额外的协调机制 | - 存在Scrum仪式,如Sprint计划、日常站会、Sprint回顾和Sprint评审 - 使用Scrum板或类似工具跟踪进度 - 分为短的迭代周期(Sprints) |
自适应软件开发 (ASD) | - 强调快速适应和学习 - 鼓励创新和灵活的问题解决 - 适合高度不确定和复杂的项目 | - 对团队自主性要求高 - 可能缺乏明确的结构和过程 - 风险管理和项目跟踪可能较弱 | - 采用循环的“规划-发布-反馈”模式 - 强调问题解决和适应性 - 适用于复杂和非线性的项目环境 |
依旧比较容易错的:
1 指令寄存器、计数器等内容
2 海明码公式
2^k -1 > n+k
2 4 8 16 32
3 奇偶校验
4 位示图
5 页段式存储
6 直接地址索引 和二级间接地址索引
7 三个范式再看看
8 面向对象四大原则
9
评论已关闭