CSDN的朋友们很多都是程序员或者程序员出身的管理,把程序员篇作为这次食品厂MES系列的结尾也是很必要的,好菜不怕晚嘛。
不知道大家有没有碰到过这种情况,就是一个程序员要独自面对整个项目。其实也算是正常,有些公司在认为你现在就是项目负责人了,去吧,去做MES项目吧。
没什么可抱怨的,见怪不怪。开始来吧。
光杆司令做MES项目,按照正常的系统开发流程,最少要开始去和客户打交道,收集需求,分析需求筛选需求, 以需求清单的方式咱先把需求文档整理出来,我知道很多程序员都是以开发者的思维考虑这些问题,碰到需求就要考虑设计架构,考虑技术方向了。如果是的话,我希望咱们能够跳出这个思维模式,因为客户的需求我们需要一步转化的,转化成整个项目系统的需求,这步非常关键,如果没有产品经理或者项目经理的帮助那也要写一个需求分析文档。 如果不考虑率好方向的话,很有可能就是南辕北辙了。
收集用户的需求要把痛点找出来,我举个例子,用户说:我想要一个MES系统,能够记录我们工厂加工过程中的数据,然后并把这些数据形成报表汇报给财务人员。 我们先需要问一下,为什么要记录加工过程的数据呢,因为我们无法通过笔 实时的去记录下生产数据,并且一旦不能做到实时那么很多数据就是不准确的。 这里面我们就能获取到两个重要的点了,一个是实时,一个是准确。 实时说明不能置后记录了,也就是不能去做一个电子文档形式的界面去让员工记录了 。 另外一个准确,其实也就是说的原料的 物料编码,批次,以及重量是不能够出差错的。
简单的例子大家就知道,方向的重要性了。 随后我们要组织一个需求评审会议,建议叫上相关的领导,这样做最少有两个好处,让他们知道你的工作内容和方向,这对后续的工作会有很大的好处,另外一点就是,你的需求转换过程也会会出现偏差,汇报时就会有人帮你指出来,进一步防止项目跑偏。
需求还是要经过筛选的,不一定要多细致,但是类似于“在肯德基里面点一份麦当劳”这种需求肯定不能做的,客户的需求一定要听,但是不一定要做,这个需要大家根据实际情况而定。
接下来的需求优先度也是产品经理需要定的,没有的话 我们来定。 就是说, 举例子来说,我们现在计划做一部手机,目前有几个功能,打电话,发短信,播放音乐,和录音。这四个里面哪些有限度最高? 一定时打电话和发短信,因为这个是时手机的基本功能。
优先度确定好之后,我们不要立刻就开始开发,这个时候我们把最优先功能写一个DEMO,画图也行,目的就是需要和客户还有领导能够演示一下,看看是不是真正客户想要的。
DEMO演示好之后呢,我们下一步还是不能着急开发,需要给你的领导一个这个功能的开发计划了。有的朋友也许就该着急了,为什么还不开发??? 如果你不能让你的领导有这个项目的参与感,不管你做的好不好最终吃亏的还是你,毕竟这是中国,有些事不便明说,咱们还是对领导保持尊敬 。
接下来就是进入开发阶段了,反而是这个阶段我却没有什么可以说的了,因为大家都有自己熟悉的开发语言和常用架构, 怎么用着方便就怎么来,没有那么多拘束。开发结束以后进入测试,等等。
接下去又是按照优先级,重新再来一遍,直到结束。
这里我没有过多强调技术,而是强调的客户和领导。其实我想说的是,如果你热爱开发,热爱写代码,这都很好,可是现实情况是,也许你不能做一辈子开发。但是我们却能做一个又会管理又会开发的IT从业者。