|
原帖由 boysunsight 于 2008-10-17 02:06 发表 ![]()
佩服楼主的专研精神,自己对IFS也有一点粗浅的认识,加在----------后面,希望对楼主是个补充,共同讨论。
一.技术架构
JDE采用的是分布式架构,扩充性比较好,支持多种数据库,同时使用时有多台服务器,
数据库服务器,应用服务器,分发服务器,web服务器,还可以有报表服务器。
IFS用的是C/S架构,基本就是客户端和数据库服务器,绝大部分业务逻辑是用存储过程写在数据库上(只支持oracle),
系统响应速度依靠强大的数据库服务器。
-------IFS系统支持C/S和B/S两种架构,尤其在7.5版本业务功能基本一样,所以不只是C/S一种了,而且也是多层架构了
1.扩充性,两种技术架构各有好处,JDE的扩充性更强,可根据实际使用情况,增减相应的服务器,
IFS的扩充性主要由数据库服务器的硬件扩充来保证(加CPU,内存等)。
-------楼主可能对技术不是太了解吧,呵呵,IFS的性能扩充也可以通过增加多个数据库服务器和多个应用服务器(应用服务器只针对B/S架构的)以均衡负载的方式实现,
-------而不只是加内存、加CPU这个初级阶段
就目前的发展形式来看,个人觉得支持多种数据库的功能其实已没有太多商业价值了,ERP做为企业的核心软件,企业可以愿意为ERP买相应的数据库,
却不会因为当前使用的数据库不同,而不采用某种ERP.
-------这一点极其支持楼主,就算ERP支持多种数据库,说实话,对于大型的ERP系统,就算你推荐客户不用ORACLE,也比较难的
2.效率,分布式架构最近十年一直都很火,理论上讲分布式架构的效率要比传统C/S高,但我未做过大并发用户的相关比较(并发用户数超过500),具体情况不得而知。
-------事实证明,对ERP产品来说相同的硬件投入的情况下,C/S要比B/S运行的快,虽然理论上B/S要比C/S快很多,只有当用户并发访问数极大时,如上万,这种情
-------况下C/S有技术瓶颈,无法通过扩充硬件再提高性能,而B/S可以,这种情况下B/S的优势才能显现出来。
3.生命周期,软件开发的技术变迁很快,从原来的大型机到目前的PC,几乎每隔几年,开发语言和相关开发平台就会有很大不同。相信最近十年内,
发生的powerbuilder,delphi的没落和java,.net的兴起大家应该都不陌生吧。一个ERP产品可能因此而要重写,这个成本对任何公司来说都是相当大的。
JDE本身是由C语言写成,C语言的生命周期是所有开发语言中最长的,IFS的生命周期全部建立在ORACLE数据库上,而ORACLE的数据库本身生命周期也很长,
所以两个技术架构生命周期差不多旗鼓相当。
-------IFS正在大力转向.net和java,可能原有的centura正在逐步摒弃,主要也是因为对开发上的限制。。。。无奈之举啊。
二.用户界面
JDE在2004年的版本中已经全面是WEB界面了,而IFS的界面还是以传统windows窗口界面为主。
------IFS 7.5已经有完整的两套技术架构系统,C/S和B/S的,业务功能几乎一样,B/S的也有不少的客户了。
1.分发,很多资料讲到web界面分发和维护方便,但根据我的经验,web界面的分发和维护并不见得比windows界面方便。
------说实话,现在的很多技术已经做到了C/S系统也不用做客户端分发了,前些时间与一位技术大拿聊天,共识就是真正好的软件应该不是纯B/S或者纯C/S的,应该是介于
------其中的,只有将两种技术架构的优点结合,才是好的系统。
2.用户友好性,IFS在这方面做得不太好,大部分功能要从右键菜单里面选取,而且在一个窗口中有很多标签页,每个标签页的右键弹出菜单又不同,没有统一的功能入口,
哪怕是一个熟手,一些不常用的程序也会经常找不到某个功能入口。而JDE所有功能都在窗口的工具条,很直观。
-------这一点,可能还是楼主对IFS软件不习惯的问题,每个大型的软件因为历史原因都会有一些操作习惯的不同,无所谓哪个方便,哪个不方便,只要用熟了就可以了。
IFS的查询和维护界面一般是分离的,很多维护程序都有对应的单独查询程序,这点比较奇怪,具体为什么这么做的原因我不太清楚。
-------IFS的查询界面是一个通用模块啊,也就是说所有的维护界面所对应的查询界面是一样的,不知道楼主讲的查询界面是否有其它的含义?IFS之所以做一个通用的查询
-------功能,也正在可以通过长期对此功能的完善而实现了其强大的可定制功能,很多相对简单的汇总、查询工作都可以在查询功能中配置,这样就大大减少的报表的开发量。
JDE的查询和维护界面一般在一起,查询时不用另外开窗口,选择查询条件,直接在一个界面填查询条件,查到记录后就可做相关维护操作。
IFS考虑到效率问题,对于搜索记录数比较大的,会提示一个窗口信息,问用户数据超过多少行,是否继续查找,JDE采用的是按需读取方式,对用户是透明的。
三.二次开发
JDE本身提供一个开发平台,可以用JDE自定义语言进行开发,而且这个开发平台相当完善,对于有超过十人以上的开发团队的源代码管理有很好支持。
JDE开发还有个特点就是所有代码的编写几乎不用敲键盘,只要用鼠标点选即可。
--------作为一个编程时间超过7年的程序员来说,我不太相信代码编写可以通过鼠标点选完成。
IFS的二次开发比较新颖,采用的是rose建模到代码生成的模式,代码的编写一般是通过PL/SQL的一些开发工具进行,对源代码管理主要靠另外的传统方式。
PL/SQL功能还是不错的,ERP中的大部分逻辑应该都能用其实现。
--------IFS的源代码管理自身集成了harvest,不过说实话不好用,所以大多采用VSS,SVN等管理软件。
两者的开发难度不大,相对来说IFS的开发主要是对PL/SQL的了解,而JDE的开发需要对其自定义语言的了解。
四.应用架构
应用架构的生命周期是整个ERP软件最长的,可以说技术架构不停的变化,但是应用架构变化很少。
JDE的应用架构相当简洁,就拿进销存来说,销售,采购,库存只有七张主要的表。
如采购就主要两个表:一是采购单表头,一是采购单明细。所有采购单也好,请购单也好,询价单也好,都只用到这两个表。
----------技术架构的简洁不能通过表来判断的,业务的复杂性决定了后台表的数量,如果说采购管理只用了两张表的话,只能说采购的业务设计的相对简单,如果采购管理
----------把申请、询价、入库、检验、审批、采购单位与采购的关联、质保都管起来的话,表肯定要多的。
JDE的应用架构相当灵活,最常见的几个功能特色,其一是程序版本,也就是同一个程序可以设定不同开关,针对不同开关,
程序有不同的逻辑处理。通过一些设定,结合工作流程(活动规则),可以组合出很多特别的流程,体现了功能的强大和灵活。
IFS的工作流程的修改需要在ROSE模型里面修改状态机,对IT技术相对来说要求高些,而工作流程只是单纯状态改变,
无法和具体程序行为结合在一起,这导致一些工作流程上的程序处理稍微不同,也需要另外修改程序。
--------工作流一直是IFS的缺陷,本土公司一直在做一些探索,正在开发好的工作流软件与之集成。
两个ERP在各模块集成上都有一定灵活性,但感觉IFS的集成方式稍显有些突兀,生硬,有些交易分类是单纯为了灵活性硬设定的。
详细的功能点比较是很难进行的,但是因为JDE本身的灵活导致其很容易配置出来多种方式,适用面相对来说很广,而IFS面对的行业要窄一些。
不过IFS在EAS这一块还是占据了比较大的优势,而JDE在各地有分销机构的企业中有相当的优势。
相当的理性和细致,这才是我们所欢迎的. |
|