首页 » 软件开发 » 做产品与做项目的区别(项目产品需求能力开发)「做产品和做项目的区别」

做产品与做项目的区别(项目产品需求能力开发)「做产品和做项目的区别」

少女玫瑰心 2024-07-23 22:50:24 软件开发 0

扫一扫用手机浏览

文章目录 [+]

如今公司所接触到的有些项目由数通畅联提供一体化的解决方案与平台类产品,对产品使用进行培训后,我方与客户信息中心人员联合实施交付,这种做法一定程度上模糊了项目与产品的边界,长远来看我认为这是一种发展趋势。
本文将在之前撰写的文章基础上进行完善补充,与大家分享新的认知与理解。

定义形态

1.项目定义

项目:项目是指一系列独特的、复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在特定的时间、预算、资源限定内,依据规范完成。

做产品与做项目的区别(项目产品需求能力开发) 做产品与做项目的区别(项目产品需求能力开发) 软件开发
(图片来自网络侵删)

软件项目:是指为企业开发或者部署实施一套专用的系统,或在特定的行业领域做一些系统之间的集成,在进入项目之前必须与用户进行具体的交流和讨论,了解清楚用户心目中的产品或项目预期是什么样子,然后招投标、签订合同、实施交付。

项目形态:特定行业开发、信息系统集成、数据治理分析、IT架构咨询等。

做产品与做项目的区别(项目产品需求能力开发) 做产品与做项目的区别(项目产品需求能力开发) 软件开发
(图片来自网络侵删)

2.产品定义

产品:是指能够提供给市场,被人们使用和消费,并能满足人们某种需求的任何东西,包括有形的物品、无形的服务、组织、观念或它们的组合。

软件产品:是指向用户提供的计算机软件、信息系统、套装软件或在提供计算机信息系统集成、应用服务等技术服务时使用的软件,是通用的产品应用于某一行业领域而不是像软件项目一样为特定企业需求或者单位定制开发。

产品形态:通用类软件、套装类软件、行业类软件、定制化软件等。

注意:下文的产品和项目都默认为“软件产品”和“软件项目”。

生命周期

1.项目周期

项目生命周期是描述项目从开始到结束所经历的各个阶段,通常划分为前期咨询、项目立项、招投标、项目实施、项目运维、项目终结/二期、三期等六个阶段,随着时间的推移及发展,项目会根据当前科技的发展、客户系统/技术的增加/变更、新业务需求产生等情况重新定义开发或在前期实施基础上进行二期更新升级。

项目周期

2.产品周期

软件产品生命周期是从产品构思到产品更新再到产品报废或被取代所经历的各个阶段。
与项目相比,产品不存在完成状态,产品会一直随着技术的发展、用户的需求迭代更新,直到失去使用价值后被替代为止,通常划分为需求调研、架构规划设计、产品开发/技术攻关、产品测试、投入应用、更新迭代等六个阶段。

产品周期

两者区别

做产品与做项目存在区别的同时也存在着联系,很多时候两者之间是没有明显的界限的,项目中包含产品、产品应用于项目,甚至很多项目成果或形式更偏重于产品,首先先来看下两者间的区别。

1.用户群体

项目:通常来说项目面对的客户群体为一个机构或特定范围内的一些用户。

产品:通常来说产品面对的客户群体较为广泛,可以为大众行业各类用户。

2.价格走向

项目:项目的价格不是固定的,通常对用户具体需求进行调研,之后针对需求进行工作量评估,根据工作量进行人天报价,在一些项目的报价中会涵盖产品的报价。

产品:产品的价格走向较为固定,通常版本不同报价不同,后期价格的调整也会根据企业品牌、市场等大环境因素进行调整。

3.团队分工

项目:项目团队构成通常为PMO成员、架构设计师、项目经理、项目副经理、软件工程师、测试工程师。

PMO成员:负责对项目进行监管,并在项目初期参与项目需求调研,之后在每个项目节点进行把控、审查。

架构设计师:负责整个项目应用架构、技术架构、数据架构的设计,并对项目中难点进行剖析答疑。

项目经理:是项目中的核心人物,项目经理需要对项目整体计划进度进行推进、把控,通常将工作按照业务功能模块划分给项目中不同成员,同时与客户汇报项目进展,沟通交互不明确需求等。

项目副经理:主要辅助项目经理工作,同时对项目经理工作做到心中有数,便于项目经理调动可以平滑交接过渡。

