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

原创 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
  • 723

软件项目管理读书体会

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

软件开发中,做产品与做项目有什么区别?

对于个体程序员对于产品与项目的选择性问题 在IT行业,产品和项目一直是程序员们讨论的热话题。下面是我看到的一篇文章,我觉得写的比较不错。和大家来共享一下。

软件项目开发流程(转)

一个软件项目研发的设计流程是怎样的呢?以通常标准的设计方法为例,(不过笔者喜欢快速原型法)。 第一个步骤是市场调研,技术和市场要结合才能体现最大价值。  第二个步骤是需求分析,这个阶段需要...

软件项目中需求的开发和管理

 引言 在软件开发过程中,项目最开始的信息来源于客户需要处理某件事情或某项工作,一般都是临时性,紧急性,独立性和系统性的的。所以这就导致我们承接项目后项目的不确定因素就非常多。在这其中项目需求...

华为软件开发云测评报告一:项目管理

体验环境 体验方式:PC端 系统:Windows 64位 浏览器类型:Chrome浏览器 浏览器版本:49.0.2623.110 m 体验时间:2017.05.11 ...

关于项目开发和《软件工程》的一点随想

这学期在学习《软件工程》这门课,上课的第一感觉不是学习新知识时的一脸茫然,反倒是在解决自己一个一个的疑惑,每节课都有豁然开朗的感觉。 从大一开始接触项目并逐渐接手项目,一直到主导开发工作的这么一个过...

面试总结-----工程化软件项目开发的流程、步骤

工程化软件项目开发的流程、步骤 需求分析 (1)相关系统分析员向用户初步了解需求,然后用相关的工具软件列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,...

C#软件开发实例.私人订制自己的屏幕截图工具(二)创建项目、注册热键、显示截图主窗口

C#软件开发实例.私人订制自己的屏幕截图工具(二)创建项目、注册热键、显示截图主窗口 实现热键功能 这里需要使用WindowsAPI 注册热键:RegisterHotKey 该函数定义一个系统范围的热...

十六招成为大型软件项目的开发英雄

我们都遇到过这种情况:一个大型软件项目的建设没完没了,好像总也完不成。事实上微软的一些大型软件项目经常会陷入这种困境,像Vista,SQL Server,XP这些大的软件项目就是如此,在项目开发的最后...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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