主页 | 下载 | 案例 | 文档 | 关于

浅析面向框架的应用程序设计(本文针对企业应用软件)

需求催生应用

软件的根本价值在于满足用户的需要,正如马斯洛的需要层次理论一样,用户对于软件的需求也是分了几个层次的:

1、解决当前面临的问题,希望通过软件代替手工或其它方式,带来工作效率上的提高,或其它方面的便利;

2、当用户使用了一段时间后,因为各方面原因(公司规模扩大、管理规范、业务变更、前期未考虑的因素等),一些功能被废弃不用、一些功能不再能满足用户要求,一些新的需求浮出水面,这就要求对软件进行功能修改、裁剪、扩展。

3、如果用户和软件提供商通过了艰苦的第二阶段,经由软件的帮助,用户获得了显著的提升,软件“帮助客户成功!”,软件的价值才是得到了真正的体现。

实际上,很多软件都是面向功能进行编写的,这种软件应对需求变更的能力较弱,虽然有些软件预留一些字段,由用户自行定义,或者提供有限的自定义功能。但由于开发时就是面对着一个个具体的功能进行软件设计的,总体来说,应对需求变更的能力较弱。

如何应对需求变更

许多开发者都对用户的需求变更头疼不已,不少软件项目都在焦油坑里挣扎,最终以失败或双方的相互妥协告终,那么,究竞如何应对用户的需求变更呢?面向框架而不是面向功能进行软件开发,是一个好方法。

开发人员将需求抽象,以将软件做成用户可以自行定义为目标,包括人员档案、供应商资料等基础信息,甚至单据、数据录入窗体,都可以由用户自行定义。开发出来的软件实际上是一个基础平台,可在上面任意拆卸,甚至进行二次开发,比如SAP的R/3就有二次开发语言ABAP。

听起来很美好,但是请注意,由于开发难度较大,一般而言,只是较大的软件公司才做这方面的应用。而且这种软件的复杂度肯定比面向功能开发的软件高,对用户的要求也相应提高(计算机操作水平,也包括Money),这种系统一般都有专门的实施人员,由他(们)根据用户的需求,在这个软件平台上定义好系统结构,再交付用户使用。

橡皮泥是一个面向框架的人事管理软件

橡皮泥是一个可定制、可扩展的人事管理软件,你可以自行定义代码类(相当于数据字典)、系统结构、统计报表甚至录入界面。(只要你愿意,你甚至可以在这个软件中同时管理你的公司档案。)下图是定义录入模板时的界面(正在开发中 :))

结语:不要一概而论

不可一概而论的,说做高端软件才好,正如数据库的模式化处理一样,在一定时候,还要反模式化处理。在应用软件方面的例子,就是速达软件,走低端路线,针对中小企业用户,提供简单实用的功能,却比很多大软件公司做得还成功。当然,财务标准统一,用户对这方面的需求相对稳定,也是一方面的原因。

左邬强 于 2003-12-07


橡皮泥软件基于.NET Framework SDK V2.0开发,当前版本号:V2.0

粤ICP备06037479号 © 2008 橡皮泥软件.