软件项目开发中的一些体会

原创 2011年01月18日 12:48:00

就在去年的11月,我和其他几个同学一起在外面接了一个水位计数据采集的项目。这个项目当时接过来的时候,原先以为不会太难,但项目现在进行到今天(2011.1.18),才发现很多东西不是我们想当然的,下面随便写一些东西吧,也算是项目中期体会吧。

 

1、项目的实施过程中非常重要的一点就是进度的把握,在这个项目推进的过程中,我原本有着一份正规的实习工作,任务也很紧,所以有一段时间,我必须在两个项目之间不停地切换,人很累。两边客户或老板催得紧的时候,那时候唯一的想法就是能够有更多的时间。所以我的结论是:如果你是项目的头目,那么在召集开发人员的时候,一方面要兼顾到人员的专业特长,另一方面也要考虑到项目本身可能存在的时间风险,与其找一个日程紧,专业知识强的人,倒不如找一个能基本上全身心投入时间的。

 

2、项目实施过程中还有一个比较麻烦的就是协调各方进展,像水位计这个项目,原先用的设备是enfora的无线模块,insitu的水位传感器,可是项目到快要结束的时候,各种问题暴露出来,无线方式数据采集不稳定,特定的modbus协议采集数据存在莫名其妙的数据偏差,客户方考虑到成本问题希望换设备,甚至出现所有的软件层面的都搞定后,出现设备返回数据不对等等。

比如说,之前没有使用DTU来作为无线模块的时候,数据采集非常不稳定,开发出来的产品完全是“野鸡”产品;后面客户方需要使用单片机作为node来连接水位计和无线模块,这样就不得不和客户方去联系合适的单片机开发公司,基本的硬件设计和本地下位机软件设计都托管给他们,但是双方之间又需要协调需求工作,这里面其实有时候还是比较微妙的:自己总是希望能够非常顺利简单的完成自己的任务,把可能存在风险的部分扔给对方,最后拿钱走人,这种心理现象是非常普遍的,不仅是在团队与团队之间,甚至团队内部也存在这种情况。

我的结论是这样的:作为一个开发人员应该勇于承担责任,并自信地来完成义务,故意拖拉或者有意推诿都是不可取的。但是在有些特殊情况下,还是需要从团队利益或公司利益的角度出发。

 

3、另外遇到技术问题,或者根本就不知道什么问题的时候,怎么办?

一、找可能了解这方面或者有做过类似经验的人:当时出现水位计和无线模块连接没有数据采集上来的时候,我非常果断,在没有能够通过网上资料和设备数据手册找到问题所在的时候(另外设备本身就是国外进口的产品,所以相关问题的解决很难在网上获得资料),我的想法是:果断找经验丰富的人,后来一天之内连续找了多个老师,最后找到了问题的可能地方。

二、如果使用的是其他公司的产品的话,能够及时的联系对方的技术支持人员,这样在一般情况下,他们都是很愿意来解决问题的,因为这对他们来说意味着订单、利益、生意。就像这次无线模块换成驿唐的DTU CDMA后,出现采集数据总是错误的情况,通过两天的技术支持人员的努力,终于找到了问题的症结,RS232-RS485转化器串口线接线有问题。其实像这种问题的出现可以这样来避免解决:在制作具体硬件完成后,应该让设计人员做好充分的测试,尽量在早期就把问题解决掉,因为像这种问题,如果对于不太懂硬件的软件开发人员来说,就很难找到问题所在,会耽误很长一段时间。所以从这一点也可以说明一个问题,项目中的很多事情需要提前完成,留出一定的时间来应对可能出现的意外情况。

三、就是为人处事了,我觉得:如何能够通过讲话、眼神、或者动作让别人能够非常愿意或者比较愿意的为你做事,并且乐于在下一次继续帮助你,这种能力的锻炼非常需要,因为项目实施过程中,光靠一个人完全不能支撑整个项目的顺利完成,整个过程中会牵涉到很多问题、很多人。从开发人员到客户、再到供货商。做项目头头既要会强硬(严格标定时间节点),也要会疏导手下的不满情绪(需要及时的赞扬,最好是能够在众人面前表扬他,及时的给钱,利益当前)。

 

4、最后一点,很多事情不是光靠技术能够解决的,很多非技术的原因都会影响我们、客户、供应商。(客户总是希望开发过程中时间周期短、开发费用低 ;供应商总是希望使用量大、可持续 ; 我们总希望开发顺利,能够准时拿钱。。。)

 

好了,讲了这么多了,下次再说吧。。。。

 

软件开发项目风险管理的几点体会

参与过大型软件项目的人都会认识到许多事情都可能出错,一但出错就可能给项目带来危害、损失或其它不利影响。风险是在项目中发生的一系列事件或不利结果的可能性。软件开发是一项高风险的活动,在项目开发过程的任何...
  • e_wsq
  • e_wsq
  • 2011年11月28日 23:57
  • 772

软件开发项目风险管理的几点体会

参与过大型软件项目的人都会认识到许多事情都可能出错,一但出错就可能给项目带来危害、损失或其它不利影响。风险是在项目中发生的一系列事件或不利结果的可能性。软件开发是一项 高风险的活动,在项目开发过程的...

软件项目管理读书体会

《软件项目管理一个统一的框架》,书中详细讲解了软件管理的复兴,引出了本书重点描述的迭代软件开发过程。        该书分为软件管理复兴,软件管理框架,软件管理规范,未来展望,案例研究和支持资料五部...

浅谈项目管理角色在应用软件开发中的重要性

摘要背景: 长沙一家公司与我公司签订了一个电子商务平台开发的合同。合同要求公司在半年内为其提供1.0版本。费用:100万人民币。 这个项目是夸平台开发的,有.net平台与java平台构成。整个项目...

软件项目管理师复习指南一:信息系统开发基础

Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE ...

软件项目开发过程中主要遇到的核心问题小结

1、软件项目开发合同的订立,合同需要对将来几个月甚至几年需要做的事情有个明确的定义说明,限定好工作范围、工作内容、承担的责任、项目总费用,每个阶段支付的费用都需要有明确的说明甚至付款条件等都需要一清二...
  • cxdnxs
  • cxdnxs
  • 2017年02月11日 09:45
  • 2124

如何做一个软件项目经理? ----写给公司所有的开发人员

如何做一个软件项目经理?----写给公司所有的开发人员

借助开源项目,学习软件开发 .

1. 开始之前¶ 1.1. 这份文档的目标读者¶ 软件开发初学者¶ 这是一份面向软件开发初学者的文档,所谓初学者,可以定义为:学过的语言不超过2种,在已经学过的语言技能方面,能够完成课程...

软件项目开发环境构建之五:Confluence、Jira、Bitbucket统一账户管理

在多个系统中,用一个账户能够登陆多个系统并具备角色授予的权限(所谓的单点登陆),无疑是最受人欢迎的,Atlassian软件家族可以通过多种方式来整合各系统的用户,常用的有: 1、通过统一使用外部数据...
  • jamenew
  • jamenew
  • 2017年02月04日 17:04
  • 2290

软件开发项目影响进度因素及控制浅谈

转自:http://www.educity.cn/pm/456229.html 一、影响软件开发项目进度的因素   要有效地进行进度控制,必须对影响进度的因素进行分析,事先或及...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:软件项目开发中的一些体会
举报原因:
原因补充:

(最多只允许输入30个字)