预研工作方法论

标签: 工作 方法论 | 发表时间:2013-09-28 19:54 | 作者:wojiushiwo987
出处:http://blog.csdn.net

预研工作方法论

       或许有朋友对题目感兴趣,预研、方法论,感觉貌似风马牛不相及。何为预研,为什么要预研?何为预研的方法论?林林总总,且听我娓娓道来。

       一、什么是预研?

       预研=预先+研究。在公司的项目开发中,当我们要新增一个功能模块(来自外部竞争对手的迫使、来自客户或市场的需求、来自公司高层的决策等),这个时候我们就需要提前研究下该功能模块的以下几个方面:

       1、如何实现新的功能?

       执行项目小组会商讨出实现功能的方案1,2,3。方案都具有理论可行性,到具体实操性有待论证,这点也是预研的工作。

       2、有哪些难点?(核心)

       方案1,2,3在实施的时候的难点,可以在预研的阶段通过“缩小场景”方法指出来。

       3、攻破这些难点的方案?(核心)

       攻破上述难点,执行小项目会探讨可行的方案。预研阶段就是要论证攻破这些技术难点哪个方案最优,或者如果方案都不可行,说明实施过程中什么原因导致不可行的,并通过已经取得的进制决定工作的下一步方向。

       二、预研的特点

       新领域:很可能是公司未涉足的新的领域,这块可能是公司高层从上到小都没有人做过。比如,微信的初始创建或许只是知道我们要做一个移动互联网的聊天工具。

       新知识:比如笔者第一次接触Lotus Notes,但技术知识的原理具有互通性,这点相信我们技术人员保持强烈的求知欲望都不是问题。

       道路的曲折性:我们只能被团队领导告知要实现这个新功能,新的东西大家都没有经验,这时去研究的话很可能会走弯路。但是,有时候弯路会给我们带来“转角”,说不定转角就会遇到新的思路,转角就会带来转机。只是知道,前面不太远的地方有座大山,但是具体如何最近的方式找到去山前的路及爬山的路,可能需要摸索好久,甚至回溯。

       举例来讲,IBM的Lotus Notes是企业里应用最多的邮件系统之一,另一个为Microsoft的Exchange。而对于Notes附件压缩这块所应用的压缩算法,从其对应的设置选项里我们能看出默认有LZ1算法,但其另一种压缩算法是什么的,没有官方文档提供,所以这时候只能是猜测。

       而对于LZ1及另一种压缩算法是如何实现压缩及解压的,这点由于Lotus Notes不开源,更是无从考证,Google去搜索也都是边边脚脚的资料,不详实、不具体。

       上述压缩算法不确定、压缩解压原理不明确,很难通过网上、手头资料去短期猜测或者琢磨透其中的原理,这个时候,我们就需要一个团队集大家所长去研究上述两个难题。

       三、预研的形式?

       无外乎两种形式:形式一、公司内部抽调人员形成预研小组,形式二、外包给高校(因为高校人员分析的理论能力还是很强的,外包给其他公司也会有的,大多有商业的原因可能会有一定的风险)。

       四、预研带来的好处?

       预研的摸索看似复杂,但实则是必须的。这是“爬山找路”的过程,是扫清前行障碍的过程,这为后续展开总体设计、详细设计指明了方向。

       五、自己体悟的语言的方法论

       5.1前期广撒网法

       广撒网法针对手头没有具体的资料,不知道如何入手。这个时候需要我们多Google求搜寻,中文资料有的就略过,直接英文关键字查询。当然,越是专业具体的关键词,Google的词条会越少,甚至没有。先略读搜索的链接,如果相关都要细读,看有没有自己想要的。

       举例:如开源Samba中rpcclient工具的getncchagnes、getcracknames、getdcinfo的具体使用,有几个参数,每个参数的含义。真的网上几乎不可能找到的。为什么?因为源码都没有说清楚。rpcclient是Samba实现的微软DRSR协议中的部分内容,Samba在rpcclient工具的帮助文档中提及没有官方的文档可参考工具如何使用。这点只能通过阅读源码进行猜测,工作量是很庞大的,开源代码可是基本没有注释的。

       当时甚至想到去求助网络,但搜索发现ChinaUnix论坛里几年前就有人问过类似的问题,但无人回复。所以,只能自己去摸索的。

       5.2旁敲侧击法

       当广撒网法后捞上的不一定都是我们想要的“干货”,这个时候就需要我们有一定的想法去揣测,此路不行,我们可以考虑绕行或者空中飞过或者修地铁过去。或许,从既得的资料中“捞取干货”。即“敲敲”这个行不行,“击击”那个行不行,从这些不行中,思考如何不行?怎么让他能行?

      举例:在搜索中无意发现DC之间通信中会产生drsuapi的数据包,这点隐约和自己文档里看到的一致,就引发了后续的再分析。

       5.3重点捕鱼法

       一旦发现我们需要的线索,就要展开“重点捕鱼”。从相同的地方再去“捞一杆”、“撒一网”,说不定还会有新发现。多试验该道路,往深处“捞一捞”说不定就是可行的的道路。

       5.4记录线索法

       对于新领域、新知识,不论是搜索还是自己实验、实现的时候,要适时记录下自己发下的线索。说不定某一线索,能引申出其他的新线索。网络搜索有个特点,就是发散。本来看这个问题,但是发现该问题又有其他关键词我不熟悉,又引发你去搜索,这样就可能形成的是“树形”甚至“网状”结构。如果你不停手,很可能就在自己搜索的“大网”或者“森林”里迷失自己,甚至找不到“回家”——回根节点的路。

       所以,记下来一是便于自己思路进行串联、回顾;二是,即使迷路,有记录线索就有了“路标”,照样能原路返回。

       5.5及时汇报沟通法

       项目中我们是团队工作,由于预研的特殊性质,我们可能不能像编码那样有明确的时间进度和具体工作量的要求。由于预研的不确定性,所以需要我们定时的去和团队人员、团队负责人沟通你的想法和你的新的“发现”。让大家共享你的“发现”,这样更便于你去确立NEXT方向,也便于团队纠正你相对偏离的方向,让你在预研前行的路上“不纠结”。

       六、预研小结

       预研是艰辛的,是极具挑战性的全新的工作,涉及的领域、知识面都是新的。

       预研的过程中,有时候你会苦恼,会迷茫,甚至笔者近2周的时间再找到一个突破点并得到团队认可后默许可以下一步,近两周一个问题去论证,“想死的心都有”。

       预研要有大胆质疑的精神,不是团队领导的话就是百分百正确的,因为在预研结果没有出来,预研没有明确的方向的时候,可能性都是存在的。你可以去通过自己的预研,去论证思路的可行性,通过自己的“发现”甚至去说明领导思路的不可行性。

       但一路走来,你会有丰富的“寻路”、“撒网”、“捕鱼”等的经历,当你再去遇到新的问题的时候,自然有多了方法,多了思考,终归是利大于弊的。

       以上是笔者自己的见解,所谓“方法论”无非是笔者自己走过的路与思考,不要纠结于上述名称,从实践中寻得的真知更为珍贵。

        笔者NEXT还有预研的很长的路要走……

        2013-9-28 11:33 思于家中床前

