您的位置:首页 > 编程语言 > C语言/C++

软件项目开发管理随笔

2006-02-13 13:13 471 查看
1.   项目性质:政府信息化工程;项目期限:1年;异地项目(30个小时的火车); 甲方概况:没有使用过或未深入使用过类似软件。

下面按项目的进展顺序来说整个项目的进程吧:

第一阶段  投标阶段:03年8月~04年12月

  到甲方单位三次,套套近乎,拉拉关系,了解了项目的大概情况:主要的业务,使用机构,资金状况...这个阶段开始写投标方案了。我恨透了投标方案了(缘由在后面会提到)!投标方案主要针对甲方的基本要求,结合我公司的软件,提出了一整的解决方案。

第二阶段  需求分析阶段(details analysis):04年1月~04年3月

   由于我有行业背景(本科和研究生都是自然资源管理方向),所以我是前期调研的必要人选;同时,公司委派了一位有着丰富的政府交流经验的兄弟与我一同到科户方调研.我在出发前制定了调研计划:

与发标方座谈,充分了解领导对整个项目实施的意图:是政绩工程,还是实用性项目?(这点太重要了,要是政绩工程,我们把论调提高,界面丰富一点,功能看起来来繁杂一些,后台的程序功能模块不必考虑太多.要是实用性项目,就要落实业务逻辑了)

确定软件真正的运行环境,包括网络环境和使用者.尤其是要确定软件的使用者是谁?只有软件的使用者才能对软件的功能需求提出重要意见.

走访各级用户.询问现有的工作状况,各科室人员对软件功能的期望.

与客户座谈,总结调研期间的成果,针对标书讨论标书的建设方案中的功能和性能方面要求的是否脱离了客户的实际需求,是否超出了当前技术的范围?是否增加新功能?确定软件的功能域非常重要,否则,用户提出太多要求,我们都答应了,开发团队会发现工期越来越紧,工作越来越多,项目组成员离职回造成对整个项目的工期严整推延,甚至会成为项目失败的导火索!

  我们在客户方用了2个星期的时间,按上述的计划进行走访调研.

  回来后对每天的客户访谈记录进行整理,会通产品布人员共同讨论方案的可行性(这没有花费项目组太多时间,3各星期吧,因为我对公司的产品线比较熟,在写投标书时避开了公司产品的弱项,为今后的项目开发节省了好多麻烦,呵呵...).

  开发编写<XXXXX软件项目需求说明书>.在网上dowdload了一些模板,找了公司内部资料,发现公司一些项目的<需求分析说明书>严重失实,都是官场客套,不能引领项目组成员进入软件开发.所以,自己摸索吧,逛论坛,学UML,用用例驱动,不断细化用例图.

  同时,编写了需求调查表,表内容包括:科室名称,岗位名称,姓名,日常业务,曾用的相关软件,对其他软件的使用状况,希望软件对哪项业务有帮助?将调查表发给客户(后来的事实证明,调查表成为需求的80%直接和间接来源)

  在需求分析阶段还要一项重要任务:我总是找部门主管要一线开发程序员.希望找2个计算机专业本科生,先对公司产品进行实验性开发.在开发过程中,他们可以巩固c++语言的基础,养成良好的编程风格,对项目中应用的公司开发的控件了解,还应对业务逻辑有充分认识.在真正进入编码阶段时,他们可以带领新项目组新成员进行开发了,那时,我可没能力对5个左右的新程序员进行指导了,会累死我的...

        在三月初,经过项目组成员审核后,向客户和监理公司提交了<XXXX软件需求说明书>,开始了漫长等待回复时期...

第三阶段  概要设计阶段(design 1)90:04年4月~04年6月

    设计软件:

Rational rose----部署图(deployment diagram);

Visio----------------活动图(activity diagram),组件图(component diagram);

ER/WINin---------数据库结构图

    首先,对系统的整体框架进行了设计,以数据为中心,设计了两个子系统:数据库管理子系统、Web信息发布子系统;

 

第四阶段  详细设计阶段(design 2):04年7月~04年9月

详细设计阶段的主要工作是类设计和数据库设计:

类设计:     定义类间的协作关系、类的功能定义、类的成员变量、类的函数。在ROSE中设计类,并绘制了CLASS DIAGRAM. 在类图绘制完毕后,我便用VC6.0和BCG(制作界面工具)搭建了数据库管理系统的程序框架,包括主要的查询视图、数据显示视图、管理界面(一些对话框)

数据库设计:包括数据库的逻辑结构、物理结构。用ER/WIN设计ORACLE数据库的SCHEMA,表结构,表间关联性

     第五阶段  实现阶段:04年10月~04年12月

IDE: visual c++ 6.0, vs.net 2003

第五阶段  测试与修改阶段:04年12月~05年1月

第六阶段  部署、验收、与交付阶段:05年2月

第七阶段  技术支持阶段:05年3月
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息