快速信息管理系统开发模式-平台式开发

1946年第一代基于电子管的计算机诞生,经过60年的发展,走过了电子管、晶体管、集成电路、大规模集成电路四代的历程,其计算速度也由最初的每秒3-5次提升至现在普通PC机的30亿次,可以看到,计算机硬件的发展速度是飞快地,这么快地发展速度无疑很到程度上提升社会的综合生产力,为推动人类社会的进步起到了重大的作用。从计算机的应用行业来看,目前已经涵盖了商业、金融、服务、教育、科研、机关、军事几乎所有行业,不难看出,计算机的应用范围是广泛的,而且其应用范围还将随着人类社会发展领域的扩展而扩展。我们横向来看计算机应用所涵盖的领域,可以看出每个领域又都有其自己的业务特征,亦即每个领域都有其自己的软件应用系统为支撑,这也就表明了软件市场的广阔前景。

软件市场的前景是十分广阔的,然而软件行业又是一个竞争非常强的行业,仅就大连来讲大大小小的软件公司就超过了500家,扩大到全国软件企业则不计其数,而市场则主要集中在外包、电子商务、企业信息化和电子政务这四块,对于我们而言则主要集中在企业信息化和电子政务这两块。

在如此强烈的竞争与企业生存发展压力之下,如何达到我们软件开发企业的追求利润最大化的目标?如何能够满足我们的客户(企业和政府)的实际需要?很明显的是我们的客户要求是苛刻的,而且软件需求对他们来讲是多变的,他们很少考虑软件开发的细节,而只说他们想要什么、什么时候要。从以上两点我们不难看出是矛盾的两点,企业和政府需求的多变性与工期的不确定性从根本上制约了我们追求利润最大化的目标。因此,摆在我们面前的最急迫的任务就是如何解决这个矛盾,从而达到我们的目标。

那么,我们如何解决这个矛盾,从而达到我们的目标呢?毫无疑问,就是对客户易变的需求我们能够做出快速的反应,提高我们的开发效率,在极短时间内达到客户的预期效果,从而节省开发成本,缩短开发周期,同时又增加了客户满意度。显而易见,如何应对客户易变的需求,如何提高我们的开发效率,从而达到客户预期的效果就是我们解决问题的根本所在。我们可能想当然的认为解决这个问题无外乎有两种方案:一个是反复和客户交涉,尽最大的努力说服客户,使其缩小变动的需求或放弃变动的需求,另一个就是我们配备高技能的技术及业务人员,对客户提出的需求或有所减少或全盘接收。无论怎么说,这两种解决方法都不是完美的,第一种很可能会降低客户的满意度,从而可能失去后续的合作机会,而第二种,无疑打是在打疲劳战术,配备高技能的人员不但增加了开发成本,而过多的开发工作无疑会增加系统的复杂度,必将为后续的维护工作造成负担,后果不想而知。而我要说的是第三种解决方案:平台式开发。

在说平台式开发前,我们先谈谈软件开发的基本策略。软件工程经过四十多年的发展,已经积累了很多的经验,而我们的基本策略无外乎以下三种,当然这三种策略是作为每个开发人员都应该熟知的,即使是从理论上不甚理解,可能我们在工作中已经应用了,这三种策略既是:复用、分而治之、优化-折中。复用,从字面上理解就是利用现成的东西,复用的可以是物体也可以是思想,复用的内涵包括了提高质量与生产率两者,对于软件复用来讲构造新的软件系统可以不必每次从零做起,直接使用已有的软构件,即可组装(或加以合理修改)成新的系统。复用方法合理化并简化了软件开发过程,减少了总的开发工作量与维护代价,既降低了软件的成本又提高了生产率。另一方面,由于软构件是经过反复使用验证的,自身具有较高的质量。因此由软构件组成的新系统也具有较高的质量。分而治之,是指把一个复杂的问题分解成若干个简单的问题,然后逐个解决,从软件开发来讲,分而治之则体现在将复杂的业务进行拆分,分别实现,集中调试集成,从而简化软件开发过程,便于解决问题,提高软件项目的成功率。最后是优化-折中,我们完成的每一个系统都需要经过严格的测试、试运行,才能最终交付客户使用,这也就决定了我们的系统必须是高效的、高质量,也就是说我们的系统必须是经过优化的,优化的工作不是可做可不做的事情,优化的目的很简单,就是在保持系统稳定的前提下提高系统的运行效率,因此也就是说优化不是盲目的,进行系统优化时也要有折中的思想,针对系统的每个模块,我们的优化工作都要进行,而且要保证优化后的每个模块的运行效率相当。

