过年的时候,经常有七大姑八大茄子们问道,你的工作是做什么的?电视上天天报道的黑客什么的,你们在外面可别干什么违法的事啊。每到这时候,我都想直接说,我就是一个修电脑的,可是真要这么说了,七大姑八大茄子们又要带着去各家转,一边转还要一边修电脑,说不定还要手机下载电影小说歌曲,对了,还要贴膜。

为了能够把软件开发这回事说得更清楚,正好是周末,就花时间把内容写一写,让七大姑八大茄子们也能知道什么是软件开发,我们这伙人每天都在做些什么事。

首先,说一下什么叫软件。

软件,就是一切支撑电子设备的灵魂。你使用的电脑安装了 Windows 操作系统,那么 Windows 就是一个软件,你手机上安装了一个微信,那么微信就是软件,你去购买火车票,登录 12306 网站,那么 12306 就是一个软件,甚至你无聊了,想用陌陌找几个小伙伴,或者打开电驴在精神层次上与仓老师做一次沟通,那么这些都是软件,甚至你在百度网盘下载一个盗版电影,百度网盘也是软件。

那么,为什么要开发软件?

开发软件的目的有很多,不过主要有这么几种目的:

1, 服务于商务运作和业务运营

比如电商,很多的电商为了能够比竞争对手更加了解市场,更高效率地处理货物,大多都会开发自己的进销存,销售管理,退货管理,客户管理或者热点营销软件,当然不依赖于第三方软件(比如淘宝)而独立开发电商软件的也不在少数。

再比如房产租赁,移动公司的业务办理,医院信息系统,当然也包括大量的办公流程审批,这一类的应用也属于商务运作及业务运营类的软件,其本质还是使用软件服务于当前的业务模式。

2, 带来娱乐和放松

这一类的软件太多太多了,游戏,电影,聊天全部属于这一类,无论是手机,平板,手表,汽车当然也包括电脑,这一类的软件数量巨大,质量各异,并且新奇软件层出不穷。

3, 提供阅读,工具和效率相关的软件

个人时间记录,手机微博,手机日历,天气,英汉词典,这一类的软件全部属于第三类,这一类的软件相对功能单一,目标明确,以提高效率为目的。

4, 专业软件

Photoshop 就属于一种典型的专业软件,还有 AutoCAD 也属于这一类,目前市场上有大量的专业软件存在,而今天有很多的软件需要移植到不同的平台,比如手机的 Android 和 iOS。对了,顺便说一句,Android 和 iOS 也是软件。

5, 试验性质的软件

这一类的软件,往往是一家企业或者一个组织,希望尝试一种新的工作模式,或者需要尝试一种新的产品形态,再或者为了进入某一个市场而专门开发的某一种软件,这种软件往往只有一个模糊的需求,开发人员很难拿到定义好的需求规范,在市场上只有少数人能够接触到这一类的软件。

当然,除此之外还有很多很多软件,是无法随便归类的,比如说一个游戏外挂,再比如一个政府单位需要对某些数据做一些筛选处理,不过总体来说,这些软件也可以称为应用软件,简单地说,能够想像到的各种服务于我们日常生活的产品,都属于软件。

那么软件是怎么来的呢?是那些长得像大猩猩的程序员们用一般人不认识的程序代码一行一行写出来的。可是,具体的流程是什么样的?

首先,需要有一个产品经理站出来,寻找需求并设计产品。先不用管什么是产品经理,反正知道是一个经理,就行了。在做一个产品之前,有两个人是少不了的,第一个是客户,一个是产品经理。无论是客户出钱做软件,还是自己想做一个服务于别人的软件(比如做一个聊天软件给别人用),那你都需要寻找到客户,也就是说客户是使用软件的人,如果一个软件没有人用,或者最初就不知道这个软件要给谁用,那就没啥意义了。

OK,现在我们知道产品经理要和客户打交道,从客户那里了解需求,也就是知道客户想要一个什么样的软件。不过最大的问题来了:客户以为自己知道什么是需求,但其实客户只能提出当前的问题,并不能够了解当前的需求,他们误以为自己面临的问题就是需求,可是真正的需求是解决方案,也就是说产品经理需要引导客户说出自己面临的问题是什么,并且帮助客户寻找解决方案,然后把这一套的东西转答给程序员。

