1
jjx 2014-08-10 13:29:36 +08:00
长远来说, 以开源做二次开发,比方说openerp, 就是替别人做嫁衣
如果只是短期, 倒没有什么讲究 |
2
nbabook OP @jjx 为什么是替别人做嫁衣?因为开源协议的问题吗?
其实我主要是担心这帮人技术水平不够,现在遇到的问题就是一些技术或框架我建议用,但是其他人会以学习时间为理由坚决不用。 |
3
jjx 2014-08-10 13:39:38 +08:00
以开源系统做东西,思路是别人的, 你做的东西是依附在别人的基础上. 你所有的投入都依附在别人所建立的基础之上.
其次,开源系统的二次开发都不是很理想, 我也是10多年的企业软件经验,用过很多系统, 就二次开发,感觉最厉害的当数微软的axapta 的 aot 环境,但实际用的时候还是要其他语言做扩展. 一个定型的erp系统, 最少要有一年的时间, 如果有这个时间预算,不妨自己做, 如果使用前后端分离的设计, 后端其实一个人也够了. 企业系统最好使用python这类动态语言构建, 变化灵活,如果用 java之类的,可能比较不适合, 不适合企业软件日常变化多的特点 |
5
jjx 2014-08-10 13:44:41 +08:00
|
6
richfisher 2014-08-10 13:46:34 +08:00
ERP有一块是流程管理,楼主可以看下BPMN规范,评估一下两种方式的实现时间。
|
7
StackGao 2014-08-10 13:53:35 +08:00
时间可控并且足够自信的话,靠谱二次开发.
|
8
jjx 2014-08-10 14:08:40 +08:00
二次开发的含义是指有现成的erp系统,通过其开放的结构和api做修改或新功能
使用一种语言的通用框架,比方说java的ssh, 或是pyhton的sqlalchemy/requests/xlrd之类的包,不叫二次开发 而且, 这些通用框架你肯定要使用的, 做企业系统更关心业务逻辑的实现而不是技术形态上的高低,这就是企业系统长期被一般人看不起的原因(当然, 随着更多的功能被搬到线上,企业系统的挑战也随之而来,怎样在保证复杂的逻辑下再保证并发,性能和稳定) |
10
ddzz 2014-08-10 14:12:43 +08:00
经验越多越讨厌二次开发。新人适合二次开发,可以从二次开发中学到很多思想,从头开发的话会无从下手。如果有多年的开发经验,已经形成了自己的一套方法论,再按别人的思路二次开发会很痛苦
|
11
jjx 2014-08-10 14:14:50 +08:00
@ddzz
是指我在开发的erp吗? 是web的,桌面的前几年放弃掉了, 我其实有很深的桌面情节,做这个转变不容易,不过转变后就后悔为什么不早做这个转变. 至于openerp, 早期是gtk的,后来是gtk+web, 现在gtk没了,只有web界面了 |
12
nbabook OP @jjx
由于团队技术人员实力问题和时间问题,我的想法是二次开发,即你所说的第一点:在现成的开源ERP系统上通过对功能或业务的增加和修改来实现我们的目标。 而你所说的第二点则是我们面临的问题,即想要在重头开发的同时,是否应该使用现成的框架或者现成的开源甚至收费模块来快速实现,例如审核使用已有的工作流引擎,报表使用已有的报表引擎等。 从目前的情况来看,技术形态我们不是高低的问题,而是太低的问题,最终是否能在规定的时间内实现得了相应的业务逻辑在我看来是一个巨大的难题和挑战。 |
13
nbabook OP @ddzz 是web,现在的趋势是web啊。
确实如此,如果我们之中有一个人是经验丰富的开发者,或者有一个经验丰富的开发者领导我们,我们当然不会出现这个问题。 但是,当我们在现有情况下独立开发的时候,我们面临的首要问题便是什么都不会,这个功能该怎么做,那个功能该用什么来实现。 |
14
Havee 2014-08-10 14:25:50 +08:00
看你资金预算,时间预算....
200人内的小公司,妥妥的二次开发... |
16
xuwenmang 2014-08-10 14:47:18 +08:00
实战经验多,自己开发;
实战经验少,二次开发; |
17
simapple 2014-08-10 16:35:03 +08:00
我觉得,如果从技术角度找不到二次开发的巨大劣势,先从二次开发开始,等到业务量达到一定级别,原有架构无法满足需求的时候,你就有了明确的改进方向,可以选择重构,让系统和业务结合的更好
|
19
seeker 2014-08-10 18:00:32 +08:00
我觉得你们需要架构师。。
|
21
zava 2014-08-10 20:17:40 +08:00
楼主的想法是对的, 如果都不知道技术上会受到什么挑战, 并且没有较深的技术功底, 建议你们还是找个靠谱的开源软件, 然后二次开发. 否则技术债肯定会很多.
你们的时间应该是快速出产品, 然后验证市场对产品的放映, 而不是从技术上从零搭建产品. 看得出来楼主的团队都是技术为主, 并且技术功底有限? 这个组合有点悬啊. |
22
ththlisa 2014-08-10 21:19:33 +08:00
看你们的组合..二次开发吧楼主...摸一遍开源的东西总比自己从头开始找路来得靠谱点...个人一般的思路就是先向开源学习,之后再做自己东西起码不会一头黑
|
23
woyiwei 2014-08-10 22:10:48 +08:00
看到这个标题,忍不住点进来了。刚好刚才在看 《大教堂与集市》 ,lz可以看下,书不厚,开头就提到了这个问题
|
24
akira 2014-08-10 22:39:21 +08:00
建议二次开发,至少你知道要做些什么东西
|
25
vicalloy 2014-08-10 22:43:28 +08:00 via Android
ERP是个巨坑。业务方面的困难远大于技术方面的困难。
企业应用最大的问题是需求多样。用现成的系统你会发现去理解这套开源系统就已经非常难了,即使已经比较熟悉了也会发现限制非常多。 |
26
sujin190 2014-08-10 22:44:42 +08:00
我觉得楼主显然是想的太多,其实很多事看起来很难,有些则看起来简单,其实只是表面,建议都可以试下,看起来楼主要走的路还很远啊
|
27
eriale 2014-08-10 23:09:49 +08:00
@vicalloy 非常同意。开发erp的时候,有一个月开发在跟财务对各种数据,就不说其他还有各种优化用户体验、增加大功能的需求根本来不及做。
lz可能大大低估了ERP的项目难度,特别是你们团队一些成员还没有具体的工程经验,我的建议是你们找开源的来做,要尽早出一个可用版本,然后边用边改,不然企业业务的需求会把整个开发团队拖垮,系统永远都不可能上线。 如果开发到后面,并且能够赚钱了,这时候你们对业务也有充分理解,重写系统也有钱有人,再来重写系统要快的多得多。 |
28
nbabook OP @eriale @vicalloy
说老实话,08年的时候我还真在公司正经做过2年ERP,当时是做的财务营销,用的C#,后来还参加过一个国家级的ERP系统的需求(干了半年,后来因为需求过去复杂黄了),因此,我个人是非常了解“对于erp而言,业务远远难过与技术”的问题。我依然记得很清楚,当时每个月10号用户对账的时候去对方蹲点,直到下个月1号才能回来,期间各种核算、各种修改,大半年都没个结果,每次都出问题。 但是由于太多年没有做过开发了,我在清楚认识到业务难度的同时,对于当前情况所可能带来的开发难题也没有眉目,究竟如何做,怎么做才能又好又快,是我面临的最大问题。即便是我清楚的知道我不可能按需求方指示按时交出答卷,我也只能硬着头皮上,因为一些情况,我已经不可能退了。 |
29
unionx 2014-08-11 08:14:14 +08:00
LZ试试 OpenERP 呗,我最近也在用,感觉还是可以的
|
31
jamiesun 2014-08-11 13:14:19 +08:00
开发 erp,更重要的是理解业务模型,企业流程规范等,很多不同领域的知识。
纯粹技术好不算优势,技术不好也不算很大劣势。erp 不是高浓度技术活。 openerp 挺好的。 如果你只是问“推荐一个开源的java的ERP系统”这样的问题的话没有太大的帮助。 |