作者:wojiushiwo987 发表于2013-9-28 11:54:06 原文链接
阅读:187 评论:0 查看评论

相关 [工作 方法论] 推荐:

预研工作方法论

- - CSDN博客研发管理推荐文章
       或许有朋友对题目感兴趣,预研、方法论,感觉貌似风马牛不相及.        预研=预先+研究. 在公司的项目开发中,当我们要新增一个功能模块(来自外部竞争对手的迫使、来自客户或市场的需求、来自公司高层的决策等),这个时候我们就需要提前研究下该功能模块的以下几个方面:.        1、如何实现新的功能.

雷军的方法论

- Leo - 《商业价值》杂志
雷军做小米的过程,实际上就是将他从金山和做天使投资人时所积累的方法论,付诸实践的过程. 1992年,雷军加入金山软件,任北京开发部总经理;1998年,雷军担任金山软件CEO;1999年,金山软件筹备上市;2007年,金山软件上市; 2个月后,雷军宣布离职. 这是雷军从23岁到38岁最重要的人生一页.

Web API设计方法论

- - 博客园_知识库
  英文原文: A Web API Design Methodology.    为 Web 设计、实现和维护 API 不仅仅是一项挑战;对很多公司来说,这是一项势在必行的任务. 本系列 将带领读者走过一段旅程,从为 API 确定业务用例到设计方法论,解决实现难题,并从长远的角度看待在 Web 上维护公共 API.

