`
holoblog
  • 浏览: 1224274 次
博客专栏
E0fcf0b7-6756-3051-9a54-90b4324c9940
SQL Server 20...
浏览量:18888
文章分类
社区版块
存档分类
最新评论

产品版本改造中的项目管理

 
阅读更多

  近段时间,一直在负责一个产品版本改造(C/S系统进行B/S改造)的研发项目管理,在任务紧、时间短、团队成员又没有相关技术(Silverlight)背景的恶劣情况下,我带领包含我在内只有6个人员(5个研发人员,1个产品经理,产品经理在系统版本改造中主要精力投入到辅助市场部进行产品推广去了)的超小型项目团队,终于在公司给定的时间范围内完成了整个产品的版本改造。这其中经历了需求变更、技术风险、人员变动等诸多问题,项目任然取得了成功,这种使用新技术的试验项目能够取得成功不得不说有几分侥幸,更多的还是团队兄弟之间的互相帮助、团队协作。

  在历时3个月的产品版本改造过程中,经历了大大小小的诸多问题,积累了一些经验和教训可以和大家分享。其中主要包括:需求、设计、研发、测试、实施、进度、风险、沟通、团队管理等。由于刚涉入研发项目管理,很多方面都做得不到位,于此记录下本次产品版本改造中的点点滴滴,在以后的工作开展中以此为戒,希望可以将项目管理做得更好。

  大家都知道,无论什么项目都应该以需求为核心,分析、理解清楚所有的目标需求以及潜在的需求,以研发出一套能够得到客户满意的软件产品,那么项目就可以算是成功了。不同的项目环境的需求也是不一致的,就我这边的项目情况,其需求主要体现在:成本需求、软件环境需求、软件功能需求等。

  1)、成本需求

    成本需求主要是在人力、物力、财力、时间等方面,项目团队由6个人组成,在公司内部研发,给定三个月的时间完成整个产品版本改造,这对于人力、物力、时间的需求是明确了,研发过程中需要的项目成本公司全部支出,也没有财力需求上的不足,在成本需求上公司提供了条件,以使整个产品版本改造工作能够正常、顺利的完成。

  2)、软件环境需求

    软件环境需求实际上也是属于成本需求的一部分,只不过这里主要想说明的是站在研发侧的软件环境,包括研发场地、会议室、研发计算机、配置管理以及常用硬件设备和工具软件。在项目启动后对于产品版本改造的技术选型,公告技术对比,专家评比等多种方式确定下了最终的软件环境,后续项目开发完全按照确定的软件环境方案执行。这样可以可以团队组织上直接避免软件环境的变更,唯一存在的风险就是对于研发所使用的技术熟练度,这可归根为技术风险。本次产品版本改造所采用的研发软件环境为:VS2010 + TFS + Office 2007 + ASP.NET + Silverlight + Oracle + PL/SQL。

  3)、软件功能需求

    业界许多专家都说,一个项目能否取得成功,对于功能需求的准确掌控应该占项目工时的60%左右。不管架构设计、团队建设做得多成功,对于需求的把控不准确,最终或许都会化为乌有。幸运的是本项目研发是从老C/S版本的稳定产品进行B/S版本改造,且该产品已经推出多年并在多个客户现场实施,取得客户的认可。对于需求的精确把控上不会出太大的问题,我采取了系统功能清单的方式,针对老系统现有的功能点进行逐个的列出,最后输出产品功能清单表,具有如下几个主要作用:

  A、有助于团队成员清楚知道产品功能点,避免需求偏差。

  B、有助于技术经理制定WBS和研发计划。

  C、有助于测试人员进行功能点测试,确定测试是否覆盖了产品所有功能点。

  D、有助于产品经理及市场销售人员,更加清晰软件功能点,好针对不同的客户需求选择性的介绍产品功能点。

  在版本改造中除了覆盖老系统的现有功能,同时也推出了些新的功能模块以及对现有功能模块的设计改进,对于新的功能模块需求变更的控制,采用大众评审的方式进行,会议后确定出最终方案,后续的实际研发中发现了什么问题,重复发起会议评审通过同样的方式确定一套可性的方案。

  本次产品版本改造我们非常重视设计,包括架构设计和UI设计两方面。系统技术选型为ASP.NET后台 + Silverlight前台,这对于系统前台只需要后台能够提供稳定的通信接口就行,对于系统后台的整体架构可以不关系其如何实现。鉴于多年来这套产品的实施情况来看,不同的客户需求不一致,以及部署麻烦等诸多问题。老系统中采用了插件式架构的方式将不同的功能模块进行系统功能组件化,以便能够通过灵活的配置实现系统功能点的动态组装,并采用了智能客户端实现系统部署和更新。

  新版本的产品也同样采用了插件式的架构设计,包括系统后台业务组件的插件化,系统前端插件化功能模块组合。研发了一套基于MEF框架的Silverlight插件式架构框架,可以灵活的更具系统配置组合系统功能模块,动态装载模块程序包并托管运行等。

  对于设计管理工作主要涉及到架构设计管理、功能模块详细设计管理和系统UI设计管理三方面。

  1)、架构设计管理

    架构设计以安全、稳定、高效、易维护、扩展等为导向,基于微软MEF设计的插件式开发框架。通过不断的优化更新,最后确定下最终的框架设计方案,输出架构设计文档并提交到配置管理,然后启动框架的开发,测试。在具体的研发过程中出现了相关的变更通过会议评审确定变更后的解决方案,然后更新架构设计文档并修改框架实现完善框架功能,整个过程中都有指派专人负责。

  2)、功能模块详细设计管理

    需求明确的前提下开展功能模块的详细设计是非常顺利的,基本上和架构设计的管理差不多,首先确定下模块的实现方案,然后编写详细设计文档,文档通过审核后提交到配置管理,然后启动模块开发。如有变更需要从走评审,重复前面的步骤,每个功能模块都有指定直接负责人。

  3)、UI设计管理

    UI设计管理这块的工作相对比较简单点,基本流程也相差不大,首先确定下设计方案,然后再开展设计工作,如果设计出的UI效果图没有达到预期的效果或者对于前端开发人员来说比较难以实现,就将需求提交给美工进行修改。在设计过程中的步骤大致如下:

  A:设计出主体界面框架效果图,确定后由研发人员实现系统主体框架界面。

  B:设计出通用的界面元素,确定后由研发人员将通用界面元素统一开发为通用用户控件或者定义为系统样式资源。

  C:细化到功能模块的局部,根据不同的模块功能实现设计出大方、直观、简洁的界面,确定后由研发人员实现界面效果。

  

  研发管理主要是在研发进度、风险、成本、质量、沟通以及团队管理方面。首先根据系统功能清单划分出WBS工作分解结构,随后制定了研发计划,在研发计划执行过程中根据实际进度情况不断细化WBS工作分解以及更新研发计划。使用了微软TFS做项目配置管理,并基于TFS展开项目管理工作,包括进度计划,进度跟踪,任务分配等,并让团队成员通过配置管理直接将分配给自己的任务同步到本地Project项目计划文件中,一旦项目计划发生变动便立即通知团队成员更新项目计划表。盯紧项目计划,按照计划有效的执行,从而在项目风险和成本上可以得到一定的控制。

  由于团队成员对于Silverlight技术的掌握程度不够深入,同样也存在着很大的风险和成本投入,技术层面上我采用的是培训的方式来提高团队成员的技术水平,集中培训技术大体范围,私下根据其负责的功能模块对技术的需求情况单独指导,以此来保证不同的人重点学习自己负责的功能模块需要的技术点及某一方面的技术,不用团队成员都将所有的技术点都学习一遍,从而缩短了学习时间,为整个产品研发直接降低了成本的投入。

  对于研发过程中的产品质量管理也是非常重要的,项目启动后我们项目团队一起制定了一系列标准规范,包括数据库设计规范、编码注释规范以及性能等其他规范。通过这些规范来约束项目团队成员的研发习惯,避免出现个性化的特色模块。其主要体现在数据库表命名、字段命名、注释模板、变量命名、界面元素命名、类,接口命名、代码组织结构、稳定性、程序包大小等多方面。通过每周的代码走查(Code Review)来检查团队人员是否按照规范在执行,没有按照规范执行的要求立马修改,在编程风格上形成一个统一的风格,对于他人接受项目模块或者是后期的维护,都具有非常重要的作用。

  团队人员流动造成项目进度拖延,同时也会增加项目风险和成本,期间有一个员工离职,幸运的是从别的项目组及时的调配了一个人员补上,避免了因为人力的缺乏对项目的进度带来影响。在整个研发过程中团队成员之间讨论问题也发生口头上的争吵,没能达成一个统一的共识的情况,纳闷的是组里面就有个一位老员工,时常因为讨论问题因为意见不合而和新员工发生争执,明明知道自己的东西存在问题也不承认的陈咬金。虽然作为项目的负责人,也是团队的技术经理,某些时候也很难说话,为了解决问题不得不得罪人,针对不同的情况我主要采用了以下几种方法:

  1)、综合评估团队成员的方案,分析各自的优缺点,最终让团队成员一起总结出最佳方案。

  2)、综合评估团队成员的方案,根据自己的经验和对业务的熟练度,给团队成员提出备选方案,最后让大家评估选择确定方案。

  3)、团队成员的方案都不可行,根据自己的经验给出一套方案,强制项目团队执行。

  4)、出现沟通解决不了的问题,及时上报给领导,让上层人员出面调解。

  本篇内容为本人在项目管理工作中的真实记录,以便在项目管理过程中遇到同样的问题的朋友参考。同时欢迎广大从事项目管理的朋友前来指点、交流,大家共同学习,进步。

分享到:
评论

相关推荐

    人工智能-项目实践-毕业设计-学生教学教务管理系统:NetCore 3.1 + Vue + EleUI(优化多表联查+录制视频+

    PS:当前版本只是我的一个练手项目,并不是商业化产品,在多表的处理上,没有用到mapper联查,而是所有数据都查出来,这种方式数据多了肯定会慢(当然,如果start100+,证明有人用,我会升级改造的),所以目前大家...

    客客出品专业威客系统KPPW v2.5 GBK.zip

    2014年6月18日KPPW2.5正式版发布了,新版借助客客团队近4年来威客行业的开源产品和商业项目的成熟经验,对前端功能进行了深入改进。KPPW从产品规划、UI设计、程序开发多个环节进行了优化,在未做框架重构情况下对...

    客客威客系统KPPW 2.2 GBK Beta.zip

    本次开发对9套任务交易模型和2套商品交易模型流程进行了全新梳理,新改造的流程更具场景应用性,而且特别新增交易后台管理,让客服人员方便的随时参与交易过程管理。整站站长可结合自身运营特点自由搭配选择,搭建最...

    学生教学教务管理系统.zip

    当前版本只是我的一个练手项目,并不是商业化产品,在多表的处理上,没有用到mapper联查,而是所有数据都查出来,这种方式数据多了肯定会慢(当然,如果start100+,证明有人用,我会升级改造的),所以目前大家不用...

    数字校园设计方案-完整版本.doc

    目 录 第一章、项目概述 5 1.1项目背景 5 1.1.1设计目标 8 1.1.2设计原则 8 1.2各系统设计简述 9 1.2.1综合布线系统 9 1.2.2网络系统 14 1.2.3主机系统 14 1.2.4监控系统 15 1.2.5广播系统 15 1.2.6多媒体教学系统 ...

    PCAuto 5.0

     ●力控forcecontrol5.0版本软件改造了HMI组件管理工具,增加了大量的专业矢量子图,矢量子图更加丰富,适合工程项目快速生成;  ●力控的图形监控客户端不但支持本地的监控,同时还适合网络“发布”,支持IE浏览...

    客客威客系统KPPW v2.5 GBK Beta.zip

    另新版本中还新增了默认的任务模型,满足目前威客行业基础性任务模型运营的所有要求。 四、商城交易模型化,拓展性更强 威客商城是以卖方市场为导向的新型威客模式,KPPW一直都引领着这一主题的创新发展。新版本在...

    我国GIS软件的发展现状

     近年来,国家科委采取了一系列措施,将GIS软件产品开发正式列入国家“九五”重中之重科技攻关项目,提出了“引入竞争机制,坚持滚动发展,加强科技攻关,落实产业建设”的方针,并通过连续两年的全国GIS软件测评,...

    果酱小店开源电商系统源码-PHP

    果酱小店开源电商系统源码是从公司商业产品中抽离出来的开源版本,对于基础模块(比如Component目录下的组件)我们达到了 100% 的单元测试覆盖率,保证了产品的健壮性,无论是用于商业项目还是自学,都是非常不错的...

    java版本贷超分销系统源码-shengchaojie.github.io:升超界.github.io

    金服平台基础能力建设,建设运营端和商户端,提供基础能力,比如商户管理,产品管理,团队管理,菜单插件管理等,其中功能开放通过菜单插件实现 对接各业务方接口,对外提供能力 基础服务单点登录starter改造,增加...

    IPTV服务器软件介绍及使用.docx

    秒开网络推出的IPTV服务器软件分为不同产品版本(直播系统、酒店互动电视系统、多媒体教学系统等),这些不同版本软件都是统一的ISO的安装包,只是在安装过程中选择不同版本安装就行。 IPTV服务器软件介绍及使用全文...

    休闲旅游门户网站模板下载

    后台总管理员可以给不同的管理用户分配不同的管理权限,可自由设置管理用户的管理详细项目内容。同时总管理员可设置添加、编辑、删除权限分配,管理用户也可以直接后台增加/修改/删除等内容。 13,强大的广告管理...

    客客出品专业威客系统KPPW源码 v2.5

    2014年6月18日KPPW2.5正式版发布了,新版借助客客团队近4年来威客行业的开源产品和商业项目的成熟经验,对前端功能进行了深入改进。KPPW从产品规划、UI设计、程序开发多个环节进行了优化,在未做框架重构情况下对...

    Student.Achieve.Manager:学生教学教务管理系统:NetCore 3.1 + Vue + EleUI,(star100 +,优化多表联查+录制视频+)

    学生管理系统:ASP.NetCore3.1 + Vue + EleUI PS:当前版本只是我的一个练习手项目,并不是商业化产品,在多表的处理上,没有用到mapper联查,而是所有数据都可以来,这种方式数据多了肯定会慢(当然,如果start100 ...

    液冷服务器能效计量测试规范.docx

    液冷服务器能效计量测试规范 范围 本规范适用于数据中心等机构中液冷服务器系统能效参数的测量,可用于分析液冷服务器能效状况,供液冷服务器设计、制造、运维、改造参考,可作为液冷服务器能效水平评级的依据。...

    软件工程知识点

    (4)工程管理:项目规划,项目资源调配,软件产品控制。 (5)工程原则:分阶段生命周期计划,阶段评审制度,严格的产品控制,采用先进的技术, 成果能清楚地审查,开发队伍精练,不断改进工程实践。 (6)工程目标...

    客客出品专业威客系统KPPW2.2GBK【正式版】.zip

     威客系统是社区与电子商务跨度的弱关系产品,在强电子商务交易行为下,社区粘度将是威客类网站提升项目价值的新方向。新开发的广场功能,借鉴微博流的展示形式。不仅整合了威客任务和商品交易的信息流,同时新增...

    初步设计与方案设计的区别(1).docx

    文件规定 文件应按:透视效果图、设计单位技术负责人、设计人员名单(签名、盖章)、市城市规划管理部门对项目的历次批文复印件、设计总说明、分专业说明、分专业图纸等顺序装订(含设计概算)。各专业图纸须签字齐全。...

    客客威客系统KPPW 2.2 UTF8 Beta

    威客系统是社区与电子商务跨度的弱关系产品,在强电子商务交易行为下,社区粘度将是威客类网站提升项目价值的新方向。新开发的广场功能,借鉴微博流的展示形式。不仅整合了威客任务和商品交易的信息流,同时新增...

    Java经典入门教程pdf完整版

    企业资源计划ERP、知识管理KM、供应链管理SCM、企业设备管理系统EAM、产品生命 周期管理PLM、面向服务体系架构SOA、商业智能BⅠ、项日管理PM、营销管理、流程管 理 Work Flow、财务管理…..等几乎所有你能想到的应用...

Global site tag (gtag.js) - Google Analytics