概念
管理软件是建立在网络平台和数据库平台之上,对经济活动中的物流、资金流和信息流进行管理的应用平台。它的主要任务是获取企业经营活动全过程的数据,通过加工、存储、检索、整理将数据转换为信息,并将这些信息及时、准确、高效和经济地提供给企业的各级管理人员、投资人、债权人、政府部门。
管理软件与网络和数据库不同,它在设计时要充分考虑不同企业的类型、管理模式、管理思想对管理软件应用的影响。因此,这种应用软件是伴随着网络和数据库技术的发展,特别是伴随着企业管理模式、管理思想、管理方法的发展而不断发展和完善的。管理软件是将管理思想、管理方法和信息技术有机融合的产物。
管理软件的发展
目前,国内的大型管理软件已经出现了“百花齐放”的现象,其功能随着企业需求的增长而不断增加。
从横向看,企业管理的各个方面都有相应的管理软件或子系统的支持,这些子系统可以相对独立运行,解决企业管理某一方面的问题(如工资管理、财务管理);同时这些子系统又可以集成起来,相互联系、相互作用,共同为企业管理提供支持。
从纵向看,管理软件可以分为三个层次:业务执行层、管理控制层、决策支持层。业务执行层处于这金字塔式层次结构的最底层,其主要功能包括对企业经营全过程的反映,即供应链(采购、库存、销售)、生产、薪资福利、财务会计、客户资源管理等环节的信息获取、加工、输出等,实时、动态反映经营活动的实际情况,实现物流、资金流、信息流的有效集成;管理控制层为中层结构,主要功能包括对企业经营全过程的管理和实时控制,通过管理模型或模式利用业务层的信息对资金、资源、成本等进行有效管理或控制,从而达到降低风险、控制成本的目的。例如:财务管理过程中,应用滚动预算等方法对资金进行动态管理,提高资金的使用效率和效益;决策支持层位于金字塔的顶端,其主要是通过数据挖掘,及时、准确的获取可供决策的信息(企业内部当前数据和历史数据以及企业外部的合作伙伴、互联网上的信息等等),利用决策模型(筹资决策模型、投资决策模型、企业经济价值评估模型等)实时得出各种方案,快速总结业务运作的实际情况以及客户的趋向,从而做出正确、及时的决策。引进财务软件结合管理会计的思想和控制方法(如预算控制、标准控制等)锯决核算和管理会计的问题,提高财务管理水平,利用会计信息或非会计信息支持企业决策活动。
管理软件的设计原则
实用的管理软件,规模都较大,甚至很大。大型软件复杂,接口信息多,对其设计方法应着重考虑。要设计一个好的应用软件系统,应当遵循下列各项基本原则:
1.简单化原则
在完成同一功能的前提下,软件应尽量采用简单、清晰的结构。尽管有时简单化的结构可能导致程序量的增加,但总体开发效率却会提高。应特别注意,尽量少用递归、嵌套等繁琐、复杂、易引起错误的结构;能用一维数组的地方,尽量不用二维数组;能用数据库和高级语言解决的问题,不用汇编语言。结构简单化将显著提高软件的可读性和易维护性,降低软件编写和调试的难度。
2.模块化原则
软件结构的模块化,是指对软件的结构进行规划,将复杂的管理软件系统逐级划分为若干模块,每个模块只是用来解决相对简单或十分简单的问题,模块之间是相对独立的。这些模块通常设计成子程序或过程。
模块化的软件易于编写和调试,也易于修改和扩充,有利于课题组若干人员协同研制。在进行模块化软件的方案设计和功能划分时,通常由上向下进行,即首先考虑总体方案,再逐级向下划分,越向下的模块,功能越具体,直至最基层的各个具体模块;但到程序编写和调试时,则由下向上进行,先将最基层的各个模块编写并基本调试好之后,再按照一定的结构,并运用接口法,逐层向上编写和联试,直至组合成完整的管理软件系统。
模块化是软件设计的重要原则,确定软件的总体逻辑和设计系统的模块结构,是软件设计的主要任务。软件只有模块化,才能实现结构简单化,才能为软件的开发、调试和维护带来更大方便。
3.标准化原则
实用的管理软件通常由于规模较大,需由若干人联合编写,必须进行标准化管理,才能协同一致,使研制工作顺利进行。另一方面,为了把研制的软件推广应用,创造更好的社会效益和经济效益,也必须重视标准化原则,尽量向标准化靠拢。
标准化工作包括数据模型的统一,软件描述方法的统一,模块接口方法的统一和输出格式的统一等。
4.实用化原则
管理软件的服务对象是广大用户,要精细地考虑用户使用中的问题,使他们能够接受并乐于使用你的软件。必须方便用户的使用,具有良好的用户界面,使得即便不具备微机应用知识的用户,也能满意地运行软件、解决问题。为此,应注意:
(1)应用软件要尽可能汉化,以方便多数用户的使用。
(2)软件运行时应适当增加与用户的交互信息,提示用户进行正确操作;程序中并应适当多加注释信息,以方便用户的阅读和理解。
(3)程序应具有良好的容错能力,当用户输入了超出范围的数字、字符,或按错了键时,程序能够给出错误提示,并返回重做;在发生错误时,提示重做,而不致于死机或退出。
(4)软件应有良好的用户界面。良好的用户界面不仅包括绚丽的色彩和生动醒目的屏幕菜单;而且,还应功能灵活、操作简单,对输入的数据有校验功能,输出方式多样化;具有符合要求的、比较完善的输入、输出格式;除屏幕显示外,根据需要,还可以具有打印、绘图等项功能。
(5)宁可把程序编写得稍长一些,也要为用户考虑得尽量周到些,并应尽量采用通俗易懂的算法或实现途径。这是当今管理软件编写的重要原则。万不可故弄玄虚,热衷于所谓“技巧”,追求程序的精练,而不顾用户的方便。
总之,一定要站在用户立场,才能研制出受用户欢迎的软件。
5.最优化原则
软件编写和初步调试后,还必须进行逐步优化和完善工作,以提高软件质量和运行可靠性,达到真正实用。
管理软件的基本设计方法
管理软件通常按照下述基本方法和步骤进行设计:
1.调研和系统分析
首先应对所需解决的问题进行调研,并由此进行必要性和可行性分析。
可行性分析大致包括下述内容:
(1)分析待处理数据的类型,以及所要求达到的处理结果,看是否适合于由FoxBASE系统进行处理;
(2)分析软件的规模和设计难度,以及研制人员和管理人员的素质,看能否胜任此项工作,等等。
2.数据模型的确定
确定数据管理的模型是编写整个管理软件的基础,十分重要。其中最主要的是数据库文件结构的确定,即合理地设计数据库的字段结构,精细地确定各字段的字段名、类型和宽度,在能够满足应用问题要求的前提下,要进一步以方便操作和节约存储容量这两个方面认真权衡。
实际应用中,需要入库的数据量通常都较大,库的记录条数很多,这样将影响数据库操作的效率,检索、查询起来都较慢。因此,应注意库的规模不要太大。当数据量多时,可根据具体情况,把本应建成的大库划分为若干小库。例如,一个大单位的人事档案库,可按部门建成数个小库,查询时,首先根据部门号,打开相应的部门库,再在部门库中进行查找操作,效率显然要快得多。当需要查找另外部门的人员时,再打开另一个库。
数据库结构确定以后,还要考虑一些从属文件的设计,例如,索引文件、格式文件、内存变量文件等。
3.功能分解(模块的划分)和系统逻辑结构的设计
如上述,软件设计必须遵循结构化原则,即把系统的功能进行逐级分解,由若干程序模块分别予以实现。在功能分解时,除了要全面考虑,不要遗漏外,还应该注意突出重点,根据管理对象的不同,功能重点也不同,例如,人事档案库常用的功能是检索,而工资管理库最常用的功能是统计打表,等等。应对重点功能进行更为完善精细的设计。模块划分的主要依据是功能,同时还要考虑到结构本身的需要。
系统划分为模块的工作,应该按层次进行。首先将整个系统看作一个大模块,之后把它按照功能,分解为若干个第一层模块,它们各担负一定的局部功能,互相配合;然后,对第一层模块再进一步分析,并分解为更简单的第二层模块;如此继续分解,直至实际上不能再分,程序的细节都明确为止。这样就形成了一种多层次的模块结构。越往上的模块,其功能越笼统、抽象;越往下的模块,其功能越简单具体。
每一模块应尽可能地独立,除必要的关系外,尽量减少与其它模块的联系,以便于编写和调试。
还应特别注意模块间参数的传递,对实现参数传递的接口、所用变量及其属性进行合理设计,使分散的各模块在逻辑上联结为一个完美、良好的有机整体。
根据具体情况,对于系统的逻辑结构,有时也可采用由下而上的设计方法。这通常是有现成的程序模块可以利用,或者是某些功能模块的设计规范已经十分成熟,此时,就可以在这些成熟的模块基础上构筑较大的模块。在实际工作中,通常都采用由上而下为主,适当结合由下而上的设计方法。
软件的逻辑结构通常用框图来描述。框图的绘制也应遵循由上而下的原则,在总框图中,每个功能模块都画成一个框,而每个功能模块又可单独展开而画成一个较细致的图。
4.程序的编写
软件的模块划分和逻辑结构确定之后,就可以动手用具体的语句编制程序。这个阶段的工作比较细致。有许多模块的设计方法已十分成熟,可以作为借鉴。在下一节中,我们将讲解一些常用模块的设计方法。
5.软件的优化与完善
软件初步编写之后,还要仔细推敲,对之进行优化和完善。
6.软件的调试与修改。
7.软件的运行与维护。