也就是说,产品经理至少要做到:

  • 客户啊,你的问题是啥,我来给你记下
  • 客户啊,你的问题如何解决,咱们一起来商议
  • 客户啊,看,这是文档,这里面写了我们怎么解决你面临的问题,还有,还有,这东西要花不少钱啊,还有,你看这软件是不是这些人来用?这软件是不是分这么几个模块?
  • 客户啊,你的问题和解决方案全部已经交给程序员了,那帮长得像 NBA 里面的詹姆斯的背着双肩包的人会帮你把软件做好的
  • 你们这帮大猩猩,做的软件有 bug,来来来,让我告诉你,你的 Bug 在哪
  • 客户啊,你看,我天天在你身边,帮你解决问题,现在,你爽了吧?你还要什么软件,你说啊,你说啊。

当然啦,要服务于一个行业,首先需要的是了解这个行业的基础知识。比如要帮淘宝卖家做软件,那至少需要了解淘宝体系内的各种知识;再比如要为一个矿场开发软件,那当然需要了解矿场是如何运作的,这就是做一行,爱一行,干一行,通两行。

那这样软件就做出来了?没有,当然没有,因为程序员拿到这些调研的需求,做出一个简单的开发计划以后,还有很重要的活需要做:精细定义产品。

程序员里面总会出来一个老大,长相大多比较像 23 岁的詹姆斯,基本会长成这样:

他会做出一付冷酷无情的态度说:你描述的需求不完整啊,你看,我们现在把开发分成了这么几个阶段,第一步,我们要做一个用户体系;第二步,我们要作一个消息系统,当然这个家伙还有可能会说:我们根本不打算做软件,我们喜欢看着编译的过程,就是一片黑色的屏蔽上有绿色的字不断滚动,就像这样:

这时候,产品经理只需要知道,程序员已经进入了某种入定的状态,他们需要的是:你告诉他们,客户想要的一切细节,即使你不知道,你也要告诉程序员:乖,别担心,我去帮你问那伙长得不酷的家伙们。

这时候,产品经理需要去编写一些用户的用例说明,比如像这样:

  • 用例开始
  • 用户点击登录链接,打开登录界面
  • 用户输入自己的用户名和密码,同时输入正确的验证码
  • 如果输入正确,则让用户进入自己的个人控制中心,否则跳转回登录页面
  • 如果用户连续三次输入了错误的密码,请给出提示“对不起,您的人品已用光”
  • 当用户成功登录个人中心后,记录下用户的登录时间和登录 IP 地址
  • 用例结束

这些东西,就是程序员的精神鸦片,不用管为什么,只要知道程序员看到这些,就会很激动地主动去写代码了,其他的事,无论是什么,他们都不需要,唯一可能看到的是他们在这个用例下面加上评论:什么玩意,客户根本不需要这样的东西,他们不懂。

当然,对于产品经理,看到这样的评论,你只要回一句:”乖,别怕,我去和他们说“。

只要通过这样的一个简单的流程,大多数软件就是可以做出来的,能否做得好还不好说,可是起码能出来一个可以点来点去的东西,也是可以用眼睛看到的东西。这就是软件开发的一个缩影,虽然软件开发比你想像得要复杂得多,可是产品经理总需要在这里做很多很多工作,这就是我们要干的活,也是我们的目标:做世界上最会做软件的团队。

原文地址:http://blog.csdn.net/websites/article/details/45042119

谢谢关注websites博客.

