首页 > 其他分享 >做项目与做产品的区别详解

做项目与做产品的区别详解

时间:2023-07-10 10:38:29浏览次数:38  
标签:项目 Agile 区别 开发 客户 产品 软件 详解


1. 对质量要求

做项目的第一要求是在要求的时间内开发出满足客户需求的软件,它的第一准则是客户永远是对的,开发者必须按客户要求的做,但是因为客户提出的要求往 往是发散的、弱逻辑的、非系统的,所以开发出的软件需要很多硬编码,再加上时间紧迫,不能对已经开发出来的模块进行必要的重构,项目最终越来越难以维护, 性能越来越差。

而做产品则会很注重质量,第一准则是开发出比其他同类产品更好用,更快的系统,当发现某模块的架构不合理时,能够花人力和时间去重构它,最终使产品 越来越快,越来越好用。

2. 团队构成不同

做项目,特别是外包项目,开发人员可能来自不同公司,技术水平参差不齐,开发思想不统一,大家的目标是写出能运行的代码就可以了,而即使这一点,实 现起来难度也很大。

做产品的团队一般都是精兵强将型的,因为目标是跟同类产品竞争,这就要求必须有好的PM,好的Developer,好的Tester,一套科学高效 的开发流程被植入每个人的头脑,工作配合起来比较协调。

3. 驱动因素不同

做项目侧重于时间驱动,因为时间就是成本,要压缩成本就得压缩时间,而功能只要能用就行。

做产品侧重于功能驱动,时间比较充足,以开发出有竞争力的产品,功能不光能用,而且速度要快,操作要简便。

4. 项目与产品区别

  1. 产品的研发过程艰辛而漫长,需要不断的改进,不断的挖掘和提炼,待产品基本成型的时候也就开始了精益求精的过程。把软件工程的理论、思想深入到了研发过程中的每一个细节,每走一步都有详细的文档记录,每一个变更都有据可查,明明白白、清清楚楚。随时可以查阅到研发中的每一个细节。
  2. 而做项目就很不一样,首先,心态是不一样的,其次,老板在等着回款呢!当公司接到一个项目的时候,首先是根据功能计算人月费用,然后是紧锣密鼓的往前赶。

简单的来说,产品是面向通用的,项目是面向单一用户的; 项目完成就是产品,完成之前是项目;项目是面向单一用户的,功能相对特殊化,单一化,比较有针对性,项目在产品开发周期中可做为产品的雏形;

1、从用户角度看,项目是针对一个或几个用户的,产品是面向大众或行业的
2、从开发来说,项目是一个过程、最终结果是产品或系统或某类应用
3、从价格角度说,项目具有不确定性,随着客户的需求、采用的技术、周期等来衡量,产品相对而言有比较固定的价格
4、从需求角度来说,项目更侧重用户的实际需要,有特殊性,产品更侧重市场的需要,有广泛性

RUP里面说的产品,是指项目开发的结果,RUP的“项目”,是管理领域里边的“项目”。项目中,软件的客户很少,在开发之前已经很明确,而且通常都已经建立密切的联系,软件的客户对开发者和软件本身了解较多,软件的需求比较专门化。产品中,软件的客户很多,但是开发之前没有明确的客户,只有潜在的客户,客户通常不了解开发者和产品本身,这样开发完成之后你需要去宣传,让这些潜在客户购买产品。一般来说,产品的风险比项目大,因为客户是否接受还是未知数,因此产品需要做得通用,扩大客户范围,期望获得更高的利润。


1.做项目是由客户提出具体的需求,开发人员之需要按照客户的需求来做就行了,遇到不懂得问题,就直接去问客户就行了,可以看出做项目,需求是明确的,不具有不确定性。

2.做产品是由客户提出一个大概的,迷糊的,不明确的需求,然后开发人员进行探索性的开发,具体的需求还得和客户一起讨论,挖掘客户的需求,在开发人员开发的过程当中,需要和客户不断探讨,沟通,等产品发布之后,让客户感受,并提出意见,如果客户说这一块不好,那么开发人员就需要提出解决问题的方案。如果客户满意,那么项目就是成功的,在这种开发模式下,项目团队需要揣摩客户需要什么。

在这种开发模式下,需求面临着不断变化和技术不断更新的条件下,那么如何提高软件团队的生产率的呢?针对这种方法,美国犹他州成立了Agile 联盟,将轻载方法正式更名为Agile方法,Agile有轻巧、机敏、活力的意思。它的主要思想和指导原则如下:

Agile 方法的四个价值:

1.较之过程和工具,更注重人及其相互作用的过程。

2.较之于无所不及的各类文档,更主用可运行的软件的价值。

3.较之于合同谈判,更注重和客户合作的价值。

4.较之于按计划行事,更注重影响需求变化的价值。

