Compression Digest
compression/_posts/notes/2020-04-29-notes-on-software-engineering.md
软件设计与工程笔记
软件工程笔记合集:ideas→发布用「3」抓大框架;工程化思维分阶段;敏捷/精益;系统思维重于只会编码;PM 先 use case 后协议。
Key points
规划与过程
- 组织规划力:自上而下目标 + 自下而上改进;用「3」掌握大框架再螺旋细化。
- 阶段:想法→概念→计划→设计→开发→发布;软件工程 = 过程 + 方法 + 工具。
- 瀑布有序;敏捷 scrum + XP + 看板;迭代中渐进式架构、重构技术债、持续构建。
极简与产品
- Vital few / 80-20;MVP 一次验证一个假设,快发多迭代。
- PM:洞察带来新产品;先 use case 后协议;用户要体验非技术;builder 看见作品运行很有力。
- 利益相关者地图;业务目标 = 主体 + 可测结果 + 语境。
架构与工程
- ASR:问题陈述、约束、质量属性场景(可测);架构选结构促质量属性。
- 区分难与不可能;排期压力 → 分解子任务、书面假设、团队共识估算。
- 别做大项目:从小处起步,过度设计常因想象项目太大;工业界重 scalability 胜算法新奇。
- 系统思维:知系统产出物、长短处;抽象背后常藏巨大复杂度。