如果让我管理项目
? ? ? ?
如果让我管理一个项目
?
? ? ? ? ? 将近四年的工作经验,再加上自我的学习,已经能灵活地运用各种框架。以下是一点总结,因为这是一个没有标准答案的话题,希望有更多的人能发表意见。
?
? ? ? ? ?围绕老板的思想,对项目模块进行划分。按照指定的文档模板,完成每一个模块的需求分析,写好概要需求文档。
?
? ?2. ? 时间规划。
? ? ? ? ?
?
? ? ? ? ?根据概要需求文档,分配模块到每个人,制定完成每个模块的时间进度表。可用工具如MindManager。选择开发模式(如敏捷开发,根据实际情况,也不一定要每天早上都开会)。
?
? ?3. ? 详细需求设计。
? ? ? ??
? ? ? ? ? ? ? ? ?项目成员参照概要设计文档,进行详细需求设计。只要有一点小复杂的流程都应该画流程图(visio),鼓励有好的设计模式时,画类图(uml)。最后由我进行文档归总,整理出最后的文档。
? ? ? ? ? 当然这些也可以都由我来做,根据实际情况。前端可以根据详细需求设计,设计界面。
? ?
? ?4. ? ?数据表 ? ? ??
? ? ? ? ?
? ? ? ? ? 根据项目需要及公司实际,选择数据库(oracle,postgresql,db2,mysql...)
? ? ? ? ? 成员按照详细文档设计表(表的设计有太多的注意点,工具可用pd)。对表进行核查,建立好表后,如有需要也可以先建立好部分视图,索引,序列,数据字典。用PD也要注意正确使用注释。
? ? ? ? ? 确定是否建立开发库,测试库,生产库。
? ?
? ?5. ? ?选择框架
? ? ? ? ?
? ? ? ? ? ? ? ? ?一般情况下,如果项目成员功底好点封装地相对少点,功底差点,封装得多点(尽量傻瓜式),写好示例类,适当写一点文档,分架包(标明相应的文件的存放位置),进行版本控制。写工具类(具体要哪些就不说了)。写前端方法和控件。看项目规模,访问量,考虑是否使用集群,选择合适缓存工具。版本我喜欢用较新的(除非有特殊情况)。
? ? ? ? ? ? ? ? ? 选择中间件。
? ? ? ? ? ? ? ? ? 复杂的查询鼓励用view代替,复杂的增删改鼓励用function或procedure来代替。
? ?
? ?6. ? ?统一开发工具及代码注释。
? ? ? ? ??
? ? ? ? ? 后者经常被忽略,个人觉得统一的注释还是非常有必要的。
? ? ? ? ? 需求变更时,及时整理文档。
? ? ? ? ? 开发中,根据时间情况,特别有必要对部分效率低的代码进行审核。
?
? ? 7. ? ?测试
? ? ? ? ? ?
? ? ? ? ? ?各人仅用过jmeter进行过N个线程的访问,发现了自己代码里故意留的一个session不关闭的问题。好吧....标准的测试案例在详细需求时就应该写好吧。
?
? ? 8. ? ?后期维护
? ? ? ? ? ?
? ? ? ? ? ?如对表定期重建索引,更新规划器统计等等。进行项目总结:生成表的数据字典网页版或者CHM版,整理文档。
?
? ? ? ? 自己难得写个东西,想写什么就直接写了。希望能多多讨论。
?
? ? ? ? ?
? ? ? ? ? ? ? ? ?
?
?
? ? ??
?