Agile方法的知道原则:

1.在快速不断地交付用户可运行的软件过程中,应将用户的满意度放在第一位。

2.以积极地态度对待需求的变化,Agile紧紧地围绕变化展开并利用变化来实现用户竞争优势。

3.以几周到几个月为周期,尽快,不断地交付可运行的软件给用户使用,

4.在项目过程中,业务人员和开发人员最好能一起工作。

5.以积极向上的员工为中心建立项目组,给予他们所需的环境和支持,对他们的工作予以充分的信任。

6.在项目组中,最有用、最有效的信息沟通手段是面对面的交谈。

7.项目进度度量的首要依据是可运行的软件。

8.Agile过程高度重视可持续开发。项目发起者、开发者和用户应能始终保持步调一致。

9.应时刻关注技术上的精益求精和设计的合理,这样能提高软件的快速应变力。

10.简单化(尽可能减少不必要工作的艺术)是基本原则。

11.最好的框架结构、需求和设计产生于自组织的项目组。

  1. 项目组要定期对其运作方面进行反思,提出改进意见,并相应进行细调。


标签:项目,Agile,区别,开发,客户,产品,软件,详解
From: https://blog.51cto.com/kero99/6674331

相关文章

  • 使用ResourceBundle国际化资源文件读取properties详解
    eg:publicclassCommons{//工具类创建常量publicstaticStringEMAIL_ACCOUNT;publicstaticStringEMAIL_PASSWORD;//静态区域块读取propertiesstatic{ResourceBundleresource=ResourceBundle.getBundle("init");EMAIL_ACCO......
  • java项目 报错 maven jdk.tools 缺失 解决方法
    一、解决方法配置文件pom.xml<dependency><groupId>jdk.tools</groupId><artifactId>jdk.tools</artifactId><version>1.7</version><scope>system</scope><systemPath>${......
  • mysql开启远程连接的权限及性能优化详解
    最近使用NavicatforMySQl访问远程mysql数据库,出现报错,显示“1130-Host’xxx.xxx.xxx.xxx’isnotallowedtoconnecttothisMySQLserver“。经查阅,错误原因是:本地IP(xxx.xxx.xxx.xxx)没有访问远程数据库的权限。于是下面开启本地IP(xxx.xxx.xxx.xxx)对远程mysql数据库的访......
  • SSO单点登录基本概念实现思路以及小的实例详解
    一、什么是单点登录SSO(SingleSign-On)SSO是一种统一认证和授权机制,指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证。二、单点登录解决了什么问题解决了用户只需要登录一......
  • MyEclipse 10 配置jad反编译工具步骤及详解
    MyEclipse10如何查看底层源码可以配置jad//下面是步骤:方法一1、下载jad158g.win.zip文件和net.sf.jadclipse_3.3.0.jar文件。2、将下载的jad158g.win.zip文件解压,并将jad.exe文件复制到jdk的安装目录下的jre文件夹下。例如:D:\develop\Java\jre7\bin\jad.exe。3、将下载的net......
  • Cesium导航指针放大缩小定位平移详解
    一、需求分析点击按钮可以对地图进行放大缩小,点击重置可以返回原先初始地点,点击指针球可以移动切换不同视角。二、代码实现我的版本为Cesium1.69 cesium-navigation-es61.1.6 源码有BUG需要更改安装命令:npm cesium-navigation-es6或者yarnadd npmi cesium-navigation......
  • labview 调用,联合halcon 编程最近在做项目,主界面使用labview,图像识别部分使用halcon,然
    labview调用,联合halcon编程最近在做项目,主界面使用labview,图像识别部分使用halcon,然后返回结果到labview再进一步判断显示。具体流程1.使用labview采集图像2,图像传递给halcon处理3.labview读取halcon的处理结果这里共享的知识点有以下几个1.labview的里面的图像,也就是image类型......
  • 项目管理中SOR是什么意思
    汽车行业sor是SpecificationOfRequirements指消费者战略方针对供应商传出的产品型号规定,一般是一个新项目运行后,在供应商招标会时发送给供应商。在其中包括设备的价钱,品质,总数等各领域较为具体的规定。如今汽车行业中运用比较普遍。SOR是英文StandardOperationRecords的缩......
  • 系统介绍【项目】
    介绍产品时面试官会考察应聘者的沟通能力和思考能力,我们大部分情况都是做产品的一个功能或一个模块,但是即使是这样,自己有没有把整个系统架构或产品搞清楚,并能介绍清楚,为什么做这个系统?这个系统的价值是什么?这个系统有哪些功能?优缺点有哪些?如果让你重新设计这个系统你会如何设计?......
  • vue--day13--watch与computed的区别
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"/><metaname="viewport"content="width=device-width,initial-scale=1.0"/><title>watch实现名字案例</title><scri......