1、l掌握信息系统的基本组成l掌握信息系统开发的基本步骤l根据基本步骤设计简单的信息系统。l如有必要,可进行上机训练。l信息的基本概念l信息系统的基本概念l信息系统的开发l信息系统开发的组织及项目管理l数据:客观实体的属性值。文字、声音、图形、图像等都是数据。l信息:构成一定含义的一组数据。信息是对数据加工的结果信息是帮助人们做出正确决策的知识信息是能够导致某种决策的外界情况l信息是有层次的,底层信息对高层信息来说就是数据。l真伪性:真实信息和谎言信息。l层次性:信息为管理服务,管理是分层的,不同的管理层需要不同的信息,因而信息也具有层次性。战略级信息:企业高层领导策略级信息:企业的设计、生产部门
2、执行级信息:企业生产车间l不完全性:客观事实的全部信息是不可能得到的。l滞后性:信息落后与数据,从信息到决策需要时间,由决策到产生结果也需要时间l扩充性:信息可以利用各种传播媒介向四面八方扩散。l压缩性:信息能够被统计、综合和概括。l共享性:企业内部共同分享信息。l转换性:信息可以转化为能源、材料,是社会发展的生产力。信息转化的目的是为了实现信息的价值。信息价值的衡量:V=C+P V:信息产品或服务价值 C:生产信息所花的成本 P:利润l信息同其他资源一样也有生命周期,从信息的产生到最终被使用发挥其价值,可分为需求、获取、存储、维护、使用和退出等过程。l信息的生命阶段可从信息的收集、传输、加工
3、、维护这几个阶段讨论。l信息识别:识别出自己所需要的信息由管理人员和信息咨询人员紧密结合共同识别出服务与管理的信息l信息收集:对识别出的有用信息进行收集广泛收集、专项收集、随机积累信息表达:采用文字、数字、图形、表格等方式l技术问题:如何快速、准确地传输信息。l语义问题:如何确切地表达信息的意义。信息源编码器译码器接受器信道噪音干扰发送人的意图技术过程语义过程技术阶段技术阶段技术过程语义过程理解发送意图信号技术躁声语义躁声信息信息信息源(人)信息接受者(人)l信道的传输速率和抗干扰能力l编码和译码l调制解调l决策信息一般是对一些信息进行加工后所产生的,因此信息的加工在信息系统中是必不可少的。l
4、一次信息:初始信息。l二次信息:经过整理和加工的信息。变换器综合分析统计推断规则保存信息数学模型一次信息二次信息(辅助决策信息)二次信息(预信息)二次信息决策信息l信息的存储是将信息保存起来以备将来使用l信息的存储强调为什么要存储这些信息,存储在什么介质上,存储多少时间。l信息的存储由系统目标和管理需求决定的。l信息维护:更新、维护数据,保持信息处于合用状态。l维护目的:保证信息的安全性、完整性和一致性。l系统的概念l信息系统l信息系统的开发l系统是内部互相依赖的各个部分,按照某种规则,为实现某一特定目标而联系在一起的合理的、有序的组合。l要设计出一个成功的系统,就必须保证总体最优的前提下将各
5、个组成部分合理地、有序地结合在一起。l整体性:部分服从整体,追求整体最优l层次性:可以将一个系统逐层分解,体现出系统的层次性。l相关性:系统的各个组成部分之间是有联系的。l目的性:任何一个系统都是为了完成某一特定目标而构造。l系统必须用于实现特定目标l系统与外界之间有明确的边界l系统可以划分为若干个互相联系的部分,并且是分层的l各个子系统之间存在着物质或信息交换l系统是动态的、发展的l什么是信息系统:信息系统就是输入数据/信息,通过加工产生信息的系统。信息系统是为管理服务信息系统渗透到组织中的每个部门当中信息系统关系全局的 统一协调l信息系统创始人、管理学教授Cordon B.Davis给出信
6、息系统定义:它是一个利用计算机硬件和软件,利用各类分析、计划、控制和决策的模型,以及数据库的用户机器系统。它能提供信息支持企业或组织的运行、管理和决策功能。l信息系统与环境密切相关l信息系统的开发建设必须由管理部门来领导,要有高层领导和最终用户参与。l信息系统建设的群体性、计划性l信息系统是一个面向管理的用户-机器系统l数据库系统特征、分布式数据处理特征l信息就是资源l信息系统的概念结构信息管理者信息源信息处理器信息用户l信息系统的功能结构定单用户定货服务子系统采购子系统库存管理子系统生产调度计划子系统设计与生产数据管理子系统预测子系统库存资产管理子系统生产作业计划子系统开发工作令子系统工厂监
7、控子系统成本计划与管理子系统工厂维护子系统各子系统各车间包装出厂信息系统的软件、硬件结构l信息系统的软件结构:系统软件和应用软件。l信息系统的硬件结构:C/S结构、B/S结构。l信息系统开发中常见的一些问题l系统的方法l系统开发步骤l信息系统开发的指导思想和工作原则l信息系统开发人员对需求的理解出现偏差l堆栈现象l重编程,轻规划,轻分析l信息系统进度减缓时,增加人员l过低估计信息系统的投资l系统的思想:把研究对象作为一个系统l数学方法:建立系统的数学模型和运行模型l计算机技术:求解数学模型的工具,在计算机上用数学模型对现实系统进行模拟,以实现系统的最优化。l可行性分析阶段l信息系统规划阶段l信
8、息系统分析阶段l信息系统设计阶段l信息系统开发实施阶段l信息系统测试阶段l信息系统安装调试阶段l信息系统试运行阶段l信息系统运行维护阶段l信息系统更新阶段l数据位于现代数据处理的中心l数据模型是稳定的,处理是多变的l用户必须真正参与开发工作l信息系统开发必须强调以下几个基本观点:面向用户的观点严格区分工作阶段按照系统的观点,自顶向下完成研制工作充分考虑变化的情况工作的成果要成文,文献资料的格式要规范化、标准化系统分析员数据管理员用户程序设计员系统设计员硬件网络设计员用户用户用户l系统分析员所面临的困难缺乏足够的用户业务知识用户对计算机缺乏足够的知识系统分析员最终完成的新系统逻辑方案一方面要与用
9、户取得共识,另一方面摇交给其他开发人员从事系统开发工作l系统分析员的条件人际关系方面l思想交流、理解、教授技术技能方面l创造性、解决问题的能力、能够合理安排时间、有机结合的能力、能够知道系统的关键点两种技能在不同开发阶段中的作用两种技能在不同开发阶段中的作用总体规划总体规划系统分析系统分析系统设计系统设计系统实施系统实施系统测试系统测试试运行试运行系统运行系统运行技术技能技术技能人际关系技能人际关系技能l信息系统是一种软件,文档程序软件;文档是信息系统建设的生命线,没有文档就没有信息系统。l文档是人脑思维活动的体现,是信息系统建设中的唯一可见物,它可以用来统一思想,防止健忘和误解,是信息系统开
10、发组内各类人员之间及组内外的通信依据,同时也是观察、控制、协调信息系统开发过程的依据l信息系统建设的各个阶段都需要有文档资料:首先系统总体规划阶段,进行系统概要调查,要建立相应的文档,据此与高层领导进行交流形成系统开发的总体目标其次在系统分析和设计阶段,调查文档是系统开发人员与广大最终用户联系的纽带,相互交流的文件。再次在系统程序设计阶段,对每一程序模块建立相应的文档资料。最后进入系统试运行、运行维护阶段的各项工作则要依赖从系统规划到系统程序设计个阶段所建立的完整文档资料来进行。l文档标准化、规范化l维护文档的一致性l维护文档的可追踪性l文档管理的制度化l文档记录人脑思维活动的过程,没有一套完
11、整的文档管理体制,当初现人员流动等情况时,就无法使信息系统建设持续进行。l信息系统的开发是在用户和各类开发人员的共同努力下完成的,如何正确处理各类人员之间的关系,使得开发工作能够按时、保质、在经费许可的范围内完成,以下则是项目管理的重要内容负责协调各类开发人员的各级用户之间的关系负责做好文档的管理工作负责控制系统开发进度负责项目的经费开支和经费控制l项目管理组的成员可以专职或兼职,但项目管理组的负责人应该由专职人员担任。l项目管理组的组成项目经理l整个项目的领导者,保证整个开发项目的顺利进行,负责协调各类开发人员之间的关系过程管理小组l负责整个项目的成本及进度控制等工作项目支持小组l后勤支持质
12、量保证小组l及时发现影响系统开发质量的问题并给予解决系统工程小组l用系统的观点制定出系统开发各个阶段的任务开发与测试小组l利用商品软件从事各子系统的开发与集成,并对各个子系统进行测试系统集成与测试小组l对整个信息系统进行综合的过程。l项目管理的内容任务划分l任务设置l资金划分l任务计划时间表l协同过程与保证完成性计划安排l配置计划,应用软件开发计划、测试和评估计划、验收计划、质量保证计划、系统工程管理计划和项目管理计划。经费管理风险管理l信息系统总体规划概述l主题数据库l企业或组织的信息化总体规划l总体规划实例l信息是企业的重要资源,应当被全企业所共享,只有经过规划和开发的信息资源才能发挥其作
13、用l各子系统除了完成相对独立的功能外,相互间还需要协调工作,总体规划的目的就是使信息系统的各个组成部分之间能够相互协调。l总体规划主要使人力、物力、时间的安排合理、有序,以保证将来的子系统的开发顺利进行。l诺兰模型“六阶段模型”:初始、蔓延、控制、集成、数据管理、信息管理l总体规划的时机可以选择在控制和集成阶段,选择过早和过晚都不利于系统的顺利完成l战略的业务规划描述组织的基本目标、发展战略和组织指标l战略的信息技术规划对组织内部信息基础设施的建设l战略的数据规划对组织内部中的数据实体以及它们的属性进行规划l高层领导参与的必要性高层领导的参与能够使系统开发人员真正理解规划组在做什么以及这些工作
14、对系统的未来将产生什么影响,同时还可以负责各方面人员之间的协调工作,把握规划方向,高层领导参与规划工作是确保信息资源开发利用成功的关键。l企业或组织内总体规划的组织成立一个责权明确的工作班子:信息资源规划员,一个核心小组必要时经过培训或聘请外事顾问信息系统的最终用户人员抽出一部分组成用户分析员。l建立数最终据库的必要性:信息化的最终目标是使得信息资源得到有效利用,也就是实现信息的共享,而数据库是为满足各层管理人员需求而设计的,是被共享的一些相互关联的数据的集合。l有必要将数据作为一种独立的资源来对待,本着信息系统开发的基本原理和前提,把数据看作是所有应用项目的基石,独立地设计出一个稳定的、文档
15、资料齐全的、并大体上没有冗余的数据结构。l数据环境:如何将数据组织起来。l文件系统:每一项应用都由各自的文件l应用数据库:不同的应用拥有自己的数据库l主题数据库:满足各项管理的数据类集合,是独立于应用的数据资源,使得许多应用可以在此基础上建造起来l信息检索系统:使用功能强大的查询语言可以实现许多应用项目的开发。l信息过滤阶段语法过滤语义过滤语用过滤l主题数据库定义阶段:从全局出发,根据管理需求将信息按照不同的主题进行分类,然后分别对每一个主题数据库进行定义工作。建立主题数据库是总体规划中的一个难点尽量采用标准化的数据,有利于数据的共享。l战略业务规划l战略信息技术规户l战略数据规划l总体数据规
16、划的目标是:在充分分析企业或组织内部各项管理需求的基础上,分析、组织并建立企业稳定的数据模型,规划各种主题数据库及其分布策略,为企业信息化建设打下稳定的,坚实的基础。其步骤为:进行业务分析建立企业模型:职能域业务过程业务活动进行数据分析建立主题数据库模型:业务活动所涉及的数据实体进行数据的分布分析:管理人员的地点进行主题数据库的可靠性规划:权限定义,完整性定义,安全防范等工作业务人员最终用户系统开发人员企业领导高级管理人员现行业务及数据分析发展业务及数据分析总体数据模型可靠性规划总体数据模型分布规划总体数据模型主题数据库子系统开发规划/接口关系组织实施总体数据规划工作过程l企业模型是对企业结构
17、和业务活动本质的、概括的认识,是用“职能域业务过程业务活动”这样的层次结构来描述的,因此企业模型的建立可以分为四个阶段:现行系统的调查和分析职能域的建立:一个企业或组织的一些主要业务活动领域,职能域反映了整个企业的概貌,这项工作应该在规划工作一开始就尽快着手进行,可以在高层领导帮助下进行。业务过程的建立:l每个职能域都要执行一定数目的业务过程l建立业务过程时,有必要进行组织机构的调查l将组织机构和业务过程放在同一张表中建立一个矩阵l最后整理出一个企业模型(包括职能域和业务过程)业务活动的建立:是对业务过程的细化l企业模型用图表的形式得出以后,要进行认真的复查和审核,并适当进行优化l主题数据库的
18、建设:将与产品有关的记录归于产品数据库,与客户有关的记录归于客户数据库。l主题数据库规划的方法:用实体关联方法,根据规划出的企业模型,列出与各项业务过程有关的基本事物或人,形成企业内部的实体集。考察企业模型中的业务过程一览表,写下每一过程所用的输入或产生的输出项,它们都是数据的载体。将以上两种方法所形成的主题数据库相互参照和修正,最后确定出企业内部的主题数据库l信息体系结构设计:通过对业务过程和主题数据库对应矩阵的一系列处理来完成建立业务过程和主题数据库的对应矩阵变动主题数据库的顺序用方框将业务过程和主题数据库组合成为主要的系统。l某些数据的构有属性导致数据分散存储和集中存储:集中方式和分散方
19、式l分散方式数据:复制数据:在不同地点保存相同数据的几个副本子集数据:子集数据模式或关键字仅是母体数据的一部分重组织数据:对于信息检索系统或决策支持系统,尽管通常也含有一些与日常事务处理系统相同的数据,但是这些数据需要采用倒排表、辅助索引或其他机制进行重组织,以便于通过多个辅助关键字进行快速检索l总体数据规划在完成主题数据库规划建立起信息体系结构之后,就要进行数据库的分布规划通过企业模型分析,可以发现各种业务过程都必然发生在一定的部门或地点,这样就可以作出一张业务过程与所在地的对应表通过数据模型分析,可以发现各个主题数据库所在的职能域和产生或使用它们的业务过程所在地点。这样,就可以得出各个主题
20、数据库与地理位置的关系l主题数据库的可靠性规划专用性:权限管理、数据加密等完整性:在系统中建立各种完整性规则来保证数据库中数据及其联系的正确性和有效性并发性和故障恢复l战略的信息技术规划应用开发策略的确定:子系统的开发顺序数据管理策略的确定:数据管理的实质及任务是通过使用数据字典和设计良好的数据结构集中管理全企业范围的信息资源l整体网络设计:计算机硬件策略、网络或单机体系结构大部分信息系统采用客户机/服务器结构整体网络设计步骤:l选择各类系统软件l确定系统的数据存储量l确定网路配置方案l网络方案预算l网络购置与安装时间l信息系统分析概述l现行系统分析l数据分析建立数据库及数据仓库l功能分析建立
21、新系统逻辑结构l信息系统分析实例l信息系统分析的任务:系统分析员详细了解每一个业务过程和业务过程的工作流程及信息处理流程,理解广大用户对信息系统的需求,然后运用各类信息系统开发理论、开发方法和开发技术确定出系统应具有的逻辑功能,在用适当的方法表达出来,形成这个系统的逻辑方案。理解:开发人员对系统需求的理解表达:把系统分析员对系统的理解通过逻辑模型表达出来l系统分析员和最终用户的沟通作好用户的组织与培训工作作好系统分析员的培训工作要有正确的开发方法和良好的表达工具l对现行系统进行详细的业务调查分析了解各项需求,结果可以用业务流程图和数据流程图来表示系统的功能要求系统性能要求运行要求将来可能提出的
22、要求l进行数据分析,建立数据库逻辑模型l进行功能分析,确定新系统逻辑结构l用画图的方法,直观且容易理解l“自顶向下”的工作原则l强调逻辑结构而不是物理实现l避免了重复工作l业务流程分析是具体分析的第一步,为了要对详细的调查结果进行整理和分析,然后再经业务人员的确认,采用一些简单方便的方法和工具来明确表达它们,使之成为系统分析员和用户之间进行交流的共同语言。l业务流程图的表达规范,可以采用几种标志:业务处理单位或部门各类单证、报表数据流动及方向数据存储或存档业务功能描述业务流程的审查工作一定要耐心细致并与用户积极配合l在业务流程的基础上进行数据流程的分析l数据流程抽取是对业务流程图的分析过程,实
23、质上是将可以由计算机自动或半自动处理完成的那一部分抽取出来l数据流程图相应的图例:外部项名称数据流名称标识数据存储名称标识功能描述功能完成者l当完成对现行业务流程的分析,绘制出各层的数据流程图之后,所要进行的是流程图的检验工作l在数据流程图的绘制过程中应该遵循以下几个原则首先确定系统的外部项高层数据流程图只反映主要的、正常的逻辑功能职能域及其相互关系用一级数据流程图表示;每个职能域的扩展形成的业务过程及相互关系用二级数据流程图表示;对所有业务过程的扩展形成的业务活动及其相互关系用三级数据流程图表示(一般用三级数据流程图就可以将企业内部详细的数据处理流程表达出来)绘制数据流程图一般遵循从左到右,
24、从上到下原则;数据流图必须经过反复修改和仔细检查l如何根据业务流程图和数据流程图及用户的数据处理需求产生新系统的逻辑结构,数据分析是关键一步l总体规划所指出的主题数据库是实现信息共享的首要条件,它规定了各子系统之间的数据共享和交换关系以及这些数据的分布要求,但是这些主题数据库具体是如何组织的,如何将总体规划中的主题数据库组织成合理的逻辑结构,为完成某些具体应用需求还需要再建立哪些专用数据库,是数据分析所要完成的主要任务。l一个主题数据库实际上包含了若干个关系数据库,而一个关系数据库又包含了一组关系,定义这些关系的全体就构成了该主题数据库的模式l无论是表还是数据库文件,在实现上首先要经过规范化处
25、理,根据具体的应用需求将每一个关系规范化成第一范式、第二范式、第三范式的形式学生姓名性别出生年月籍贯社 会 关 系本 人 简 历 与本人关系姓名工作单位起始至终止年月所在单位证明人张力男1970广东父亲张详北京76.9-82.8小学张力男1970广东母亲王篮北京82.9-88.8中学张力男1970广东88.9大学l数据依赖关系:任何一个实体或实体之间联系中的属性之间都有一定的联系l由于计算机中存储容量和处理时间都是其宝贵的资源,为了使这些资源得到有效利用,在组织数据的存储结构时一定要对其进行规范化处理l第一规范化形式:在一个关系中没有重复出现的数据组项,也即关系中的每一个属性都是不可分的数据项
26、l第二规范化形式:所有非关键字数据元素都完全依赖于整个关键字l第三规范化形式:在形成二范式的基础上消除了传递依赖即得到三范式l将每个主题数据库所包含的各类数据载体收集在一起,确定数据元素l按照数据库规范化处理,将这些主题数据库规范成三范式,形成一组关系表l在实际应用中考虑这组关系是否能够真正满足应用的需求l最终确定出主题数据库模型因此还必须借助其他的表达工具来l新系统逻辑结构的建立主要依据前面数据分析所建立的主题数据库、专用数据库,将现行系统的数据流程图转换成新系统的数据流程图,即形成新系统的逻辑结构,新的数据处理流程是建立在数据库的基础上的l新系统的数据流程图的绘制方法与现行系统数据流程图的
27、绘制方法一样,采用自顶向下的方式进行,首先是建立新系统的总体逻辑结构,然后明确处理方式,最终提出系统分析报告l新系统总体逻辑结构的特征数据位于数据处理的中心,系统内各功能部分之间的数据存储及交换关系都是通过主题数据库来实现的数据库的建立首先经过了总体规划,在充分考虑到全局利益的前提下形成的,因此解决了由分散开发所带来的一系列问题数据流出现在相关的外部项和处理功能之间,表明了该系统与外界的接口l数据流程图仅用一句话来表达处理功能,没有详细叙述每一项处理功能应该怎样实现,而系统设计和实施阶段单凭这些图无法开展工作,因必须此还必须借助其他的表达工具来详细说明每一项处理功能的内涵l结构式语言:介于自然
28、语言和程序设计语言之间的一种语言,采用了结构化程序设计思想,只使用三种逻辑结构l系统的各项功能在未来的信息系统中是靠计算机中的应用程序模块来实现的,这些功能应该由哪些程序模块来实现的问题并没有在系统分析阶段中给出答案,这正是信息系统设计所要解决的l信息系统设计主要考虑的是为实现某一个系统/子系统,应该设计几个功能模块,这些模块由哪些程序组成,它们之间又存在什么关系,为了提高运行效率在数据库的组织方面又应该采取什么措施,程序模块应该采用什么处理方式等l系统设计的任务就是依据系统分析阶段产生的系统分析文档资料,采用正确的方法确定新的系统在计算机内应该由哪些模块组成l系统设计阶段的任务是靠系统设计员
29、完成的,由于系统设计主要考虑的是在计算机上实现应用信息系统的各项功能,因此系统设计员必须具有丰富的计算机知识和应用软件开发经验l结构图是重要的系统设计工具,可以用来表达一个已经被分解的暗盒模块及其联结关系确定补考学生打印补考通知获得学生地址产生补考通知获得成绩单。成绩单学生学号补考通知学生地址成绩单l运行效率处理能力:单位时间内能处理多少事物运行时间:在批处理状态下,系统运行一次所需要的时间相应时间:联机处理状态下,向计算机发出一项请求,到计算机给出回答所用的时间l可靠性校验码建立运行日志和信息追踪可靠性指标l可修改性客观世界的变化导致信息系统随之变化用户可能考虑使用新的技术、更新设备、提高系
30、统运行效率、完善系统功能等对于一个复杂的系统,有的错误可能会在系统运行阶段才能暴露出来,要把这些错误纠正过来成为运行纠错,这同样意味着对系统进行修改和维护l运用系统的观点,采用“自顶向下”的原则将系统分解成若干个功能模块,形成层次结构l这种层析结构的最初方案是利用一组设计策略而得到的l运用一组设计原则对这个最初方案进行优化l采用图形工具结构图来表达最初方案和优化结果l制定一组评价标准对设计方案进行优化l结构图中的模块是“具有四种属性的一组程序语句”输入/输出:模块从调用者那里获得输入,然后再把产生的数据返回给调用者逻辑功能:指模块能够做什么事情,表达了模块把输入转换成输出的功能内部数据:该模块
31、自己的数据运行程序:模块如何利用程序实现这种逻辑功能l结构图中用矩形表达一个模块,模块的名称必须表达这个模块的功能,写在矩形框的里面l模块之间的调用关系ABl判断调用l循环调用ABCDABl结构图可以用来表示系统设计的成果,但并没有给出如何得到这个成果的方法,系统设计策略将解决这个问题它给出了将数据流程图转换成结构图的两种方法事物分析:将高层数据流程图(或底层)转换成结构图变换分析:将底层数据流程图转换成结构图l高层的数据流程图特别是一级数据流程图所表示的处理功能都是相对独立的,可以把它们看成是一类特定的事物,将其转换为结构图l如果一个系统很大、很复杂,它的数据流程图有三层或三层以上,那么对于
32、第二层数据流程图来说,也可以采用同样的事物分析方法对其进行分解,依此类推,这样就可以将一个复杂的系统分解为若干个功能模块xxYYAABBCCzz1D111D2系统AABBCC事务分析l变换分析提供了一种将底层数据流程图转换成结构图的方法l首先对低层数据流程图中的处理功能进行分类,分为输入、变换、输出三个部分l根据分类结果确定处理功能为变换中心,用这种方法将数据流程图转换为结构图UUWGFHAAHFG。变换分析l采用事务分析、变换分析的设计策略可以将应用系统的逻辑结构转换成计算机系统的结构图,但所形成的结构图只是一张初始的草图,还必须依据一定的原则将其优化,只有这样所设计出的系统才具有良好的结构
33、耦合原则:确定模块之间的相互依赖关系内聚性原则:模块内部的各个组成部分处理动作的组合强度模块的分解原则:把一个模块分解成若干个从属与它的新模块模块的扇入扇出原则:上下级模块间的关系l模块之间的联系越多越复杂,它们之间的相互依赖程度就越高,耦合性越高l耦合性越低,说明模块之间的联系少,相互影响也就越小,产生连锁反映的概率就越低数据耦合:模块之间不仅存在调用和被调用关系,而且还存在着数据通信,模块之间的通信方式是数据传递或参数交换控制耦合:模块A向模块B传递的信息控制了模块B的内部逻辑,那么模块A/B之间的耦合称为控制耦合公共耦合:如果两个模块都和同一个公用数据域有关,或与某一个公共环境联系在一起
34、,那么这两个模块之间存在着公共耦合内容耦合:一个模块与另一个模块的内部数据有关l一般来说,一个模块内部应该具有很强的内聚性,它的各个组成部分(指令代码)都是密切相关的,是为完成一个共同的功能而组合在一起l内聚性是度量模块功能强度的有个相对指标,主要表现在模块内部各组成部分为了执行处理功能而组合在一起的相关程度,成为组合强度l模块的组合形式按强度由高到低分别为:功能组合:如果一个模块内部的各个组成部分的处理动作全都为执行同一个功能而存在,并且只执行一个功能顺序组合:前一个处理动作所产生的输出数据是下一个处理动作的输入数据通信组合:如果一个模块内部的各个组成部分的处理动作都使用相同的输入数据或产生
35、相同的输出数据过程组合:一个模块内部各组成部分的处理动作各不相同,彼此也没有什么关系,但它们都受同一个控制流支配决定它们的执行顺序暂时组合:一个模块的各组成部分,它们的处理动作和时间有关逻辑组合:一个模块内部各个组成部分的处理动作在逻辑上相似,但功能却彼此不同或无关偶然组合:一个模块内部各组成部分的处理动作彼此没有任何关系l模块的分解是指把一个模块分解成若干个从属于它的新模块,这种做法主要是使得系统更容易被人理解,更容易修改和维护l分解模块主要是按功能进行分解,直到无法作出明确的功能定义位置,在分解时既要考虑到模块的内聚性,又要考虑到模块之间的耦合程度,在这两者之间选择一个最佳的方案l模块的扇
36、出表达了一个模块对它的直属下级模块的控制范围,模块的扇出系数时指其直属下级模块的个数。模块的扇出系数越大,表明它要控制的模块越多,它的内聚性可能越低l模块的扇入表达了一个模块与其直属上级模块的关系,模块的扇入系数是指其直接上级模块的个数,模块的扇入系数越大,表明它要被多个上级模块所调用,其公共性很强,说明模块分解的越好l提高扇入系数(增加新模块)l模块分解示意图ANBMKBAMNl用户权限的设计7:任何一个用户都不能随意存取数据库中的任何记录,系统设计员应该按照总体规划要求和系统逻辑方案,为每一个用户规划出他能够对哪些数据库、哪些记录进行什么样的操作l索引文件设计:当数据库内数据记录很多时,可
37、以建立索引文件用来提高查询速度l中间文件或临时文件的设计:为了实现某些数据处理功能,常常需要建立一些中间文件或临时文件,这种文件要恰当的使用,并且注意使用完后要安排删除功能l视图的设计:视图时由一个或若干个表导出的表,视图的设计可以方便系统各项功能的实现l6在信息系统建设的全过程中要自始至终地加强对信息资源的管理,只有建立起一系列的信息资源管理标准,并坚定地贯彻执行,才能做到真正意义上的信息共享,信息分类编码作为信息资源管理的一个重要部分,在系统建设中发挥着重大的作用l信息编码是将事物或概念(编码对象)赋予有一定规律性的、易于计算机和人识别与处理的符号,通过信息分类和编码工作,产生一系列的信息
38、分类编码标准,这个标准在信息管理、信息处理、使用和信息交换中有着非常重要的作用l编码的基本原则唯一性:每个编码仅有一个代码,一个代码只唯一表示一个编码对象合理性:代码结构要与分类体系相适应可扩充性:必须留有适当的后备容量简单性:代码结构应尽量简单,以便节省计算机存储空间和减少代码的差错率l编码的种类顺序码:用连续数字代表项目名的编码位别码:用不同的位来代表不容的类别,每一类按顺序连续编号的编码方法表意码:把直接或间接表示编码化对象性的某些文字、数字、记号原封不动地作为编码合成码:把编码随想用两种以上编码进行组合,可以从两个以上的角度来识别、处理的一种编码l输入设计输入方式l键盘输入l网络传输批
39、处理校对方式l人工校对l系统校对输入界面的设计l可靠,简单,易学易用l输出设计报表输出磁盘输出、网络输出、图形输出等l完成系统设计阶段的各项任务之后,程序设计员就开始进行程序设计与编程调试工作l在完成程序设计与编程调试工作之后,要完成对程序设计工作的检验即进行系统测试,它至少占据了制作过程的一半工作量l系统测试定义:为了发现错误而执行程序的过程。从这个定义出发可以看出应该把查出了新错误的测试看作是成功的测试,没有发现错误的测试则是失败的测试l黑盒测试:测试者把程序看作是一个黑盒。即完全不考虑程序内部结构盒内部特性,相反,测试者仅仅关心寻找使程序未按规范运行的情况,并且仅仅按程序的规范导出测试数
40、据l白盒测试:允许人们检查程序的内部结构,使测试者从检查程序的逻辑着手,得出测试数据,进行测试的过程l无论黑盒的穷举输入测试还是白盒的穷举路径测试都是不现实的l确定预期输出是测试情况必不可少的一部分l程序员应避免测试自己的程序l程序设计机构不应测试自己的程序l对非法的和非预期的输入情况,也要象对合法的,预期的输入一样,编写测试情况l系统测试常用的手段有两种:人工测试和计算机测试人工测试是一种不依赖于计算机的测试,常用的人工测试技术有程序审查会,人工运行及复查等。计算机测试是准备一些测试程序在计算机上运行,以此来查找程序错误。l程序审查会:让小组成员阅读程序代码而进行的一系列步骤和查找错误的办法
41、。审查会通常由四人组成,分别为调节人、程序员、系统分析员和测试专家。在会议期间完成以下两件事:请程序员诸葛语句地讲述程序的逻辑结构根据常见程序错误检验单分析程序,常见的检验项目:l数据引用错误:是否应用了并未赋值或未经初始化的变量等等l数据说明错误:所有变量是否都显式地说明了等等l计算错误l比较错误l控制流程错误l接口错误l输入/输出错误l人工运行:与程序审查会一样是一套供小组阅读程序使用的查错手段,它和程序审查会有很多相同之处,只是步骤稍有不同,并且是由人来“运行”程序在会议期间,要人动脑筋运行每一测试情况,即沿着程序逻辑把这些测试数据走一遍,在纸上或黑板上监视追踪程序的状态人工运行的测试情
42、况必须是简单的、少量的,在很多人工运行中,通过向程序员询问而发现的错误比直接由测试情况发现的错误要多l在程序测试中,无论是采用人工测试还是计算机辅助测试,其中最重要的问题就是设计有效的测试情况。因为“黑盒”穷举输入测试或“白盒”的穷举路径测试通常是不可能实心的,所以要考虑用一种合理的办法将两者结合起来,在所有可能的测试情况中,研究怎样的子集有可能发现最多的程序错误,这就要进行测试情况的设计l逻辑覆盖测试:对逻辑分支路径路径进行语句覆盖、判定覆盖、条件覆盖、多重条件覆盖等测试。属于“白盒”测试方式l系统切换准备数据准备文档准备用户培训l系统切换直接方式平行方式逐步方式l系统运行的组织硬件系统维护人员应用软件开发与维护人员数据库管理与维护人员l系统维护硬件维护数据维护软件维护l正确定维护l适应性维护l完善性维护l预防性维护