现在我们来谈谈平台式开发,顾名思义,既有这样一个平台,或者说是工具,通过这个工具结合具体的业务需求进行二次开发。因此,根据以上软件企业的生存压力以及软件开发的基本策略,这个平台本身必须具有以下特征:可重用、功能强、健壮和运行效率高。首先说可重用性,作为平台本身就决定了它的可重用性,作为一个平台,必须胜任作为绝大多数业务领域的系统开发工作的支撑,只有做到可重用才能做到真正意义上的节省开发成本,同样可重用性越强则平台价值越高;作为一个平台,必须具有强大的功能,能够应对复杂业务,或通过分而治之的开发策略能够在保证稳定及运行效率的前提下合理的拆分复杂业务,分别实现,最终完成复杂业务的开发工作;作为一个软件产品,尤其对平台而言,稳定可靠和高效的运行速度变得更为重要,无疑给平台的设计、开发提出了更高层次的要求。而从软件生产力来讲,平台应该具有以下四种特征:一是业务需求的信息化规划和原型开发可以同时进行,能够更准确的将客户的需求反映到系统上,因此能够节约大量的调研时间并且减少需求理解偏差;二是开发速度的提升,使用平台开发比完全手工代码开发速度高出3-5倍,开发应用系统只需原来10-20%的代码量,大部分的开发工作通过配置由平台自身完成,而我们的开发人员则把主要精力放在了需求的理解及界面的人性化、美观化等方面,很明显能够大大缩短系统的开发时间;三是业务规则的扩展性强,主要表现在即能够快速响应实际业务的变化,支持业务流程的灵活变革,又能够快速的开发新的应用并能够无缝的与原系统挂接;四是平台自身的扩展性强,对于先进的软件功能或思想,可以迅速的集成到系统中来。对于我们开发企业而言,选择技术基础平台进行业务系统的开发则能够提升信息系统的能力和价值,使信息系统具备高效的团队协作、流程控制、业务集成、业务智能、决策支持、个性化和持续完善的能力;降低信息系统的风险和总体成本,显著提升信息系统的实施、维护效率,降低信息系统的投资风险和总体成本;提供最大限度的投资保护,最大限度地适应业务变化和软硬件更新换代,延长管理系统的寿命,对IT投资提供更好的保护。而平台对于企业用户来讲具有的能力是不容小觑的,那就是系统的构架能力,也就是说平台能够帮助企业自己设计一个实用的系统。

一个实用的信息管理系统,对于软件企业而言则是一种架构体系下产物,即针对企事业信息管理系统中具有体系性的、普遍性的问题而提供的通用的解决方案,或者说是基于业务导向和驱动的架构来理解、分析、设计、构建、集成、扩展、运行和管理信息系统,而通俗的讲则一个业务系统则是由组织机构、业务流程、业务信息、业务功能、业务语义等层次构成。架构不仅出现产品生命周期的早期,而且,架构在产品的整体能力上占据了主导作用。合理的架构为软件系统生命周期的所有阶段——设计、开发、测试、集成和更改都奠定了最关键的基础。

相反,如果架构体系不当,就意味着系统存在巨大的体系性缺陷,并且无法通过细小的修补或调整得到更正。架构不当往往导致系统的彻底报废,或者需要系统的全部拆解重建。而架构在一个稳健的、高效的平台之上的信息管理系统无疑是非常成功的。

       就目前而言,我们有.NetJ2EE等技术基础平台带来的性能与效率。而在业务系统的构建上,我们更需要业务基础平台,用于构建、整合、扩展和管理企事业机构的整体信息系统,实现团队协作、流程控制、业务集成、系统智能、决策支持和持续完善。技术基础平台要实现的目标就是基于业务建模工具来开发软件,基于业务基础平台来运行软件,亦即实现应用与实现技术相剥离。实现应用与实现技术有着诸多好处,比如业务资源是随用户需求而变动的最频繁的部分,通过分离业务与实现部分,可以做到业务资源变动时,不影响底层的实现技术,无需重新配置或升级运行环境;运行环境的独立可以保证应用能够跨实现技术,运行在不同的系统之上,可以随时零成本迁移到新的实现技术。

那么如何构建我们自己的平台呢?我认为必具备以下四个条件:选择合适的技术平台、选择正确的开发思路、优秀的研发团队、高效的项目管理支持。

 

 

 

 

 

 

 

 

 

参考文献

[林锐  2000]软件工程思想
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值