你的位置:首页 > Java教程

[Java教程]只缺一个程序员 如何让产品实现


你是否曾经遇到过这样的情况:你已经有了一个好主意,比如开发一个在线商店,制作一个应用等等,但是却只缺一个程序员,能够让想法变为现实?

很多我的朋友都曾遇到过这样的情况,我会在下面写出我认为不错的一些建议。
1. 把你的宏伟蓝图简化到「1.0 版本」
憧憬一下未来无可厚非,你可以把它们统统写下来。
但是也请想想,你最低的期望是什么,人们会认同的价值是什么,最重要的三个特性是什么,最重要的一个呢?
把这称之为「1.0 版本」吧,其余的以后再考虑。你甚至根本不需要告诉人们你的那副蓝图,他们实在感兴趣的话,那告诉他们吧。
对于一个简化的不复杂的版本,你的程序员可能更能游刃有余。
你的目标就是把 1.0 版本做好。独自完成这件事,也算得上是成功的开始了。其余的所有事情,就是围绕这个 1.0 版本来做的。
2. 描述这件事情
重要的事再说一次,要记住,只需要描述 1.0 版本即可,宏伟蓝图以后再说。
程序员不需要知道的细节,就不用写到需求里面了。
举一个例子:如果你想卖视频,你不需要说清楚视频里面有什么,只需要说「销售可下载的流视频文件」即可。如果你想做一个把古阿拉伯诗歌翻译成西班牙语的网站,你只需要写「把句子从阿拉伯语翻译成西班牙语」
告诉你,程序员爱死这种简单的表达方式了。
注意你的表达方式,让人们对你的故事有切身体会。
举一个例子:「公司创建账户,然后创建一个项目,这个项目有一个名称和一个描述。在这个项目里面,用户可以上传不同的待翻译的文件。每个文件有三个属性:原语言,目标语言,以及文件名。系统能够统计每个文件中的字数。当公司把文件的属性改为准备翻译的时候,它会自动提醒翻译者,通知内容包括多少篇文档,多少字数,以及报价。翻译者可以选择接受或拒绝。翻译者登录然后开始翻译文档,每翻译完一个,就把它标注为已翻译,然后系统会把翻译好的文档发送给公司审核。」
通过这样的情景描述,程序员会自己搜索其中的名词和动词,并进行理解,这会让你和程序员的沟通更加容易。(程序员会注意的词:公司,项目,文档,翻译,翻译者,等等)
3. 把自己当成用户,并好好总结自己的每项行为。
闭上眼睛,想象你正在使用这个网站。
描述你可以在这个页面进行的所有点击操作。
你点击后,发生了什么?准确的说,是系统发生了什么?接下来呢?
用如果-那么这种思考模式来思考。比如「如果有一个新用户,那么跳转到欢迎页。如果是老用户,跳转到个人账户页面。如果在输入电话号码的表单里面输入了一个单词,那么跳转到之前的页面,并带上一条提示信息。
用文字记录下所有 1.0 版本需要做的事情。每次点击,每次交互。这会是一份由小细节点组成的很长的清单。
谨慎用词,保存好,不要打乱清单。
这么做的目的是,保证这份关于用户体验的清单清楚明确,程序员就可以轻易的理解,每一个步骤做起来也容易。对程序员而言,感觉应该是吃薯片,而非一头大象。
4. 分解目标,分步解决
我们习惯性的认为别人的工作更加容易。
所以把 1.0 版本的产品分解成若干个「里程碑」,花一天时间仔细想想(可能是几天时间或不到一天)他们给你的工作总结中的要点,为这些小成功而欢欣鼓舞吧。
这个阶段别期望太高。除非是丑的天怒人怨,否则只要是功能可用,就可以接受了。就像修一所房子,刷漆和装修是最后工作。
举一个例子:我们的翻译网站,第一个目标可能是简陋的原型,公司能够创建账户,创建项目,能够上传文档。这就行了!如果这些功能能够使用,那就是一个很好的开端。
分解目标的思考让你有所作为。你会在每个阶段结束的时候停下来,保证在继续开始前你有着积极的士气。这样以来,错误便不可能一直存在。你会更好的衡量时间和成本。你们会有一个很棒的势头。
5. 如果上述都准备好了,但是预算不够怎么办
那你可以自己先尝试做一个版本,这个时候你会面临不太懂技术的问题,这时候你需要找一个类似DeviceOne这样的平台,提供可视化拖拽UI的平台,可生成Android、ios、windows三个平台的,而且还是纯原生的APP,可以让你事半功倍,这样你就会有一个更好的开端了。