Joel Spolsky: Painless Software Schedules (2000)
4 months ago
- #project-management
- #software-development
- #scheduling
- 美国铁路公司Acela特快列车的营销活动在服务开通前就已展开,突显了产品上市时机把握的重要性。
- Lotus公司为适配旧硬件将123软件3.0版本推迟16个月发布,结果硬件已过时,微软Excel趁机取得领先优势。
- 网景公司决定彻底重写浏览器的决策导致市场份额大幅流失,这证明了没有明确时间表就进行重大改造的风险。
- 制定时间表对软件项目至关重要,但许多程序员因嫌麻烦和质疑其价值而逃避这项工作。
- 推荐使用Microsoft Excel而非Microsoft Project等复杂工具做进度规划,既能简化流程又可避免过度复杂化。
- 进度表应包含以小时(而非天数)为单位的细分任务,以确保规划精确性。
- 必须由实际编写代码的程序员来预估时间,只有他们才清楚具体步骤和所需时间。
- 合理的进度表必须预留调试、系统集成、休假和缓冲时间。
- 管理者不应强迫程序员压缩预估时间,这会导致进度表失真并打击团队士气。
- 进度表能帮助团队聚焦核心功能,舍弃冗余需求,最终打造出按时交付的优质产品。