时间:2022-05-14 09:29:02
导言:作为写作爱好者,不可错过为您精心挑选的1篇软件设计论文,它们将为您的写作提供全新的视角,我们衷心期待您的阅读,并希望这些内容能为您提供灵感和参考。
现代电子技术在财经领域的应用??会计电算化,为会计管理开创了一个新时代,使现代财务管理搭上了“信息快车”,彻底摆脱了“会计室里的算盘、钞票、记账”等沉闷印象,财务管理进入了真正的“数字时代”,大大提高了管理水平和管理效率,产生了巨大的经济效益和社会效益。
会计电算化是一项复杂的系统工程,技术性、创造性很强,与其他系统比较,有很大的特殊性,它处理的信息量大,数据要求准确可靠、保存期长,需要严格监控;同时,会计数据要求严格、保密性强,属企业敏感资料。因而,会计电算化对财务管理及其软件设计均有特别的要求:财务管理标准化、规范化;软件设计须具有安全可靠、功能多样性……
一、财务软件设计对会计工作的要求
1.增强法制观念,严格执行会计法
会计法是我们开展企业会计工作的法律依据,执行会计法是国家对会计工作的基本要求,所以企业的财务工作必然遵守会计法,遵守国家有关信息安全的法规。只有依法办事,会计工作才受到法律保护,从而为会计电算化的实现提供稳定的法律环境。
2.会计科目代码化
实行会计科目代码化的优点很多:(1)结构简单易记,便于会计人员使用;(2)便于电脑识别、分类、查验、调用和处理;(3)减少资料储存空间,减少电脑处理资料量,加快运行速度。企业会计科目代码必须采用会计制度规定的科目统一编码,例如现金101,银行存款102……这样既简单明了又便于计算机识别和处理,工作人员也乐于使用。如果缺少了这一重要环节,电脑系统就平添许多复杂内容,计算机不得不逐次识别处理每个会计科目,大大增加了程序设计的难度,而且多占了内存空间,减慢了计算机的运行速度,还会增加出错机会,不符合信息化环境的要求。因此,会计电算化首先要将会计科目代码代。
3.会计凭证标准化
电算化环境下会计凭证的设计要求:(1)具有通用性??尽可能满足各职能部门对会计核算的要求,力求做到多功能、一单多用、各方共享,提高人机工作效率。以记账凭证设计为例。建议采用集现金收付、银行转账、往来于一身的复式记账凭证,其内容应包括:摘要、科目编码、会计科目、一二级明细目、外币种类、借贷方金额、备注等,这样既适合处理人民币业务,又能处理外币业务,基本满足了会计核算的多方面要求,而且考虑到了未来对外业务发展之需,符合通用、多功能的原则。(2)便于会计人员操作,易于计算机处理。凭证设计的另一个要求是尽可能减少工作人员的书写、输入量,减少人工处理业务方面的时间??在会计实务中,工作人员往往要花大部分时间填写凭证、处理会计资料,效率低、差错多,而电算化管理则要求最大限度地减少人为处理资料的时间,让计算机更多地代替人的劳动,以充分发挥电脑高速、高效的优势。
同样道理,账簿设置、会计报表编制,也要符合标准化的要求,既要兼顾各方面需要,又要方便计算机处理。
4.会计处理方法制度化
会计电算化系统繁复而涉及面广,不宜经常修改,这就要求会计核算的方法、程序实行制度化。例如,固定资产的折旧方法有平均年限法、工作量法、双倍余额递减法、年数总和法等几种,企业可按实际情况加以选择,但一经确定就不要随意更改,要形成制度化执行。如果会计处理方法更改频繁,一则不符合会计制度要求,二则影响电脑系统正常运作,容易发生差错。如果不慎修改出错,就会导致系统损坏,影响正常会计工作。几年前,英国某信用卡公司就因修改计算机程序出错,致使支付混乱。日常生活中,类似情况是屡有报道。因此,如无法规、制度的变更,一般不要随意更改会计核算方法,以保持会计业务环境相对稳定,保证电算化系统正常运作。
5.培养复合型人才,提高财务人员的整体素质
综观目前的企业,既懂会计又懂计算机,并有一定英文英础的复合型人才实在太少,这是推行会计电算化的一大障碍。会计人员如果只懂会计,没有电脑知识,就不可能提出很好的会计管理构想去实现电子化;只有既熟悉会计,又具备一定电脑知识的会计专才,才能设计出优良的财务管理方案,让程序设计者去开发适用软件,使电算化发挥最大效能。再者,财务人员如具备一定电脑常识就能最大限度地避免操作错误,降低差错风险,从而保证会计数据安全。为此,企业要做好复合型人才的培训工作,让现职会计人员掌握电脑知识,为实现电算化提供重要条件。
实践证明,企业要顺利实行电算化管理,必须切实做好以上各项基础工作,争取上级领导的大力支持,为落实基础工作提供保证。
二、财务管理系统对软件设计的要求
1.高起点、高规格开发高质量的软件
财务系统对企业很重要,准确程度要求高,不允许有半点差错,因而必须从高起点出发,聘请高水平、合资格、有财务软件开发经验的公司和工程人员负责开发,不能聘请不够资质、不合资格、无实践经验的人员开发。否则,会影响系统的质量、进度,甚至会半途而废。例如,广州某企业,因经费不足聘请了一家技术力量较弱的公司负责开发会计系统,由于设计人员水平较低,加之无实践经验、缺乏财务常识,开发出的系统漏洞百出,最终无法使用,给企业造成了损失;同时,严重影响了该单位的电子化进程。因此,财务系统开发,用户必须聘请技术力量雄厚、具备财务软件设计经验的单位和设计人员负责。
2.做好系统分析工作
软件设计首先要从系统分析着手,目的在于了解财务工作流程,广泛收集必要数据,对相关的各种因素进行详细分析,这是软件设计的基础工作,很重要。对问题的分析是否深入细致、完整透彻,体现了设计人员对将要进行的工作的了解程度,也体现着基础工作准备是否充分,这关系到未来系统的成败,因而要充分重视系统分析工作。系统分析的具体步骤:
(1)成立专家小组,具体包括:委托方、软件设计人员、会计师、系统使用者、信息安全工程师等组成,为全面开展工作做好准备。
(2)落实任务,明确基本事项,确定具体要完成哪些工作。
(3)提出具体要求,包括:明确给出系统的规模;系统应能完成哪些工作;系统工作的步骤和方法:新系统应达到何种质量水平,以及具体的质量控制指标、计划进度等。
(4)收集、整理数据资料,包括:会计业务分工、业务量、业务处理方法、各类报表、输出结果的时间、数据储存要求等。
(5)认真编好会计业务流程图。会计业务流程图就是把会计业务的整个过程用图示和文字说明表述出来。这一过程很重要,是系统设计的基础、依据,财务系统就是根据会计业务流程图设计出来的,是会计业务流程的“数字化”。业务流程图质量的好坏直接决定着系统设计的成败。因此,必须认真踏实地做好业务
流程图的编制工作。
业务流程图须由专家小组编制,其间应重点发挥有实践经验的会计师、具体业务操作者的作用,重视一线员工的意见,尽最大可能满足第一线业务的需要。设计财务系统很重要的一条就是实用、方便操作,要考虑到一线业务的具体情况。只有理论和实践相结合,方便实务操作,财务系统才受使用者欢迎。
业务流程图须同时采用文字说明、图形描述两种形式,以相互补充;有关说明、描述必须详细、周密、完善、步步到位,凡是业务触及到的细节均应详细说明、准确标出,为下一步程序设计工作提供充分依据。
有的单位在开发财务软件系统时,只侧重程序设计环节,忽视业务流程图编制的重要性,结果到了程序设计阶段,不得不中断设计,回过头来抽出大量的人力、物力去临时补上有关业务流程细节,财务系统成了典型的“边设计边施工边补漏的‘三边’工程”。这样既容易出错又拖慢了工程进度,更谈不上周密完善,还会影响系统的设计质量,给企业造成损失。
(6)编制程序流程图。程序流程图是将系统设计的具体步骤,通过图示符号表示出来,它直观地反映了程序设计的构思过程,体现了整个程序运行的思路,是程序设计的关键一步,直接决定着程序设计质量的高低。同时,绘制好程序流程图非常有利于系统的整体控制。
(7)对前期基础准备工作进行严格审核。财务系统的设计是以各项优良的前期准备工作为前提的,基础工作显得尤为重要。顾此,在开展程序编写工作之前必须全面审查有关准备工作是否充分,发现问题及时解决;严禁边准备、边设计、边补漏。
3.程序设计阶段,采用模块化设计
模块化就是把一个复杂的程序分成若干个功能不同的多个部分,各个子模块均有独立功能,可以单独运行;而把各个子模块组合在一起,又能方便地搭配成一个完整的系统。模块化设计是现代程序设计中一种很重要的技巧,有着众多优点:
(1)便于分工合作,提高效率,提高质量。系统设计时,可以把要做的工作分拆成多个部分,然后分配给不同的人,甚至不同的单位各自开发。这有利于提高效率,提高程序的设计质量。
(2)便于维护、维修,增强通用性、易读性。
(3)增强模块的独立性,降低相互之间的依赖程度。即使有某些部分故障,也不致影响系统的整体运行。
(4)能设计出可绕过障碍区运行的高质量软件??这是模块化设计的最大优点。由于模块之间相对独立,所以即使出现某些非关键性故障,系统依然能安全运行。这一点很重要,因为系统在使用中出现小故障是较常见的现象,如果财务系统具备了这种优点,就能做到不停机维修,不致影响日常业务,这对财务管理特别有意义。反过来,如果系统一有小毛病就会影响日常业务,甚至突然“死机”,就会严重打乱企业的管理秩序,还可能会造成数据丢失,给企业造成损失。所以,能做到小毛病不停机维修,大故障能尽快恢复是财务管理对其软件设计的特殊要求。
4.软件设计要有扩展性,以适应企业未来发展
会计电脑系统设计要预计到企业各类业务的发展,要预留足够的扩展空间,以适应业务高层次、多元化发展。某些企业的电算化系统因没有扩展性,致使业务稍有变动,系统就无法适应,延误了日常工作。例如,一些企业的会计系统能处理人民币、港币、美元业务,但对日元、英镑、欧元或其他外币业务就难以适应。随着我国即将加入WTO,企业外币业务必然日益增多,缺乏扩展功能的会计系统将难于满足未来发展要求。因此,会计系统设计一定要有超前意识,要考虑到未来业务发展需要,设计有扩展性、多功能的软件。
要考虑到某些特殊业务的需要。深圳市曾发生过这样一件事,一对从新疆调进该市的夫妇,在为小孩办理入户手续时,因公安局的户籍管理系统只能输入四个汉字以内的姓名,而该小孩是维吾尔族,名字由近十个汉字组成,超出了公安局电脑系统的设计要求,以至无法正常入户,引起了不必要的纠纷。以此为鉴,财务电脑系统应有处理特殊业务的设计,要考虑到特殊业务的需要。
5.强调面向用户
财务系统的最终使用者是企业,是一线业务人员,所以要特别强调操作简单、方便用户,要设计良好的用户界面,具体操作应尽可能简单易学。在屏幕显示方式上,最好只显示与业务相关的资料,对可有可无的资料,如参考性、辅助性的资料则能省则省。切忌“和盘托出”??有用、暂不需用的资料均显示于屏幕,这样很容易造成操作错误,还会给人“眼花缭乱”的感觉。在目前企业计算机应用水平、管理水平不很高的情况下,“面向用户性”很值得广大设计人员的重视。
6.试运行
系统完成开发后必须反复测试,证明达到设计要求,才能交付使用;不能边检测、边使用、边补救。
7.制定应急计划
系统完成设计后,开发方应编制与系统相关的运行文件,并提出有关注意事项,以备在出现意外情况时,有条不紊地采取相应措施。使用单位也应制定自己的应急计划,以备急需。令人担忧的是,不少单位恰恰忽视了这一关键步骤,没有起码的应急计划,假如系统一旦出现故障,后果不堪设想,损失将是巨大的。
8.加强风险控制,保证信息安全
实现会计电算化,必然解决信息安全问题。由于电子数据高度集中,高度依赖电脑,且受电脑病毒入侵、人为操作失误、机器故障、非法毁损等因素影响,数据很容易被破坏,因此,会计电算化必然加强信息安全管理,一方面制定各种严格的管理制度,加强风险控制,加强管理;另一方面加强对员工的信息安全教育,严禁未经受权人员上机操作;不能连接与业务无关的终端,禁止与互连网连接;采用先进的加密技术,安装“防火墙”,严防电脑病毒入侵,防止人为非法破坏数据。实践证明,严格、有效的管理制度是信息安全的最好保障。
9.加强对财务系统使用前的审计
财务系统必须确保正确,才能投入使用,这是保证财务数据安全的关键。系统在投入使用前,应组织专家小组进行严格审计、从严检测,并实地模拟运行。只有证明正确无误的系统方可正式投入使用,只有经过“实战”检验的系统才具有可靠性。必须指出的是,财务系统不能边使用、边检测、边维修,这样风险很大,难于保证数据安全。
实行会计电算化,要求财务管理标准化、规范化,而财务软件设计则要符合财务管理的特殊要求。只有相互适应、互相配合,才能设计出安全可靠、多功能、高质量的优秀软件,更好地推进会计电子化工作。财务电算化是大势所趋,是提高企业科学管理水平、增强竞争力的迫切要求??会计师、程序设计人员在这方面有着异常重要的作用,应充分调动他们的积极性、创造性。
一、会计报表的作用和种类 会计报表是综合反映企业一定时期财务状况经营成果的书面报告文件。在日常会计核算中,各项经济业务分类地登记在会计帐簿中。会计帐簿虽然能够反映某一会计期间的经济活动内容,但却是分散的,不能集中揭示和反映该会计期间经营活动和财务状况的全貌。为了进一步发挥会计职能的作用,必须对日常核算的会计资料进行整理、分类、计算和汇总,编制相应的会计报表,为有关各方提供总括性的信息资料。
(一)会计报表的作用
1.会计报表提供的经济信息是企业加强和改善经营管理的重要依据 企业管理部门及决策者通过会计报表,可以全面系统地了解企业生产经营情况、财务情况和经营成果,能及时发现企业经营中存在的问题,检查分析财务计划的执行情况,迅速作出决策,采取有效的措施,改善生产经营管理。同时,利用会计报表提供的信息,为制定企业经营计划、企业经营方针等提供准确的依据。
2.会计报表提供的经济信息是国家经济管理部门进行宏观调控和管理的依据 政府部门利用企业报送的会计报表提供的财务信息,及时掌握各企业单位的经济情况和管理情况,便于对企业的生产经营情况进行检查分析。国家宏观经济管理部门可以通过企业的会计报表提供的资料进行汇总分析,以掌握国家经济总体运行状况,从中发现国民经济运行中存在的问题,为政府进行国民经济宏观调节和控制提供依据。
3.会计报表提供的经济信息是投资者和债权人进行决策的依据 由于债权人和部分投资者一般不能亲自参与企业的生产经营活动,不能直接获得企业经营方面的信息,因此,债权人和投资者为了进行投资等方面的决策,需要通过对企业会计报表的分析,了解企业的财务状况及生产经营情况,分析企业的偿债能力和盈利能力,从而,作出投资、融资等决策。同时,投资者通过会计报表了解企业情况,监督企业的生产经营管理,以保护自身的合法权益。
(二)会计报表的分类 会计报表可以根据需要,按照不同的标准分类 按照会计报表反映的内容,可分为动态会计报表和静态会计报表。动态会计报表是指反映一定时期内资金耗费和资金回收的报表,如损益表是反映企业一定时期内经营成果的报表;静态报表是指综合反映资产、负债和所有者权益的会计报表,如资产负债表是反映一定时期企业资产总额和权益总额的报表,从企业资产总额方面反映企业的财务状况,从面反映企业资产的变现能力和偿债能力。
按照会计报表的编制时间,可分为月报、季报和年报。 按照会计报表的报送对象,可分为内部报表和外部报表。 二、会计报表的软件设计方法 实现会计电算化后,会计报表一般都采用计算机软件来实现,即整个会计报表的形成过程:采集、计算、打印均由计算机来自动完成。
根据计算机对不同报表的数据采集和报表形成的不同处理方法,会计报表的软件设计方法可分为三类:专用报表的固定化设计、专用报表的通用化设计和通用报表的设计三类。
(一)专用报表的固定化设计 早期的会计电算化报表设计一般均采用此种方法。此种方法针对某个企业进行定点开发时,用专用报表的固定化设计。这种方法的设计要点是:针对某个企业报表格式固定不变,报表的数据固定单一,程序中只需将某帐簿文件的期末余额(或期末发生额)读出并输入报表文件中某行即可。其特点是:简单直观,不能通用。
(二)专用报表的通用化设计 此种方法的设计要点是:报表格式固定不变,但数据来源有所不同,不同用户可以根据自己的实际需要自行定义数据来源和计算公式。其特点是:灵活机动,便于通用。
(三)通用报表的设计 此种方法的设计要点是:报表格式(表头和表体)自行定义,数据来源也由用户自行定义,即不同用户可以根据自己的实际需要自行定义表格的表头栏目,自行定义数据来源和计算公式。其特点是:自行定义,自行设计。
1.通用报表的数据文件组织
(1)报表名称数据库 报表名称数据库用于存放定义的报表名称、报表编号、定义的日期,通过该数据库实现会计报表的管理,即增、删、改会计报表。
(2)报表框架结构 该数据库由三个字段组成:表号、标识字段和表结构内容字段。标识字段取值为:xt、lh、xw,分别表示“直接显示表头内容”、“栏号”和“直接显示表尾内容”。若标识字段各记录取值都为“xt”则可全屏幕手工制表(数据由键盘直接录入,与wps等字处理软件制表相似)。
(3)报表数据来源及计算公式数据库 该数据库用于采集某报表各栏数据。由六个字段组成:表号、栏号、核算、数据、数据来源、标识。标识字段取值为:“DZ”、“FZ”、“BN”及“LR”,分别表示数据来源于某一个帐、多个文件、表内运算及手工录入。栏号表示数据在表中的装配位置。
2.通用报表的程序设计 通用报表程序设计思想是:根据报表名称数据库、报表框架结构数据库、报表数据来源及计算公式数据库中的内容,程序自动编制一张报表并打印输出。
现代电子技术在财经领域的应用??会计电算化,为会计管理开创了一个新时代,使现代财务管理搭上了“信息快车”,彻底摆脱了“会计室里的算盘、钞票、记账”等沉闷印象,财务管理进入了真正的“数字时代”,大大提高了管理水平和管理效率,产生了巨大的经济效益和社会效益。
会计电算化是一项复杂的系统工程,技术性、创造性很强,与其他系统比较,有很大的特殊性,它处理的信息量大,数据要求准确可靠、保存期长,需要严格监控;同时,会计数据要求严格、保密性强,属企业敏感资料。因而,会计电算化对财务管理及其软件设计均有特别的要求:财务管理标准化、规范化;软件设计须具有安全可靠、功能多样性……
一、财务软件设计对会计工作的要求
1.增强法制观念,严格执行会计法
会计法是我们开展企业会计工作的法律依据,执行会计法是国家对会计工作的基本要求,所以企业的财务工作必然遵守会计法,遵守国家有关信息安全的法规。只有依法办事,会计工作才受到法律保护,从而为会计电算化的实现提供稳定的法律环境。
2.会计科目代码化
实行会计科目代码化的优点很多:(1)结构简单易记,便于会计人员使用;(2)便于电脑识别、分类、查验、调用和处理;(3)减少资料储存空间,减少电脑处理资料量,加快运行速度。企业会计科目代码必须采用会计制度规定的科目统一编码,例如现金101,银行存款102……这样既简单明了又便于计算机识别和处理,工作人员也乐于使用。如果缺少了这一重要环节,电脑系统就平添许多复杂内容,计算机不得不逐次识别处理每个会计科目,大大增加了程序设计的难度,而且多占了内存空间,减慢了计算机的运行速度,还会增加出错机会,不符合信息化环境的要求。因此,会计电算化首先要将会计科目代码代。
3.会计凭证标准化
电算化环境下会计凭证的设计要求:(1)具有通用性??尽可能满足各职能部门对会计核算的要求,力求做到多功能、一单多用、各方共享,提高人机工作效率。以记账凭证设计为例。建议采用集现金收付、银行转账、往来于一身的复式记账凭证,其内容应包括:摘要、科目编码、会计科目、一二级明细目、外币种类、借贷方金额、备注等,这样既适合处理人民币业务,又能处理外币业务,基本满足了会计核算的多方面要求,而且考虑到了未来对外业务发展之需,符合通用、多功能的原则。(2)便于会计人员操作,易于计算机处理。凭证设计的另一个要求是尽可能减少工作人员的书写、输入量,减少人工处理业务方面的时间??在会计实务中,工作人员往往要花大部分时间填写凭证、处理会计资料,效率低、差错多,而电算化管理则要求最大限度地减少人为处理资料的时间,让计算机更多地代替人的劳动,以充分发挥电脑高速、高效的优势。
同样道理,账簿设置、会计报表编制,也要符合标准化的要求,既要兼顾各方面需要,又要方便计算机处理。
4.会计处理方法制度化
会计电算化系统繁复而涉及面广,不宜经常修改,这就要求会计核算的方法、程序实行制度化。例如,固定资产的折旧方法有平均年限法、工作量法、双倍余额递减法、年数总和法等几种,企业可按实际情况加以选择,但一经确定就不要随意更改,要形成制度化执行。如果会计处理方法更改频繁,一则不符合会计制度要求,二则影响电脑系统正常运作,容易发生差错。如果不慎修改出错,就会导致系统损坏,影响正常会计工作。几年前,英国某信用卡公司就因修改计算机程序出错,致使支付混乱。日常生活中,类似情况是屡有报道。因此,如无法规、制度的变更,一般不要随意更改会计核算方法,以保持会计业务环境相对稳定,保证电算化系统正常运作。
5.培养复合型人才,提高财务人员的整体素质
综观目前的企业,既懂会计又懂计算机,并有一定英文英础的复合型人才实在太少,这是推行会计电算化的一大障碍。会计人员如果只懂会计,没有电脑知识,就不可能提出很好的会计管理构想去实现电子化;只有既熟悉会计,又具备一定电脑知识的会计专才,才能设计出优良的财务管理方案,让程序设计者去开发适用软件,使电算化发挥最大效能。再者,财务人员如具备一定电脑常识就能最大限度地避免操作错误,降低差错风险,从而保证会计数据安全。为此,企业要做好复合型人才的培训工作,让现职会计人员掌握电脑知识,为实现电算化提供重要条件。
实践证明,企业要顺利实行电算化管理,必须切实做好以上各项基础工作,争取上级领导的大力支持,为落实基础工作提供保证。
二、财务管理系统对软件设计的要求
1.高起点、高规格开发高质量的软件
财务系统对企业很重要,准确程度要求高,不允许有半点差错,因而必须从高起点出发,聘请高水平、合资格、有财务软件开发经验的公司和工程人员负责开发,不能聘请不够资质、不合资格、无实践经验的人员开发。否则,会影响系统的质量、进度,甚至会半途而废。例如,广州某企业,因经费不足聘请了一家技术力量较弱的公司负责开发会计系统,由于设计人员水平较低,加之无实践经验、缺乏财务常识,开发出的系统漏洞百出,最终无法使用,给企业造成了损失;同时,严重影响了该单位的电子化进程。因此,财务系统开发,用户必须聘请技术力量雄厚、具备财务软件设计经验的单位和设计人员负责。
2.做好系统分析工作
软件设计首先要从系统分析着手,目的在于了解财务工作流程,广泛收集必要数据,对相关的各种因素进行详细分析,这是软件设计的基础工作,很重要。对问题的分析是否深入细致、完整透彻,体现了设计人员对将要进行的工作的了解程度,也体现着基础工作准备是否充分,这关系到未来系统的成败,因而要充分重视系统分析工作。系统分析的具体步骤:
(1)成立专家小组,具体包括:委托方、软件设计人员、会计师、系统使用者、信息安全工程师等组成,为全面开展工作做好准备。
(2)落实任务,明确基本事项,确定具体要完成哪些工作。
(3)提出具体要求,包括:明确给出系统的规模;系统应能完成哪些工作;系统工作的步骤和方法:新系统应达到何种质量水平,以及具体的质量控制指标、计划进度等。
(4)收集、整理数据资料,包括:会计业务分工、业务量、业务处理方法、各类报表、输出结果的时间、数据储存要求等。
(5)认真编好会计业务流程图。会计业务流程图就是把会计业务的整个过程用图示和文字说明表述出来。这一过程很重要,是系统设计的基础、依据,财务系统就是根据会计业务流程图设计出来的,是会计业务流程的“数字化”。业务流程图质量的好坏直接决定着系统设计的成败。因此,必须认真踏实地做好业务
流程图的编制工作。
业务流程图须由专家小组编制,其间应重点发挥有实践经验的会计师、具体业务操作者的作用,重视一线员工的意见,尽最大可能满足第一线业务的需要。设计财务系统很重要的一条就是实用、方便操作,要考虑到一线业务的具体情况。只有理论和实践相结合,方便实务操作,财务系统才受使用者欢迎。
业务流程图须同时采用文字说明、图形描述两种形式,以相互补充;有关说明、描述必须详细、周密、完善、步步到位,凡是业务触及到的细节均应详细说明、准确标出,为下一步程序设计工作提供充分依据。
有的单位在开发财务软件系统时,只侧重程序设计环节,忽视业务流程图编制的重要性,结果到了程序设计阶段,不得不中断设计,回过头来抽出大量的人力、物力去临时补上有关业务流程细节,财务系统成了典型的“边设计边施工边补漏的‘三边’工程”。这样既容易出错又拖慢了工程进度,更谈不上周密完善,还会影响系统的设计质量,给企业造成损失。
(6)编制程序流程图。程序流程图是将系统设计的具体步骤,通过图示符号表示出来,它直观地反映了程序设计的构思过程,体现了整个程序运行的思路,是程序设计的关键一步,直接决定着程序设计质量的高低。同时,绘制好程序流程图非常有利于系统的整体控制。
(7)对前期基础准备工作进行严格审核。财务系统的设计是以各项优良的前期准备工作为前提的,基础工作显得尤为重要。顾此,在开展程序编写工作之前必须全面审查有关准备工作是否充分,发现问题及时解决;严禁边准备、边设计、边补漏。
3.程序设计阶段,采用模块化设计
模块化就是把一个复杂的程序分成若干个功能不同的多个部分,各个子模块均有独立功能,可以单独运行;而把各个子模块组合在一起,又能方便地搭配成一个完整的系统。模块化设计是现代程序设计中一种很重要的技巧,有着众多优点:
(1)便于分工合作,提高效率,提高质量。系统设计时,可以把要做的工作分拆成多个部分,然后分配给不同的人,甚至不同的单位各自开发。这有利于提高效率,提高程序的设计质量。
(2)便于维护、维修,增强通用性、易读性。
(3)增强模块的独立性,降低相互之间的依赖程度。即使有某些部分故障,也不致影响系统的整体运行。
(4)能设计出可绕过障碍区运行的高质量软件??这是模块化设计的最大优点。由于模块之间相对独立,所以即使出现某些非关键性故障,系统依然能安全运行。这一点很重要,因为系统在使用中出现小故障是较常见的现象,如果财务系统具备了这种优点,就能做到不停机维修,不致影响日常业务,这对财务管理特别有意义。反过来,如果系统一有小毛病就会影响日常业务,甚至突然“死机”,就会严重打乱企业的管理秩序,还可能会造成数据丢失,给企业造成损失。所以,能做到小毛病不停机维修,大故障能尽快恢复是财务管理对其软件设计的特殊要求。
4.软件设计要有扩展性,以适应企业未来发展
会计电脑系统设计要预计到企业各类业务的发展,要预留足够的扩展空间,以适应业务高层次、多元化发展。某些企业的电算化系统因没有扩展性,致使业务稍有变动,系统就无法适应,延误了日常工作。例如,一些企业的会计系统能处理人民币、港币、美元业务,但对日元、英镑、欧元或其他外币业务就难以适应。随着我国即将加入WTO,企业外币业务必然日益增多,缺乏扩展功能的会计系统将难于满足未来发展要求。因此,会计系统设计一定要有超前意识,要考虑到未来业务发展需要,设计有扩展性、多功能的软件。
要考虑到某些特殊业务的需要。深圳市曾发生过这样一件事,一对从新疆调进该市的夫妇,在为小孩办理入户手续时,因公安局的户籍管理系统只能输入四个汉字以内的姓名,而该小孩是维吾尔族,名字由近十个汉字组成,超出了公安局电脑系统的设计要求,以至无法正常入户,引起了不必要的纠纷。以此为鉴,财务电脑系统应有处理特殊业务的设计,要考虑到特殊业务的需要。
5.强调面向用户
财务系统的最终使用者是企业,是一线业务人员,所以要特别强调操作简单、方便用户,要设计良好的用户界面,具体操作应尽可能简单易学。在屏幕显示方式上,最好只显示与业务相关的资料,对可有可无的资料,如参考性、辅助性的资料则能省则省。切忌“和盘托出”??有用、暂不需用的资料均显示于屏幕,这样很容易造成操作错误,还会给人“眼花缭乱”的感觉。在目前企业计算机应用水平、管理水平不很高的情况下,“面向用户性”很值得广大设计人员的重视。
6.试运行
系统完成开发后必须反复测试,证明达到设计要求,才能交付使用;不能边检测、边使用、边补救。
7.制定应急计划
系统完成设计后,开发方应编制与系统相关的运行文件,并提出有关注意事项,以备在出现意外情况时,有条不紊地采取相应措施。使用单位也应制定自己的应急计划,以备急需。令人担忧的是,不少单位恰恰忽视了这一关键步骤,没有起码的应急计划,假如系统一旦出现故障,后果不堪设想,损失将是巨大的。
8.加强风险控制,保证信息安全
实现会计电算化,必然解决信息安全问题。由于电子数据高度集中,高度依赖电脑,且受电脑病毒入侵、人为操作失误、机器故障、非法毁损等因素影响,数据很容易被破坏,因此,会计电算化必然加强信息安全管理,一方面制定各种严格的管理制度,加强风险控制,加强管理;另一方面加强对员工的信息安全教育,严禁未经受权人员上机操作;不能连接与业务无关的终端,禁止与互连网连接;采用先进的加密技术,安装“防火墙”,严防电脑病毒入侵,防止人为非法破坏数据。实践证明,严格、有效的管理制度是信息安全的最好保障。
9.加强对财务系统使用前的审计
财务系统必须确保正确,才能投入使用,这是保证财务数据安全的关键。系统在投入使用前,应组织专家小组进行严格审计、从严检测,并实地模拟运行。只有证明正确无误的系统方可正式投入使用,只有经过“实战”检验的系统才具有可靠性。必须指出的是,财务系统不能边使用、边检测、边维修,这样风险很大,难于保证数据安全。
实行会计电算化,要求财务管理标准化、规范化,而财务软件设计则要符合财务管理的特殊要求。只有相互适应、互相配合,才能设计出安全可靠、多功能、高质量的优秀软件,更好地推进会计电子化工作。财务电算化是大势所趋,是提高企业科学管理水平、增强竞争力的迫切要求??会计师、程序设计人员在这方面有着异常重要的作用,应充分调动他们的积极性、创造性。
1.1 题目背景
水资源监测是水资源管理与保护的重要手段,我国水资源紧缺、水污染严重,如何高效、实时地获取水环境参数、研究开发水环境监测新方法,已成为水环境管理与保护的一项重要任务。无线传感器网络 WSN(Wireless Sensor Network)是将有感知能力、计算能力和通信能力的微小传感器节点采用规则或随机方式部署在监控区域,通过无线自组织和多跳的方式构成的分布式网络。它集传感器技术、嵌入式技术、现代网络技术、无线通信技术和分布式信息处理技术于一体,以数据处理为中心,协作地感知、采集、处理和传输目标区域的监测信息并报告给用户。它具有可快速部署、无人值守、功耗低和成本低等优点。
1.2 国内外相关研究情况
在世界上我国属于水资源贫乏国家, 对水资源的优化使用对我国实施可持续发展战略具有十分重要的意义。强化对水资源环境的监控是一个长期的任务。常规水资源环境监测方法主要分为以下两种:(1)利用便携式水质监测仪人工采样、实验室分析的方式。该方式仅限于对河流、湖泊的几个断面采样,采样频率从每月数次到每日数次。(2)采用由一个中央控制室和若干个监测子站组成的水环境自动监测系统对水环境参数进行自动连续监测, 数据远程自动传输, 可以实时查询所设站点的水环境参数[1]。前者由于无法对水环境参数进行远程实时监测, 存在水质监测周期长、劳动强度大、数据采集速度慢等问题, 不能很好地反映水环境的连续动态变化, 不易及早发现污染源并预警。后者能很好地解决水质监测周期长、劳动强度大、数据采集和传输速度慢等问题, 但由于有铺设电缆和建立监测子站的施工要求, 因而存在对监测地点原有的生态环境影响大、系统投资成本高、监测水域范围有限的缺点, 同时无法进行大面积布设监测子站、对每个小水域实施多点远程实时监测。基于无线传感器网络的水资源实时监测系统, 比较典型的国外代表有美国Heliosware公司的EMNET系统和澳大利亚CSIRO 的Fleck系统[2、3]。上述两种系统可采集参数种类较少、不提供对水资源的视频监测功能且通信速率低、产品体积较大、功耗较高, 目前仅适合用作研究, 尚不能作为实用系统在现场使用。国内已对基于无线传感器网络的水资源实时监测系统的一些关键技术进行了研究[4]。与传统的监测法相比, 无线传感器网络具有对生态环境影响小、系统成本低等优点。
近些年来,无线传感器网络是国际上非常关注的、涉及到多个学科高度交叉、知识高度集中的热点研究领域。目前,无线传感器网络的研究经过了两个阶段。第一阶段主要是采用MEMS技术设计微型节点,代表性的研究成果是智能埃及SmartDus无线集成网络传感器WINS。第二阶段是研究网络问题。国外设计了很多套演示系统取得了一系列重大的理论研究成果。在国外,Intel公司于2002年了基于无线传感器网络的新型计算机发展战略,主要研究无线传感器网络在医学、森林防火、环境监测等方面的应用。在国内,很多科研机构和大学队无线传感器网络都进行了相关方面的研究。有业内专家指出,中国掌握了物联网(WSN的实际应用)的世界话语权,不仅表明我国在该领域上的技术领先,同时也在于中国式世界上少数能将WSN实现产业化的国家之一。
1.3 研究意义
水资源是生命生存不可替代的自然资源,是生命支持系统之一,也是重要的环境要素。楼兰古城的兴起是由于丰富的罗布泊湖水的滋润,富庶的楼兰11万平方米,人口达万人,是楼兰国的首邑,是我国古代一重镇,也是丝绸之路南线必经之地。后来由于种种原因导致水资源衰竭,繁华的古城衰落,直至湮没在茫茫的荒漠之下。
水资源危机究竟始于何时,目前学术界尚无公论。但是水资源危机引起了世界各国的关注与不安。我国是一个人口众多,水资源绝对数量较高而相对数量较低的缺水国家。1988年7月1日《中华人民共和国水法》正式实施后,确立了每年水法宣传周(简称为水周),其目的就是通过这一活动,向公众集中灌输有关水资源开发利用与保护方面的知识和政策法规,以增强公众节约水资源的意识。
我国的水资源价值理论受水资源是取之不尽,用之不竭的传统价值观念影响,造成了水资源长期被无偿地开发利用,不仅造成了巨大的宝贵水资源浪费和对水资源非持续开发利用,同时对人类的生存及国民经济的健康发展产生了严重的威胁。尽管近几年来对此有所认识,采取了相应的行政或法律手段扭转这种被动局面,但是,由于对水资源价值理论的研究不够深入,致使所采取的措施缺乏广泛的经济社会基础,最终结果是政府干预行为过于集中和强硬,市场行为和经济杠杆的作用又过于薄弱,导致期望与现实相差甚远。因此,水资源价值研究在持续利用水资源过程中具有重要的地位,是实现持续发展战略一个组成部分,开展此方面的研究是十分必要的。
2.本课题研究的主要内容和拟采用的研究方案、研究方法或措施
2.1 研究的主要内容
根据无线传感器网络的基本理论和水资源监测的实际需求,设计基于无线传感器网络的水资源实时自动监测系统,能够在线实时测量温度、PH 值、电导率、浊度等参数的水资源监测系统,此系统在监测区域内采集相关数据,利用监测区域协调器节点和远程监测中心(PC 机)之间的通信,把经过处理的测量结果动态地显示出来。本课题完成系统上位机的软件设计,由串口接收协调器节点送来的水资源监测数据,进行数据解析,提取出各个传感器采集的数据并通过界面动态的显示出来。
2.2 研究方案
关于本次研究的课题,基于无线传感网络的水资源监测系统的设计,主要可分为三个部分,由于本次课题的研究只涉及上位机部分,即图一中的虚线部分,主要设计上位机的软件界面的设计部分,其中包括有串口接收数据,解包数据,以及显示部分,其中的解包部分包括,将PH值,浊度,在线实时温度,电导率和它们各自对应的数值一一对应起来,这部分主要涉及用Visual C++语言将其用软件编程,并实现功能,其流程图为图2:
实现过程为:先初始化软件,再设置软件编辑界面,设置好界面后,开始接收由协调器经串口发送过来的数据,进而解包数据,接着处理数据,将PH值、实时测量温度、浊度以及电导率的各组数据按照一定的要求计算好,显示各组数据,最后结束程序。
在这个过程中,实现了串口接收数据,解包数据,处理数据以及最后将数据动态的显示出来,完成了本次研究的要求。
3.本课题研究的重点及难点,前期已开展工作
要完成这次课题,即基于无线传感器网络的水资源监测系统的设计上位机,需要完成的内容有:系统上位机的软件设计、接收由串口协调器节点发送过来的水资源监测数据、进行接收数据的解析、提取出各个传感器采集的数据并且通过界面动态的显示出来。其中重点以及难点有:系统上位机的软件设计,由于对上位机不是很了解,以前也没有接触过上位机,对它的功能,使用不了解,也没有接触过Visual C++语言,属于初学者,会有一定的难度,既是重点也是难点;把接收到的数据进行数据分析,要进行合理的、有效的数据分析,是一个关乎本次课题成败的重点;将提取出的数据通过界面动态的显示出来,要通过一定的平台来显示,即要通过一定的硬件设施显示,这就需要能够正确的,有效的连接到所用的平台,是研究的最后一道门槛,也是重点。
目前为止,已经开展的工作有,通过查询相关资料以及通过互联网了解到上位机的功能,以及它所需要的编辑工具-----Visual C++,对我来说这是一种新的语言,现在已经开始看有关C++方面的书,开始学习使用它一些简单的使用方法。
4.完成本课题的工作方案及进度计划(按周次填写)
第1-3周:查找借阅相关书籍资料,确定系统的总体方案,完成开题报告;
第4-9周:进行上位机软件编程学习,软件界面设计
第10-11周:进行软件设计、进行数据解析;
第12-15周:系统调试,验证系统功能;
第16-17周:完成毕业论文,准备答辩
摘 要 计算机在教学中的作用逐步显现。计算机技术和网络技术,可以打造教学交流平台,构造校园内的网络。让教学方法更为丰富,教育教学实时存在,更可以让教师和学生的信息沟通得到全面的进步。本文介绍了使用学校网络,打造网络平台计算机进行教学的系统设计和完善过程。
【关键词】校园网络 软件设计 教学系统 模块化
1 研究背景介绍
学校网络教学系统的设计目的是出于实际应用意义。首先从技术角度,计算
机开发技术已经趋于成熟,使用计算机高级编程语言具备完成系统制作的条件。在计划进行设计的初期,查阅了相关的文献与资料,计算机实现的教学平台系统已经有成型的作品。而且许多高等院校的应用都显示,利用网络教学系统,实现教学,是一种行之有效的与时俱进的现代化教学模式。通过这样的平台,学生可以提出问题,得到教师的解答。可以在线实现选修课程的选定,可以查阅自己的学分和单科成绩等等。意义众多,所以设计并完成基于网络模式下的教学系统工作是有实际意义的。
当前校园网络教学系统的情况:很多高校率先完成了网络平台教学系统的应用,好处前面已经简单介绍,这里不再赘述。但是仍然存在着很大的不足。比如教师在教学过程中的经验如何能通过教学系统展现出来,这是一大难题。学生在网络教学系统下的心态不同,在具体的教学中反映出的状态无法让教师观察到。如何通过网络的形式调动并发挥出学生学习的主观能动性。这些都限制了网络教学系统的发展。
2 软件设计工具选择与硬件需求:
软件设计采用服务器客户端模式和浏览器服务器模式交互。网页脚本设计在
和php中进行选择。二者各有利弊。综合设计者的使用习惯选用了数据库技术使用成熟的sql sever。高级语言选用java,这些技术成熟且具有一定的先进性、流行性。硬件需求本身并不很高,主流计算机皆可。但是在设计中,为了加大网络承载能力,选用了硬盘组为服务器,在压力测试中发现可承受同时间片200人登录工作。在并行计算中,主要利用了java的特性,并没有进行额外的并行算法设计。
3 部分模块、子系统功能介绍
这里只简单介绍部分子系统模块的工作功能。
首先信息管理子系统 信息管理子系统是辅助平台的唯一入口,里面包括各
种资料和师生的个人信息。它能根据用户的需求检索各种公告信息,能帮助教师或学生和搜索课件、教案等。其次,学习管理子系统 学习管理子系统的主要功能是分专业课程的管理、教学计划和大纲的设置以及各项内容的修改和调整等。为学生的主动学习提供基础。再如课件管理子系统 课件管理子系统的主要功能是教师上传或修改课件,方便学生及时共享教师的学习资料和学习理念,另外,也有助于这些资料的学习推广。再如师生交流子系统 师生交流子系统的功能是让师生互动起来,使得教师能及时、全面的接受到学生的反馈,也使得学生通过和教师的交流,对知识有进一步的理解。又如在线考试子系统 在线考试子系统的功能是最大限度满足各学科教师和每一名学生的要求,实现无纸化的各种科目考试以及试卷批阅、成绩统计分析等工作。如作业子系统 作业子系统的功能是给教师提供了在网上布置作业和批改作业的平台。比传统的作业处理方式效率更高、应用更为灵活。
4 特点介绍
4.1 系统架构
合理采用了双交互模式。当服务器处于开放作业时候,用户可以用密码和口令登录网页,接受相关服务。
4.2 用户设置灵活
有教师角色、学生角色、管理员角色和录入员角色。不同角色实现不同的功能。比如教师可以登录试卷批阅模块,可以登录信息答疑模块,为学生的提问做出解答。录入员角色,是为了组织网络试题的录入工作而设置的,在短时间内允许登录和输入试题。这种角色设置有时间的限制。在工作完成过后,要由管理员取消权限和用户。当然还可以根据特殊需求,在管理员授权下,设置特殊角色,给予不同模块权限的设置。
4.3 在安全方面进行了考虑
使用了md5以及初步加盐技术的应用。在网络应答和网络模考模块中,使用了蚂群算法的遗传算法应用。出题难度和题量整体较为平均,趋于合理状态。
4.4 系统在检测和实际使用中
具有较好的稳定性,在编写过程中,语言和数据库选用合理,为软件后期维护和功能
拓展,提供了空间。
5 结束语
综上所述,在校园网络中使用计算机技术完成教学系统的设计,具有实际应用意义。可以为各个中高等院校服务。系统设计合理,工具选用皆为当前主流语言与工具。实现系统具有自身的特点。灵活稳定。可以让教师、学生在校园网络中更好的完成学习任务。减少了学校为教学而付出的人力与物力。设计过程中仔细研究了已有的产品和具体的需求,完成了主体功能,较好的完成了设计任务。
摘 要 本文重点分析了当前流行的android、jdbc、ajax、jquery等计算机新技术,探讨新时期移动电子信息软件开发的技术趋势,对计算机从业者和爱好者都具有一定的参考意义。
【关键词】计算机 新技术 移动 软件
1 引言
android这个单词的原意是“机器人”,2007年,google推出了一款基于linux技术的手机开源系统,也命名为android,这个智能手机平台由中间件、操作系统、应用软件和用户界面组成。美国著名的科技博客在2012年曾评选十款对二十一世纪影响最大的电子产品,其中就有android智能手机操作系统。随着andriod手机系统不断开发与应用,消费电子、媒体播放器、移动终端都广泛应用移动电子信息软件。据有关数据指出,我国2013年平板电脑和智能手机的占有量占全球的25%。随着全球智能终端市场的中心逐步发转移到中国,同时安卓系统也在平板市场广受消费者喜爱。随着wifi和3g网络的普及,智能手机等其他智能终端能够随时随地连接互联网,使用者轻而易举获取网络服务。在现实生活中,安卓智能系统移动电子信息软件占有很大市场。
2 新时期移动电子信息软件应用发展
首先是消费群体成熟,目前国内安卓开发应用社区非常活跃,国内运营商和厂商都积极加入安卓阵营,许多厂家推出了基于安卓系统的移动电子信息软件。android在我国具有十分广阔的前景,很多企业开始认识到app的重要应用,安卓企业客户端的设计开发越来越受重视。现在我国智能手机的软件开发正处于飞速发展时期,通过一路探索和对以往经验的总结,产生了一批致力于安卓系统app开发的优秀互联网供应商。移动电子信息软件已经包括酒店、商城、美容、旅游、医疗、汽车、地产、娱乐、传媒等服务产业,致力于提供一站式移动开发给企业客户。
一款名叫“飞常准”的航班实时查询的移动电子信息软件已经支持80%国际航班和99%的国内航班查询航班动态,提供到达、起飞、取消、延误、备降和返航等六种航班状态的结果。这款应用软件还能提前预测航班延误,及时提供延误航班的预报。
一款叫“淘宝旅行“的移动电子信息软件应用是为人们提供酒店、火车票、机票服务的。通过这款应用软件,还能够查询预定的部分景区门票。只要在客户端输入所处位置和目标城市,就能提供用户目的地周边详细的酒店价格和地址给客户,同时为客户提供导航。
一款叫“高德地图”的gps导航移动电子信息软件可以提供交通实时路况的播报,还可以预测到达目的地的时间、合理规划出行路线、提醒摄像头等服务。另外,为了减少使用流量,这款应用还可以离线下载。同时,这款手机应用软件整合天气、火车、公交等资源,方便用户出行。
一款名叫“蝉游记“的移动电子信息软件可以方便分享和制作旅行游记。下载这款软件后,可以用豆瓣、新浪微博和qq等网站账号登陆。这款手机软件支持离线全程操作,不受网络的限制。另外,当联网的时候,可以将手机游记更新到网站,和好友一起分享精彩旅程。
一款名叫“墨迹天气“的移动电子信息软件专门用于天气信息免费查询。这款手机软件采用人性化设计,使用方便,现在能够预报2000多个地区的天气。使用这款手机应用软件所需的流量很少,每次不到3k。占用的内存也很少,可以独立运行在主程序之外并且支持显示在桌面。
一款名叫“快的打车”移动电子信息软件风靡一时。这款手机应用软件可以帮助人们预约叫车和实时打车。目前,这款打车软件使用城市超过50个,有2000多万用户。使用这款手机软件打车,还有返还部分车费的优惠。
3 新时期移动电子信息软件核心技术
3.1 jdbc技术
java语言用于执行sql语言的api叫jdbc,这个应用接口可以为不同类型的数据库提供相同的访问,jdbc由java编写的接口和类组成。jdbc的出现极大地方便了数据库程序开发人员,为他们提供了一个统一的api,可以在此基础上构建更高级的接口和工具,使数据库程序开发人员方便写出数据库相关的应用程序。
jdbc的出现使sql语句的发送变得很简单。开发人员只需要调用数据库接口编写程序就可以了,它自动向相关数据库进行sql调用。另外,jdbc和java语言的结合避免开发人员为不同的开发平台重复开发相同的应用程序,实现应用程序一次编写,到处运行,这同时体现了java语言的优势。
对于java开发人员来说jdbc是api,是
实现数据库连接的接口模型。作为应用程序接口,jdbc提供统一的接口给程序开发人员,并且为第三方厂商实现数据库与中间件的连接提供统一的方法。jdbc支持sql标准和数据库其他的连接标准。jdbc真正实现了面向目标的连接,并且有严格类型、简单但高性能的接口。
3.2 jquery技术
jquery是基于javascript语言的一个优秀框架,jquery兼容css标准,是精简版的js库,能够很好地应用于各种浏览器。jquery方便用户处理html,实现动态功能,提供灵活的ajax交互给网站。另一个优势是拥有详细的使用文档,实现html内容和代码的分离,简单易用。
3.3 ajax技术
ajax是一种交互性强、创建快、性能好的web开发技术。xmlhttprequest是ajax的核心技术。ajax在服务器和浏览器之间采用异步传输数据。通过ajax,可以直接提出请求给服务器,用户堵塞少。
智能终端的程序开发比桌面程序有许多优点,它们开发简单,安装方便,用户群大。
4 结语
随着计算机科技的飞速发展和移动开发的蓬勃兴起,这些新型计算机技术已经广泛应用于智能手机、平板电脑等智能终端领域的程序开发。移动互联网对人们越来越重要,这些计算机技术的应用前景也会更广阔。
作者简介作者简介:李伊林(1984-),男,江西省水利科学研究院助理工程师,研究方向为网络通信;傅小英(1987-),女,南昌大学信息工程学院硕士研究生,研究方向为计算机应用。1qt简介
qt是一个跨平台的c++图形用户界面库,由挪威trolltech公司于1995年底出品。qt的对象间通信采用信号/槽(signal/slot)机制,其中signal犹如mfc中的事件,而slot则是响应事件的方法。如果要实现对象间的通信,只需要把一个对象的slot和另一个对象的signal连接起来即可实现事件驱动[1]。
由于本系统是通过qt[2]图形开发工具来实现与用户之间的接口设计,所以在eclipse中如果要使用qt,则需添加qt插件方可建立qt gui工程文件。
2系统总体设计
本系统实现了linux系统下的简单通信,同时可以动态刷新在线用户列表,并与其他用户进行聊天通信或传送文件等[3]。如果用户想与其中某位好友聊天,则应该与其建立连接,此时两个客户端有一个作为服务器,另一个作为客户端。本系统的主要架构如图1所示。
系统主要分为客户端和服务器,服务器并不对用户发过来的信息进行转发操作,因为该做法会增加服务器的工作量。它只负责监听客户端的连接请求,同时,在与客户端建立新连接时,服务端会对客户端的端口号进行注册,之后将端口信息提供给每个连接上的客户端[4]。因而两个客户端之间的通信则不需要以服务器作为转发站,而是可以直接进行通信,从而减少了用户之间的通信响应时间。客户端主要可以进行注册、查找密码、添加/删除好友等一些基本操作[5],与好友建立连接之后,还可与好友进行聊天,互传文件等。
图1系统架构
3关键技术实现
3.1客户端listfriend类实现
listfriend类主要用来显示当前用户的好友列表,并按好友的不同组号将其进行分类。同时,用户可以通过触发右键事件对自己的好友列表进行修改,如添加、删除、移动好友,修改好友备注,修改用户信息等。在该类中,用户还要对自己的端口号进行监听,如果有好友提出聊天请求,用户可以根据自己的意愿接受或拒绝。或者用户自己向好友提出聊天请求,如果好友拒绝,则关闭对话框。
【摘 要】matlab软件是以矩阵为单位进行数据的运算与处理,matlab的程序设计过程中,对象的句柄是非常重要的一个概念。每个对象都有自己独立的句柄,通过操作句柄,来实现对象的控制和修改。gps测量的成果是基于wgs84椭球的纬、经度坐标和大地高,而我们实际应用中需要用到的是北京54或西安80的高斯投影平面坐标或者是地方坐标,因此就存在一个坐标转换的问题。本文介绍两种坐标转换方法:空间三维七参数坐标转换方法和平面二维四参数转换方法,利用这两种方法通过matlab设计界面并编写程序实现对excel中的坐标数据进行坐标转换。
【关键词】matlab;全球定位系统;七参数;四参数
0 引言
matlab软件是“矩阵实验室”——matrix laboratory的缩写,是用c语言进行编写的。它具有语言书写简单,语句功能强大,封装了丰富的数学函数,我们可以直接调用这些数学函数。matlab对于数学运算,特别是矩阵运算,非常高效,而文件批量坐标转换又涉及复杂的数据计算,这就是为什么利用其进行程序编写实现的原因。
excel是微软公司的办公软件microsoft office的组件之一,它可以进行各种数据的处理、统计分析和辅助决策操作。将原始数据存放在excel中,excel可以批量对原始数据进行预处理,达到我们想要的数据格式,可以将文本导入到excel中,读取与存储都易于操作。
随着全球导航定位系统的发展,尤其是美国的gps技术发展,其具有全天候,连续性,实时性等优势,已经逐渐取代了传统的测量方式。gps测量成果是基于wgs84椭球的大地坐标,即:大地纬度b,大地精度l,大地高h。而我们通常所需要的是基于克拉索夫斯基椭球的北京54坐标系或基于第16届iguu大会推荐的1975年国际椭球的西安80坐标系。因此我们需要将gps所测的wgs84大地坐标转换成我们所需的北京54或西安80坐标。
本文主要介绍两种坐标转换方法:七参数空间坐标转换方法和四参数平面坐标转换方法,通过matlab设计界面并编写程序实现这两种方法,然后通过转换得到的坐标比较分析这两种的精度及适用范围。
1 matlab简介
1.1 matlab系统概述
matlab是美国mathworks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括matlab和simulink两大部分。
matlab是英文“矩阵实验室”——matrix laboratory的缩写,其全部采用c语言编写。具有如下特点: (1)基本数据单位是矩阵,矩阵运算如同其他高级语言中的变量操作一样方便,矩阵无需定义即可采用;
(2)高效的数值计算及符号计算功能,能使
用户从繁杂的数学运算分析中解脱出来;
(3)具有完备的图形处理功能,实现计算结果和编程的可视化;
(4)友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;
(5)功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。
1.2 matlab程序编写的基本原则
突破以往其它程序语言经常采用的循环思想,尽量采用matlab矩阵式语言书写程序,使得程序简洁,执行效率高。在程序设计中尽量避免重复的脚本代码,多用matlab提供的函数。系统中的函数要比用一般代码编写的函数执行效率高很多。在编写比较大的程序时,应该对各个细节以函数或子过程方式处理,避免矩阵混淆。
在程序编制过程中,各个功能部分尽量封装在函数中,这样不但可以减少全局变量个数,而且对各个函数的修改要比对整个程序的修改方便得多。
1.3 matlab的文件类型
m文件:用于存储函数过程;
figure文件:用于显示、存储图像;
在matlab中,最常用的是m文件。matlab是一种解释性语言,用户发出的指令需要送到matlab系统内解释,而m文件实际上就是记录指令的文本,用以统一将命令送入系统内进行解释。
m文件有命令式(script)和函数式(function)两种形式。命令式文件就是matlab内部命令的简单叠加,matlab会按顺序执行文件中的命令,这种方式常用来形成主函数。函数式文件用以解决参数传递和函数调用的问题,每个具体的功能一般用此方式实现,它的第一句以function语句为引导。
2 坐标转换相关理论
2.1 三维空间坐标转换
wgs84与bj54的坐标转换问题,实质是wgs-84椭球体到bj54椭球体的转换问题。
如果我们是需要把wgs84的经纬度坐标转换成bj54的高斯投影坐标,那就还会涉及到投影变换问题。而如果我们所需的坐标是地方坐标,那么我们还要利用四参数法将北京54坐标转换成北京地方坐标。因此,这个转换过程,一般的gps数据处理软件都是采用下述步骤进行的:
1)wgs84(b,l)——wgs84(x,y,z),空间大地坐标到空间直角坐标的转换。
2)wgs84(x,y,z)——北京54(x,y,z),坐标基准的转换,即datum转换。通常有三种转换方法:七参数、简化三参数、molodensky。
3)北京54(x,y,z)——北京54(b,l),空间直角坐标到空间大地坐标的转换。
4)北京54(b,l)——北京54(x,y), 高斯投影正算。
5)北京54(x,y)——地方坐标(x,y),四参数转换。
通过下面的流程图,我们可以更清晰地了解整个流程。
图1 wgs84、北京54、北京地方坐标转换流程图
2.2 二维平面坐标转换
二维坐标转换适用于小范围内gps坐标向地方坐标的转换,在实际测量时,必须将gps接收机测得的大地经纬度坐标b、l(基于wgs一84椭球)转换成本地平面直角坐标x、y(基于本地椭球) 。其转换过程为:
(1)将公共点的wgs84坐标投影到其对应椭球的高斯平面上,得到wgs84的平面坐标;
(2)利用两个以上的点,采用最小二乘方法求解四参数;
(3)先将需要进行坐标转换的wgs84坐标投影到其对应椭球的高斯平面上,得到wgs84的平面坐标,然后根据第二步求得的四参数,将其转换为本地平面直角坐标。
为了使上面的过程更为清晰,现以wgs84的大地坐标与转换到北京54坐标所作的流程图为例进行说明:
图2 二维平面坐标转换流程图
3 matlab gui界面设计及程序实现
通过参考南方测绘gps数据处理中的坐标转换软件和coord mg坐标转换软件界面,经过综合分析比较,我设计出了这款基于matlab gui实用、简洁、界面友好的zbjh2013坐标转换软件,zbjh2013主要用七参数和四参数两种转换方法进行三维空间和二维平面坐标转换。
3.1 matlab gui相关内容介绍
matlab具有创建图形用户界面(gui)的功能。gui是用户与计算机或计算机程序的接触点或交互渠道,是包含诸如窗口、图标、菜单和文本等图形对象的可操作界面。通过定制用户与matlab交互的命令窗口,gui能有效组织数据流程,使处理方法易于使用和推广,同时也使人机交互更加友好。
在这次坐标转换
软件设计与实现过程中主要用到了以下几种控件:
(1)面板(panel):panel是gui对象的容器,当移动panel的位置进行gui编辑时,panel的子对象也随之移动,并保持它们在panel中的相对位置。
(2)弹起式菜单(pop-up menu):pop-up menu与listbox类似,都使用string属性显示一组选项,区别为:①pop-up menu更节省界面空间,需要左键单击才能调出这些选项;②pop-up menu不能同时选择多个选项。
(3)单选按钮(radio button):radio button通常组合使用,用于显示一组互斥的状态。
(4)复选框(check box):check box与radio button类似,用于显示一对互斥的状态,通过鼠标左键单击,可在“选中”与“未选中”两种状态之间切换。(5)静态文本(static text):static text通常用于显示其它对象的数值、状态。
(6)可编辑文本(edit text):edit text允许用户修改文本内容,用于数据的输入与显示。若max-min>1,允许edit text显示多行文本;否则,只允许单行输入。
(7)列表框(listbox):listbox用于显示一组选项,通过鼠标单击左键,可选中任意一个或多个选项,当max-min>1时,允许同时选中多个选项;否则,只允许一次选择一项。
(8)触控按钮(push button):通过点击push button可以调用回调函数,实现某项功能。
(9)表格(table):table为二维的可视化表格,可用于显示控制点坐标,通过编写程序来实现点击按钮添加和删除数据。
(10)选项卡控件(tabstrip control),通过tabstrip control可以进行局部区域界面之间进行切换。
3.2 matlab程序实现相关代码
框架搭建好之后,在matlab gui对应的m文件进行程序编写过程中,解决以下几个难点:
(1)不同gui间参数传递、回调函数调用问题;
主界面的代码
[scs1,scs2,scs3,scs4] = conversionmethod;
handles.dx = scs1;
handles.dy = scs2;
handles.xzj = scs3;
handles.cdyz = scs4;
子界面的代码
varargout{1} = handles.scs1;
varargout{2} = handles.scs2;
varargout{3} = handles.scs3;
varargout{4} = handles.scs4;
delete(handles.conmet_scs);
(2)将子界面的所有控件复制到主界面上,通过tabstrip实现选项卡功能;
将子界面的所有控件复制到主界面上的代码
hsub = sub('visible','off');
hpal2 = copyobj(findobj(hsub,'tag','filetransfer_uipanel'),hobject);
set(hpal2,'position',get(handles.point_uipanel,'position'),... 'visible','off');
handles.hpal2 = hpal2;
delete(hsub);
通过点击选项卡实现点坐标与文件坐标转换的切换的代码
tabstripval = hobject.selecteditem.index;
switch tabstripval
case 1
set(handles.point_uipanel,'visible','on');
set(handles.hpal2,'visible','off');
case 2
set(handles.point_uipanel,'visible','off');
set(handles.hpal2,'visible','on');
end
(3)对table空间的操作,通过点击相应按钮逐行添加和删除数据。
逐行添加数据的代码
global coord;
b = str2double(get(handles.edit1,'string'));
l = str2double(get(handles.edit2,'string'));
x = str2double(get(handles.edit3,'string'));
y = str2double(get(handles.edit4,'string'));
raw = {b,l,x,y };
coord = [coord;b l x y];
set(handles.calculateqcs_uitable1,'data',coord);
逐行删除数据的代码
data = get(handles.calculateqcs_uitable1,'data');
[row,column] = size(data);
for k = row:-1:1
data(row,:) = [];
set(handles.calculateqcs_uitable1,'data',data);
end
(1)选择源椭球类型,待转转换坐标类型;
(2)选择目标椭球类型,目标坐标类型;
(3)通过点击菜单“设置”“投影设置”,通过投影设置界面,设置投影方式、中央子午线,投影尺度及x常数和y常数;
(4)通过点击菜单“设置”“四参数”或“七参数”,选择一种坐标转换方式,通过四参数或七参数设置界面,输入四参数或七参数,如果四参数或七参数未知,则通过点击四参数或七参数设置界面中的计算四参数或七参数进行四参数或七参数的求解,四参数需要至少两个控制点坐标,而七参数需要至少三个已知控制点坐标,配置好参数坐标转换方式之后,选中转换设置中的投影设置和四参数或七参数复选框;
(5)通过选项卡进行单点坐标或以文件的形式批量坐标转换。
4 结论
将matlab gui与坐标转换相关知识结合起来,matlab具有矩阵运算的特长避免了程序中出现大量循环体。gui界面设计简洁、直观、友好。既能够实现单个点的坐标转换,有可以excel文件的形式实现批量坐标转换。不管是三维空间或二维平面坐标,转换得到的成果完全能够满足工作的精度要求,到达最初的设计目标。
通过大地测量学课本与坐标转换相关的知识及网上下载的一些论文的阅读学习,对坐标转换的理论认知更加深入,受益匪浅。