软件工程师:分为主力程序员和普通程序员,主力程序员主要负责技术难点攻克,普通程序员主要实现项目功能的开发。

测试工程师:主要对项目中的模块进行测试,通常来说项目中的软件工程师会参与项目测试工作,或联合客户一同进行业务联测等。

产品:产品团队构成通常为产品经理、架构师、开发工程师、测试工程师、美工等其他人员。

产品经理:负责调查、收集及提出产品需求,并根据需求对产品概念进行深入理解,根据不同产品形式输出如:PPT、文档、原型等资料,同时对产品进行试用感受、反馈意见等。

架构师:对整个产品研发过程起着至关重要的作用,对需求到设计每个细节进行统筹考虑,输出简要开发规范,搭建产品实现的核心构架,确认技术细节及工作。

开发工程师:同样分为主力程序员和开发副手,主力程序员主导开发工作及技术攻关,开发副手主要负责产品的常规功能的研发。

测试工程师:要对研发出的产品进行测试,通常除了专职测试人员之外,产品经理、架构师都会充当测试人员角色来获取第一手的反馈。

在产品研发过程中,还存在一些辅助性的角色,例如:美工负责产品整体界面的设计、美化,图标的制作;文档整理人员负责产品文档的撰写、核对、整理;产品配置、部署人员负责产品功能的配置及产品最终部署、培训等事宜。

4.驱动因素

项目:上文中提到项目的用户群体为某一机构或一些特定的用户,所以项目的驱动因素更侧重为需求驱动,根据客户的需求严格选用产品、规划整体架构及实施方案,必要时会根据客户的需求进行功能的定制开发,项目中一切都围绕客户的需求开展,项目成果力求操作敏捷、易用、友好。

产品:产品面对的客户群体较为广泛,所以产品的驱动因素更侧重为商业驱动,做产品是为了满足某一市场领域而针对性进行套装软件或单独产品的研发,对产品性能及快速迭代扩展的要求更高,产品的功能不仅要满足用户的需求,还要有竞争力、受广大用户欢迎,功能响应速度快、易扩展迭代、界面美观、操作简便等。

5.质量要求

项目:项目质量要求的第一准则就是满足用户的需求,保证功能适用于当前客户的使用习惯,性能稳定,即使项目时间紧迫也要保证每个功能全部好用,不能出现Bug。
同时保证项目交付成果易于维护,为项目二期或后续升级奠定基础。

产品:产品质量要求第一准则就是满足特定市场领域的应用场景,所能匹配的应用性更为广泛,性能尽可能做到最优,并且对产品逻辑、代码扩展性的要求更高,便于后续产品的迭代升级。

6.时间投入

项目:项目时间投入会根据需求进行评估,通常在4到8个月左右,对于一些大型SOA综合集成项目来说,投入的时间更久,届时会将项目分成几期来做。
项目有明确的时间节点,什么时候开始、什么时候确认蓝图、什么时候上线、什么时候结束等,每个节点都需要严格把控时间。
通常以项目的验收单作为分项的里程碑及整体验收单作为项目的交付证明。

产品:做产品的时间相对来说会比较长,因为产品的原型需要很早之前就开始规划,并对技术进行调研、攻关。
但产品的开发时间相对较短,通常在2到4个月左右就可以推出,后续不断推出新版本进行迭代升级完善,产品开发有明确的开始时间但无明确的结束时间,产品每个版本的发版时间都有明确约束。

内在联系

产品和项目在一定程度上是相互融合的关系,产品的研发和后续的升级可以被看做一个个小型项目去开展,而在项目中扩展的个性化功能也可以根据实际情况被考虑纳入至标准产品中,转化为产品功能,下面通过两者间的融合关系、共同目标、使用相同的开发语言、具有重合的应用场景、实施与维护、均可以为公司获取经济利益等方面来分别阐述两者之间的联系。

1.相互融合

项目的形式多存在于传统企业中,而当前许多互联网公司或金融行业(如:银行、证券等)将应用系统统称为产品,有些产品是有形的、有些是无形的,可以看作成一种收益模式,软件项目通常为内部主导开发,或少部分的资源是由外部进行协作开发。
在软件开发商中,如:电商行业,开发商的产品为网上商城等平台类的应用系统,在标准产品基础上为最终客户以项目方式进行扩展开发,满足客户的实际需求。

2.共同目标

做项目与做产品的目标是相同的,均是为了更好的为客户服务,满足客户的需求,帮助客户进行信息化平台的搭建。
无论是做项目还是做产品两者的商业目的均是为公司获取经济利益,支撑公司的运营与发展。