企业网站建设方法论

- Outman - 月光博客
  麦肯锡并不神秘,方法论铸就神奇. 这是出现在麦肯锡系列丛书封面上非常醒目的一句广告语. 博文标题的想法正来源于此,感谢麦肯锡. 今天我们要谈论的主角并非麦肯锡,而是方法论,是建设企业网站的方法论. 正如标题说言:网站建设并不神秘,方法论铸就神奇.   伴随互联网的飞速普及,及相关建站软件的日新月异,现如今建设一个企业网站已相当容易,即使是对技术一窍不通的小白也能依靠智能软件信手拈来,所以说,科技很给力.

产品方法论:需求变更

- 盛开 - 所有文章 - UCD大社区
IT行业中失败项目的比例可以说明“项目管理”是很难做好的事情,项目失败的原因千千万,我认为需求管理、需求变更管理是个很重要的因素. 恰恰PM的工作缺不了项目管理,更缺不了对于需求的管理,偶然的原因,和团队分享了我对于项目进行中“需求变更”的理解和管理方法. 忽然发现之前写过很多产品思考和细节思考的东西,但从没有整理出方法论,后续应该多整理下方法论.

网络时代明星方法论

- - 《商业价值》杂志
互联网正在改变娱乐产业的规则和明星生存的方法论,制造和经营明星的固有体系正在被互联网推翻. 1995年,比尔·盖茨出版了《未来之路》一书,讲述了他对互联网发展的未来畅想. 他认为,未来互联网是重要的娱乐平台,人们可以不再因为光盘和磁带而感到头疼,人们可以在网上选择自己想看的节目. 现在看来,盖茨的预言已经成为现实.

中台工具产品方法论

- - 戴传庆
做中台工具产品不是一件容易的事情,需要对接上层所有业务方,做的慢业务方不满意,做的快业务方未必会给好的评价. 属于容易背锅,细节极其多,用户反馈建议多,但又难以出成绩和证明自己做的好. 虚构一些场景,大家肯定都遇到过. 老板:XX功能我觉得不错,做了吗. 老板:XX和XX等N个功能都不错,马上排期做下.

用户研究的理念、过程及方法论

- - 互联网分析
不同的企业可能对用户研究的定义有所不同,但首先可以肯定的是都是在研究“用户”. 差异在于我们了解“用户”的哪些方面呢. 我们可以研究用户的基本 属性, 生活方式,态度……;当然我们也需要研究用户的使用情景,产品使用行为模式……;如果更加具体一点,我们也需要了解用户在使用产品时具体的操作,对系统提 供的概念以及系统反馈的认知…….

为什么软件开发方法论不管用?

- - 开源中国社区最新新闻
无论大小项目,大型团队还是我个人,陈腐的联邦机构还是牛逼的硅谷公司,我都工作过. 我学习并使用过至少20种编程语言. 我还经历过瀑布模型/预先设计模型(BDUF:big design up front),结构化编程,自顶向下,自下向顶,模块化设计,组件,敏捷,Scrum,极限,TDD,OOP,快速原型,RAD,还有我可能想不起来的其它方法.

iOS应用架构谈(一):架构设计的方法论

- - 博客园_知识库
  之前安居客iOS app的第二版架构大部分内容是我做的,期间有总结了一些经验. 在将近一年之后,前同事zzz在微信朋友圈上发了一个问题:假如问你一个iOS or Android app的架构,你会从哪些方面来说呢.   当时看到这个问题正好在乘公车回家的路上,闲来无聊就答了一把. 在zzz在微信朋友圈上追问了几个问题之后,我觉得有必要以文章形式专门来讲一些个人见解.