第213章 项目安排(1/2)
九点整,办公室门被敲响。菲奥娜探头进来:“老板,要咖啡吗?”
“两杯,黑咖啡。”凌云说。
菲奥娜端进来两个白色马克杯,放下后离开,带上了门。
凌云端起咖啡喝了一口,没加糖也没加奶。艾瑞克也喝了一口,然后继续翻看技术文件。
“开发阶段分三期,”凌云走到白板前,指著右边那张空白日程表,“第一期,三个月,出核心框架。支持基本的http请求处理,静態文件服务,达到一万並发目標。”
他在日程表上写下:
phase 1 (12/15-3/15): 核心框架
- 事件驱动模型
- 基础http解析
- 静態文件模块
- 1万並发达標
“第二期,”凌云继续写,“两个月,完善功能。加反向代理、负载均衡、日誌模块,达到五万並发。”
phase 2 (3/16-5/15): 功能完善
- 反向代理
- 负载均衡
- 访问日誌
- 5万並发达標
“第三期,一个月,优化和稳定。压测,调优,文档,准备发布。”
phase 3 (5/16-6/15): 优化发布
- 性能调优
- 稳定性测试
- 文档编写
- 正式发布
艾瑞克看著日程表,眉头微皱:“时间很紧,尤其是第一期,三个月要从零搭出框架,还要达到一万並发。光事件驱动模型和http解析,就至少需要两个月。”
“所以需要抓紧时间。”凌云说,“项目组实行弹性工作制,但核心期晚上和周末可能要搭进去,奖金和期权会体现。”
艾瑞克在笔记本上计算了一下:“如果按每天十小时,每周六天算……技术上可能,但人会很累。”
“累就累三个月。”凌云说,“做成了,这个產品能定义未来十年的web伺服器市场。做不成,我们可能错过一个关键机会窗口。”
艾瑞克没再反驳。他在日程表旁边写下几个关键日期:12/20 团队组建完成、1/15 原型演示、2/28 一期验收。
“团队组成,”凌云回到办公桌,打开笔记本电脑,调出一张组织结构图,“总共十人。你负责整体架构和核心模块。下面分四个小组。”
投影仪亮起,屏幕上显示:
nexus 项目组 (20人)
├── 架构设计 (艾瑞克 + 1)
├── 事件与网络组 (8人)
├── http与模块组 (8人)
├── 测试与工具组 (2人)
“事件与网络组负责事件驱动模型、tcp连接管理、內存池。”凌云用雷射笔点著屏幕,“http组负责协议解析、模块接口、反向代理。测试组写压测脚本、做性能分析、辅助调试。”
艾瑞克盯著屏幕看了会儿:“人员分配你有建议吗?”
“有。”凌云切换幻灯片,显示每个人名和背景,“事件组建议让戴维手下那个俄罗斯工程师负责,安德烈。他写过底层网络库。http组从星语团队调一个,熟悉协议。测试组新招。”
“戴维会放人吗?”
“已经谈过了。”凌云说,“安德烈下周转过来。”
艾瑞克在笔记本上写下人名,並在旁边標註分组。写完他抬头:“开发环境呢?用什么工具链?”
“统一用gcc,c语言,”凌云说,“代码风格参照linux內核,4空格缩进,k&r风格。版本控制用cvs,每天自动构建。测试伺服器已经订了,下周到货,双cpu,4g內存,够初期用了。”
“文档標准?”
“每个模块必须有设计文档,注释率不低於30%。接口文档用doxygen生成。用户手册单独写,要能让运维看懂。”
艾瑞克记下。他翻到笔记本新的一页,画了一个简单的甘特图,把三个阶段的起止日期填进去,然后標出几个关键里程碑。
本章未完,点击下一页继续阅读。