统所做的描述,如DFD,DD等,所以这里告诉我们大家必须会看能看懂DFD。(第四次) 2.4 会计信息系统的系统设计 一、系统设计的任务
根据系统分析说明书, 实际的技术条件,经济条件和组织条件,拟定详细的系统实施方案, 即根据系统的逻辑模型进行物理设计,将“做什么”的逻辑模型转换成“怎么做”的物理模型。
系统设计包括概念设计,评估可选择的方案和详细设计。 二、系统设计的参加人员和内容 (一) 参加人员:系统设计人员 (二) 内容或步骤
1. 概要设计(又称总体设计) (1) 建立系统的总体结构,划分子系统,定义各子系统的功能和相互之间的接口关系。 (2)子系统功能模块的设计。将数据流图中的各个“加工”转化为模块,形成模块结构图;
(3)编制概要设计说明书。 2. 系统评估与选择
3. 详细设计(又称过程设计)
(1)代码和数据库文件的设计;
(2)对各模块进行详细描述,确定各模块的内部处理步骤和各种细节; (3)编写详细设计说明书,并评审。
三、会计信息系统概要设计(总体设计)方法 ——结构化系统设计方法(SD法)
基本思想:遵循由大到小、自顶向下、层层分解 2.4.1 概要设计 一、 模块的设计
1、模块的概念:是指具有“输入与输出、逻辑功能、运行程序和内部数据”四种属性的一组程序语句。
所谓模块就是系统中的一个处理过程,软件中的一段程序,是构成大系统的基本单元。模块具有输入、输出、逻辑功能、处理过程、内部数据及运行环境等特性。结构化系统设计就是通过分解把系统设计成具有层次和调用关系的模块结构。 2、模块设计的原则
(1)低耦合度、高内聚度
耦合是指一个软件结构内不同模块之间相互关联程度的度量即块间联系;联系越紧密,耦合性越强,模块越独立,耦合性越低。我们追求的是这种低耦合,即模块之间要相对独立。
内聚是指一个模块内各个元素彼此结合的紧密程度。
一般来讲,模块内部的关系越紧密,出错机会越少;如果模块之间的关系越复杂,就会产生更多的意想不到的错误,给以后的维护工作带来很多麻烦。 (2)自顶向下、层层分解
一方面,各个模块具有相对独立性,可以分别设计实现;
另一方面,可将模块之间的相互关系(如数据传递、调用)通过一定的方式予以说明,便于系统的修改与维护。
3、 模块设计的工具——模块结构图
表达软件结构常用的系统方法有两种,一种称为层次图,另一种称为模块结构图。 (一)层次图
层次图按自顶向下、逐步求精的原则设计,表示软件分解的层次结构。层次图着眼于软
件具备的处理功能,所以也叫系统功能图或功能结构图。
层次图(功能图)表达了系统各模块的层次关系,每个模块对应一项处理功能,但没有表达模块之间的控制与通讯联系,需要用IPO(Input-Process-Output)图来补充描述这些特性。
(二)模块结构图
层次图与IPO图着眼于模块的层次调用关系,不能清晰地表达整个系统中各模块的控制与通讯等问题,除非仔细阅读完所有的IPO图,才能清楚整个系统中模块之间的控制及数据间的复杂联系,因此用层次图表达系统的结构是不充分的。
(1) 模块结构图MSC(Model Structure Chart) 也称为模块控制结构图。它对系统模块的表达更充分,考虑的因素也更多,能明确表达系统的结构和模块之间的通讯及循环、判断等控制。
(2) 组成要素:
模块:用长方形表示,其中标有模块的名称,如:对账
调用:从一个模块指向另一个模块的箭头,表示前一个模块调用后一个模块; 传递:通讯。包括信号和数据。标在箭头的旁边。 4、依据:数据流程图和数据字典
经过层层分解,将一个复杂的系统自上而下逐层分解为多个系统模块,直到每一个模块具有单一的功能,能用一个或几个程序实现位置。在CBAIS环境下,按照交易循环将会计信息系统划分为若干个子系统(总账,固定资产,工资,成本,应收应付,销售,采购,存货等),每个子系统再划分为若干个模块(总账子系统分为初始化,凭证处理,记账,输出账表,银行对账等),每个模块可以继续分解,直至分解为不可再划分的单一功能模块,如凭证处理(凭证录入,凭证修改,凭证审核,查询,打印等)。 5、AIS模块设计举例——银行对账结构图 二、概要设计说明书 主要内容:
1、引言。说明项目名称、编写说明书的目的、读者范围、所依据的需求规格说明书、采用的设计方法等。
2、模块结构图。描述各模块的功能、接口和控制关系等。 2.4.2 评估与选择
概念设计还应当突出几个备选方案的主要功能之间的区别,如采用批处理方式处理采购订单和采用EDI系统处理采购订单;方案1根据存货管理控制,当存货到达订货点时,依据经济订购量订购存货;方案2采购请求根据生产计划制定,通过EDI系统在线向供应商传递采购订单。
一、任务:从所有概念设计方案中选择一个系统。 二、步骤
一)详细的可行性研究
技术可行性:应用现有技术的愿望和能力; 操作可行性:是否能够通过进行恰当的工作流程转变和充分的人员技能再培训以适应新系统的操作要求
进度可行性:是否具备在规定的时间内实施系统的能力
二)成本效益分析 有助于管理层确定选择的系统所产生的收益是否大于其成本。 三、成本效益分析 三个步骤:
1、确认成本
1)一次性成本:开发系统和执行系统的初始投资,如:软硬件获取费用。
2)经常性成本:在系统开发生命周期内发生的运行和维护成本,如:软硬件维护费用,人员工资,材料耗用。 2、确认效益
1)有形效益:可以度量的,并可用价值指标描述的效益,如使用某种方案降低的成本。上例使用EDI采购订单方法降低库存引起的降低成本的效益;
2)无形效益评估带有很明显的主观因素,如增强对竞争对手行为的快速反应,提高客户满意度,改善员工满意度等。 3、成本效益比较
1)净现值法:将系统开发生命周期中的效益现值减去成本现值,选择净现值最大的方案为可行方案,如果净现值为负值,则该方案不可行;
2)回收期法 :投资引起的现金流入累计到投资额相等时所需时间,时间越短,方案越有利。书上P66例题。 2.4.3 详细设计
一、详细设计的任务
对各模块的实现方法和处理细节进行详细的描述。 具体任务: (1)代码设计
(2)数据库文件的设计
(3)对各模块进行详细描述,确定各模块的内部处理步骤和各种细节 (4)输入设计 (5)输出设计 (6)安全保密设计
(7)编写详细设计说明书,并评审。 二、代码设计
代码是按照一定规律用数字、字母或其他字符来代替被处理对象的名称、属性、状态等特征的字符串。代码设计就是设计系统所使用的各种代码的编码规则和具体的代码及其表示的对象的对照表。代码系统是所有数据处理系统的基础。 1、代码的功能
1) 标识识别。代码为事物提供一个确切的认定,用简单的字符序列标识处理对
象,便于数据的存储和检索;
2) 有规律的代码组合便于计算机分类、汇总、检索和排序,使用代码可以提高
处理的效率和精度;
3) 代码提供了数据的一致性;同一事物在不同的场合可以有不同的称呼,通过
代码统一起来,避免了因数据不一致造成的错误;
4) 代码是人和计算机系统共同的语言,是人机交换信息的工具;好的代码体系,
便于系统内外信息传递、交换与共享,充分发挥信息资源的价值。
2、代码编码方法
(1)顺序码。按一定的规则,如编码对象发生的顺序、数值的大小和次序等特性,为编码对象分配相同位数的连续号码。如01、02、03…….优点:简单、简短便于处理;缺点:无逻辑含义,难记忆,信息含量低。
(2)组码。根据编码对象的特点,将代码分成大小任意的若干区段,在各区段内分配顺序号码。如:会计科目编码,另例将全厂部门按“管理”、“生产”和“辅助”分成三类部门,总数不超100个,部门编码采用两位数字的区段码即可,规定01~39分配给管理部门;40~79分配给生产部门;70~99分配给辅助部门。优点:以较少的码位代表不同的对象,扩展性好。
缺点:空码较多,不能满足复杂的分类。
(3)群码。把一群各自具有一定意义的顺序码或组码组合成的代码。也称组别分类码,层次码,它将编码对象按一定的属性特征分成若干个层次,然后自左至右为每一层次分配若干位代码,依次对各层次对象分别编码,组成一个有层次及隶属关系的逐级展开的分类体系。优点:分类标准明确,有严格隶属关系;每一位代码有特定含义;方便计算机分类、检索、统计和处理。缺点:码位容易变长;不易记忆。 3、代码的编码原则
(1)唯一性:代码与其代表的对象一一对应; (2)扩展性:考虑未来扩充代码的可能性; (3)简练性:便于记忆和填写,减少各种差错; (4)统一性:编码标准,原则必须一致;
(5)规范性:遵循已有的标准,如《企业会计准则——应用指南》关于会计科目编码的规定;
(6)稳定性:一经确定不能随意修改,必须长期使用,具有环境适应性。 4、代码设计步骤
1) 确定代码对象
2) 考查是否已有标准代码
3) 根据代码对象的性质和处理要求,确定选用的代码类型和编码规则 4) 用选用的规则对被表示的对象逐个设计出其代码,编制代码表。
代码体系设计和建立后,同样需要维护。代码维护应该方便、灵活、可靠,不影响代码体系的正常使用。一般要编设代码维护软件,使其具备代码查询、打印、增加、删除、修改、备份和恢复等功能。 三、数据库设计
1、概念:就是把计算机会计信息系统设计的文件进行物理定义,把所有文件设计成可由计算机进行存储的物理形式。
2、依据:数据流程图和数据字典 3、数据库设计的主要任务
(1)确定文件的种类、数量,AIS的数据文件类型有: 系统主文件是系统中最重要的共享文件,主要存放具有固定值属性的数据(一般是一个系统中属于实体的信息,如客户,供应商,存货等),必须准确、完整并及时更新。
处理文件(事务文件)是用来存放事务数据的临时文件,包含了对主文件进行更新的全部数据,如订单文件是客户文件,存货文件这两个主文件的业务文件(一般用于实体之间的联系的描述),其中包含了主文件的关键字客户编码和存货代码。
工作文件是处理过程中暂时存放数据的文件,例如排序过程中建立的排序文件 。 其他文件:其他类型的文件及上述文件的其他用法,例如后备文件是主文件、处理文件的副本。
(2)文件的组织形式(如顺序、索引)
顺序文件是记录按照建立时间先后顺序存放和处理的,数据量较大时,存取速度比较慢;如凭证文件一般每月从第一号开始按顺序排列;
索引文件是对以建立时间先后顺序排列的记录按索引关键字自动建立索引的文件,这种文件处理速度快,可以按照索引关键字快速查找和处理数据;对于凭证文件可以以日期和凭证号为索引关键字建立索引文件,便可快速,准确地查询相应的凭证信息。
(3)文件结构:根据数据字典的定义为每个数据库文件设计相应的结构,数据库文件结构设计包括应设置哪些字段,字段的名称,类型和长度等。
企业对账文件名为QYDZ.DBF,其结构如下:
序号 1 2 3 4 5 6 7 8 9 10
字段名 KMDM RQ PZH JSFS JSDH ZY JF DF YE YDBJ
类型 C D C C C C N N N L
长度 8 8 4 8 4 20 12 12 12 1
小数
字段说明 科目代码 日期 凭证号 结算方式 结算单号 摘要
借方金额 贷方金额 余额 已达标记
2 2 2
(4)文件属性(保密性、读写性和共享性) 保密性:确定每一个数据库文件可由哪些人员操作,如凭证文件只允许凭证录入人员,凭证审核人员操作;
读写性:确定每一个数据库文件在什么条件下,哪些数据可以读出,哪些数据可以写入,哪些数据可读可写;如结账后凭证文件只可读出,不可写入;
共享性:确定在计算机网络会计系统或多用户会计系统中,每个数据库文件是否允许多个使用者在不同的终端上进行访问。
四、对模块内部处理的详细描述——详细设计的工具
对应于课本P74页的处理流程设计,处理流程设计是确定每个模块的内部执行过程,包括局部的数据组织,控制流程,每一步的具体加工要求和实施细节,为下一步的程序设计作出详细的描述。主要任务是确定各模块功能及与其他模块的接口,选择恰当的算法,用恰当的工具表达该算法的详细处理过程,并编写程序设计说明书。描述工具有程序流程图和PDL语言,N-S图和PAD。
1、PDL语言——Programming Design Language
(1)含义:是介于自然语言和结构化程序设计语言之间的一种语言,又称之为“结构化英语”或“结构化汉语”。它遵循自顶向下,逐步细化的原则,用简单的语法规则和自然语言相结合,很概括、很简单地描述模块的算法。 (2)PDL语言特征
A、含有能够标明程序结构的关键字(通常为某种高级语言关键字)。 B、简单语法规则和自然语言相结合。简单语法规则有:
a、表明子程序的procedure <程序名> b、顺序结构:
c、选择结构:if-else-endif d、分支结构:do case-endcase e、循环结构:do while-enddo C、按逐步细化的方式写程序。 2、程序流程图 3、N-S图
4、问题分析图(PAD图)
问题分析图(Problem Analysis Diagram)简称PAD图,是一种支持结构化算法设计的