3.开发语言

无论是做项目还是做产品均是由开发人员根据不同的需求进行开发的,同一系列的项目与产品通常使用同样开发语言。
而开发过程均是由需求调研、产品/功能设计、程序开发、调整、完善、软件测试流程组成。
对于项目的管控均是由项目/产品负责人进行工作划分,明确至负责人,细分至事、人、天。

4.应用场景

在项目中包含产品、产品应用于项目,做项目不一定会百分百有产品,也不是所有项目都能(会)孵化产品。
但无论是做项目还是做产品均要满足客户特定需求、将产品以及基于产品扩展开发的功能部署于客户提供的服务器中。

5.实施维护

无论是做项目还是做产品在交付客户之后均需开发/研发人员进入客户现场对客户方的技术人员/使用人员进行培训,同时交付客户相应的维护文档以及使用手册。
无论在产品开发和项目实施中,都会进行为期一年(通常在合同里进行约束)的维护期。

6.经济收益

对于公司来说,成功的产品与项目除了为公司带来经济收益之外,还可以为公司带来品牌效益,可通过客户之间的相互介绍为公司带来更多的项目/产品的收益。
对于个人来说,如期或提前交付的项目,团队人员不仅可以获取相应的奖金,也可以获取对应个人能力的提升。

能力要求

笔者所在的数通畅联为产品技术型公司,致力于提供SOA集成套件和技术解决方案,在职期间参与公司许多项目与产品研发的辅助工作,与外界其他产品型或技术型企业不同的是,无论是项目经理还是产品经理,数通畅联都要求其具有代码开发能力,如:项目经理负责整个项目设计、评审以及通用功能的开发,产品经理则负责产品整体升级、核心功能开发。

在数通畅联,项目经理与产品经理的角色都非常重要,但二者能力模型略有不同,通常来说项目经理可以直接从程序员开始培养,经过2-3个项目即可成长为初级项目经理。
而产品经理必须要经历项目经理,虽产品经理具有项目经理的意识能力,但并非一定可以成功转型,下面笔者将对项目经理、产品经理的主要几项意识能力进行讲解。

1.项目经理

>>>>沟通能力

做为项目经理,沟通能力是十分重要的,在项目中有效的沟通不仅可以促进团队间甚至是跨部门、跨企业间的协作,还可以有效处理部门间、客户间、厂商间的关系推进项目顺利进行。
沟通不只体现在内外部协作上,还包括面对需求分歧、需求变更时的谈判,谈判中最忌讳露怯,在一些原则问题上要坚持、有理有据有节,过程中客观阐述观点,不受主观性和非理性的情绪影响,注意措辞,简洁准确的阐述。

沟通的及时性、充分性、准确性,会加快内部工作推进和外部项目里程碑、验收、收款进度,对于内部要注重及时性和准确性,便于了解实际的工作进度,评估项目的节点。
对于外部沟通要注重充分性和提前性,充分与客户进行需求、进度上的沟通,在节点到来之前告知情况,让客户有确认及阶段验收的心理准备,便于更好的推进后续事宜。

>>>>引导能力

项目经理在项目中需要较强的引导能力,这种能力表现在交互需求、讨论问题、产品培训等各个方面。
引导能力做的到位,不仅可以有效控制项目需求,把控项目进度,还可以提升专业形象,与客户建立良好的关系与信服度,为后续合作奠定良好的基础。
若想引导别人按照你的想法进行,首先要能够理解他人的行为,从本质上看问题,对他人的想法和行为进行足够的分析、理解,之后根据标准产品以及扩展开发综合考虑来进行引导。

在项目启动初期,客户对项目的成果大多是没有准确的心理预期,很多情况下,客户的认知来源于前期方案的引导,在项目实际实施过程中,随着雏形逐渐完成,客户会根据现状进行意见提出或产生歧义,这时对项目经理的引导能力是一种考验,要满足客户需求但不要被客户牵着走,从专业角度提出应对策略,将问题剖析、权衡,说服客户接受对双方都有益、可落地的解决方案。

>>>>应变能力

无论是做项目还是做产品都需要有详细的实施计划,之后按照计划来推进工作,详细的计划可以强化对项目进度的把控力度,制定计划是项目和产品经理都应该具备的条件,但相较于项目而言,变更的机率要远高于做产品的机率,为了将项目变更的影响降低到最小,项目经理要有妥善应对和处理突发事件的随机应变能力。

