分享

面向产品的需求开发

 宇尘埃的图书馆 2021-02-04

本文结合作者早年在产品开发部门管理以及产品研发管理过程中的经验教训,对面向产品的需求开发在实际操作中应注意的问题进行讨论。分为两部分,一是“软件产品的开发VS软件工程理论”,二是“面向产品的需求开发在实际操作过程中经常遇到的问题”。

一、软件产品的开发VS软件工程理论

顾名思义,面向产品的需求开发讨论的是产品需求开发。产品研发不仅仅是一种工程行为过程,也不仅仅是软件产品的生产过程,更应该是一种充满创新、创造和创意的,不可复制但可不断提升的一种软件产品发明过程。为此,个人认为:传统的软件工程理论(在软件产品生产过程中,发挥着巨大作用),在产品研发过程中并不是同样的完全适用,甚至还很有可能由于过于机械地工程化,而使新软件产品的研发最有价值的创意得不到最大体现。

然而,软件产品开发过程也并非可以完全抛开软件工程理论,而肆意的天马行空。在这里,仅仅是建议大家能够更具创造性,在软件产品研发过程中应用软件工程理论。其创造性具体体现在下面的ABC:

  1. 过程不拘泥于制式,但务求讲究方法;

  2. 文档不受累于形式,但务求体现核心要素;

  3. 产品不求必须标新立异,但务求有彰显其应用价值和并拥有广阔的市场空间。

二、面向产品的需求开发在实际操作过程中经常遇到的问题

(一)“搭积木”的思想固然是好的,但要循序渐进

在2001年,笔者曾负责开发一“新”业务领域的大型企业级业务应用,作为该产品项目以及开发部门的负责人,向公司领导和团队成员大谈了一通:软件也要“搭积木”、要“即插即用”的“光辉”思想。开始从队伍建设、产品规划、技术研究等各方面全力实现理想的产品开发之梦。当时计划把应用从架构上分为DO(数据对象)、adapter(适配器)、BO(业务对象)和UI(用户界面)四个主要层次,也做了详细计划并且后来也确实积累了部分所谓的“组件”,但这个理想产品开发之梦最终的结果是“无果而终”,梦依然是一场梦。梦的破灭甚至极大的挫败了当时的信心和勇气,以至于后来更换工作时改弦更张,几乎没有应用任何之前的积累和优势,一切都开始从新来过......。

多年之后,回想起来,最大的失误在于犯了急于求成的错误。理想化的完全规划好再去具体做,还是一边做一边规划、一步步前进,在产品研发策略上却是需要仔细斟酌。

(二)有好创意的产品未必就是好产品,但没有好创意的产品注定平庸。

产品=ideas,这里并不仅仅是软件产品。

(三)重视架构,更要注重细节

关注架构的软件从业大军还是在逐渐壮大的。然而在产品开发过程中“细节”,却往往真的在决定着成败。

不难理解:设计再“优良”的产品,在处理人机交互中的系统提示并不友好,甚至牛唇不对马嘴;充分考虑的共性如适用于所有中间件、所有数据库....等等,却往往缺乏在具体环境中进行最优适配的设计;功能强大、界面混乱等。上边的这一切任何一个小细节的疏漏,都会使产品的档次大打折扣。

(四)好思想,不能只停留在思想,也要好的实现

产品之所以称之为产品,在于它已经不再仅仅停留在“IDEA”,要思考,更要实践。没有好的实现,再好的设计思想也无法真正发挥出价值来。

(五)产品需求开发是不断迭代的过程,不是简单的需求整理和规格说明编写

产品需求的开发,体现在对其应用场景的充分分析与设计,体现在对系统的输入、输出和处理从界面到逻辑的系统性梳理和规范化、规格化(这也将是系统设计时最重要的参考)。和其他开发过程一样,产品需求开发不是静态的,需要随着产品的各个生命周期不断改进和改变。不是文档本身,而是在于对目标产品需求规格的系统性思考和规划。

(六)产品需求开发要“民主”,也要“集权”

广泛征询意见、采集需求很重要,但产品的系统分析人员有没有主心骨,直接决定着产品的成败。所以,在产品需求开发这个问题上,民主很重要、集权也很关键。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多