Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1524120
  • 博文数量: 465
  • 博客积分: 8915
  • 博客等级: 中将
  • 技术积分: 6365
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-30 15:05
文章分类

全部博文(465)

文章存档

2017年(33)

2016年(2)

2015年(4)

2014年(29)

2013年(71)

2012年(148)

2011年(178)

分类: IT业界

2011-09-14 17:06:45

IT项目管理之系统设计

项目于11月下旬开始进入系统设计阶段,一直到1月下旬提交系统设计说明书。而实际上只是最重要的终端系统进入系统设计阶段,知识库系统仍处在苦苦挣扎的需求分析阶段

老实说,有系统设计阶段吗?我深表怀疑,因为包括很多过了CMM5的公司系统设计文档,要么是系统需求文档的翻版,要么是在代码开发完成后再撰写的。另外一个原因是,我自身最多算是一个三流的程序员,对系统设计、开发工作也缺乏独特的见解。再则,系统的整体架构设计、数据库规划设计、项目的沟通管理已经消耗掉了我绝大多数的时间。在系统设计阶段,我更关注的是数据库的设计,一个任务是要对将近1000张数据表进行整理、规划,以整合各个不同的数据源和不同的接口。另外一个任务是设计几十张公共表,这是构建和集成几个子系统的基础。

12月份开始陆陆续续进来开发人员,直到春节前项目团队才算稳定下来。这个时候面临的任务是解决B/S开发架构问题,项目虽然被划分成了3个独立的子系统,可总不能各自为战吧,到底需不需要一个成熟的、稳定的、大家都认可的架构呢?或者说,这十几个开发人员需不需要一个统一的架构师和技术经理?

终端系统由黄项目经理负责,知识库系统由卓项目经理负责,其他系统由周***负责。黄项目经理和卓项目经理在公司内部分别隶属于不同的IT部门,周***来自母公司,当然3个小组理论上都不归我考核。黄项目经理是最资深的Java技术人员,为人比较随和,大家也都认可他的Java水平,他的小组包括4个开发成员;卓项目经理原来是做.NET的,第一次负责Java项目,业务水平不错,但为人比较固执,他的开发团队包括3个开发成员,其中两个成员也是从母公司借调的,和周***同属一个公司;周***则无意担当架构师一职。

我提议由黄项目经理担任该项目的架构师,来统一决定今后的开发方向,并向各子项目提供相应的技术支持。黄项目经理没有推脱,并根据自身的技术专长发表了自己的观点——系统采用SSIStruts+Spring+iBatis)架构。但卓项目经理却表示不同意,尽管他不熟悉Java,但他曾在.NET环境下做过SSH架构项目的实施,换成SSI会更加不熟悉,因此仍然希望延续SSHStruts+Spring+Hibernate)架构。话既然说到这个份上,尊重各项目经理的意见是最好的选择,因为我没有太多的技术发言权和足够的权力。从这个角度看,放权是最好的选择,也是最无奈的选择。

其实对于项目经理到底需不需要高深的技术功底和参与到日常开发工作中,还存在着一定的争议。往往自称不懂技术的项目经理能够把大部分精力放在业务和管理上,并且实现充分信任和放权;而偏于开发的项目经理往往容易陷入技术细节很难自拔,而忽略了项目管理本身。在外企中,的确存在着一些不懂技术的项目经理,项目实际运作的也还不错;国内企业则很大程度上仍担着“技而优则仕”的传统观念,当然不能一概而论了。

各个子项目团队已经逐渐建立起来了,我也就减轻了很多压力,主要负责公共表的设计,同时也担当需求和设计工作的桥梁,帮助各个团队一起进行系统分析。

春节很快就到了,突然知识库的两位借调来的成员向我辞行,询问之下才了解到原因是卓项目经理认为他们技术水平比较差,并且发生了一些冲突,我只好对他们进行安慰,并祝他们好运了。

在大家的共同努力下,春节前夕系统设计文档按时完成并提交了,这也标志着系统设计的正式结束

如图1-2所示为现场人员和支持人员在项目不同阶段参与变化的折线图。

 

系统设计是系统交付的一个很重要的环节,系统架构和数据字典的设计,很大程度上决定了开发的方向,选择一个好的架构师尤其重要。

 

本文选自《IT项目管理那些事》一书

本书详细信息:http://blog.chinaunix.net/space.php?uid=13164110&do=blog&id=2691389

 

阅读(475) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~