导图社区 信息系统分析与设计
信息系统分析与设计笔记,共有八个章节,每个章节逻辑清晰,有利于期末复习、书本逻辑梳理,快来看看吧!
编辑于2023-09-14 22:25:45 上海信息系分析与设计
第1章 信息系统开发概论
1.1 信息系统开发概念及特点
1.1.1 信息系统的概念
信息化概览
从基本生产形态来划分,人类社会经历了: 原始社会―→ 农业社会 ―→工业社会―→信息化社会
信息、物质、能源是人类社会发展的三大资源
“信息化”已成为一个国家经济和社会发展的关健环节,信息化水平的高低已经成为衡量一个国家现代化水平和综合国力的主要标志。
当代管理环境的变化
经济全球化
根本性的:信息和通讯技术进步(因特网)导致的全球交易成本下降
挑战:世界经济一体化进程意味着,任何地区性的公司,都必须和世界强手竞争
机遇:广阔的市场、全球范围的生产要素的优化组合
信息系统的支持是企业在竞争中获胜的必要条件。
知识经济
知识经济是建立在知识和信息的生产、分配和消费之上的经济
知识经济中,信息和信息技术成为企业关键的战略资源
信息
数据与信息的概念
数据是对客观事物记录下来的,可以鉴别的物理符号,如数字、文字、符号、图形、图象、声音
数据具有客观性和可鉴别性
信息是关于客观事实的可通讯的知识、消息和情报
数据与信息的关系
数据是信息的载体,信息是数据的内涵
信息是经过加工后的数据,它会对接收者的行为和决策产生影响,它对决策者能增加知识,具有现实的或潜在的价值。(原材料与产成品)
信息的特性
事实性(客观性、真实性、真伪性)
信息是对客观事实的反映,可能表现为真、假信息。
时效性(滞后性)
脱离了事物源的信息,因为不再能够反映变化了的母体的新的运动状态和方式,它的效用就会逐渐降低,以至完全丧失。
不完全性
人类不能穷尽对客观世界的认识
等级性(层次性)
战略级:是关系到企业长远命运和全局的信息,如企业长远规划,企业并、转产的信息等
战术级:是关系到企业运营管理的信息,如月度计划、产品质量和产量情况,以及成本信息等
作业级:是关系到企业业务运作的信息,如职工考勤信息、领料信息等
价值性(可转化性)
信息是一种资源
共享性
传输性
信息是可以传输的,它的传输成本远远低于传输物质和能源。我们应当尽可能用信息的传输代替物质的传输,利用信息流减少物流。
系统
系统的概念
系统是由处于一定的环境中相互联系和相互作用的若干组成部分结合而成并为达到整体目的而存在的集合
系统具有:输入、输出、处理、边界和接口
系统的特性
整体性
以整体最优为原则(正、负效应)
层次性
系统有许多层组成
关联性
各个元素彼此相互依存相互制约
目的性
系统为完成某一特定目标而构造
环境适应性
任何一个系统都是更大系统的子系统,因此系统要适应外部环境的变化,要有开放性
分析研究系统的原则
明确系统的目的,了解系统所要完成的任务
区分系统与环境
掌握系统的处理流程
把握系统的分与合
自顶向下进行研究
注意系统的应变性
系统方法的结构体系
信息系统
概念
信息系统是一个由人、计算机硬件系统、软件系统和数据资源组成的人造系统,目的是及时、正确地收集、加工、存储、传递和提供信息,实现组织中各项活动的管理、调节和控制。
信息流与物流、资金流、事务流的关系
三要素
系统的观点
把研究对象作为一个系统,以系统的方法来考虑问题
数学的方法
用定量技术即数学方法来研究系统,通过各种数学模型、算法和优化技术,为管理需求服务
计算机技术
对系统观点和数学方法的具体实现
特点
面向管理决策
综合性
对一个组织乃至整个供需链进行全面管理
人机系统
现代管理方法和手段相结合
多学科交叉
类型(按管理活动的层次来看)
作业信息系统(低层)
业务处理系统、过程控制系统、办公自动化系统
管理信息系统(中层)
对一个组织进行全面管理的人机系统,综合运用计算机技术、管理技术、决策技术,结合现代化的管理思想、方法和手段,辅助管理人员进行管理和决策。
高层信息系统(高层)
决策支持系统、经理信息系统、战略信息系统
发展
事务处理系统(TPS) 电子数据处理系统(EDPS)
管理信息系统(MIS)
决策支持系统(DSS)
TPS、MIS、DSS三者关系
信息系统的新发展
办公自动化系统(OAS) 经理信息系统(EIS)/ 经理支持系统(ESS) 专家系统(ES) 战略信息系统(SIS) 计算机集成制造系统(CIMS) 群体决策支持系统(GDSS) 智能决策支持系统(IDSS)
信息系统与管理
信息系统对管理的依赖
具有一定的科学化管理水平是信息系统发挥作用的前提
信息系统对管理的支持
对计划职能的支持
计划试算、数据存取、预测、优化
对组织职能的支持
组织的结构与模式(虚拟组织)、业务流程
对控制职能的支持
对决策的支持
决策问题类型:结构化、非结构化、半结构化
结构
一般概念结构
基于管理任务的层次结构(金字塔结构)
从信息处理的工作量来看,信息处理所需资源的数量随管理任务的层次而变化。一般来说,底层的业务处理的信息量较大,层次越高,信息处理量越小,形成如下金字塔结构。
基于管理职能的功能结构
软件结构(纵横结构、综合结构)
1.1.2 信息系统的应用
信息系统在社会经济中的应用
医院信息系统 学校管理信息系统 城市环境管理信息系统 地理信息系统 (GIS) 社会保险管理信息系统(养老、医疗、失业、工伤、生育) 农业信息系统(精准农业)
信息系统在企业中的应用
企业资源计划(ERP)
ERP的历史
信息系统在政府机关中的应用
电子政务(工作流信息系统)
企业资源计划(ERP)
订货点方法
订货点法原理
订货点=单位时间需求量*提前期+安全库存
订货点法不足
在连续、稳定消费的情况下,订货点是一个固定值。
对需求量随时间变化的物料,由于订货点随消耗速度的快慢而升降,无法设定一个固定的订货点
MRP (物料需求计划)
20世纪60年代中期,美国IBM公司的约瑟夫.奥里佛博士提出了把企业产品中的各种所需物料分为独立需求和相关需求两种类型的概念,并按时间段确定不同时期物料需求,产生了解决库存物料订货的新方法,即物料需求计划(MRP)
独立需求:一项物料的需求与其它项的需求无关。如:对最终产品的需求,由市场决定。
相关需求:由独立需求决定的对组装成最终产品的零部件的需求。
物料清单(BOM)
BOM(Bill Of Materials)是描述产品结构的文件
BOM的理解
主生产计划(MPS)
主生产计划(Master Production Schedule,简称为MPS)是确定每一个具体的产品在每一个具体的时间段的生产计划。计划的对象一般是最终产品,即企业的销售产品,主生产计划的确定一般依据市场预测和客户订单。
主生产计划数量表示需要生产的数量,不是需求的数量。
具体时间段,通常是以周为单位,在有些情况下,也可以是日、旬、月
主生产计划详细规定生产什么、什么时段应该产出,它是独立需求计划
某产品单次生产计划在时间上的时区分布关系
库存状态信息
库存状态信息包括所有产品、零部件、在制品、原材料(统称为项目)的库存状态
内容
当前库存量:指工厂仓库中实际存放的可用库存量
计划入库量(在途):指根据正在执行中的采购订单或生产订单,在未来某个时间周期内项目的入库量。在这些项目入库的那个周期内,把它们视为库存可用量。
提前期:指执行某项任务(采购或生产)由开始到完成所 消耗的时间。提前期的单项构成包括:订单准备时间、排队时间、加工时间、等待时间、搬运时间以及接收和检测时间。
批量:指在某个时间周期向供应商订购(或要求生产部门生产)某项目的数量。
安全库存量:为了预防需求或供应方面不可预测的波动,在仓库中经常应保持的最低库存数量。
MRP结构
MRP意义
制造业基本方程
A*B-C=D
• A=主生产计划=要生产什么? • B=物料清单=用什么生产? • C=库存记录=有什么? • D=物料需求计划=还应得到什么?
MRP回答了以下几个问题
• 生产什么? 1 主生产计划(MPS) • 用到什么? 2 产品信息,(BOM) • 已有什么? 3 库存信息,物料可用量 • 还缺什么?何时订货? 4 加工及采购计划
MRP对企业运作方式的影响
MRP的评价
能根据相关数据计算出相关物料需求的准确时间与数量,但没有解决如何保证零部件生产计划成功实施的问题。即,
缺乏对完成计划所需的各种资源进行计划与保证的功能缺乏对完成计划所需的各种资源进行计划与保证的功能
缺乏根据计划实施实际情况的反馈信息,对计划进行调整的功能
因此,初期MRP主要应用于订购的情况,涉及的是企业与市场的界面,而没有深入到企业生产管理的核心中去
闭环MRP
闭环MRP系统除了物料需求计划外,还将生产能力需求计划、车间作业计划和采购作业计划也全部纳入MRP,形成一个封闭的系统。
在计算物料需求的同时,会考虑生产是否有足够的能力来加工制造,同时会根据客户订单的交货期来排列加工单的优先级。
能力需求计划(Capacity Requirement Planning,简称为CRP)是对各生产阶段、各工作中心(工序)所需的各种资源进行精确计算,得出人力负荷、设备负荷等资源负荷情况,并做好生产能力与生产负荷的平衡工作,制订出能力需求计划
结构
制造资源计划(MRP II)
MRP推行10年,人们对其提出了新的要求,希望能在MRP系统中将财务信息反映出来,把产品销售计划也用金额形式反映出来,即在闭环MRP的基础上,将财务管理纳入,使物流与资金流结合起来,形成比MRP更为完整的生产经营管理系统。 1977年9月,美国著名生产管理专家奥列弗.怀特在美国《现代物料搬运》杂志上首次提出将货币信息纳入MRP的方式,冠以“制造资源计划”(Manufacturing Resources Planning)的名称。为了和MRP相区别,又体现是MRP的继续和发展,称之为“MRP II”。
结构
MRP II 系统的特点
MRP II 系统是一个计划主导型系统,适应于以销定产的商品经济环境
系统中零部件、在制品库存低
每种零部件都根据最终需求、提前期、现有库存、最佳批量等进行计算,保证物料在最准确的时间、最适宜的数量投入,使库存降到较低水平。
打破产品界限,实现按零部件最佳批量组织生产
它将各时间周期中各产品生产任务的特点抹去,将多品种、小批量的需求在零部件一级统一安排,实现最佳经济批量生产,从而使成本降低、生产周期缩短。
为企业提供了详实的财务基础数据
企业资源计划(ERP)
MRP II的局限性
MRPII是以面向企业内部业务为主的管理系统
不能适应市场竞争全球化、管理整个供应链的需求
它在 MRP II 的基础上扩展了管理的范围, 基于优化企业 “供应链” 的管理 思想,将企业的物质资源、资金资源和信息资源进行集成的一体化管理的企业管理软件系统
概括地说,ERP是建立在信息技术基础上,利用现代企业的先进管理思想,全面地集成了企业所有资源信息,为企业提供决策、计划、控制与经营业绩评估的全方位和系统化的管理平台。
ERP的核心理念
供应链管理
信息集成
ERP 系统的管理思想
体现精益生产、敏捷制造的思想
精益生产(Lean Production , LP)是通过系统结构、人员组织、运行方式和市场供求等方面的变革,使生产系统能很快适应用户需求不断变化,并能使生产过程中一切无用、多余的东西被精简,最终达到生产的各方面最好的结果。核心是准时化生产JIT(Just In Time),追求零库存和快速应对市场的变化
敏捷制造( Agile Manufacturing )是指企业面对市场机会,如果原有合作伙伴不能满足开发生产新产品的要求时,企业会组织一个由特定供应商和销售渠道组成的短期或一次性供应链,形成 “虚拟工厂”,运用 “同步工程” 组织生产,用最短的时间将新产品打入市场,时刻保持产品的高质量、多样化和灵活性。
以供应链管理为核心
在网络经济时代企业仅靠自己的资源不可能有效地参与市场竞争,必须把经营过程中的有关各方如供应商、制造工厂、分销网络、客户等纳入一个紧密的供应链中,才能有效地安排企业的产、供、销等活动。现代企业竞争不是单一企业与单一企业间的竞争,而是一个企业供应链与另一个企业供应链之间的竞争。
全面整合企业内外资源
正确认识ERP
面向企业供应链的管理
ERP是一种管理思想;一套管理软件;是一个管理系统
正确认识企业本身的管理水平和所处的环境
不要对ERP实施难度估计过低
MRP、MRPⅡ、ERP
MRP→MRP II →ERP的扩展关系
区别与联系
MRP、MRPⅡ、ERP代表了企业管理理念在不同时期的发展程度和发展阶段
MRP:产、供、销部门物料信息的集成,目标是既不出现短缺,又不积压库存
MRPII:围绕着“在正确的时间制造和销售正确的产品”这样一个中心,将企业的“人”、“财”、“物”进行集中管理,实现物料信息同资金信息集成
ERP:围绕着“在最佳的时间制造和销售最佳的产品”管理核心,全面整合企业内、外所有资源,管理范围和领域也从制造业扩展到了其它行业和企业
1.1.3 信息系统开发特点
投入资金大(上亿元的系统并不少见) 开发周期长(3、5年甚至更长) 技术要求高(多学科、技术的综合) 影响因素多(诸多非技术因素)
信息系统不仅是一个技术系统,更是一个社会系统
信息系统面临的挑战
如何深刻认识 IS(MIS)不仅是一个技术系统,而且是一个社会系统。 管理工作科学化与发展信息系统的关系 如何提高组织的文化,培养新一代的工作人员,使之适应新技术应用和企业转型的挑战 政府部门如何促进信息系统的应用和发展
1.1.4 信息系统生命周期
基本思想
将管理信息系统从系统调查开始,经过系统分析、系统设计、系统实施、系统维护与评价,直至要求建立新的系统看成是一个生命周期的结束,另一个生命周期的开始。
信息系统规划
系统规划阶段的任务是对企业的环境、目标、现行系统的状况进行初步调查,根据企业目标和发展战略,分析各级管理部门的信息需求,确定信息系统的目标、功能、规模、资源,对建设新系统的需求做出分析和预测,并且根据需求的轻重缓急、现有资源状况和应用环境的约束,合理安排建设计划,从经济、技术等方面研究建设新系统的必要性和可能性。根据需要与可能,给出拟建系统的备选方案。对这些方案进行可行性分析,写出可行性分析报告。如果可行性分析报告审议通过,将新系统建设方案及实施计划编写成系统设计任务书。
信息系统分析
系统分析阶段的任务是根据系统设计任务书所确定的范围,对现行系统进行详细调查,描述现行系统的业务流程,指出现行系统的局限性和不足之处,确定新系统的基本目标和逻辑功能要求。本阶段目的是建立新系统的逻辑模型,所以又称为逻辑设计阶段。这一阶段的主要工作是从业务调查入手,分析业务流程,分析数据与数据流程,分析功能与数据之间的关系,并根据用户的需求,确定新系统的逻辑模型,编写系统分析报告。 系统分析阶段的工作成果体现在系统需求说明书中,用户通过系统需求说明书可以了解未来系统的功能,判断是不是其所要求的系统;系统需求说明书是系统设计的依据,也是将来验收系统的依据。
信息系统设计
该阶段的任务是根据系统需求说明书中规定的功能要求,设计新系统的物理模型,所以这个阶段又称为物理设计阶段。 这个阶段又可分为总体设计和详细设计两个阶段。这个阶段的技术文档是系统设计说明书。这一阶段主要工作包括总体设计、数据库设计、输入输出设计、模块结构和功能设计,编写系统设计报告。
信息系统实施
系统实施阶段是根据系统设计报告所确定的物理模型,将设计方案转换为计算机上可实际运行的人机信息系统,编写系统实施报告。 这一阶段的主要工作包括计算机等设备购置、安装和调试,程序的编写和调试,人员培训,数据文件转换,系统调试与转换等。此阶段的特点是几个互相联系、互相制约的任务同时展开,必须精心安排、合理组织。
信息系统运行管理与评价
这个阶段工作主要有系统评价和系统维护。系统评价的主要任务是在系统运行期间,根据用户的反映和系统日常运行情况记录,定期对系统的运行状况综合考核,评价系统的工作质量和经济效益,为系统维护及再建设提供依据。系统维护的主要任务是记录系统运行情况,在原有系统的基础上进行修改、调整和完善,使系统能够不断适应新环境、新需要。
1.2 信息系统开发方法
1.2.1 信息系统开发方法分类
1.2.2 结构化系统开发方法
SSA&D(Structured System Analysis and Design)
结构化系统开发方法=结构化(自顶向下)+工程化+生命周期法
基本思想:用系统的思想,系统工程的方法,按用户至上的原则,结构化、模块化、自顶向下地对信息系统进行分析与设计
结构化方法亦称结构化生命周期法
一般过程
系统规划
系统分析
系统设计
系统实施
系统运行维护与评价
特点
树立面向用户的观点
自顶向下分析与设计、自底向上系统实施
严格按阶段进行
加强调查研究和系统分析
充分考虑可能变化的因素
工作文档资料规范化和标准化
开发周期长,适合大系统
优点
阶段的顺序性和依赖性
前一个阶段的完成是后一个阶段工作的前提和依据,而后一阶段的完成往往又使前一阶段的成果在实现过程中具体了一个层次。
注重整体性和全局性
从抽象到具体,逐步求精
逻辑设计与物理设计分开
提高了系统的正确性、可靠性和可维护性
缺点
它是一种预先定义需求的方法,需要能够在早期就冻结用户的需求,然而在实际中要做到这一点往往是不现实的,用户很难准确地陈述其需求。
未能很好解决系统分析到系统设计之间的过渡,即如何使物理模型如实反映出逻辑模型的要求。
该方法文档的编写工作量极大,随着开发工作的进行,这些文档需要及时更新。
开发过程繁杂,周期长,难以适应环境的变化
1.2.3 原型法
原型法的提出
结构化方法面临的问题
完全依赖准确的需求
准确的需求必须在系统开发的早期确定
20世纪80年代,人们提出原型法
需求不必在系统开发早期准确定义
需求的获取是一个不断演进的过程
基本思想
原型就是一个可以实际运行、可以反复修改、可以不断完善的信息系统
原型法是在系统开发初期,凭借系统开发人员对用户需求的了解和系统主要功能的要求,在强有力的软件环境支持下,迅速构造出系统的初始原型,然后与用户一起不断对原型进行修改、完善,直到满足用户需求。
原型的种类
实验型原型
在于描述和说明系统的需求作为开发人员和用户之间的通信工具
不作为实际系统运行,原型只是从外观上、功能上象“实际系统”
演进型原型
按照基本需求开发出一个系统,让用户先使用起来,随时修改,不断完善,最终成为实际系统
原型法一般过程
原型法特点
提高用户满意程度
改善了信息的沟通方式
系统容易被用户接受
降低了开发风险
降低了开发成本
适用范围:小系统
原型法缺点
开发工具要求高
开发工具的水平是原型法能否顺利实现的第一要素
解决复杂系统和大型系统很困难
由于原型法贯彻“从下而上”的策略,在实施过程中缺乏对管理系统全面的、系统的认识,因此,不适用于开发大型管理信息系统
对用户的管理水平要求较高,容易走上机械模拟原手工系统的轨道,运行的效率可能会比较低
容易忽视彻底的测试和文档的健全
每次反复都要花费人力、物力,如果用户合作不好,盲目纠错,就会拖延开发过程
原型法与结构化方法的结合
1.2.4 面向对象开发方法
面向对象方法(OO)的产生
面向对象方法是随着面向对象的程序设计语言的发展而产生( 20世纪80年代)
解决传统开发方法中系统分析到系统设计转换困难
基本思想
它把客观世界的一切事物都看成是由各种不同的对象组成,每个对象都有各自内部的状态、机制和规律
按照对象的不同特性,可以组成不同的类
不同的对象和类之间的相互联系和相互作用就构成了客观世界中的不同的事物和系统
基本概念
客观事物是由对象组成,对象是在原事物基础上抽象的结果。任何复杂事物都可以通过各种对象的组合结构来定义和描述
对象由属性和方法组成。属性反映了对象的数据特性,方法反映了对象的行为特性
对象是一个被封装了的实体
对象之间的联系通过消息传递机制来实现
对象可按其属性进行归类
对象或类之间的层次结构是靠继承关系维系的。继承是自动共享方法和数据的机制
具有继承关系的类之间
具有共享特征(数据或方法)
具有细微差别或新增部分
具有层次结构
对象具有多态性
面向对象开发方法步骤
系统调查和需求分析
分析问题的性质和求解问题
详细设计问题
程序实现
系统测试
特点
系统的描述及信息模型的表示与客观实体相对应,符合人们对客观世界的认识,缩短开发周期,提高系统开发的正确性和效率
系统开发的基础统一于对象之上,各个阶段工作过渡平滑,避免了许多中间转换环节和多余劳动;解决传统开发方法中系统分析到系统设计转换困难
软件的可扩展性、模块的独立性、程序的共享和可重用性大大提高
许多新型的软件中,采用或包含了面向对象的概念和有关技术
不足:大系统开发时,应该与结构化方法相结合
1.2.5 计算机辅助开发方法(CASE)
CASE是一种自动化或半自动化的系统开发环境,能够全面支持除系统调查外的每一个开发步骤
CASE 的应用模式
CASE工具 + 某种开发方法
特点
加快了软件开发速度
简化了系统开发过程的管理和维护
自动生成开发过程中的各种文档资料
1.2.6 各种开发方法比较
结构化方法:周期长,适合大系统,主导地位
原型法:速度快,适合小系统
面向对象法:从不同角度(对象)来处理问题,不能涉足系统分析以前环节
CASE法:侧重自动化,非独立,不支持系统调查阶段
1.3 信息系统开发环境
1.3.1 网络开发环境
硬件需求:CPU、内存、外存以及其它输入输出设备等。
软件需求
支持多种操作系统,如UNIX、LINUX、WINDOWS 数据库技术
网络平台
按照网络覆盖的范围:局域网(LAN)、广域网(WAN)和城域网(MAN) 网络组建和管理的部门和单位不同:公用网、专用网
1.3.2 网络信息系统体系结构
基于宿主机结构(主机/终端结构、单主机结构)
工作站/文件服务器结构
工作站/文件服务器结构、客户机/服务器结构
客户/服务器结构(Client/Server)
客户机/服务器模式的优点
通过C/S功能合理分布,均衡负荷
客户机/服务器模式的缺点
所有客户机都安装了客户端程序,软件升级维护困难 不同的应用需安装不同的客户端程序(胖)
浏览器/服务器结构(Browser/Serve)
浏览器/服务器结构(B/S)
浏览器/Web服务器/数据库服务器 浏览器/Web服务器/ 应用服务器/数据库服务器
B/S模式优点
使用简单 维护容易 可扩展性好,采用TCP/IP协议,可以直接连入Internet 客户端硬件要求低,客户端只需安装一种 Web 浏览器软件(瘦)
1.4 信息系统发展的阶段理论
1.4.1 诺兰模型
产生
信息系统的发展有其自身的规律,自上世纪80年代以来,许多专家学者通过对信息系统建设发展的成败经验进行总结,研究其内在规律,其中最著名的是诺兰模型
美国哈佛大学教授里查德·诺兰(R.Nolan)在1973年首先提出了信息系统发展的4阶段论,之后经过实践进一步验证和完善,又于1980年将其调整为6阶段论
诺兰的6阶段模型
初始(初装)
初装阶段标志着组织购买第一台用于管理计算机,并初步开发管理应用程序
特点
⑴ 组织中只有个别人具有使用计算机的能力; ⑵ 该阶段一般发生在一个组织的财务部门
普及(蔓延)
处于蔓延阶段的组织中,计算机的应用初见成效,管理应用程序从少数部门扩散到多数部门
特点
① 数据处理能力得到迅速发展; ② 出现许多新问题(如数据冗余、数据不一致性、难以共享等); ③ 计算机使用效率不高等
控制
主要指对组织中计算机的数量进行控制
特点
⑴ 成立了一个领导小组; ⑵ 采用了数据库技术; ⑶ 这一阶段是计算机管理变为数据管理的关键
整合(集成)
集成阶段就是在控制的基础上,对子系统中的硬件进行重新联接,建立集中式的数据库及能够充分利用和管理各种信息的系统
特点
⑴ 建立集中式的数据库及相应的IS; ⑵ 增加大量硬件,预算费用迅速增长
数据管理、成熟
由于80年代时,美国尚处在第四阶段,因此,诺兰没能对该两个阶段进行详细的描述。他认为数据管理应该是实现企业全方位的数据存储、检索、处理和维护等;成熟应该是形成了完善的信息系统,可以为各个管理层次提供信息
诺兰提出IS六种增长要素
1. 计算机技术(软硬资源)发展
2. 应用方式从批处理方式到联机实时方式
3. 计划控制
从短期的、随机的到长期的、战略的计划
4. IS在组织中的地位
从附属于别的部门发展为独立的部门;CIO
5. 领导模式
从开始技术领导为主,到高层管理决定发展战略
6. 用户意识
从作业管理级的用户发展到中高层管理级
诺兰模型的意义
诺兰模型反映了组织应用管理信息系统的一般发展规律,不能跳跃阶段。可以压缩某些阶段的时间,特别是蔓延阶段
企业发展阶段定位
战略规划的切入点
1.4.2 西诺特模型
从计算机处理的内容上考虑
“数据”阶段 “信息”阶段 “信息资源”阶段 “信息武器”阶段
强调信息主管(CIO)的重要性
1.4.3 米切模型
1.5 信息系统开发的相关问题
1.5.1 信息系统开发成功的条件
领导重视,业务人员积极性高(一把手工程)
组织的生存和发展需要 内部人员对现状不满
有一定的科学管理基础
能组织一支系统的技术队伍
具备一定的资源
开发人员和管理人员的素质和它们之间的密切合作是成功开发的重要因素
1.5.2 信息系统的开发策略
自上而下
基本思想:从整体上协调和规划,由全局到局部,由长远到近期,从探索合理的信息流出发来设计系统
自下而上
基本思想:从现行系统的业务状况出发,先实现各项业务的具体功能,逐步由底层到高层,直至最后形成整个系统
两种策略的对比
1.5.3 信息系统开发的方式
自行开发
委托开发(外包)
合作开发
购买商品软件
1.5.4 系统开发人员的组织
系统开发人员的组织
用户(高、中、低层) 系统分析员(作用、素质)、系统设计员、程序员、硬件网络设计员、数据库管理员等
系统开发人员的职业道德
1.5.5 信息系统开发中常见问题
信息系统开发人员对需求理解出现偏差 “堆栈”现象 重编程,轻规划,轻分析 采用增加人员的方法来加快进度往往效果不明显 对信息系统的开发难度估计不足 对信息系统不仅是一个技术系统,更是一个社会系统认识不足
第2章 信息系统规划
2.1 信息系统规划目标与内容
2.1.1 总体目标与主要内容
信息系统规划的概念
信息系统规划又称总体规划(战略规划),是根据组织的战略目标和用户提出的需求,从用户的现状出发,经过调查,对所要开发管理信息系统的技术方案、实施过程、阶段划分、开发组织和开发队伍、投资规模、资金来源及工作进度等,用系统的、科学的观点进行全面规划。信息系统规划时,应对现行系统作创造性分析和批判性分析。
总体规划的重要性(意义)
总体规划是系统开发的前提条件
总体规划是系统开发的纲领
总体规划是系统开发成功的保证
总体规划是系统验收评价的标准
信息系统规划的目标
信息系统规划是关于信息系统长远发展的规划,是企业战略规划的一个重要部分
信息系统规划的目标是使信息系统的发展支持企业或组织的发展战略
信息系统规划的特点
面向全局的、长远的关键问题,具有较强的不确定性,结构化程度低
是高层次的系统分析,高层管理人员是工作的主体
不宜过细。总体规划的目的是为整个信息系统确定发展战略、总体结构和资源计划,而不是解决系统开发中的具体问题。
是组织战略规划的一部分,并将随着环境的改变和发展而发生变化
规划者对管理和技术发展的见识、开创精神和务实态度是总体规划成功与否的关键
信息系统规划的原则
支持组织的总目标
着眼高层并兼顾各管理层次的要求
摆脱信息系统对组织机构的依从性
注重整体性
便于实施
先“自上而下”规划,再“自下而上”实施
信息系统规划的组织
制定系统规划的九个步骤
⑴ 确定规划的性质(规划年限)
⑵ 收集相关信息
⑶ 战略分析 (现状、MIS目标、功能、风险);
⑷ 定义约束条件
⑸ 明确战略目标
⑹ 提出总体结构
⑺ 选择开发方案 (顺序、策略、方式)
⑻ 确定实施进度
⑼ 形成文档,并讨论、批准、生效
信息系统规划的主要内容
①信息系统的战略规划
根据组织的发展目标与战略制定业务流程改革与创新的目标和信息系统的发展战略
②业务流程规划
制定组织的业务流程规划,确定业务流程改革与创新的方案
③总体结构规划
根据组织目标和业务流程规划确定信息系统的总体结构规划方案
④项目实施与资源分配规划
安排项目实施方案,制定信息系统建设的资源分配方案
2.1.2 信息系统战略规划
内容
①信息系统的总目标、发展战略与总体结构
②对当前信息系统状况的了解
③对相关信息技术发展的预测
④近期发展的计划
2.1.3 业务流程规划
业务流程
概念
一个组织在完成其使命、实现其目标的过程中必需的、逻辑上相关的一组活动。 或为完成某一目标而进行的一系列逻辑相关的活动的有序集合
由于业务流程比组织内部的机构相对稳定,面向业务流程的信息系统在组织机构与管理体制变化时能够更好地保持工作能力。
传统业务流程
非增值环节多,信息传递缓慢,同一流程各个环节之间和不同流程间关系混乱,特别是完整的业务流程被不同职能部门分割。
20世纪80年代:业务流程改善(BPI)
1990年:业务流程再造(BPR)
2.1.4 总体结构规划
组织的信息需求分析
系统的数据规划
功能规划与子系统的划分
信息资源配置规划
2.1.5 项目实施与资源分配规划
制定项目实施规划(开发顺序、时间安排)
经济效益因素
对组织的改革与发展推动作用、节省费用或增加利润
技术因素
难度低的、基础的、为其它项目实施提供前提条件
制定资源分配方案
硬件资源、软件资源、数据通信设备、人员、技术、服务、资金 项目概算
2.2 信息系统总体结构规划方法
总体规划的常用方法
关键成功因素法(CSF)/战略分析法
战略目标集转化法(SST)
企业系统规划法(BSP)/企业分析法
2.2.1 关键成功因素法(CSF)
提出
关键成功因素法(CSF,Critical Success Factors)是1970年由哈佛大学教授Zani提出来,1980年被Rochart教授用于确定信息系统战略的一种方法。该方法并不是一个制定信息系统规划的完整方法,而是从企业目标中找出关键因素,并且在信息系统战略中予以重点考虑,是制定信息系统规划的辅助方法。
基本思想
在现行系统中,总存在着多个变量影响组织目标的实现,其中若干个因素是关键的和主要的(即关键成功因素)。通过对关键成功因素的识别,找出实现目标所需的关键信息集合,从而进行规划
基本步骤
(1)了解企业目标
(2)识别关键成功因素
(3)识别性能指标和标准
(4)识别测量性能的数据(定义数据字典)
识别工具:树枝因果图
树枝图(因果图、鱼刺图)
2.2.2 战略目标集转化法(SST)
提出
战略目标集转化法是1978年由William King提出的一种确定信息系统战略目标的方法,该方法把组织的总战略目标看成一个“信息集合”,包括使命、目标、战略以及其他战略性组织属性。
使命:组织属于的行业或部门
目标:希望达到的目的
战略:为达目标而制定的总方针
其它战略性组织属性:如管理的复杂性、改革习惯以及重要的环境约束等
基本思想
识别组织的战略集合,并把组织的战略集合转化为信息系统的战略集合
信息系统的战略集合
由系统目标、系统约束和系统开发战略组成
战略目标集转化法步骤
识别组织的战略集
将组织的战略集转化成信息系统的战略集
示例
2.2.3 企业系统规划法(BSP)
基本思想
由IBM在20世纪70年代提出,旨在帮助企业制定信息系统的规划,以满足企业近期和长期的信息需求。通过自上而下地识别系统目标、企业过程和数据,然后对数据进行分析,自下而上地设计信息系统。
是一种能根据企业目标制定出信息系统战略规划的结构化方法
作用
确定出未来信息系统的总体结构,明确系统的子系统组成和开发子系统的先后顺序
对数据进行统一规划、管理和控制,明确各子系统之间的数据交换关系,保证信息的一致性
企业系统规划法的优点在于利用它能保证管理信息系统独立于企业的组织机构,也就是能够使信息系统具有对环境变更的适应性
基本原则
应该向整个企业提供一致信息
应该经得起组织机构和管理体制变化
先“自上而下”识别和分析,再“自下而上”设计
必须支持企业的战略目标
应当表达出企业各个管理层次的需求
BSP法基本过程
2.2.4 三种规划方法的比较
CSF能抓住主要矛盾,使目标的识别突出重点。该方法最有利于确定企业的管理目标
SST反映了各种人的要求,而且给出了按这种要求的分层,然后转化为信息系统目标的结构化方法。它能保证目标比较全面,疏漏较少,但它在突出重点方面不如前者
BSP没有明显的目标导引过程。它通过识别企业“过程”引出了系统目标,企业目标到系统目标的转换是通过企业过程/数据类等矩阵的分析得到的
CSB方法(即CSF,SST和BSP结合)。先用CSF方法确定企业目标,然后用SST方法补充完善企业目标,并将这些目标转化为信息系统目标,用BSP方法校核两个目标,并确定信息系统结构,这样就补充了单个方法的不足
2.3 企业系统规划法的步骤
BSP法工作流程
2.3.1 准备工作
1. 成立总体规划小组
2. 收集数据并制定计划
3 .开好动员会
2.3.2 定义企业过程
1. 定义管理目标
2. 识别资源并定义企业过程
资源的生命周期
资源(广义):被管理的对象
产生:对资源的请求、计划工作等活动。如人事需求计划、设备需求计划和招生计划等。
获得:资源的开发活动,即获得资源的活动。如产品的生产、学生的入学,人员的聘用等。
服务:指资源的存贮和服务的延续活动。如库存的控制,学生的在校学习等
归宿:指终止资源或服务的活动或决策。如产品的销售,学生的毕业等
资源的分类
根据企业目标,可以从三个方面来识别资源
计划与控制
计划与控制资源业务过程
产品与服务
产品与服务资源业务过程
支持性资源
支持性资源业务过程
定义企业过程步骤
组织功能矩阵
3. 识别管理功能组
4. 通用模型
5. 阶段成果
2.3.3 定义数据类
数据类
系统中密切相关的信息归为一类,如顾客、产品、合同等。
定义数据类的方法
实体法
分析组织中的实体以及与之相关的数据,形成实体/数据类矩阵
实体/数据类矩阵
在分析中把与企业有关的可以独立考虑的事物都可以定义为实体。如客户、产品、材料、现金和人员等
每个实体根据资源的管理过程,可将其涉及到的数据分为计划型、统计型、文档型和业务型四种
四类实体数据类型
功能法
过程法,它利用以前识别的企业过程,分析每一个过程利用什么数据,产生什么数据,或者说每一过程的输入和输出数据是什么,形成输入-处理-输出图
绘制过程/数据类矩阵(U/C矩阵图)
以企业过程为行,以数据类为列,按照企业过程生成数据类关系填C(Create),企业过程使用数据类关系填U(Use),填充各单元格,就形成了初始U/C矩阵图
U/C 矩阵的建立
U/C 矩阵的检验
U/C矩阵功能
通过U/C 矩阵的正确性检验,及时发现前段分析和调查工作的疏漏和错误
通过U/C 矩阵的正确性检验,分析数据的正确性和完整性
通过对U/C 矩阵的求解过程得到子系统的划分
通过对子系统之间的联系,可以确定子系统之间的共享数据,确定子系统的开发顺序
U/C矩阵正确性检验
完备性检验
指对每个数据类必须有产生者(C)和使用者(U),功能则必须有产生或使用(U或C)发生
一致性检验
指对具体的数据项必须有且仅有一个产生者(C)
无冗余性检验
指 U/C矩阵中不允许有空行和空列
2.3.4 定义信息系统结构
U/C矩阵的求解
U/C 矩阵的求解过程就是对系统结构划分的优化过程。它是基于子系统划分应相对独立且内部凝聚性高这一原则之上的一种聚类操作
U/C 矩阵的求解过程常通过表上作业法来完成。其具体操作方法是:调整表中行变量或列变量,使得“C”元素尽量地朝对角线靠近,然后再以“C”元素为标准,划分子系统
表 上 移 动 作 业 过 程
子系统的划分
系统逻辑功能的划分
在求解后的U/C 矩阵中划出一个个的方块,每一个小方块即为一个子系统
划分时应注意
沿对角线一个接一个地画,既不能重叠,又不能漏掉任何一个数据和功能
小方块的划分是任意的,但必须将所有的 “C” 元素都包含在小方块内
子 系 统 划 分
2.3.5 确定系统优先顺序
分析数据流
在划分了子系统的基础上,用箭头把落在系统框外的U与子系统联系起来,表示子系统之间的数据流。在粗框外的U表示一个系统使用另一个子系统的数据
画出所有的数据流,删除所有的字母C和U,并给子系统加上名称,这样就形成了新系统的体系结构
数 据 联 系
信息系统结构图
确定优先顺序
技术约束分析
对子系统之间的关联情况进行分析。有较多子系统共享的数据应较早实现
系统需求程度与潜在效益评估
对企业贡献大的、需求迫切的、容易开发的系统要优先开发
2.4 业务流程重组 (企业过程再造)
2.4.1 业务流程重组概述
业务流程重组背景
现行企业管理模式(分工)
19世纪弗雷德里克·泰勒(Frdick Taylor)的“科学管理理论”,即强调按专业化分工
不足
– 专业分工过细 – 职能部门分离 – 组织机构臃肿 – 员工技能单一
18世纪亚当·史密斯(Smith)的“劳动分工原理”
企业活动的两种组织方式
职能型群体
按活动的相同性或相近性,将从事相同或相近职能的人组合在一起
优点
群体成员与管理者有着相同的工作态度和价值取向,因而彼此之间有较大的融洽性,管理工作相对简单
缺点
一个完整的工作流程要跨越多个职能部门
流程型群体
将为完成同一个目标或任务而进行的一系列相关活动的人组合在一起
优点
同一目标下相互有关联的不同环节的成员彼此合作能使工作中出现的问题得到快速解决,因此完成工作的效率高,对外界的反应也快
缺点
沟通与协调比较困难,群体的管理工作难度较大
业务流程重组含义
业务流程重组是一种管理思想,它强调以业务流程为改造对象和中心、以关心客户的需求和满意度为目标、对现有的业务流程进行根本的再思考和彻底的再设计,利用先进的制造技术、信息技术以及现代化的管理手段、最大限度地实现技术上的功能集成和管理上的职能集成,以打破传统的职能型组织结构,建立全新的过程型组织结构,从而实现企业经营在成本、质量、服务和速度等方面的巨大改善
业务流程重组的实质
业务流程重组是对企业进行根本的再思考和彻底的再设计,以求企业在关键的性能指标获得显著性改善,如成本、质量、服务和速度等
根本的:不是枝节、表面,而是本质的,即革命性的,对现行系统进行彻底的怀疑。在做什么?为什么这么做?
彻底的:动大手术、大破大立,不是一般的修补
显著性改善:巨大的提高、极大的飞跃,是在量变的基础上产生质变,出现突跃点
2.4.2 业务流程的识别与再造
按企业活动性质划分流程
(1) 管理流程(计划、组织、协调、控制)
(2) 营运流程(产、供、销)
按流程的处理对象划分流程
实物流程、信息流程
按流程跨越组织的范围来划分流程
个人间流程(部门内流程)
部门间流程
企业间流程
2.4.3 业务流程重组
类型
从业务流程重组与信息系统实施先后关系来看
先重组后上系统 先上系统后重组 重组与上系统并行
原则
以过程管理代替职能管理,取消不增值的管理环节
以事前管理代替事后监督,减少不必要的审核、检查和控制活动
取消不必要的信息处理环节,消除冗余信息集
以计算机协同处理为基础的并行过程取代串行和反馈控制管理过程
用信息技术实现过程自动化,尽可能抛弃手工管理过程
实现手段
信息技术(IT)
充分发挥IT的潜能,利用IT改造企业过程,简化企业过程
组织变革
变革组织结构,达到组织精简,效率提高的目的
注意
没有深入的应用 IT,没有改变组织,严格的说不能算是实现了BPR
业务流程重组与信息系统之间相互依赖、相互支持
步骤
对现有业务流程进行分析,找出现有流程存在的问题及产生问题的原因
分析每一项活动的必要性
根据企业的战略目标,去发现正确的业务流程
如在信息技术支持下,有些活动可以合并,管理层次可以减少,有些审批检查可以取消等。
实施
观念重组
变革基本信念、转变经营机制、重建组织文化、重塑行为方式
流程重组
由面向职能转变为面向流程:对企业的现有流程进行调研分析、诊断、再设计,然后重新构建新的流程
组织重组
建立流程管理机构,明确其权责范围;制定各流程内部的运转规则与各流程之间的关系规则,逐步用流程管理图取代传统企业中的组织机构图,使组织结构扁平化
主要技术
实施业务流程重组的主要技术是简化过程,即战略上精简分散的过程;职能上纠正错位的过程;执行上删除冗余的过程。
简化过程的原则
纵向集成(压缩管理层次);横向集成(跨部门按流程的压缩);减少 检查、校对和控制;单点对顾客;单库提供信息;并行工程
时机
企业濒临破产,不改只能倒闭。 企业竞争力下滑,企业调整战略和进行重构。 企业领导认识到BPR能大大提高企业竞争力,而企业又需要扩张。 BPR的策略在相关企业获得成功,影响本企业。
2.4.4 基于BPR的信息系统规划
优势
信息需求的创新性 、明确性 、一致性
步骤
① 提出目标 ② 确定需要重组的业务流程 ③ 理解并评价已有业务流程的执行效果 ④ 找出利用信息技术的机会 ⑤ 建立新业务过程的原型
成效
企业过程及其运营方式的变化 组织层次上的变化 管理理念层次上的变化
第3章 信息系统调查分析
概述
系统调查分析的任务
通过初步调查,完成对用户问题的识别
对任务进行可行性分析
若可行,则对系统进行详细调查
系统调查分析过程
3.1 初步调查
3.1.1 初步调查目标
掌握用户的概况
对用户提出的各种问题和初始要求进行识别
明确新系统的初步目标
为可行性研究提供工作基础
3.1.2 初步调查内容
① 组织概况:组织的规模、历史、行业性质、管理目标与模式、人力、物力、技术、设备、组织机构等。 ② 组织环境:组织的自然环境和社会经济环境、上下级关系、横向联系、特别是与外部组织的信息来往等。 ③ 现行系统概况:现行系统的功能、技术水平、工作效率、可靠性,人才队伍与管理体制,现行系统在组织中的地位和作用以及存在问题等。 ④ 各方面对新系统的态度:组织内部对建立新系统的迫切性、领导的决心及管理人员和技术人员的积极性。 ⑤ 系统研制工作的资源情况:包括组织内部现有的人力物力、设备、财力与环境条件。能够投入新系统的人力、物力、资金、时间以及有什么限制条件等
3.2 可行性研究
3.2.1 可行性研究概念
可行性研究又叫可行性分析,是指在项目正式开发之前,先投入一定的精力,通过一套准则,从经济、技术、管理、社会等方面对项目的必要性、可能性、合理性以及项目所面临的重大风险进行系统地分析和科学论证,得出项目是否可行的结论
可行性研究是一个特定的过程,用来识别项目可能存在的问题、机会或要求,确定项目目标,描述现有状况和成功后的成果,对问题的不同解决方案做费用和收益的比较
简单说,可行性研究目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决
3.2.2 可行性研究步骤
① 复查系统目标和规模 ② 研究目前正在使用的系统 ③ 导出新系统的高层逻辑模型 ④ 重新定义问题 ⑤ 导出和评价供选择的方案 ⑥ 推荐一个方案并说明理由 ⑦ 草拟开发计划 ⑧ 书写文档提交审查
3.2.3 可行性研究的内容
必要性
必要性来自组织内部对建立系统的需要和组织外部的要求,是从管理对信息系统的客观要求及现行系统的可满足性分析新系统开发是否必要
可行性
可行性研究的目的不是解决问题,而是研究在当前的具体条件下,开发新系统是否具备必要的资源和其他条件。 从经济、技术、社会、管理等方面来研究
经济可行性
也叫投资/效益分析或成本效益分析
它是分析信息系统项目所需要的花费和项目开发成功之后所能带来的经济效益
投资/效益分析需要确定出所要开发的信息系统的总成本和总收益。然后对总成本和总收益进行比较,一般来说只有当总收益大于总成本时,这个项目才值得开发
信息系统总成本包括开发成本和运行成本
① 设备成本:包括计算机硬件、输入输出设备、空调、电源及机房设施、软件配置所需的一切费用。 ② 人员成本:包括系统开发人员、运行人员和维护人员的工资、加班费和技术培训费等。 ③ 材料成本:包括系统开发用的材料、各种能源与消耗品所需的费用。例如文档资料的复印、打印纸、色带、磁盘、磁带和用电、用水所需的费用等。 ④ 其他成本:包括由于新系统带来工作方式的改变而需要的其他开支,系统正常运行期间的设备维修与保养费等。
总效益的估算
直接经济效益
信息系统能够直接获取的,并且能够用资金度量的效益
如降低成本、提高资金周转率、减少人员成本和消耗等它们可以用资金进行计算
间接社会效益
能够整体地提高企业信誉和形象,提高企业的管理水平,但不能简单地或无法用资金计算的那部分效益
间接社会效益常常需要系统分析员根据本企业的状况和不同企业之间的类比进行概括估计
注意:成本低估和效益高估
成本/效益分析
货币的时间价值是指同样数量的货币随时间的不同具有不同的价值。通常用利率的形式表示货币的时间价值
社会可行性
社会可行性具有比较广泛的内容,它需要从政策、法律、道德、制度、管理、人员等社会因素论证信息系统开发的可能性和现实性
操作可行性是指分析和测定给定信息系统在确定环境中能够有效地从事工作并被用户方便使用的程度和能力
管理可行性
企业领导、部门主管对新系统开发是否支持,态度是否坚决
管理人员对新系统开发的态度如何,配合情况如何
管理基础工作如何,现行管理系统的业务处理是否规范等
新系统的开发运行导致管理模式、数据处理方式及工作习惯的改变,这些工作的变动量如何,管理人员能否接受
技术可行性
技术可行性是分析在特定条件下,技术资源的可用性和这些技术资源用于解决信息系统问题的可能性和现实性,即分析使用现有的技术是否能实现这个系统,能否解决系统的技术难点,系统对技术人员有什么样要求,现有的技术人员能否胜任,开发系统的软件,硬件资源是否能如期得到等
① 应该全面考虑信息系统开发过程所涉及到的所有技术问题。 ② 尽可能采用成熟技术。 ③ 慎重引入先进技术。 ④ 着眼于具体的开发环境和开发人员
可行性研究结论
① 可行,按计划进行; ② 基本可行,对项目要求或方案做必要修改; ③不可行,不立项或终止项目
3.2.4 可行性研究报告
① 开发任务的提出:包括建立系统的背景、必要性和意义。 ② 系统的目标:包括系统的名称、目标功能和开发的进度要求。 ③ 初步调查概况:包括用户的组织与现行系统概况,用户的认识基础和资源条件等。 ④ 初步实施方案与比较:包括系统的规模、组成和结构,投资的数量与来源,人力的投入与培训计划等。如果有几种方案,应对它们进行比较,并提出选择的意见。 ⑤ 可行性研究:包括技术、经济、社会和管理四方面的可行性分析。 ⑥ 结论
3.2.5 可行性论证会
由主管部门主持,用户单位、研制单位和其他单位的专家学者参加
讨论的结果有两种可能
一种是同意或基本同意报告中的结论,或立即执行,或修改目标、追加资源和等待条件,或取消研制项目。
另一种是对报告持不同意见,对某些问题的判断有不同看法。如果不同点不影响整个问题的结论,那么可以把问题留待详细调查时解决,项目可以照常进行;如果影响整个问题的结论,那就要回过头去,重新进行调查分析,当然这时的调查就应着重于不同意见的问题上。
3.3 详细调查
3.3.1 详细调查目的
详细调查目的在于完整掌握现行系统现状,发现问题和薄弱环节,收集资料, 为下一步的系统化分析和提出新系统逻辑设计做准备
3.3.2 详细调查范围
① 组织机构和功能业务 ② 组织目标和发展战略 ③ 工艺流程和产品构成 ④ 数据与数据流 ⑤ 业务流程与工作形式 ⑥ 管理方式和具体业务的管理方法 ⑦ 决策方式和决策过程 ⑧ 可用资源和限制条件 ⑨ 现存问题和改进意见
3.3.3 详细调查原则
自顶向下全面展开 用户参与 分析系统有无改进的可能性 工程化的工作方式 全面与重点相结合 主动沟通和友善的工作方式
3.3.4 详细调查方法
1.收集资料 2.发调查表 3.开调查会 4.个别访问 5.参加业务实践
3.3.5 详细调查的内容
详细调查内容
管理业务调查
组织结构调查、管理功能调查、管理业务流程调查
数据流程调查
调查中应注意问题
调查前要做好计划和用户培训 调查要从系统的现状出发,避免先入为主 调查与分析整理相结合 规范调查图表
第4章 结构化分析建模
4.1 系统分析
系统分析目的与任务
系统分析目的
通过调研和分析,弄清楚新系统将要做什么,并建立新系统的逻辑模型
系统分析任务
了解用户需求
详细了解每个业务过程和业务活动的工作流程及信息处理流程,理解用户对信息系统的需求
确定系统逻辑模型
新系统的逻辑模型由一系列图表和文字组成,在逻辑上描述新系统的目标和具有的各种功能
系统分析阶段的任务是定义或制定将来新的系统应该“做什么”(逻辑模型),暂且不涉及“怎么做”(物理模型)
简单的说,系统分析的工作可以概括为:“理解”和“表达”
系统分析的依据
“来源于原系统,高于原系统”
系统分析员要在信息系统总体规划的基础上,与用户密切配合,用系统的思想和方法,对企业的业务活动进行全面的调查分析,详细掌握有关的工作流程,收集票据、账单、报表等资料,分析现行系统的局限性和不足之处,找出制约现行系统的“瓶颈”,确定新系统的逻辑功能
系统分析的难点
环境的不断变化
对问题空间的理解
人与人之间的沟通
系统分析员的作用
是用户和技术人员之间的桥梁和“翻译” 是新系统的总体设计师 是系统开发技术人员的领导者和组织者
系统分析员的素质
信息技术方面、管理科学方面
系统分析工具
① 流程视图。从活动的逻辑顺序和时间顺序的角度来分析系统,如流程图、顺序图、面向岗位的过程图等。 ② 功能视图。从基本功能的相关性和相似性的角度来分析系统,如功能模块图、数据流程图、用例图等。 ③对象视图。从对象基本处理要素的角度来分析系统,如状态转换图、类图、协作图等。 ④ 任务/岗位视图。从活动的岗位和人员分配的角度来分析系统,如面向岗位的信息流图、岗位功能图、工作对象图等。
结构化系统分析工具
业务流程图、数据流程图、数据字典、结构化语言、判定树、判定表、数据查询图(数据立即存取图)、数据存储规范化
系统分析的原则
面向用户的原则
逻辑设计与物理设计分开的原则
结构化分析的原则(“自顶向下”)
结构化分析的基本思想
以抽象和分解为手段,对系统进行“自顶向下”的逐层分解、逐步细分、逐步求精,从而达到易于理解的目的
抽象是把复杂的处理内容隐蔽起来
分解是把一个复杂问题分割成若干个较小、较易解决的问题,然后分别处理
结构化系统分析采用介于形式语言和自然语言之间的描述方式,通过一套分层次的数据流程图,辅以数据字典、处理逻辑小说明等工具来描述系统,结构化建模的主要工作也就是构建系统数据流程图
通过详细调查,进行组织结构分析、业务流程分析、数据流程分析,构造原系统的逻辑模型;在此基础上补充或更新数据流程图,完成新系统的建模工作
结构化系统分析的基本内容
组织结构分析 管理功能分析 业务流程分析 数据流程分析 数据查询分析 数据存储规范化分析
4.2 组织结构分析
4.2.1 组织结构分析
组织结构是一个组织内部部门的划分及其相互之间的关系,直接影响信息的传递
组织结构分析的主要内容
组织内部的部门划分与领导关系 信息资料的传递关系 物资流动关系与资金流动关系 各级组织存在的问题以及对新系统的要求
组织结构分析的工具
组织结构图
4.2.2 管理功能分析
管理功能图
4.3 业务流程分析
4.3.1 业务流程分析概述
调查管理业务流程应顺着系统信息流动的过程逐步地进行,内容包括:各环节的处理业务、信息来源、处理方法、计算方法、信息流向、提供信息的时间和形态(报告、单据、屏幕显示等)
业务流程分析工具
业务流程图、表格分配图
业务流程分析方法
自顶向下的方法
画出高层管理的业务流程图
再对每一个功能描述部分进行分解,画出详细的业务流程图
业务流程分析目的
分析原有系统中存在的问题是为了在新系统建设中予以克服或改进
系统中存在的问题可能是管理思想和方法落后,业务流程不尽合理,也可能是因为计算机信息系统的建设为优化原业务流程提供的新的可能性,这时,就需要在对现有业务流程进行分析的基础上进行业务流程重组,产生新的更为合理的业务流程
业务流程分析内容
原有流程的分析
分析原有的业务流程的各处理过程是否具有存在的价值,其中哪些过程可以删除或合并,原有业务流程中哪些过程不尽合理,可以进行改进或优化
业务流程的优化
原有业务流程中哪些过程存在冗余信息处理,可以按计算机信息处理的要求进行优化,流程的优化可以带来什么好处
确定新的业务流程
画出新系统的业务流程图
确定新系统的人机界面
4.3.2 管理业务流程图
管理业务流程图(TFD),它是用一些规定的符号及连线来表示某个具体业务处理过程的图表,即描述系统内各单位、人员之间业务关系、作业顺序和管理信息流向的图表,通常简称为业务流程图
利用业务流程图可以帮助分析人员了解原业务流程并找出业务流程中的不合理流向,也是管理人员对业务流程的再认识
业务流程图的绘制是按照业务的实际处理步骤和过程绘制的
业务流程图基本符号
存取款业务流程图
本教材使用的4种业务流程图的基本图形符号:内部实体、外部实体、业务流、单据、报表及账目
4.3.3 表格分配图
表格分配图是表明报告复制的份数,以及报告或单据都与哪些部门发生业务联系的图表工具
组成
业务处理、单据报表及账目、信息流、存档
4.4 数据流程分析
4.4.1 数据流程分析概述
数据流程分析把数据在组织(或原系统)内部的流动情况抽象地独立出来,舍去了具体的组织机构、信息载体、处理工作、物资、材料等,单从数据流动过程来考查实际业务的数据处理模式
数据流程指数据在系统中产生、传输、加工处理、使用、存储的过程。
数据流程分析的目的
数据流程分析的目的是要发现和解决数据流通中的问题。这些问题包括:数据流程不畅,前后数据不匹配,数据处理过程不合理等等。
数据流程分析的内容
原有流程的分析
数据流程的优化
确定新的数据流程
新系统的人机界面
数据流程调查内容
① 收集原系统全部输入单据(如入库单、收据、凭证)、输出报表和数据存储介质(如账本、清单)的典型格式。
② 弄清各环节上的处理方法和计算方法
③ 在上述各种单据、报表、账本的典型样品上或用附页注明制作单位、报送单位、存放地点、发生频度(如每月制作几张)、发生的高峰时间及发生量等。
④ 在上述各种单据、报表、账册的典型样品上注明各项数据的类型(数字、字符)、长度、取值范围(指最大值和最小值)
4.4.2 数据流程图的构成
数据流程图定义
数据流程图(DFD)是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况
数据流程图具有抽象性和概括性
抽象性表现在它完全舍去了具体的物质,只剩下数据的流动、加工处理和存储
概括性表现在它可以把信息中的各种不同业务处理过程联系起来(包括手工操作),形成一个整体
数据流程图符号
四个构成要素
外部实体(外部项)
在系统以外的事物或人,它表达了该系统数据处理的外部来源和去处。(名词)
注:为了避免在数据流程图中出现线条交叉,同一个外部项可以在一张数据流程图中出现若干次
数据流
数据流表示流动着的数据,是处理功能的输入和输出。数据流可以是一项数据,也可以是一组数据(如订货单)
在数据流的上方写上数据流的名称。数据流的命名应该能够反映其组成。(名词)
注意
数据流至少有一端和处理相连
数据流名称的省略
一般来说,只有和数据存储相连的数据流才可以省略名称
数据处理
处理功能(处理逻辑、处理、加工):表达对数据处理的逻辑功能,也就是把输入数据流进行一定的变换处理,产生输出数据流。
处理的命名,应该能反映处理的主要内容,一般用一个动词加一个做宾语的名词来表示,不能用一个名词或一个动词来表示
在数据流程图中,处理逻辑必须有输入/输出的数据流,可有若干个输入/输出的数据流,但不能只有输入或输出的数据流
数据存储
数据存储指通过数据文件、文件夹存储数据。这里指的是数据存储的逻辑描述,与保存数据的物理地点和物理介质无关。(名词)
为了避免数据流程图中线条的交叉,同一个数据存储可以出现若干次
流入/流出数据存储的数据流的含义
4.4.3 数据流程图的绘制
数据流程图的绘制原则
自顶向下,由外向里,逐层细化,完善求精
父子图的平衡
一般来说,父图中某个处理的输入输出数据流应该同相应的子图的所有输入输出数据流相同
数据存储的出现时机
一般来说当数据存储和两个(以上)处理有联系时(处于不同处理的交界面)或者数据存储特别重要才需要画出
出错和例外情况的处理
数据流程图绘制主要步骤
1、确定所开发系统的外部实体,即系统的数据来源和去处。
2、确定整个系统的输入和输出数据流,把系统作为一个加工环节。
3、确定系统的主要信息处理功能,按此将整个系统分解成几个加工环节(子系统)。确定每个加工的输入数据流与输出数据流以及与这些加工有关的数据存储;根据各加工环节和数据存储环节的输出数据与输入数据的关系,将各加工环节、数据存储环节以及外部项用数据流连接起来;为各数据流、加工环节、数据存储和外部实体命名、编号。这样就形成了所开发系统的第一层数据流程图的草图。
4、根据自顶向下、逐层分解的原则,对上层图中全部或部分加工环节进行分解。将需要分解的上一层图的某个加工环节(子系统)分解成具有明确逻辑功能的若干个加工环节,按步骤 3 的做法,对上层需分解的加工环节再画出分解后的数据流程草图。一般情况下,下层一张数据流程图对应于上层数据流程图中的一个加工环节。
5、重复步骤4,直到逐层分解结束。分解结束的标志是:对于每一个最低层的加工(即在该层数据流程图中不再做进一步分解的加工),其逻辑功能已足够简单、明确和具体,可以用一张A4 规格的纸写出清晰的说明即可。
6、对草图进行检查和合理布局。主要检查分解是否恰当、彻底,DFD中各成分是否有遗漏、重复、冲突之处,各层DFD及同层DFD之间关系是否正确,命名、编号是否确切、合理等,对错误与不当之处进行修改。
7、和用户进行交流。在用户完全理解数据流程图内容的基础上征求用户的意见。和用户讨论的主要问题是:系统逻辑功能的设置和描述是否合理,能否满足用户的信息需求,数据流和数据存储的内容以及数据来源和去处(外部项)是否符合实际,描述是否准确、合理;用户在了解数据流程图的全部内容后对系统功能有什么进一步的意见与要求。系统分析人员根据与用户讨论的结果对数据流程图的草图进行修订。
8、用计算机或其他制图、编辑工具画出正规的数据流程图。
9、将正规的数据流程图提交系统分析负责人复审。若有修改之处,则组织人员修改,否则,通过复审,数据流程图绘制过程结束。
4.4.4 检查DFD的原则
1. 减小复杂性(分解的程度)
Miller数:7±2的经验法则
2. 保证一致性和平衡性
应避免的一致性错误
一个过程和它的过程分解在数据流内容中有差别
有数据流出但没有相应的数据流入
有数据流入但没有相应的数据流出。
3. 侧重逻辑处理模型
DFD中避免有关具体实现的描述,其中包括
特定的技术过程 特定参与者的过程名称 特定的技术或参与者过程顺序
4.4.5 画数据流程图应注意的问题
1、命名
(1)名称要反映被命名成分的真实和全部的意义,不能只反映部分内容。
(2)名称要意义明确,易理解,无歧义,不会造成错觉或混乱
(3)加工的名称一般以动词+宾语,或名词性定语+动名词为宜,以明确反映信息处理的逻辑功能,其他成分的名称以名词,或者名词性定语+名词为宜
(4)避免使用不反映实际内容的空洞词汇,如数据、信息、优化、计算、处理等词条
(5)进出数据存储环节的数据流如内容和存储的数据相同,可采用同一名称,或不命名
2、编号
按逐层分解的原则,父图的加工编号与子图的加工编号要有一致性,一般子图的编号是父图上对应加工编号的扩充;数据流与数据存储环节也要进行编号以便于编写、分析与维护;外部项较少时(7个以下)可以不编号,外部项较多时可以编号,以便于分析与维护。 可在外部项编号前加 S 标记,在数据流编号前加F标记,在加工编号前加 P 标记,在数据存储编号前加 D 标记。
3、画图规则
绘制数据流图一般遵循从左到右,从上到下的原则
左侧的外部项,通常是系统主要的数据输入来源
接收系统数据的外部项一般画在数据流的右侧
4、数据流程图与程序流程图的区别
数据流程图
完全不反映时间的顺序,只反映数据的流向、自然的逻辑过程和必要的逻辑数据存储,不反映起始点也不反映终止点。
程序流程图
有严格的时间顺序,有起始点和终止点,也反映循环过程
5、数据流程图的检验
(1)与业务流程图的一致性
(2)各个元素的检查
• 数据流必须通过加工
• 加工必须有输入、输出
• 数据存储必须有输入、输出
• 尽量避免线条交叉
6、反复修改,随时准备重画
7、数据流图的局限性
(1)难以在数据流图上标识出数据流、数据存储和加工以及外部项的具体内容,如数据流的组成元素、数据存储的数据结构、存取要求、数据量、加工的处理过程与算法等。
(2)不能反映系统中的决策与控制过程
(3)难以对系统中人机交互过程以及信息的反馈与循环处理进行描述
因此,还要辅以其他工具,比如数据字典、结构化语言、判断树、决策表等
4.5 数据字典
数据字典概述
为什么要有数据字典
数据流程图抽象地描述了系统数据处理的概貌,描述了系统的分解,即系统由哪些部分组成,各部分之间的联系。
但它不能说明系统中各成分是什么,也不能表达系统中各个处理(加工)的详细内容,这就要用数据字典
定义
是在新系统数据流程图的基础上,进一步定义和描述所有数据的工具,包括对一切动态数据(数据流)和静态数据(数据存储)的数据结构和相互关系的说明,是数据分析和数据管理的重要工具,是系统设计阶段进行数据库(文件)设计的参考依据
内容
主要是对数据流程图中的数据项、数据结构、数据流、处理逻辑、数据存储和外部实体等六个方面进行具体的定义,每一方面称为一个条目
4.5.1 数据项
数据项又称数据元素,是数据的最小单位。分析数据特性应从静态和动态两个方面去进行。在数据字典中,仅定义数据的静态特性
4.5.2 数据结构
数据结构描述某些数据项之间的关系
一个数据结构可以由若干个数据项组成;也可以由若干个数据结构组成,还可以由若干个数据项和数据结构组成
4.5.3 数据流
数据流由一个或一组固定的数据项组成
定义数据流时,不仅要说明数据流的名称、组成等,还应指明它的来源、去向和数据流量等
4.5.4 数据存储
数据存储在数据字典中只描述数据的逻辑存储结构,而不涉及它的物理组织。它包括:数据存储编号、数据存储名称、简述、数据存储组成、关键字、相关联的处理
4.5.5 数据处理(加工)
处理逻辑的定义仅对数据流图中最底层的处理逻辑加以说明。它包括: 处理逻辑名称、处理逻辑编号、简述、输入的数据流 、处理、输出的数据流、处理频率
4.5.6 外部实体
数据字典的作用与管理
数据字典是数据流程图的辅助资料,对数据流程图起注解作用
数据字典是所有开发人员共同的依据
在整个系统的开发过程中,包括系统交付运行使用后的维护阶段,一直在充实和修改这部数据字典,始终保持它的一致性和完整性。
数据字典可以用人工建立卡片来管理,也可以存储在计算机中用一个数据字典管理软件来管理
4.6 数据存储设计技术
4.6.1 数据管理概述
数据管理的发展
人工管理阶段(20世纪50年代中期以前)
文件管理阶段(20世纪50年代后期--60年代中期)
人们关注的是软件功能的设计,因此程序设计处于主导地位,数据服从于程序设计
数据库管理阶段(20世纪60年代后期)
首先关心的是数据的组织与结构设计,数据库的设计处于核心的地位。
数据库管理特点
数据共享性高、冗余少
具有较高的数据和程序的独立性
统一的数据控制功能
数据库设计主要内容
信息是对客观世界各种事物特征的反映,而数据则是表示信息的一种符号。从客观事物到信息,再到数据,是人们对现实世界的认识和描述过程,这里经过了三个世界
数据模型
数据库系统中用于提供信息表示和操作手段的形式构架。有三种:层次、网状、关系
数据库的三级模式结构
4.6.2 概念模型
术语
实体:客观存在并可相互区分的事物。 属性:实体所具有的某一特性。 码:唯一标识实体的属性集。 域:属性的取值范围。 实体型:用实体名及属性名来抽象同类实体。 实体集:同型实体的集合。
实体间的联系
两个实体集之间的联系: 1:1(一对一) 1:n(一对多) m:n(多对多)
E_R(实体_联系)图
4.6.3 关系模型
关系的数学定义
关系模型的术语
一张二维表就是一个“关系”
元组 r(记录) 属性 U(字段) 码 (关键字) 域 D 分量 关系模式
关系模型的特点
关系模型的概念单一:实体用关系表示,实体与实体之间的联系也用关系来表示
在关系模型中,用户对数据的检索和操作实际上是从原二维表中得到一个子集,该子集仍是一个二维表,因而易于理解,操作直接、方便
关系的三类完整性约束
实体完整性
关系的主码中的属性值不能为空值
意义:关系对应到现实世界中的实体集,元组对应到实体,实体是相互可区分的,通过主码来唯一标识,若主码为空,则出现不可标识的实体
参照完整性
参照完整性约束:如果关系R2的外部码Fk与关系R1的主码Pk相对应,则R2中的每一个元组的Fk值或者等于R1 中某个元组的Pk 值,或者为空值
意义:如果关系R2的某个元组t2参照了关系R1的某个元组t1,则t1必须存在。
用户自定义的完整性
关系运算
传统的集合运算
并(∪): R∪S 差(-): R-S 交(∩): R∩S 广义笛卡尔积(×)
专门的关系运算
选择、连接、投影、自然连接
关系规范化
规范化理论认为,关系数据库中的每一个关系都要满足一定的规范。根据满足规范的条件不同,可以分为五个等级,一般应用中满足3NF即可
1NF(一范式)
规范化(元组中的每一个分量必须不可再分)
2NF(二范式)
R ∈1NF,且每一非主属性完全函数依赖于码,则 R ∈2NF
问题:数据冗余、插入异常、删除异常、修改复杂
3NF(三范式)
R ∈2NF,且不存在非主属性传递函数依赖于码,则 R ∈3NF
问题:数据冗余、插入异常、删除异常、修改复杂
函数依赖
设R(U)是属性集U上的关系模式,X、Y是U的子集,若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等而在Y上的属性值不等,则称X函数确定Y,或Y函数依赖于X
平凡函数依赖: X→Y 且Y是X的子集
非平凡函数依赖: X→Y 且Y不是X的子集
X←→Y: X→Y且Y→X
完全函数依赖
在R(U)中,如果X→Y,且对于X的任何一个真子集X’,都有X’不能函数确定Y,则 称Y对X完全函数依赖。
传递函数依赖
在R(U)中,如果X→Y(Y不是X子集),Y不函数确定X, Y→Z,则称Z对X传递函数依赖
码
候选码
设K为R(U,F)中的属性(组),若K完全函数确定U,则K为R的候选码
主码
主属性
包含在任何一个候选码中的属性
非主属性
不包含在任何一个候选码中的属性
4.6.4 从E-R图导出关系数据模式
每一个实体(事物)对应一张二维表,给出全部属性,并确定出主关键字
实体与实体之间的联系分以下三种情况处理
对于1:1的联系,将任一表的主关键字和联系的属性放入另一表中
对于1:n的联系,将“1”方表的主关键字和联系的属性放入“n”方表中
对于m:n的联系,需单独建立一张表,这张表至少包含两表的主关键字和联系的属性。这样就将多对多的关系变成了一对多(或多对一)的关系
4.7 表达处理逻辑的工具
概述
处理功能表达存在的问题
界限不明确
逻辑条件次序不明确
意义模糊的形容词或副词
处理功能表达的工具
结构化(式)语言
判断树
判断表
数据流程图+数据字典+表达处理功能的工具,可以完整地描述系统逻辑模型
数据流程图、数据字典和处理逻辑说明三者配合描述用户需求是比较自然也比较合理的
4.7.1 结构化语言
各语言区别
程序设计语言的优点是严格精确,但不易被用户接受
自然语言的优点是容易理解,但不够精确,易于产生二义性
结构化语言是介于自然语言和程序设计语言之间的语言
结构式语言的组成
程序设计语言的框架(即允许三种基本结构:顺序结构、分支结构和循环结构)
自然语言的词汇(如动词和名词等)
结构式语言使用的语句
简单陈述句
陈述句是指要做什么事情
它至少包括一个动词,明确地指出要执行的功能
至少包括一个名词作为宾语,表示动作的对象
要尽量简短。不要使用形容词和副词
判断句
如果 条件1(成立) 则 动作A 否则(条件1不成立) 动作B
循环句
当 条件成立 做 动作A DO WHEN 条件成立 动作A
复合语句
上述三种语句可以嵌套使用
使用结构式语言的原则
所有的语句必须力求精练,具有较高的可读性,使人容易理解。即做到言简意赅,清晰准确,不要使用修饰或漫谈的形式
陈述句中必须有一个动词,明确地表达执行的动作,但不要使用“做”、“理”、“控制”之类的动词。描述功能中避免使用界限不明确的词汇、含义模糊的词或逻辑次序不清晰的现象存在。
陈述句中必须包括一个宾语,以明确地指出要做的事情。所有的名词必须在数据字典中已经定义
不要使用形容词和副词
在同一个系统中不要使用各种意义相同的动词,只确定其中的一个动词。如:“修正”、“修改”和“改变”意义相似,只使用“修改”。
判断句中的“如果”和“否则”要成对出现,每一层次要对齐
4.7.2 判定树(决策树)
如果某个动作的执行不是只依赖于一个而是多个条件的话,那么用结构式语言表示动作则需要多层的判断嵌套结构,从而使得这个逻辑表示不清晰
判断树(决策树)是用一种树型图形方式来表示多个条件、多个取值所应采取的动作
组成
在判断树的左边是树根,它是决策序列的起点
右边是各个分支,即每一个条件的取值状态
最右侧(树梢的右侧)为应该采取的策略(即动作)
优缺点
优点:清晰、直观
缺点:当系统本身太复杂时,会存在许多步骤和组合条件的序列,使得分支的数目太大和通过的路径太多,不容易清楚地表达出整个判别过程
4.7.3 判定表(决策表)
判定表是一种表格状的决策分析工具,它可以在条件复杂的情况下,很直观的表达出具体条件、决策规则和应当采取的行动之间的逻辑关系。当需要描述的加工由一组操作组成,是否执行某些操作又取决于一组条件时,用判定表写加工逻辑将比较合适
处理逻辑工具适用范围
判定树适用于10~15种行动的一般复杂程度的决策
对于一个复杂的判断逻辑,条件很多,组合也很多,相应的动作有很多个,使用判断表较好
如果一个判断包含了一般顺序执行的动作或循环执行的动作,则最好用结构化语言表达
4.9 系统分析报告
4.9.1 系统分析报告的作用
①是系统分析员的工作成果; ②是信息系统总体设计说明书; ③是系统设计阶段工作的依据; ④是与用户交流的工具。
4.9.2 系统分析报告的内容
1. 组织情况简述 2. 系统目标和开发的可行性 3. 现行系统运行状况 4. 新系统的逻辑方案
4.9.3 新系统逻辑模型的建立
①对系统业务流程分析整理的结果。 ②对数据及数据流程分析整理的结果。 ③子系统划分的结果。 ④各个具体的业务处理过程,以及根据实际情况应建立的管理模式和管理方法。
新系统管理模型
1.综合计划模型 2.生产计划管理模型 3.库存管理模型 4.财务成本管理模型 5.统计分析模型 6.预测模型
4.9.4 需求规格说明书模板
当需求调查、分析工作告一段落时,需要将这些需求进行规格化描述,整理成文,即软件需求规格说明书,也就是SRS(Software Requirement Specification)。
4.9.5 系统分析报告的审议
审议应由研制人员、企业领导、管理人员、局外系统分析专家共同进行
第5章 信息系统设计
5.1 系统设计概述
系统设计的目的
保证实现逻辑模型功能的基础上,尽可能提高目标系统的性能。将分析阶段所获得的系统逻辑模型,转换成一个具体的计算机实现方案的物理模型,包括计算机物理系统配置方案报告和一份系统设计说明书。
系统设计的质量评价指标
(1)可靠性
• 硬件的可靠性 • 软件的可靠性 • 运行环境的可靠性 • 检、纠错的能力 • 容忍错误的能力
(2)可修改性(可维护性、可变更性)
可修改性又称可维护性或可变更性,指修改或维护系统的难易程度。
导致修改的实质性原因
客观数据的变化和功能需求的变化 硬件的改进、操作系统和程序语言的出现和升级、计算机网络技术和通信技术的发展 测试阶段发现的问题和故障 运行阶段发现的错误
(3)运行效率
处理能力
单位时间里能够处理的事务
运行时间
在批处理状态下,系统运行一次所需要的时间
响应时间
在联机处理状态下,向计算机发出一项请求,到计算机给出回答所用的时间
(4)通用性
(5)工作质量(处理数据的正确性、输出信息的易懂性、系统操作的方便性)
系统设计原则
系统性
从整个系统的角度考虑,如系统的代码要统一,设计规范要标准,对系统的数据采集要做到数出一处、全局共享等
灵活性
要求系统具有很强的环境适应性,如尽量采用模块化结构,提高各模块的独立性
可靠性
如安全保密性、检错、纠错能力等
经济性
技术上的先进实用,尽量避免不必要的复杂化
管理可接受的原则
考虑用户业务类型、管理基础、人员素质、人机界面友好性、系统操作难易程度等
结构化设计的原理
结构化设计方法的基本思想
使系统模块化,即把一个系统自上而下逐步分解为若干个彼此独立而又有一定联系的组成部分(模块)。 对于任何一个系统都可以按功能逐步由上而下,由抽象到具体,逐层将其分解为一个多层次的,具有相对独立功能模块组成的系统。 是面向数据流的设计方法,重点是确定软件的结构,其目的是提出满足软件需求的最佳软件结构。
模块化的原因
模块化可以降低解决问题的复杂度,从而降低系统开发的工作量
模块化的优点
(1)减少复杂性。模块化使系统结构清晰,容易设计也容易阅读和理解。
(2)程序错误通常局限在有关的模块及它们之间的接口中,模块化能使系统容易测试和调试,从而有助于提高系统的可靠性。
(3)系统的变动往往只涉及少数几个模块,所以模块化能够提高系统的可修改性
(4)模块化使得一个复杂的大型程序可以由许多程序员分工编写,有助于系统开发工程的组织管理。
(5)模块化还有利于提高程序代码的可重用性
结构化设计的特点
• 对一个复杂系统,采用“自顶向下,逐步求精”的方法予以化简 • 有一组设计原则和方法(数据流程图模块结构图) • 采用图形表达工具(模块结构图) • 有一组评价标准和质量优化技术
系统设计的内容和步骤
① 系统总体结构设计 ② 处理流程设计 ③ 代码设计 ④ 人机界面设计 ⑤ 输出设计 ⑥ 输入设计 ⑦ 数据库设计 ⑧安全保密设计 ⑨ 系统物理配置方案设计 ⑩ 编写系统设计说明书
5.2 系统结构设计
5.2.1 模块结构图
模块结构图:描述系统内各个组成部分的结构及其相互关系的图(Structure Chart, SC)
模块结构图的组成
模块
模块是可以组合、分解和更换的单元,是组成系统、易于处理的基本单位。系统中的任何一个处理功能都可看成一个模块,也可以理解为用一个名字就可以调用的一个或一组程序。
模块应具备以下四个要素
输入和输出
模块的输入来源和输出去向都是同一个调用者,一个模块从调用者取得输入,加工后再把输出返回调用者
功能
模块把输入转换成输出所做的工作
内部数据
仅供该模块本身引用的数据
程序代码
用来实现模块功能的程序
调用
直接调用
在模块结构图中,用连接两个模块的箭头表示调用(直接调用)。箭头总是由调用模块指向被调用模块,但是应该理解成被调用模块执行后又返回到调用模块
选择调用
一个模块是否调用一个从属模块,取决于调用模块内部的判断条件,则该调用称为模块间的选择调用,用菱形符号表示
循环调用
如果一个模块通过其内部的循环功能循环调用一个或多个从属模块,则称为循环调用,用弧形箭头表示
一个模块只能与其上下级模块发生直接联系,不能越级或与它的同级模块发生直接联系
通讯
数据信息
当一个模块调用另一个模块时,调用模块可以把数据传送到被调用模块处理,而被调用模块又可以将处理的结果送回调用模块
控制信息
为了指导程序下一步的执行,模块间有时还必须传送某些控制信息。例如,数据输入完成后给出的结束标志,文件读到末尾产生的文件结束标志等
模块结构图的特点
图形化,可读性强
可以表达系统的总体功能结构,以及各部分之间的联结关系
能够把整个设计任务分散开来,交给若干个设计人员进行不同部分的设计工作,既便于管理,又能够加快设计进度,提高工作效率。
结构图与数据流程图的区别
数据流程图
反映的是系统的逻辑模型
是从数据在系统中的流动情况来考虑系统的
模块结构图
描述系统的物理模型及系统功能是怎样逐步完成的
它从功能层次上来考虑系统
每张数据流程图对应模块结构图中某一层次
结构图与程序框图的区别
模块结构图
用于表达系统内各部分的组织结构和相互关系
反映模块的调用和被调用关系,描述模块的外部特性
从空间角度描述系统的层次特性,不反映调用次序、时间、次数等
程序框图
描述了一个模块内部的处理过程,描述模块的内部特性
5.2.2 模块独立性的度量
模块独立性
每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。
模块独立性可以从两个方面来衡量
模块本身的内聚
反映的是模块内部各个成分之间的联系,所以也称块内联系
模块之间的耦合
反映的是一个模块与其他模块之间的联系,所以又称块间联系
模块的独立性越高,则块内联系越强,块间联系越弱,因此必须尽可能得设计出高内聚低耦合的模块。
耦合
耦合是对软件程序结构中各个模块之间相互依赖程度的一种度量。
对于耦合应该采取这样的设计原则:尽量使用数据耦合,减少控制耦合,限制外部耦合和公共耦合,禁止内容耦合。(耦合度越小越好)
内聚
内聚是信息隐蔽和局部化概念的自然扩展,它标志一个模块内部各成分彼此结合的紧密程度。
对于内聚应该采取这样的设计原则:限制使用偶然性内聚、逻辑性内聚、时间性内聚,少用过程性内聚和通信性内聚,提倡使用顺序性内聚和功能性内聚。(内聚度越大越好)
5.2.3 启发式规则
1. 通过模块分解或合并提高模块独立性
2. 模块规模应该适中
模块的规模不可过大,也不可过小。
规模过大,可能说明系统分解的不充分,模块的聚合降低
模块过小,可能降低模块的独立性,造成系统接口的复杂
一般来说,一个模块的规模最好是限制在一页之内,模块中的语句数最好保持在50~150条语句左右
3. 深度、宽度、扇出和扇入都应适当
深度是指系统结构中控制的层数,它能够粗略地反映出软件系统的规模和复杂程度;
宽度是指系统结构内同一层次上模块个数的最大值,通常宽度越大的系统越复杂。
模块的扇出
模块的扇出表达了一个模块对它的直属下级模块的控制范围。
模块的扇出系数是指其直属下级模块的个数
模块的扇出原则
模块的扇出原则:扇出系数要适当
一个系统的平均扇出系数通常是3至4,上限一般为5~9
模块的扇出过大,控制与协调困难,模块的聚合可能较低
模块的扇出过小,说明上下级模块或本身过大,应进行分解
模块的扇入
模块的扇入表达了一个模块与其直属上级模块的关系
模块的扇入系数是指其直接上级模块的个数
模块的扇入原则
模块的扇入原则:扇入系数应尽量大— 在不影响独立性的前提下
模块的扇入系数越大,表明共享该模块的上级模块数目越多,通用性越强,该模块的可重用性(复用性)越好。在系统维护时能够减少对同一功能的修改
片面追求高扇入可能使得模块的独立性降低
模块的扇出扇入总原则
• 高层模块的扇出系数较高 • 中层模块的扇出系数较少 •低层模块有较高的扇入系数
4. 模块的作用范围应在控制范围之内
控制范围
一个模块的控制范围,是指由它可以调用的所有下层模块(直接和间接)和其本身所组成的集合。
作用范围
一个模块的作用范围,是指由该模块中包含的判断处理所影响到的所有模块的集合,又称模块的影响范围。
系统结构设计遵循的原则
对于具有判断功能的模块,其作用范围应当是它的控制范围的一个子集。 判断所在的模块尽可能接近其作用范围。
作用范围超出控制范围的改进
• 在系统结构中向上移动判断点的位置,以扩大模块的控制范围 • 将具有判断功能的模块合并到它的上层调用模块中,从而提高判断点位置 • 在结构层次中,将受到某判断模块影响的模块下移,使其处于判断模块的控制范围之内
5. 力争降低模块接口的复杂程度
复杂的模块接口是导致系统出现错误的主要原因之一,降低模块的接口复杂度,可以提高系统的可读性,减少出现错误的可能性,并有利于系统的测试和维护。
6. 设计单入口单出口的模块
不要使模块间出现内容耦合,设计出的每一个模块都应该只有一个入口一个出口,不要随便使用GOTO语句。当控制流从顶部进入模块并且从底部退出来时,系统是比较容易理解的和容易维护的。
7. 模块功能应该可以预测
5.2.4 模块分解的原则和步骤
合理的子系统或模块划分,应该是内部联系强,子系统或模块间尽可能独立,接口明确、简单,尽量适应用户的组织体系,有适当的共用性。
模块分解的具体步骤
①根据顶层数据流程图的分解情况,将目标系统分解成若干子系统; ②将子系统逐步分解为若干按层次分布的模块; ③按照模块分解的基本原则,优化模块分解,调整模块调用关系; ④绘制系统层次化模块结构图。
5.2.5 结构化总体设计步骤
面向数据流的结构化设计方法定义了一些不同的“映射”,利用这些映射可以把数据流图变换成系统模块结构图
结构化设计的工作过程可分为两步
第一步根据数据流程图导出系统的初始结构; 第二步对初始结构图进行优化
5.2.6 导出初始结构图的方法
数据流程图的种类
变换型结构DFD
线性结构,分为输入、处理和输出三部分
事务型结构DFD
(1)接受一项事务 (2)将某一处理的输出分解为一串平行的数据流 (3)选择后面的某个处理予以执行
从数据流图导出初始结构图的步骤
① 对DFD图进行复审,必要时修改或细化; ② 根据DFD图确定系统结构属于变换型还是事务型; ③ 把DFD图映射成SC图; ④ 改进SC图,使设计更加合理。
变换分析的步骤
① 分析DFD,确定中心变换、输入和输出
确定中心变换和输入/输出
逻辑输入
从物理输入端开始,沿着数据流的移动方向进行跟踪,直到数据流不再被看作系统的输入为止
逻辑输出
从物理输出端开始,逆着数据流的移动方向进行跟踪,直到数据流不能再被看作系统输出为止。
介于逻辑输入和逻辑输出之间的加工就是中心变换
② 设计上层模块
设计顶层模块和第一层模块
系统的主处理就是系统的顶层模块
第一层模块按输入、变换、输出等分支来处理
• 为每一个逻辑输入设计一个输入模块,其功能是为顶层模块提供相应的输入数据。 • 为每一个逻辑输出设计一个输出模块,它的功能是输出顶层模块的输出信息。 • 为主处理设计一个变换模块,它的功能是将逻辑输入变成逻辑输出。
③ 设计输入、输出和变换中心的下层模块
设计中、下层模块——输入模块的设计
对每一个输入模块,设计两个下级模块: 一个输入模块:获得前一级输入 一个变换模块:将前一级输入变换成后一级输入
对每一个输出模块,设计两个下级模块: 一个变换模块:将前一级输出变换成后一级输出 一个输出模块:输出变换后的输出
事务分析的步骤
① 在DFD上确定事务中心、接收部分和发送部分。 ② 画出初始SC框架,把DFD上的三部分分别映射为事务控制模块、接收模块和动作发送模块。 ③ 分解细化接收分支和发送分支,完成初始SC。
混合结构分析
一个大型系统中往往是变换型和事务型的混合结构。为了导出它们的初始结构图,必须同时采用变换分析和事务分析两种方法。对于一般情况,结构化设计的基本思路是,以变换分析为主,事务分析为辅,导出初始设计,即系统的总体框架是变换型,其变换中心的下层分解则基于事务分析。对于复杂系统可能有若干变换中心,把变换分析和事务分析应用到同一个数据流图的不同部分,由此得到的子结构形成“构件”,可以利用它们构造完整的系统结构
系统设计的优化
检查初始设计方案
系统的结构:系统的深度与宽度,模块的扇入与扇出,以及模块的控制范围和影响范围等是否存在不合理的现象
模块之间的耦合程度:模块之间联系方式如何,是否满足低耦合的要求,模块的接口是否清晰、简单以及是否是单入口、单出口等
模块内部的聚合度:每一个模块内部的功能应该清楚,内部的聚合度应尽可能大。另外还要检查输入输出的表达是否明确
系统的性能:系统是否具有较强的可读性、可维护性、可修改性以及可靠性等,系统与用户之间的接口是否简单、明确,易于理解,系统能否实现,能否正确地工作
5.3 处理流程设计
5.3.1 系统流程设计
概述
处理流程设计包括系统流程设计和模块处理流程设计
系统流程设计主要是通过系统处理流程图来描述数据在计算机存储介质间的流动、转换和存储情况,以便为模块的处理流程设计提供详细的输入输出依据
系统流程图(信息系统流程图)含义
表达了各功能之间的数据传送关系
绘制系统流程图的步骤
先为数据流程图中的每个处理功能画出数据关系图
然后,把各个处理功能的数据关系图综合起来,形成整个系统的数据关系图,即信息系统流程图
系统流程图的常用符号
5.3.2 模块处理流程设计
概述
模块处理流程设计的内容:描述模块的内部特征,模块功能实现的具体过程
模块处理流程设计由系统设计员完成,作为程序员的工作依据
1. 程序流程图
程序流程图常用符号
结构化程序流程图的五种基本结构
程序流程图的优缺点
优点
比较直观、清晰,使用灵活,便于阅读和掌握
缺点
① 可以随心所欲地画控制流程线的流向,容易造成非结构化的程序结构,编码时如果不加限制地使用GOTO语句,将导致模块多入口、多出口,使系统质量下降; ② 程序流程图本质上不支持逐步求精,它使程序员容易过早地考虑程序的具体控制流程,而忽略了程序的全局结构
为了克服程序流程图的缺陷,要求程序流程图都应由三种基本控制结构顺序组合和完整嵌套而成,不能有相互交叉的情况,这样才是结构化的程序流程图
2. 盒图(N-S图)
结构化控制结构的盒图符号
3. PAD图(问题分析图)
PAD 图的基本符号
4. PDL(过程设计语言)
5.输入/处理/输出图(IPO图)
5.3.3 模块设计说明书
① 模块名称。 ② 模块所属的系统及系统名称。 ③ 输入数据的方式与格式。 ④ 输出信息的方式与格式。 ⑤ 模块处理过程说明。 ⑥ 程序运行环境的说明。
5.4 代码设计
5.4.1 代码及其作用
1.代码的定义
代码是人为确定的用以代表客观事物(实体)名称、属性或状态等的数字、字母等符号
2.作用
便于计算机识别和处理 提高处理速度 节省存储空间 提高数据的标准化程度(一致性、可靠性)
5.4.2 代码设计的原则
唯一性
标准化与通用性
可扩充性
简单性(简洁性)
合理性与适用性(尽量反映编码对象的特征,以便于理解和记忆)
5.4.3 代码的种类
顺序码:用连续数字代表编码对象
助忆码:可以通过联想帮助记忆
区间码
区间码把代码的各个位分成若干区间,每一区间规定不同的含义,码中数字的值和位置都代表一定意义。
类型
多面码(特征组合码)
在码的结构中,为多个属性各规定一个位置,从而表示某一编码对象的不同方面特征
层次码(上下关联区间码)
在码的结构中,为数据项的各个属性各规定一个位置,并使其排列符合一定层次关系
十进位码(十进制码)
与层次码基本相同,所不同的是,在编码结构中采用了小数点和后面的可任意扩充的数字位
5.4.4 代码校验
代码校验的目的:保证代码的正确性
代码校验的方法
代码字典
事先在计算机中建立代码字典,然后将输入的代码与之比较
校验位
即设计代码结构时,在原有代码基础上另外加上一个校验位,使其成为代码的一个组成部分,校验值通过事先规定的数学方法计算出来。当代码输入后,计算机会以同样的数学方法按输入的代码计算出校验值,并将它与输入的校验值进行比较,以证实是否有错。
代码校验位可以发现的错误
识别错误:1/7,0/O,…… 易位错误:12345/13245,…… 双易位错误:12345/13254,…… 随机错误:上述两种或两种以上的错误出现
校验位是代码的一部分
产生校验位的方法(之一):加权取余
① 校验值的生成过程
第一步:对原代码中的每一位乘以一个权数,然后求它们的乘积之和S 设原 N 位代码为:C1 C2 C3…Cn 权因子: P1 P2 P3…Pn 加权和:S=C1×P1+C2×P2+C3×P3+…+Cn×Pn
权因子可任意选取,常用的有
自然数列 1,2,3,4... 摆动数列 1,2,1,2,...或1,3,1,3,... 质数列 2,3,5,7,11,13,... 算术级数列(等差数列)2,5,8,11,... 几何级数列(等比数列)2,4,8,16,32,...
第二步:求余数R
用加权和S除以模数M可得余数R,即 S/M=Q...R (Q为商数)
最后,取码,即选择校验值
余数R直接作为校验值,称为取余法; 或把模数M和余数R之差(即M-R)作为校验值,称为减余法
② 用校验值检查代码的过程
此过程是上述生成过程的逆过程
若采用的是模数与余数之差作为校验位
(原代码与权数乘积之和+校验码)/模=整数 则认为输入是正确的,否则认为输入有错
若采用余数作为校验位
(原代码与权数乘积之和-校验码)/模=整数 则认为输入是正确的,否则认为输入有错
5.4.5 代码设计步骤
① 确定代码对象 ② 确定是否已有标准代码。 ③ 根据代码的使用范围、使用时间和实际情况确定代码的种类和类型。 ④ 考虑代码的检验性能。 ⑤ 填写代码设计书
5.5 输入/输出设计
输入/输出设计概述
输入/输出设计是信息系统与用户的界面,输入/输出设计对用户来说,显得非常重要
它能够为用户建立良好的工作环境,激发 用户努力学习、主动工作的热情; 符合用户习惯,方便用户操作,使目标系统易于为用户所接受; 为用户提供易读易懂的信息形态
在系统设计时,一般先输出设计,再输入设计
系统只有通过输出才能为用户服务; 输出信息是用户最关心的,系统应全面、准确地提供生产或服务部门所需要的信息; 输出决定输入
5.5.1 输出设计
输出设计的任务是使信息系统输出满足用户需求的信息,直接关系到系统的使用效果和系统的成功与否
输出设计的内容
确定输出内容
输出信息使用情况
信息的使用者、使用目的、信息量、输出周期、有效期、保管方法和输出份数
输出信息内容
输出项目、精度、信息形式(文字、数字)
输出格式
报告、表格、图形等
输出设备和介质
设备如:打印机、显示器等;介质如:磁盘、磁带、纸张等
输出设备和输出介质的选择
考虑各种输出介质的不同特性 ·成本、速度、精度、容量、方便性、保存
结合用户对输出信息的要求 ·内容、格式、介质(通用纸、专用纸)
考虑信息的用途 ·需要报送或者长期存档的材料--打印输出 ·以后处理用的数据 --磁带或磁盘 ·只需临时查询--屏幕显示
确定输出格式
主要的输出格式:报告、表格、图形(图标)
确定输出格式的原则:合理性(易于理解)、适用性(满足用户要求)、清晰性(美观)
输出设计评价
能否为用户提供及时、准确、全面的信息服务(如统计与打印设计) 是否便于阅读和理解,符合用户的习惯(查询与报表) 是否充分考虑和利用了输出设备的功能 是否为今后的发展预留一定的余地(自定义)
5.5.2 输入设计
输入界面是信息系统与用户之间交互的纽带,输入设计的目的是提高输入效率,减少输入错误。 输入决定输出(垃圾入,垃圾出)。
输入设计的原则
•最小量原则(控制输入量) •简洁性原则(简化输入过程,编码、默认值) •可靠性原则(检验,容错,显示与输入一致) •灵活性原则(控制方便,定制输入) •友好性原则(界面简洁友好,色彩适中) •一致性原则(界面采用统一风格,类)
确定输入数据内容
包括输入数据项名称、数据内容、精度、数值范围等
确定数据的输入形式
问答式数据输入、填表输入、点取输入
确定数据输入方式
确定输入设备与介质
输入数据的校验
① 重复校验 ② 视觉校验 ③ 分批汇总校验 ④ 数据类型校验 ⑤ 格式校验 ⑥ 逻辑校验 ⑦ 界限校验 ⑧ 记录计数校验 ⑨ 平衡校验 ⑩ 对照校验
输入设计的评价
原始单据格式设计是否符合下列要求 • 是否便于填写 • 是否便于归档 • 是否便于输入操作 • 是否可以保证输入精度 对输入数据是否有完善的出错检验措施
5.5.3 用户界面设计
用户界面又称人机(对话)界面,是人与计算机进行信息交流接口。输入、输出都是人机对话的方式。 用户界面设计就是从方便用户使用的角度出发,对界面的显示内容及风格、用户操作方式等进行设计
用户界面的形式
菜单式:一般菜单、下拉菜单、快捷菜单 、级联菜单、菜单树 填表式 选择性问答式(Y/N) 按钮式
用户界面设计应注意的几个问题
(1)响应时间的及时性 (2)要有完善的帮助系统 (3)用户界面一致性 (4)提供有意义的反馈(进度、警告、声音) (5)尽量减少用户记忆 (6)及时的、有建设性的出错信息提示 (7)使用图形 (8)关键操作要有强调和警告 (9)允许取消操作 (10)提高效率(键盘/鼠标)
5.6 数据存储设计
5.6.1 文件设计
文件设计就是根据文件的使用要求、处理方式、存储量、数据的活动性以及硬件设备的条件等,合理地确定文件类别,选择文件介质,决定文件的组织方式和存取方法。
文件的分类
文件按用途可分为
主文件
系统中最重要的共享文件,主要存放具有固定值属性的数据
业务文件
又称事务文件,是用来存放业务数据的临时文件,实时记载业务过程中的数据变化,是流水账形式的顺序文件,包含了对主文件进行更新的全部数据。
工作文件
处理过程中暂时存放数据的文件。如排序过程中建立的排序文件,打印时建立的报表文件等
后备文件
是主文件、业务文件的副本,作为备份
文件设计的步骤
① 了解已有的或可提供的计算机系统功能; ② 确定文件设计的基本指标; 文件接口、数据量、逻辑结构、处理方式(批处理/实时处理)、使用率、存取时间、保密等。 ③ 确定合适的文件组织方式、存取方式和介质; ④ 编写文件设计说明书。
文件设计的具体内容
① 对数据字典描述的数据存贮情况进行分析。 ② 决定需要建立的文件及其用途和内容,并为每个文件选取文件名。 ③ 根据文件的使用要求选择文件的存贮介质和组织形式。 ④ 根据数据结构设计记录格式。 ⑤ 根据记录长度、记录个数和文件总数估算出整个系统的数据存贮容量。
5.6.2 数据库设计
1. 用户需求分析 2. 数据库的概念结构设计(E-R图) 3. 数据库的逻辑结构设计(3NF) 4. 数据库的物理结构设计 ① 库文件的组织形式 ② 存储介质的分配 ③ 访问方法设计 ④ 完整性和安全性考虑 ⑤ 数据资源分布考虑
5.7 系统安全性与完整性设计
5.7.1 影响因素分析
① 自然灾害或电源不正常引起的软硬件损坏与数据损失。 ② 人为失误导致的数据损失。 ③ 计算机病毒的侵扰。 ④ 计算机犯罪的日趋严重。 ⑤ 信息战的严重威胁
5.7.2 采取的措施
1.硬件方面:选用可靠性高、性能优良的硬件设备
2.软件方面:① 访问控制 ②生物识别技术 ③加密④备份
3.网络方面:① 网络接入设备的安全 ② 传输介质的安全 ③ 防火墙 ④数字签名技术
4.数据库方面:① 访问限制 ② 数据加密 ③日志监控 ④ 镜像技术 ⑤备份与归档
5.8 物理配置方案设计
5.8.1 设计依据
系统的吞吐量 系统的响应时间 系统的可靠性 数据处理方式(集中与分散) 地域范围 数据存储容量
5.8.2 计算机网络的设计与选择
① 要根据用户数据业务的传输距离来选择网络的类型,是采用局域网还是广域网 ② 企业是否要连接外网以及接入的方式。 ③ 选择网络的拓扑结构。 ④ 进行网络的逻辑设计。 ⑤ 选择网络协议。 ⑥ 根据组织内部的布局来考虑联网布线和配件。 ⑦ 根据实际业务的要求划定网络各节点的级别、管理方式、数据读写的权限。
5.8.3 计算机硬件设备选择
计算机硬件的选择要依据数据处理方式和要运行的软件
如果数据的处理是集中式的,系统应用的目的主要是利用计算机强大的计算能力,则可以采用主机-终端系统,选用大型机或中小型机作为主机。 对于一般面向企业的管理信息系统,采用微机网络更为灵活、经济
具体计算机机型的选择
主存的大小;主机的处理速度;输入、输出和通信能力;显示方式;外接转储设备及其类型;高速缓存器的大小;向上升级是否方便;计算机设备及其对工作环境的要求;兼容性;可维修性等
5.8.4 计算机软件配置选择
5.8.5 计算机物理系统配置方案报告的具体内容
计算机物理系统配置概述 计算机物理系统选择的依据 计算机物理系统配置 介绍硬件结构情况以及硬件的组成及其联接方式,还要说明硬件所能达到的功能,并画出硬件结构配置图。 介绍硬件系统配置的选择情况,列出硬件设备清单,标明设备名称、型号、规格、性能指标、价格、数量、生产厂家等。 介绍通讯与网络系统配置的选择情况,列出通讯与网络设备清单,标明设备名称、型号、规格、性能指标、价格、数量、生产厂家等。 介绍软件系统配置的选择情况,列出所需软件清单,标明软件名称、来源、特点、适用范围、技术指标和价格等。 指出费用情况 具体配置方案的评价
5.8.6 应注意的问题
系统是否具有合理的性能价格比 系统是否具有良好的可扩充性 能否得到来自供应商的售后服务和技术支持
5.9 系统设计说明书
①引言:摘要;专门术语定义;参考和引用的资料
②系统设计方案
系统总体结构设计。系统的摸快结构图及其说明。 处理流程设计。包括系统流程图和模块处理过程描述。 代码设计。编码对象的名称,代码的结构以及校验位的设计方法。 输出设计。各输出设计说明书。 输入设计。各输入设计说明书。 数据库设计。说明数据库的名称、包含的数据表的名称、各数据表的结构、表中索引的设置、表间的关联关系。 安全保密设计。安全保密设计方案,主要规章制度。 物理系统设计。物理系统设计总体结构图,物理系统配置清单及费用预算。 系统实施方案及说明。包括系统实施方案和计划及实施方案的审批情况说明。
第8章 信息系统实施
8.1 系统实施阶段的任务
8.1.1 主要内容和步骤
① 设备购置与安装; ② 程序设计; ③ 系统调试; ④ 基础数据的录入; ⑤ 系统人员培训; ⑥ 系统转换; ⑦ 文档的建立与完善。
8.1.2 系统实施计划制定
制定实施计划应考虑的问题
工作量的估计 实施进度安排 系统人员配备和培训 系统实施的资金筹措和投入
实施计划的内容
设备采购供应计划 环境资源供应计划 变更控制计划 进度控制计划
8.2 系统实施的环境建设与设备购置
8.2.1 设备购置
质量可靠,价格合理 资料齐全,手续完整 计算机设备的兼容性和可维护性
8.2.2 计算机机房的建设
计算机机房是指能够满足安放计算机设备所要求的各项环境指标,使其充分发挥功能的工作场地。 计算机机房的建设要考虑计算机系统设备和用户人员对环境的要求,要计算好机房的面积。 在建设时要依据所需容纳的计算机台数计算出机房的面积,要考虑电源的设置及今后联网布线的需求,如需预埋何种线路、需在哪里留有接口等。
8.2.3 设备的安装与调试
设备的安装是指将计算机系统设备按照总体设计方案中指定的位置所进行的设备组装工作
设备的调试是指在系统设备安装完毕后对其各项硬件和软件功能的调试
8.3 程序设计
8.3.1 程序设计的基本要求
程序设计质量的指标
可维护性
容易对程序进行补充或修改的难易程度
可靠性
不仅正常情况下能正确工作,而且在意外情况下应便于处理
可理解性(可读性)
要求层次清楚,便于阅读,便于维护
效率
程序能否有效地利用计算机资源
效率与可理解性、可维护性通常是矛盾的,以可理解性、可维护性为优先考虑因素。
8.3.2 程序设计方法
模块化思想
自顶向下、逐步求精的模块化设计
程序结构
顺序结构、选择结构、循环结构
结构定理:任何程序结构都可以由顺序、选择和循环三种基本结构组合来表示
基本特点
采用自上而下的设计步骤
程序逻辑组织模块化
限制无条件转移语句
单入口、单出口
结构化程序设计的优点:易于理解、提高编程效率
8.3.3 程序设计语言的选择
项目的应用领域 系统的运行环境 算法和数据结构的复杂性 开发人员的熟练程度 软件可移植性要求 系统用户的要求
8.3.4 程序设计的风格
1. 适当的程序注释(序言性、描述性) 2. 有规律的程序书写格式 3. 恰当选择变量名
8.3.5 常用的编程工具
常用编程语言类
Visual C++(C#)、Visual Basic、Delphi、Java等等。
数据库类
目前市场上提供的数据库类产品主要有两类: xBASE系统(以微机关系数据库为基础) 大型数据库系统:Oracle系统,SQLserver、Sybase系统,Informix系统,DB2系统等等。
8.4 系统测试与调试
8.4.1系统测试概述
测试
是为了发现程序中的错误而执行程序的过程
目的
为了发现程序中的错误(经济性:以最小的代价发现更多的错误)。
• 系统测试只能证明错误存在,不能证明没有错误 • 任何系统中都存在错误,测试只是减少错误,而不能完全消除错误 •发现了错误的测试是成功的测试;没有发现错误的测试是失败的测试 • 大量统计资料表明,系统测试的工作量往往占软件开发总工作量的40%以上。 • 一般程序员很少喜欢测试,如果测试工作量比程序设计的工作量大,则更少有程序员喜欢。 • 测试是系统开发中的一个重要环节,是成功开发信息系统的重要保证。
软件测试原则
• 确定预期输出或结果是测试情况必不可少的一部分 测试用例={输入数据+期望结果} • 程序员应避免测试自己的程序 • 程序设计机构不应该测试自己的程序 • 不要设想程序中不会查出错误 • 测试用例的设计和选择、预期结果的定义要有利于错误的检测 • 设计测试用例数据要包括正确的、错误和异常的数据 • 不要扔掉测试用例 • 软件测试不仅要检查程序是否做了应该做的事情,还要检查它是否做了不应该做的事情 • 要严格执行测试计划、排除测试的随意性(何时结束?) • 经验表明:程序中尚未发现的错误的数量与该程序段已发现的错误数量往往成正比 • 测试是一项非常复杂的、创造性的和需要高度智慧的挑战性的任务
8.4.2 测试方法
是否运行
静态测试(人工测试) 动态测试(计算机测试)
是否分析内部结构
黑盒法 白盒法 灰盒法
黑盒测试
工作原理
• 在接口进行测试 • 根据功能说明设计测试数据 • 程序是否适当地接收输入、产生正确的输出
穷举输入测试
穷举法:对所有可能的输入数据逐一进行测试
使用的数据
• 程序有效的输入数据 • 程序无效的输入数据 无效的输入往往能发现更多的错误 • 极端的数据元素 • 特殊的数据元素
白盒测试
工作原理
• 完全了解程序的内部结构和处理过程 • 按照程序内部的逻辑设计测试数据 • 检验程序中的每一条通路是否都能按预定的要求正常工作 • 至少必须对所有路径都进行测试(有时很难) • 即使可以穷举出所有的路径,但是若程序少写了一个路径,则查不出错误
8.4.3 设计测试用例的技术
基于白盒法
逻辑覆盖法
逻辑覆盖测试的种类
语句覆盖
编写足够的测试情况,使得每条语句至少执行一次
判定覆盖----分支覆盖
每个分支至少执行一次
编写足够的测试情况,不仅每个语句必须至少执行一次,而且每个判定的每种可能的结果都应该至少执行一次,也就是每个判定的每个分支都至少执行一次。
使得每个判定至少有一次“真”和一次“假”的结果
条件覆盖
编写足够的测试情况,不仅每个语句必须至少执行一次,使得判定中每个条件的所有可能结果至少出现一次
条件覆盖通常比判定覆盖强,因为它使判定表达式中每个条件都取到了两个不同的结果,判定覆盖却只关心整个判定表达式的值。例如,上面两组测试数据也同时满足判定覆盖标准。但是,也可能有相反的情况:虽然每个条件都取到了两个不同的结果,判定表达式却始终只取一个值。
判定/条件覆盖
编写足够的测试情况,使得判定中每个条件的所有可能结果至少出现一次
每个判定本身所有可能结果也至少出现一次
条件组合覆盖(多重条件覆盖)
编写足够的测试情况,使得每个判定中条件结果的所有可能组合至少出现一次
基于黑盒法
• 等价类法 • 边值分析法 • 因果图法(输入组合) • 错误推测法
主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
子主题
浮动主题
浮动主题
浮动主题
浮动主题
子主题
子主题
子主题