变更因素会来自内部与外部,人员变动、能力不足、协作性差、需求增加、产品出错等都可能引起变更,一旦发生变更,首先要确认变更的因素,快速对之前工作进行追溯,确认是否在之前就已经出现苗头,只不过没有被发现或重视,由此找寻发生的源头,之后从长计议。
对于内部的变更,例如:人员变动、成员能力不足、协作产生问题等尽可能去协调人力、物力的支撑,将损失降低至最小,避免对客户造成影响;对于外部的变更,如:需求增加、成果不满意等,首先进行调解、探讨,尽可能封闭需求,必要变更时走正规流程。

>>>>把控能力

若想项目顺利进行,除具备上述能力之外,还需要具备项目整体把控能力,项目进度的把控主要表现在三个方面:第一,对项目里程碑,关键节点进行把控;第二,对项目团队成员的进度、工作质量的把控;第三,对项目已知或未知风险的把控。

在项目中实施方投入人力、时间、财力成本来换回收益、口碑成本,而保证项目里程碑顺利推进可以有效降低项目成本,在里程碑推进部分除了做好本职交付工作之外,还要识别项目过程中的关键人和关键因素,对于关键人重视的关键因素加强管理与把控,必要时可以与商务人员合作推进。
对于项目团队的进度,要严格对项目周报及日报进行监控,及时发现问题并针对性进行解决和预防。
对于项目风险的把控,一方面在于对将要来临或已经来临的风险进行识别,从而对风险进行评估,抓住主要风险进行解决;另一方面在于对风险进行管理,这是日积月累的过程,通过积累,逐渐建立风险的应急预案及保障体系。

2.产品经理

>>>>设计能力

对产品的设计是产品经理最核心的工作,不同公司产品经理的职责不同,有的产品经理可以牵头开发产品,有的产品经理会根据高层或公司战略要求,进行产品研发工作,这就要求具备对产品的定位、需求、功能、原型等一系列的设计能力,前期没有将这些梳理清楚,在后续研发过程中很容易出现偏差。

首先需要理解产品的定位,通常会根据需求调研和市场探究获取,从而加深对产品定位、规划及对目标用户的理解,制定出产品的架构,包括应用架构、技术架构、数据架构等,之后根据需求及实现架构进行业务流程的梳理及规划,串联的各种角色等,保证角色间的配合及过程衔接,最后进行原型制作。
整体设计过程中要考虑周全,注重细节,结合需求与技术带来创新。

>>>>逻辑能力

在数通畅联对于产品经理需要兼顾项目经理的能力,同时在此基础上,需要具备独立思考能力和很强的逻辑能力,需要对市场前景、应用场景、方案组合、盈利模式都有清晰的认知,从用户的角度深入思考,挖掘用户深层次需求、抽象归纳,将用户需求转换为功能需求。

针对产品功能设计要具备逻辑性和严密性,过程中明确各功能的优先级,并规划如何开展、进度把控以及资源协调。
从开发至使用至运维,要考虑周全,使其符合逻辑,对于用户,要符合用户的使用常理,如:界面美观、操作简单、流程合理、稳定坚挺不宕机等;对于开发人员,满足其开发扩展的便捷性,如:开发快、易部署、易调试、易扩展等;对于后期产品运维人员,满足其维护性能要求,如:操作简单、日志层次清晰、易定位、能够快速恢复、调优等。

>>>>技术能力

在数通畅联产品经理的技术能力通常要高于项目经理,之前笔者的一篇文章曾经说过,产品研发过程中,最理想的状态是产品经理、架构师为同一人,这就意味着产品经理需要对开发技术、工具十分了解,根据需求,从需求到设计每个细节进行统筹考虑,并召开会议,确认需求及技术细节,从全局把控产品的可扩展性、后期维护性等。

技术能力具体表现为,对于代码有较高的敏感度,可以解决产品研发过程中的技术攻关以及“疑难杂症”,对新技术知识要能够快速学习、掌握、运用。
在产品研发的过程定会存在迭代完善过程,在迭代中有时会遇见异常现象,产品经理要求对于产品运行机制要做到了然于心、代码排错能力要技高一筹。

>>>>学习能力

产品经理需要对前沿技术有高度敏感性、对技术来龙去脉、发展趋势有准确的认知,能够作为公司内部技术人员的布道者,推进公司技术持续前进。
同时产品经理还需要对同行产品以及解决方案熟悉了解,能够充当售前协作市场人员进行产品宣讲、方案介绍等。
这时能力并不是与生俱来的,都是根据后天学习赢得的,所以学习能力是产品经理很重要的一项能力。

