会计电算化教学ppt课件应用篇.ppt
1,会计电算化,(应用篇)计算机会计信息系统开发方法和步骤,2,课程目的, 掌握和了解在计算机和网络环境中会计核算 职能是如何实现和完成的;, 能以信息技术发展的眼光去理解会计;,能够应用分析和设计工具正确地描述不同时 期不同企业的会计数据和信息处理流程;, 能够根据会计核算和管理的要求确定会计信 息系统的基本功能;, 能够根据会计核算和控制的要求提出内部控 制方案;, 能够正确地理解和评价电算化会计信息系统。,3,第二章 计算机会计信息系统开发方法和步骤第一节 电算化会计信息系统开发方法和步骤概述,会计信息系统的开发和设计是一项专业性强,技术要求高的工程。需要用科学的、系统的开发方法和步骤,才能确保整个开发工作能顺利进行。 目前,较为流行的开发方法有:生命周期法、原形法、面向对象法和计算机辅助开发方法。,1、软件生命周期法的含义 从构思一个计算机软件之时起,经过软件开发、完成、投入使用、在使用中不断完善、一直到停止使用时止。这一整个过程被称为该软件的一个生命周期。,一、生命周期法,4,目前生命周期法是信息系统开发中较为流行的方法,整个生命周期划分为六个主要阶段:,软件生命周期的瀑布图,系统分析(可行性研究),5,2、软件生命周期法工作流程和主要任务,6,(1)可行性研究与计划阶段 了解用户的需求及对现行系统进行认真初步调查,对确定新系统开发的必要性和可能性的分析。完成系统的初步调查和可行性分析并编写可行性研究报告。(2)系统分析阶段 是指用系统的观点和系统的方法,对现行系统进行全面的分析研究,揭示系统的内在联系和运动规律,找出现行系统存在的问题,建立现行系统的逻辑模型。再根据用户的要求,确定新系统的目标,将现行系统模型转换成能实现的新系统的逻辑模型。完成分析和描述现行系统逻辑模型;完成分析和描述新信息系统逻辑模型;并编写系统分析说明书。,各阶段的主要任务:,7,(3)系统设计阶段 是在系统分析的基础上,根据新系统的逻辑模型建立物理模型,确定系统具体的实现方案。系统设计通常分为概要设计和详细设计两部分。 概要设计(总体设计) 概要设计亦称总体设计,完成建立系统总体结构,进行模块的划分,设计数据库结构,并定义各模块的功能和相互之间的接口关系;编写概要设计说明书。 详细设计(过程设计) 采用设计工具详细描述功能模块内部的过程,确定模块间的详细接口,编写详细设计说明书。,各阶段的主要任务:,8,(4)程序设计阶段 程序设计是按照详细设计说明书的要求,使用某种程序设计语言,对每个模块作出可在计算机上执行的程序代码的过程。提交源程序清单和程序设计说明书。 (5)系统测试阶段 是为了在系统的试运行阶段,尽可能地查找出程序的错误,以保证系统的质量而进行的调试和检验。,各阶段的主要任务:,单元测试:检验单个模块功能的正确性。 组装测试:将经过模块测试的各个模块装配并 测试,从而形成一个完整的系统。确认测试:证明所开发的系统符合系统分析中 确定的全部功能和性能要求。,9,6、运行和维护阶段 (1)程序维护(一般由开发人员完成) 正确性维护修正在开发阶段产生、在测试阶段又没有发现的错误。 完善性维护为扩充系统功能或改善性能而进行的修改。(2)使用维护 环境维护为保证系统正常运行而进行的环境维护工作。 意外事故维护解决因发生意外事故而使数据混乱或丢失的维护工作。 计算机病毒治理和维护预防、检测、清除计算机病毒等工作。 提交运行日志、系统问题报告、系统修改报告等文档。 注意:最终要进行系统评估。,各阶段的主要任务:,10,11,二、原型法,1、原形法的含义 所谓原形法就是在进行系统需求分析、设计和实施时,基本掌握了用户的需求之后就进行一般的设计,快速地加以实现并投入试运行。如果发现有用户不满意的地方,就进行修改,经过不断地修改和补充,最终达到用户的要求。 2、原形法的优缺点优点(1)原形法鼓励用户积极参与系统的开发;(2)原形法是一种用户可以看到、摸到、感觉到的事物。(3)利用软件工具开发系统,可以边运行,边修改,系统灵活,易维护。,12,(1)开发经历“建模评审修改评审”等多次反复,每一个循环均要花费人力和物力。 (2)不能完全取消正规的文档设计和定义。 (3)开发系统的费用和时间难估算,往往导致系统的范围和复杂性超过预定的计划。 (4)原形法虽然发挥了用户创造力,但减少了系统设计人员的创造力。,缺点,13,3、原形法工作流程,用户提出开发要求,14,面向对象(object oriented 简称OO)的系统开发方法是以对象为中心来考虑计算机的处理体系。世界上存在的一切事物都有其“本身是什么”、“本身能做什么”、“本身能得到什么”这样的意义和功能。把描述对象的形象(数据)和功能(对数据的操作处理)封装在一起构成的统一体,作为处理的基本单位。便是面向对象。,2、面向对象法,15,以对象为主体的面向对象方法可以简单解释为,(1)客观事物都是由对象组成的,对象是在原事物基础上抽象的结果。(2)对象有属性和方法组成。(3)对象之间的联系主要是通过传递消息来实现的。(4)对象可按其属性进行归类。(5)对象上一个被严格模块化了的实体,称之为封装(encapsulation),封装了的对象满足软件工程的一切要求,而且可以直接被面向对象的程序设计语言所接受。,16,3、面向对象开发方法的工作流程,系统调查和需求分析,17,是将计算机图形处理技术、程序生成技术、关系数据库技术和各类开发工具相结合,形成支持系统开发的综合计算机辅助软件工程开发环境(Computer Aided Software Engineering)简称为CASE。 CASE的应用必须依赖于一种具体的开发方法,例如,生命周期法、原形法、面向对象法等,并提供支持上述各种方法的开发环境,如生命周期法中,业务流程分析数据流程分析图绘制功能模块设计程序设计等,CASE都提供专门的软件工具来支持系统开发过程,实现计算机辅助开发工作。,18,1、原型法,它是通过模拟以及模拟后原型的不断讨论和修改最终建立系统。 适用于小型局部系统或处理过程比较简单系统的设计。2、面向对象法,是一种围绕对象进行系统分析和设计,然后用面向对象的工具建立学方法。这种方法不涉及系统分析以前的开发环节,因此不能成为支持系统开发全过程的方法。3、计算机辅助软件工程方法,是一种除系统调查外的全面支持系统开发的自动化开发方法,但是,CASE必须依赖于一种具体的开发方法。因此,也是一种辅助开发方法。,19,4、生命周期法,是真正能够全面支持整个系统开发过程的方法。 综上所述,四种系统开发方法各有优点和不足,这就需要根据开发的信息系统实际情况加以选择。 会计信息系统的开发是一项庞大的系统工程,应该采用生命周期法为主,其他方法为辅的开发模式。,20,一、系统可行性研究,第二节 电算化会计信息系统的系统分析,(一)系统调查 系统调查是指系统开发人员对企业的组织结构、管理体制、经济环境、会计业务、系统的开发条件等进行初步调查,掌握与系统有关的基本情况,作为可行性研究和制定开发计划的基础。,21,原系统的目标、功能、处理程序、处理方法、业务量、系统的优缺点、需要解决的问题和需求的迫切性等; 原系统的运行机制,包括组织结构、人员组成、与外单位联系方式等; 新系统的改造目标,包括对原系统的改进和增加的需求; 为开发新系统能提供的各种条件,包括人力、物力、财力以及技术改造和管理体制的变革等;,1、系统调查主要内容包括,22,与有关人员面谈,召开座谈会,查阅、收集凭证、账表、财务管理方法和制度等有关文档,填写各种调查表。3、描述调查结果的工具 描述调查结果的工具主要有:组织结构图和调查表。 (1)组织结构图 是描述企业内部结构、企业部门的内部分工以及财务部门与其他部门的联系的图形;反映企业主要职能的划分、规模大小和复杂程度。,2、调查方法,23,组织结构图举例:,XX集团公司,24,是指通过表格形式描述调查结果,如:企业情况调查表、财会人员情况调查表、账簿体系调查表、报表体系调查表、硬件和软件配置现状调查表等。举例如下:,(2)调查表,25,在初步调查的基础上,分析企业在现有的具体条件下新系统开发工作是否可行,即从管理体制、管理基础、技术水平、经济条件、人员知识结构和其他方面去研究并论证新系统的可行性。3、编写可行性研究报告 可行性研究报告包括系统研制和开发人员调查的资料、所需资金、工作量、开发计划、开发进度等内容。研究和开发人员编写好报告后,提交有关部门审批。,2、可行性分析,26,(一)系统分析的任务 是在分析现行会计信息系统的基础上,描绘出现行会计信息系统的结构、数据源和处理方法;根据新系统的目标,定义新系统的逻辑功能(明确新系统“做什么”,不涉及物理实现方法“怎样做”)。(二)系统分析方法 结构化系统分析方法是进行会计信息系统分析的有力工具,它可以清晰、简明、准确地描述会计信息系统的逻辑模型。,二、系统需求分析,27,结构化分析方法,是面向数据流进行系统分析的方法,它采用“自顶向下,逐步分解”的思想来描述系统。 结构化分析方法所使用的工具是:数据流图(描述数据处理过程)和数据词典(描述数据流图中出现的所有数据元素),1、结构化系统分析方法,结构化分析方法(Structure Analysis,简称SA方法)是一个内容十分广泛的课题。所谓结构化就是有组织、有计划、有规律的一种安排。SA方法是将一般系统工程的分析法和有关结构的概念应用于电算化会计信息系统的一种系统分析方法。,28,2、结构化系统分析方法的特点,(1)自顶向下的逐层分解、由粗到细、由繁到简的求解方法,不但能了解系统的全貌,而且也能掌握局部模块要求。 (2)结构化系统分析方法主要是弄清系统的逻辑功能,而且不涉及物理实现方法。 (3)使用图和表等工具描述系统,简单明了,易于理解。,29,数据流图(Data Flow Diagram,简称DFD)是以图形方式刻画各种业务数据处理过程。数据流图,亦称数据处理流程图。 数据流图是描述现有系统中数据的流动、存储和处理状况的图形 。DFD能表达有那些数据流入系统,它们从何处来,经过了什么处理,变成了什么数据,分别流向何处,其中有哪些数据需要存储等等。,3、结构化分析方法使用的工具,(1)数据流图,30,数据流图的符号与含义,数据流:用带有箭头的弧线或直线表示,描述数据的流向 和传递数据的通道,反映了系统各部分之间的数据传递关系。,数据处理(加工):是描述对数据的一种处理过程。,数据存储(Data Store)(文件):是描述数据的存储形式,也是系统中相关数据的集合。,外部实体(External Entity)(源点或终点):源点是原始数据的来源处,终点是信息使用者对数据输出的要求。,31,数据流程图是分层次的,绘制时采取自顶白下逐层分解的办法。 1、首先画出顶层(第一层)数据流程图。顶层数据流程图只有一张,它说明了系统的总的处理功能、输入和输出。 2、下一步是对顶层数据流程图中的“处理”进行分解,也就是将“处理”分解为更多的“处理”。,32,数据流程图的作用,(1) 系统分析员用这种工具自顶向下分析系统信息流程;(2) 可在图上画出计算机处理的部分;(3) 根据逻辑存贮,进一步作数据分析,可向数据库设计过度;(4) 根据数据流向,定出存取方式;(5) 对应一个处理过程,可用相应的程序语言来表达处理方法, 向程序设计过渡。,33,数据流图举例,手工会计系统中银行对账数据流图,34,数据词典(Data Dictionary,简称DD),就是对数据流图中的各文件和数据流进行详细地描述和确切解释的词典,它能定义文件或数据流由哪些更小的单位组成(这些更小的单位一般叫做字段或数据项),并描述每个数据项的具体内容、取值范围等。,(2)数据词典,35,数据流程图描述了系统的分解,即描述了系统由哪几个部分组成、各个部分之间的联系等等,但是还没有说明系统中各个成分的含义。数据字典在新系统数据流程图的基础上,进一步定义和描述所有数据的工具,包括对一切动态数据(数据流)和静态数据(数据存贮)的数据结构和相互关系的说明,是数据分析和数据管理的重要工具,36,数据字典的内容,对数据流程图中的数据项、数据结构、数据流、处理逻辑、数据存储和外部实体等六个方面进行具体的定义数据项数据项又称为数据元素,是最小的数据组成单位,是不可再分的数据单位。如:学号、姓名等。具体包括:(1) 数据项的名称、编号、别名和简述;(2) 数据项的取值范围;(3) 数据项的长度;数据结构数据结构的描述重点是数据之间的组合关系,既说明这个数据结构包括哪些成分。包括: (1) 数据结构的名称和编号;(2) 简述;(3) 数据结构的组成。,37,数据字典的内容,数据流数据流由一个或一组固定的数据项或数据结构组成。具体包括:数据流的名称及编号、简述、数据流来源、数据流去向、数据流组成、数据流量、高峰流量。处理逻辑仅对数据流程图中最底层的处理逻辑加以说明。包括:具体包括:处理逻辑名称及编号、简述、输入、处理过程、输出、处理频率。数据存储数据存储在数据字典中只描述数据的逻辑存储结构,而不涉及它的物理组织。包括:数据存储编号、名称、简述、组成、关键字、相关的处理。外部实体外部实体是数据的来源和去向。因此在外部实体中的条目主要说明外部实体产生的数据和输入的数据以及外部实体的数量。包括:外部实体编号、外部实体名称、简述、输入的数据流、输出的数据流。,38,数据词典组成示例,39,数据词典举例(银行对账文件),40,示例:订货折扣政策如下:(1)年交易额在5万或5万以下,则不给予折扣;(2)对于年交易额在5万以上时: 如果无欠款,则给予15%的折扣; 如果有欠款,而且与本公司的交易关系在20年以上,则折扣为10%; 如果有欠款,而且与本公司交易关系在20年以下,则折扣为5%。,(3)处理逻辑说明,41,1)结构化语言(处理逻辑说明的描述工具1),42,2)判断树(处理逻辑说明的描述工具2),根,条件,条件,条件,条件,条件,条件,条件,行动,行动,行动,行动,行动,43,判断树,订货处理优惠待遇,年交易额5万以上,年交易额5万或以下,无欠款,有欠款,交易20年以上,交易20年以下,15%,10%,5%,0%,44,3)判断表(处理逻辑说明的描述工具3),在基本加工中,如果判断树的条件较多,各个条件又相互结合,相应的决策方案比较多,在这种情况下用决策树表示,树的结构比较复杂,图中各项注释也比较繁琐。,条件语句,行动语句,条件项,行动项,45,判断表,Y,Y,Y,Y,N,N,N,N,Y,Y,N,N,Y,Y,N,N,Y,N,Y,N,Y,N,Y,N,46,判断表的简化(1),Y,Y,Y,Y,N,N,N,N,Y,Y,N,N,Y,Y,N,N,Y,N,Y,N,Y,N,Y,N,47,判断表的简化(2),Y,Y,Y,N,N,N,N,Y,N,N,Y,Y,N,N,Y,N,Y,N,Y,N,48,判断表的简化(3),Y,Y,Y,N,Y,N,N,Y,Y,N,Y,49,三、会计信息系统的系统分析步骤,手工会计系统数据量的调查分析,运用结构化分析方法对会计信息系统进行系统分析,其分析流程如,50,调查手工会计信息系统数据量的上限及普遍情况,为下阶段工作提供依据。,(一)手工会计信息系统数据量的调查分析,51,是对一个具体单位的手工会计信息系统中所有业务、数据处理的来龙去脉、数据处理方法、会计数据的内容和结构等进行调查与分析,建立手工会计信息系统的逻辑模型,以反映系统的全貌。1、建立手工会计信息系统数据流图的方法 系统分析采用“自顶向下,逐层分解”的方法进行,也就是将一个复杂的系统逐步地分解成若干个简单的系统。在逐步分解的过程中会产生多张数据流图。,(二)手工会计信息系统数据处 理模型的调查和分析,52,手工逻辑模型建立的过程举例,第一层:,第二层:,53,手工逻辑模型建立的过程举例,第三层:账务处理系统,54,手工逻辑模型建立的过程举例,第四层:记账数据流图,55,手工逻辑模型建立的过程举例,第四层:清理往来账数据流图,56,2、确定手工会计信息系统数据词典的方法 数据词典是对数据流图中的各种文件和数据流进行详细描述和确切解释。以手工收款凭证为例说明数据词典的编制方法 :,(二)手工会计信息系统数据处 理模型的调查和分析,57,数据词典:收款凭证 填表日期:2005年2月18日,58,3、其他调查内容 对资源利用情况、管理方式以及系统的内部环境等进行调查。如:财务人员档案调查表、总账参数调查表等。 所有调查分析的内容(数据流图、数据词典、其他调查表)汇集起来,就构成了手工会计信息系统的逻辑模型。,(二)手工会计信息系统数据处 理模型的调查和分析,59,1、计算机会计信息系统数据流图的建立,(三)计算机会计信息系统逻辑模型的建立,以手工方式下银行对账数据流图为例,在计算机条件下充分考虑计算机的特点对其进行修改如图所示:,60,2、确定计算机会计信息系统的数据词典,文件:银行对账文件 制表日期:年月日,61,2、确定计算机会计信息系统的数据词典,文件:企业对账文件 制表日期:年月日,62,系统说明书是系统分析的最终结果,它反映了所建立系统的功能需求、性能需求、运行环境等方面内容,是开发人员和用户共同理解计算机会计信息系统的桥梁,也是系统设计的基础。,(四)编制系统分析说明书,主要内容:(1)会计信息系统名称、使用单位和设计单位名称。(2)手工会计信息系统数据流图和数据词典。 (3)计算机会计信息系统数据流图和数据词典。 (4)性能要求(合法性 、可靠性 、安全保密性 、灵活性 、易用性) 。(5)运行环境的要求。,63,第三节 电算化会计信息系统的设计,一、系统设计的任务 系统设计又称为新系统的物理设计,它的主要任务是根据系统分析阶段所建立的逻辑模型来建立系统的物理模型,或者说解决系统“如何干?”的问题。 系统设计分为概要设计和详细设计两个阶段 。,64,二、系统设计流程,系统分析说明书,65,三、会计信息系统概要设计,(一)结构化设计方法(SD方法) 结构化设计方法是与结构化分析方法相衔接的方法,用于从系统分析数据流图导出系统模块结构图。1、模块结构图 模块结构图是SD方法用来精确表达系统结构和系统中模块间的层次关系和联系的图形。 结构图中以特定的符号表示模块间的调用关系和模块之间的数据流与控制流信息的传递关系。,66,结构图的组成,(1)模块:是以矩形表示,模块的名称写在矩形框内,名称可以是模块的功能说明或简称。,工资管理子系统,工资,(2)模块间的调用关系:是指模块间的调用与被调用关系;通常用“箭头”或“线段”表示。,67,结构图的组成,(3)模块间所传递的信息:在调用模块与被调用模块之间总会有信息的相互传递,传递的信息一般分为两种:数据信息和控制信息。,数据信息:一般数据信息是符号、数值、汉字等数据。,控制信息:控制信息只表明是或否两种状态的信息,一 般用“T”、“F”或者“0”、“1”。,68,2、结构图中模块的划分原则,一个好的模块划分方案也不是惟一的,同样一个系统,由不同的设计人员进行设计,得到的结果可能不同。但是,在模块划分时,必须遵循结构图中的模块划分原则。,(1)模块要具有独立性:模块与模块之间是相对独立的,使模块间的联系少,相互影响也就小,产生连锁反映的概率就越低,系统的可修改性就越好。(2)模块要具有低耦合性:模块的耦合性是指模块与模块之间联系的紧密程度。,耦合度:是指模块之间的依赖关系的程度。包括控制关系、调用关系、数据传递关系等。,(3)模块要具有高内聚性:模块的内聚性是指一个模块内所包含的功能凝聚的程度。,内聚度:是指模块功能的专一性,模块内部各部分关系的紧密程度,反映了模块内部各组成部分处理动作的组合强度。,69,(1)对计算机会计信息系统进行子系统的划分,即如何将会计信息系统划分成若干子系统。 (2)硬件选择,即主机型号、联网能力、内存容量和外部设备等。 (3)操作系统的选择,由于网络技术的迅猛发展,各单位纷纷建立了网络系统,计算机会计信息系统网络化已成为必然的趋势,因此,必须选择网络操作系统; (4)数据库或语言类等软件的选择;,(二)计算机会计信息系统概要设计,1、计算机会计信息系统总体设计,70,2、计算机会计信息系统功能模块结构设计,系统设计是根据系统分析阶段的数据流图和数据词典,将抽象的逻辑功能具体化,利用结构化的设计方法导出计算机会计信息系统的模块结构图。 在数据流图中,每一个处理逻辑都是一个独立的处理功能。不管它是一个子系统还是一个子程序,它都包含着输入处理输出的过程。模块图中的每一个模块也是如此,因此,可以由数据流图逐步地导出系统各个层次的模块结构图。,71,举例,根据计算机会计信息系统中银行对账数据流图,导出“银行对账”模块结构图,72,3、计算机会计信息系统代码和数据库文件设计,(1)代码设计代码的编码方法 a.顺序码:代码按照一定的标准依次排列。 如:1、2、3或1001、1002、 b.组码:用若干连续数组区段表示不同类别事物的编码。 如:00-99;200-299 c.群码:每一代码由固定的几个区段组成,每一区段表示一种特征,并可以按照顺序码或组码进行编码。 如:会计科目编码“1020101”,73,a.惟一性:每个代码只能标识某个事物。即代码的表示不能有二义性,否则会降低系统效率。 b.系统性:即在整个会计信息系统中所有项目的编码标准要一致; c.简明性:代码的结构要简单明了,易于记忆。 d.稳定性:代码一经确定不可随意更改和取消,所设计的代码要能够适应环境的变化,可在较长时间内使用; e.扩展性:代码的设计必须考虑到未来扩充代码的可能性; f.合法合规性:代码的设计必须符合国家有关法律条文的规定。,代码设计原则,74,数据库文件设计就是把计算机会计信息系统涉及的文件进行物理定义,把所有文件设计成可用计算机进行存取的物理形式。在进行文件设计时应考虑以下几个方面: 文件的分类 文件的组织形式 文件结构设计 文件的属性,(2)数据库文件设计,文件分类,文件结构描述,保密性、读写性、共享性的描述,75,数据库文件设计就是把计算机会计信息系统涉及的文件进行物理定义,把所有文件设计成可用计算机进行存取的物理形式。在进行文件设计时应考虑以下几个方面: 文件的分类,(2)数据库文件设计,按存储介质分类:文件按存储的介质的不同可 分为磁盘文件、磁带文件和光盘文件。,按存取方式分类:按存取方式,文件可分为顺 序文件、随机文件和索引文件。,76,数据库文件设计就是把计算机会计信息系统涉及的文件进行物理定义,把所有文件设计成可用计算机进行存取的物理形式。在进行文件设计时应考虑以下几个方面:文件的分类,(2)数据库文件设计,随机文件:可以不按照记录的先后次序而是根据 需要直接进行读写的文件称为随机文 件。随机文件也称为直接文件。,索引文件:不管是顺序文件还是随机文件,一般 来说,其记录都是按序存放的,当一 个文件的记录太多、存储容量较大时, 计算和查找相应记录的位置需要花去 大量的时间。因此,需要按关键字建 立索引的文件。,77,按用途分类:按照系统中文件的不同用途,可 以将文件分成主文件、辅助文件和临时 文件。,数据库文件设计就是把计算机会计信息系统涉及的文件进行物理定义,把所有文件设计成可用计算机进行存取的物理形式。文件的分类按存储介质分类:文件按存储的介质的不同可 分为磁盘文件、磁带文件和光盘文件。按存取方式分类:按存取方式,文件可分为顺 序文件、随机文件和索引文件。,(2)数据库文件设计,辅助文件:为系统数据处理服务的文件称为辅助 文件。,临时文件:为满足系统存放临时数据的文件称为 临时文件。,78,尽量减少数据的冗余度:数据冗余度是指数据的重复程度。 功能完善:应满足系统对文件的追加、插入、删除、修改等操作;同时也能够满足用户的输入、输出要求。 效率高:要根据系统对数据处理时间响应要求的差异,采用不同的文件存取形式和种类。 保密性:为了防止舞弊和窃取企业内部的经济情报和资金等情况发生,按文件的使用权限,在系统中要对其进行加密措施。 经济性:应考虑整个系统的总费用,不能为了追求各项指标的无限提高而使系统的费用大幅上升。,79,a.详细了解系统的硬件配置及软件环境。,b.确定文件的基本指标。主要包括:文件数量 、记录个数、记录长度、逻辑结构、主关键 字、处理方式、更新情况、使用率、存取的 时间要求及保密性等。,c.确定文件的存取方式和存取介质的方法。,d.编写文件设计说明书。文件设计说明书应 当包括每一个文件的编码、功能、文件名、 类型、数据结构等以及其它说明的内容。,80,数据库文件结构设计举例,以“银行对账”数据词典为依据,设计数据库文件结构如下:,YHDZ.DBF 数据库文件结构字段 字段名 类型 长度 小数 说明1 KMDM C 18 科目代码2 RQ D 8 对账日期3 YHZY C 20 银行摘要4 ZPJSDJH C 5 支票号/结算单据号5 SHF C 2 收 / 付6 JE N 12 2 金额7 YDBZ L 1 已达标志,81,5、编写概要设计说明书,概要设计说明书主要包括系统结构图、系统代码和数据库文件设计、网络设计方案,以及其它辅助说明等。概要设计说明书是详细设计和程序设计的依据,因此,需要对概要设计说明书进行评审,只有评审通过后方可进行详细设计。,4、计算机会计信息系统的网络设计,如何将划分的各个子系统从内部用网络连接起来;如何将会计信息系统与外部系统用网络连接起来、采用哪种网络形式等。,82,四、会计信息系统详细设计,详细设计主要就是确定每个模块的算法和用什么方法精确的表达该算法。 在详细设计中,表达算法的方法有很多,在此,使用PDL语言来表达模块的算法。1、PDL语言 PDL语言(Programming Design Language,简称PDL),是介于自然语言和结构化程序设计语言之间的一种语言,因此亦称为“结构化英语”或“结构化汉语”。它遵循自顶向下、逐步细化的原则,用简单的语法规则和自然语言相结合,即概括又简单地描述了模块的算法。,83, PDL语言的特点,(1)含有一些能够标明程序结构的关键字。PDL语言中含有一些能够标明程序结构的关键字,这些关键字常常是高级程序语言中的关键字。如:PROCEDURE,IF,THEN,ELSE等。 (2)简单语法和自然语言相结合。PDL语言只使用少量的简单语法规则,大量使用人们最习惯的自然语言语句。 (3)按逐步细化方式写出程序。使用PDL语言,常常按逐步细化方式写出程序,即从比较概括和抽象的PDL程序逐步写出更为精确、细致的PDL程序来。,84,2、电算化会计信息系统详细设计步骤,(1)确定各模块的算法,用PDL语言进行自顶向下逐步细化设计。 (2)编写详细设计说明书。对每个模块进行详细设计后,对其进行整理,编写出详细设计说明书。 主要包括:每一模块用PDL语言编写的详细说明;每一模块涉及到的数据库文件;其它辅助说明,如限制条件等。,85,以银行对账模块图为例进行详细设计描述,86,【删除已达账】模块的详细设计,87,第四节 电算化会计信息系统程序设计及系统测试,程序设计就是以详细设计说明书为依据,将每个模块的详细描述说明转换成用计算机程序语言或数据库语言表达的源程序(或程序代码),程序设计后需要在计算机上对每个模块的源程序进行测试,使其能够单独运行。,88,一、程序设计标准和要求,(1)易修改与可扩充。,(5)自顶向下逐步细化。 (6)程序应具有锯齿形风格。,(4)要求程序员必须按照系 统设计说明书所规定的 统一代码标识文件名、 变量和字段名等,以便 将来维护。,(3)高效率和少占内存。,(2)通用性。尽量提高程序 的通用性,以适应用户 的变更处理要求。,89,二、程序设计方法,(一)结构化程序设计方法,结构化程序设计(Structured Programming,简称SP)是当前较为流行的程序设计方法,它与系统分析的结构化分析方法、系统设计的结构化设计方法相配套。使用该方法能够很容易地将详细设计内容转化成源程序。结构化程序设计由几种基本逻辑结构组成,即顺序结构、分支结构和循环结构。,90,(1)顺序结构: 顺序结构是指按照语句排列的先后顺序,依次执行。,(2)分支结构: 分支结构是指根据给定的不同逻辑条件,转向执行不同的程序,这些不同的转向就构成了结构分支。,91,(3)循环结构: 循环结构是指当条件是.T.(真)时,则执行循环体语句1,直至条件为.F.(假)时,跳出循环体,执行循环体之后的语句2。,92,(二)其他程序设计方法,1、速成原型式的程序设计方法 是在程序设计阶段将详细设计文档中带有普遍性、几乎每个子系统都必不可少的功能模块集中(如菜单模块、报表模块、通用查询模块、统计分析模块、图形模块等),然后寻找可用的开发工具,生成相应的程序;否则,用结构化程序设计方法开发出能够适应各子系统的通用程序。 利用现有的工具和原型方法可用很快地开发出所需要的程序。2、面向对象程序设计方法 面向对象程序设计方法一般应与面向对象设计的内容相对应。它是一个简单、直接的映射过程,即将面向对象设计(OOD)定义的范式直接用面向对象程序来取代。,93,三、会计信息系统程序设计,近年来,随着计算机的广泛应用和数据处理技术的迅猛发展,适应数据处理程序设计工具不断涌现,如FoxPro、Visual foxpro、Sybase、Access、Visual Basic等。这些工具功能完善,实用性强,支持结构化或面向对象的程序设计方法。 本课程以FoxPro结构化程序设计方法为例介绍由详细设计转化为程序代码的方法。,94,以银行对账模块图为例进行详细设计描述,95,以详细设计说明书中的银行对账模块为依据,编写的源程序如下:(普通菜单程序设计),PROCEDURE YHDZ &银行对账SET TALK OFFFLAG0DO WHILE .T.CLEAR 1,1 SAY “1录入对账单” 2,1 SAY “2对账” 3,1 SAY “3输出对账结果” 4,1 SAY “4输出已达账” 5,1 SAY “0退出” 6,1 SAY “请选择0-4:” GET FLAGREAD DO CASE CASE FLAG1,DO LRDZD CASE FLAG2 DO DZ CASE FLAG3 DO SCDZJG CASE FLAG4 DO SCYDZ CASE FLAG0 CLOSE DATA CLEAR EXIT ENDCASEENDDORETURN,96,【删除已达账】模块的详细设计,97,PROCEDURE SCYDZ &删除已达账模块程序CLEARSET TALK OFFYN=YSTORE SPACE(12) TO XKMDM 1,10 SAY “请输入:要删除已达账的银行科目代码” GET XKMDM READDO CHECK &科目代码正确性检查CLEAR 2,10 SAY “删除”+ XKMDM + “科目已达账” 3,10 SAY “” 4,10 SAY “是否要删除(XKMDMX)已达账(Y/N) ” 5,10 SAY “注意:删除前请备份对账数据! ” 6,10 SAY “” 7,10 SAY “真的删除已达账吗Y/N?” GET YNREAD,98,IF YN = YUSE YHDZ INDEX YHDZDELE FOR (KMDM=XKMDM).AND.YDBJPACKUSE QYDZ INDEX QYDZDELE FOR (XKMDM=KMDM).AND.YDBJPACK 15,10 SAY “删除已达账工作结束!”WAIT “ ”ELSE 15,10 SAY “已达账未被删除!”WAIT “ ”ENDIFCLEARCLOSE DATARETURN,99,银行对账(生成下拉菜单程序)的说明:,Yhdzmenu - 定义菜单栏的名称;AT LINE 2 - 限定主功能选项水平排列的菜单放置于桌面窗口或用户自定义窗口中的第2列;COLOR SCHEME 5 - 为菜单栏指定颜色;Padyhdz - 定义菜单中选项名称,主要是让各后续命令(如 ON SELECTION PAD)辨认之用。显示在菜单栏上的项目内容是利用PROMPT定义。即“银行对账”;MARGIN - 如果加入关键字MARGIN,则下拉菜单中各子功能选项与左右方的边框间会加入一格空白;RELATIVE - 有此项,屏幕显示菜单顺序与BAR后的序号有关,即按序号排序后显示,若中间有空号,则用空行代替;若没有此项,屏幕显示菜单顺序与BAR后的序号无关,按编写程序顺序显示。,100,系统菜单设计,1、建立下拉菜单的步骤(1)定义光带菜单:DEFINE MENU(2)定义光带中各项目:DEFINE PAD(3)选择一个项目后,激活弹出式菜单: ON PAD PADNAME OF MENU NAME (4)定义若干个弹出子菜单:DEFINE POPUP(5)定义每个弹出菜单的子选项:DEFINE BAR(6)选择选项后,执行相应的命令:ON XELECTION BAR-NAME OF POPUP-NAME DO(7)激活下拉式菜单:ACTIVATE MENU,101,屏幕菜单如下图:,初始化 凭证处理 记账结账 账表输出 银行对账 系统服务,2、计算机会计信息系统菜单设计实例,102,执行菜单程序:,初始化 凭证处理 记账结账 账表输出 银行对账 系统服务,凭证处理凭证录入凭证审核查询定义自动转账,初始化科目设置凭证类型初始余额人员权限其他设置,记账结账记 账月结年结,账表输出日记账输出明细账输出总账输出报表输出综合查询,银行对账初始调节表获取对账单自动对账手工对账对账结果,系统服务数据备份数据恢复系统维护修改口令获取数据退出系统,103,四、程序设计若干共同问题,系统菜单设计,1、建立普通菜单2、建立下拉式菜单3、利用菜单生成器生成菜单,输入屏幕程序设计,对于较复杂的输入屏幕程序,需要通过结构化程序设计完成;对于简单的输入屏幕程序,可以用屏幕生成器完成。,输出程序设计,对于有格式要求的,根据结构化程序设计方法编制输出程序;而对于没有严格的格式要求的,利用Foxpro提供的交互式随机组合查询功能(RQBF)完成。,104,四、程序设计若干共同问题,处理过程程序设计,1、自定义函数的应用 建立自定义函数语法: FUNCTION PARA RETURN 2、累计求和方法 该类问题即可采用循环方法又可采用宏替换方法;还可采用数组方法来实现。 3、多重数据库操作问题 尽量减少工作区的切换。,105,五、系统测试,系统测试内容,1、性能测试 就是检查系统所达到的处理精度、速度、正确性、灵活性、可靠性、安全保密性、合法性等,是否满足软件设计文档所提出的要求。 2、功能测试 是检查系统是否具备足以完成所有会计信息系统处理任务的功能,并与设计说明书中的功能定义相一致。,106,五、系统测试,系统测试步骤和方法,1、会计信息系统测试步骤 单元测试组装测试确认测试 2、测试方法 采用黑箱测试法,