软件开发和产品经理是怎么回事相关推荐

  1. 软件开发和产品经理到底是怎么回事

    https://yqfile.alicdn.com/a749a8a2bed4e303acc9b98c853713f2b374aa1b.png" > 过年的时候,经常有七大姑八大茄子们问 ...

  2. 20-40K| 梅卡曼德视觉算法工程师、机器人软件、相机产品经理招聘

    3D视觉工坊致力于推荐最棒的工作机会,精准地为其找到最佳求职者,做连接优质企业和优质人才的桥梁.如果你需要我们帮助你发布实习或全职岗位,请添加微信号「dddvision」. 公司介绍 梅卡曼德机器人由 ...

  3. 有这样的开发,产品经理跪着帮你擦汗!

    女主宣言 自从知道了,我们的产品GG,抽屉里放了一把刀.我想是时候讲讲程序员和产品之间的故事了. 其实和产品经理相处还是很民主文明和谐友善的,研发和产品共同的目的就是为了项目的完美,只要逻辑说的通的, ...

  4. SNF软件开发机器人产品白皮书

    软件开发机器人 产品白皮书 使用说明书 模块名称:软件开发机器人 模块编号:12 项目负责人:王金斗 所属部门:技术中心 文档编制: 编制日期:2018-02-02 文档审核:王金斗 审核日期: 文档 ...

  5. 北京赞同科技发展有限公司产品开发部招聘高级软件工程师及产品经理

    北京赞同科技发展有限公司是一家金融软件行业的专业公司,目前公司已经形成包括前端(柜台)系统.大前置(中间业务)系统.通讯前置(通讯中间件)系统.业务集中监控管理系统等多条产品线,公司客户主要有中国工商 ...

  6. 投资经理,软件与互联网产品经理一个新去向?

    曾经写过几篇博文,比如<写给欲从事产品工作的应届生>.<走向产品是程序员的第三条职业通道>.<产品经理与工程师的换位思考>,不少朋友说读后有所收益,也成功地转向了产 ...

  7. 做好软件项目,产品经理该具备哪些优秀特质?

    产品经理作为软件项目的重要角色,其能力特质如何对软件项目的成功与否有着重要影响.我们经常听到这样的玩笑话,"毕业了却什么都不会,那就去做产品经理吧",貌似「产品经理」是一件门槛很低 ...

  8. 软件开发中项目经理有那些职责

    搜集了一篇软件开发中项目管理的文章,大家看看 当项目繁多的时候,需要规范,并且定义到细节,只有这样,才能支持大规模的开发.     PM非常重要,PM的能力将直接导致项目最后的质量.       本文 ...

  9. 软件开发中产品与项目区别

    很多人都以为软件行业是一个高薪的行业,所以就稀里糊涂的进入了软件行业.然而有很多人在软件行业待了多年,却可能从头至尾都没有整明白软件开发这个行业.现在我们就来聊一聊软件开发行业的一个概况. 随着社会的 ...

最新文章

  1. python中os.listdir()的使用和文件批量重命名方法
  2. java linkedlist实例_Java Linkedlist原理及实例详解
  3. bl小说里面有个机器人管家_5G无人扫地机器人+进口吸扫一体机 杭州环卫工装备升级了...
  4. 22课时、19大主题,CS 231n进阶版课程视频来了
  5. 为什么要发展鸿蒙,我们为什么需要鸿蒙?
  6. python从入门到精通pdf-跟老齐学Python:从入门到精通 完整版PDF[7MB]
  7. matlab电气常用工具箱,matlab电气工具箱实验指导书
  8. 数学建模国奖论文2019-C-C308分析
  9. 九天·毕昇中国移动平台安装MMdetection
  10. QQ被异地登录冻结,求解冻。有偿
  11. shping cloud搭建大觅网-之sping cloud初体验
  12. b类计算机房施工资质要求,B类机房中心机房建设技术规格及要求
  13. 应用实例 | 手把手教你用OpenCV实现餐盘水果识别计价程序(附代码)
  14. vios support for power
  15. 在单机上通过docker搭建redis集群试验
  16. codewars解题笔记---Are You Playing Banjo?
  17. python 编程入门到实践
  18. A段架构设计_隽语集(IT+設計思考_1801)
  19. OSChina 周二乱弹 —— 老司机表示右手无处安放
  20. 風地觀 (易經大意 韓長庚)

热门文章

  1. 消息队列(MQ)到底能干什么?
  2. 【offer来了】成功上岸美团、字节、华为(婉拒)
  3. Delphi XE7中使用JSON
  4. 机器学习——特征值分解
  5. iphone计算机错误代码,iPhone刷机报错怎么办?你需要这份iPhone报错代码故障判断...
  6. python迭代器和生成器的作用_python迭代器与生成器的详细介绍
  7. sap制造业成本核算流程(转自互联网)
  8. 前端架构之一浅谈前后端分离
  9. jupyter notebook导入numpy 失败 报错:Original error was: DLL load failed while importing _multiarray_umath:
  10. 两个MATLAB在线工具,画图啥的都不用安装了