很多产品经理因为从业时间久,对用户、市场、需求特别熟悉,面对产品的开发凭借自身经验就可以做到八九不离十,对功能和需求进行正确的判断,但随着互联网产品日新月异的变化,用户的需求也不断增多,凭借之前的经验已经不能设计出满意的产品。
既然选择做产品经理,就要朝着行业方向进行学习、积累,广泛掌握行业知识及技能,并持续关注跟进最新动态,有计划的提升自身能力。

趋势分析

当今大环境下的产品与项目定义逐渐模糊并趋于融合,很多互联网公司已经开始将产品与项目进行融合。
互联网电商行业通常基于自身行业业务需求,提供一套完整的前/后台服务、客服系统、运营系统、仓储物流等系统于一体化平台,以产品开发、运营模式来建设信息化,高度把控、快速应对变化、IT系统灵活扩展。
互联网行业的发展模式跟其他行业、以及不同规模企业来说,当前运作方式以及发展趋势又有所不同。

1.大型企业

对于一些大型集团企业并不是规模越大信息化建设程度越到位,由于地域、行业发展不均衡,其信息化建设程度存在巨大差异。
对于信息化建设稍弱的大型企业,通常处于正在培养或已经具备信息化团队的阶段,信息中心人员能力较弱,仍需通过一些外采或开发商做项目的形式供信息中心人员学习、成长。
对于信息化建设意识高以及信息化建设到位的企业,通常具备专业的信息化团队进行产品研发、项目实施,团队具备IT战略规划及整合创新能力,少数情况下外聘研发人员为其专门研发定制化的产品。

对于该类企业,很多市面上的系统产品、项目都是公司自己研发与实施的,包括后续的维护、扩展、升级、融合,甚至可以把产品转化成收益模式,为公司赚取利益。
还存在一种情况为在一些具备较强实力的集团企业中,会将信息化团队独立划分为集团下属独立出来作为信息化产业公司,做为第三方来为集团或同类企业进行信息化产品或项目的开发/实施。
对于这类企业而言,做产品与做项目通常不存在明显边界。

2.中小企业

对于中小型企业信息化建设,无论是做产品还是做项目,大多会采取外采或开发商做项目的形式进行,也存在一些企业采取自建SaaS系统与外建PaaS平台相结合的模式,他们通常会在项目实施中加深对信息化的学习与认识,过程中逐渐建立、培养、强化信息化团队,在团队具备一定能力后,逐渐扭转局面,以自主研发实施为主,外部辅助开发为辅,实现项目向产品的转化。
小微企业通常不会做项目,因为无论从信息化系统建设程度还是人员配备程度来讲,都处于起步且待发展阶段,会采用市面上通用或特定的SaaS类产品满足当前业务中遇到的需求、个别业务可能会按照业务需求而构建应用系统。
然而对于小微企业来说,IT建设整体规划能力是一个挑战,对于信息化的建设,有些企业会采取构建统一IT技术架构,之后根据架构平台建设信息化系统,从初期避免资源重复建设。

在企业不具备或不完全具备自主研发能力之前,在项目实施选型中会慎重考量实施团队的整体实力,包括:产品的开放性、敏捷性、扩展性、维护性;方案对企业架构、IT治理的规划性、引导性、支撑性;实施团队的成熟度、专业性、开放性等,以便信息中心人员快速学习及掌握产品使用及最佳实践,便于能力提高及后期独立扩展开发、运营维护。

3.新兴行业

当前一些互联网新锐或涌现的一些新兴行业,具备充足的人力、物力、财力,信息化建设不只是局限于内部自建、自用,更多时候会成为商业模式的支撑手段、以及营销渠道,所以更注重对信息化建设整体的管控能力,即便如此,由于其业务模式、行业特殊性、时间成本把控等因素,在具备充足人力、财力的情况下,这些企业也不会采取全部自建的模式,对于通用类软件、平台类产品全部外采,由原厂商提供技术支持。
对主营业务信息化建设则以自建为主,但通常会采购统一的技术平台、整体解决方案来实现,跟产品提供商合作或者直接挖产品提供商的技术人员,在信息化建设过程中完成技能培训、知识转移,沉淀最佳实践,后续独立进行平台搭建、扩展、改造、维护,最终实现信息化产品/项目建设自主可控。

标签:

相关文章