今天下午没事去参加了某公司来我校举办的一次产品设计相关的讲座。大部分“创新与设计”课程的学生或将来想作产品经理工做的同窗都去听了,我由于最近要帮一位老师作一项目的产品原型设计,连Axure还没彻底用会,所以也跑去旁听。程序员
这位高级产品经理讲的绘声绘色,教咱们产品需求文档怎么写?整个产品的设计流程、经常使用工具、产品经理的工做职责、研发管理相关的内容等等。我本身简单总结了几点:框架
- 产品设计过程当中最重要的四个部分:理清产品业务流、产品原型设计、需求分析文档PRD(word)和需求跟踪列表(Excel)。
这里要说明的一点是:之前的需求分析文档很大,通常都几十页甚至上百页,维护起来十分困难,如今的需求分析被拆分红两部分:需求分析文档+需求跟踪列表,其中需求分析文档通常只有四、5 页,包含一些基本固定下来的业务概述和功能描述,在之后的开发中通常不会再改动,须要改动的细节使用跟踪列表来跟进,大大减轻了维护难度。- 产品设计经常使用工具:Enterprise Architect(经常使用于业务流和建模)、Microsoft Visio(框架图、建模)、Axure(原型设计)和Balsamiq Mockups(原型设计)。
- 产品设计相关的理论:马斯洛需求层次理论、Kano模型分析和四象限定位法。
- 软件研发管理经常使用IPD(集成产品开发)和Scrum(敏捷开发)两类methodology。
- 推荐了一些像《谁说大象不能跳舞?》、《精益创业》和《周鸿祎自述:个人互联网方法论》这样的书籍。
整个讲座下来,个人确学到了一点产品相关的知识,本应高兴,但实则否则,由于我从这位高级产品经理和身边的同窗口中听到了一些贬低咱们程序员的言论。我首先根据今天听到的知识简单总结出整个产品的开发流程,以下图所示:工具
是的,作个产品真心不易,流程很复杂,产品经理掌控着最关键的产品设计部分,而咱们程序员只处于中间的一个小小环节,只负责实现人家设计好的产品图就行。就我今天听讲的感觉来看,产品经理是这样看程序员的:测试
- 咱们产品经理作的事是最关键的,咱们负责需求设计、原型设计和用户界面/体验/交互设计,这些任务是具备创新性和挑战性的,由于咱们要深刻挖掘用户的需求,思考怎样的业务流最让用户满意,而后设计出相关的原型甚至各个交互页面(点击这个按钮发生什么事),大家程序员只须要把我画的图和交互动做实现了就行,若是咱们改动了需求,你也要立刻改,若是咱们发现这套产品方案不行,要从新设计,你也得从新编码重头干。固然咱们尽可能少改需求、不改方案,不然不就是“耍猴(程序猿,猿,尼玛!!!)”了吗?
- 程序员作的都是最底层体力劳动。为何说是最底层呢?程序开发下面不是还有个测试吗?是的,测试虽然在开发以后,但也能管程序员,由于若测试人员测试后以为作的太烂,彻底有权力叫开发人员撤掉重写……
听到这些言论着实让我不爽了很久,不过这只是我我的听到的“产品经理心目中的程序员”,也许也有不少产品人以为程序员的工做很伟大,很神奇呢。编码
另外一方面,程序员又是如何看待“万恶”的产品经理呢?我曾听一个技术前辈是下面这样的想法:spa
咱们程序员的工做都是很magic的,可以实现各类各样的功能,有趣的、实用的、搞笑的……涉及的技术也很高大上,够人专研一生的。而产品经理就是作作调研、写写文档、画画图,没有什么技术含量,工做也很枯燥无味……设计
那么实际工做过程当中,产品经理究竟是怎么看程序员的呢?而咱们程序员又是如何看待产品经理的呢?难道是真的互相贬低吗?没有互相欣赏的吗?我我的认为这两份职业都是高大上的,都不容易……blog