1、第八章 系统实施,信息系统的开发思路,系统分析,系统设计,系统实施,8-1 系统实施阶段的任务,系统实施是开发信息系统的最后一个阶段。这个阶段的任务:实现系统设计阶段提出的物理模型,按照实施方案完成一个可以实际运行的信息系统,交付用户使用。,一、系统实施的内容,构建系统运行平台,程序的调试和测试,系统实施报告,系统的物理模型,1、硬件准备,硬件准备包括计算机主机、输入输出设备、存储设备、辅助设备(稳压电源、空调设备)、通信设备等。,2、软件准备,软件包括系统软件、数据库管理系统以及一些应用软件。,3、人员培训,主要指用户培训,包括主管人员和业务人员。,4、数据准备,没有一定的基础数据的准备,系
2、统调试就不能很好的进行。,相互联系的,彼此制约,二、系统实施阶段的特点,与系统分析、系统设计阶段相比较,系统实施阶段的特点是:工作量大,投入的人力、物力多。,实施计划主要内容 硬件计划 软件计划 机房、场所准备计划 总的实施日程计划,硬件获取,软件编程,用户准备,人员:聘用和培训,机房、场所准备,数据准备,安装,测试,试运行,系统切换,用户验收,实施步骤,8-2 物理系统的实施,MIS物理系统的实施是计算机系统和通信网络系统设备的订购、机房的准备和设备的安装调试等一系列活动。, 计算机品牌选择 国外品牌目前有IBM、HP、Compaq、SUN、NEC、Dell等; 国内品牌目前有联想、新浪潮、
3、方正等。,8-2-1 计算机系统的实施, 计算机购置的基本原则: 能够满足MIS的设计和运行的基本要求 合理的性价比; 良好的可扩充性; 良好的技术支持.,局域网(Local Area Network, LAN)通常指一定范围内的网络,可以实现楼宇内部和临近的几座大楼之间的内部联系。 广域网(Wide Area Network, WAN)能连接多个城市,国家或大洲广域网不仅仅只是连接许多结点中的计算机,它还必须能使得计算机之间能同时通信。,8-2-1 网络系统的实施,8-3 程序设计,编程(Coding)就是为系统各个模块编写程序。根据结构化方法设计了详细方案,又有了高级语言,初级程序员都可以
4、参加这一阶段的工作。, 可维护性 由于信息系统需求的不确定性,系统需求可能会随着环境的变化而不断变化,因此,就必须对系统功能进行完善和调整,为此,就要对程序进行补充或修改。此外,由于计算机软硬件的更新换代也需要对程序进行相应的升级。,8-3-1 程序设计的目标, 可靠性:程序应具有较好的容错能力。 正常情况下能正确工作。 意外情况下应便于处理,不至产生意外的操作,从而造成严重损失。, 可理解性:程序不仅要求逻辑正确,计算机能够执行,而且应当层次清楚,便于阅读。, 效率: 程序能否有效地利用计算机资源。程序效率的地位: 已不像以前那样举足轻重了,因为硬件价格大幅度下降,而其性能却不断完善和提高。
5、程序设计人员工作效率的地位日益重要。不仅能降低软件开发成本;而且可明显降低程序的出错率,进而减轻维护人员的工作负担。为了提高程序设计效率,应充分利用各种软件开发工具。,在过去的小程序设计中,主要强调程序的正确和效率。 对于大型程序,人们则倾向于首先强调程序的可维护性、可靠性和可理解性,然后才是效率。,注意,程序效率、可维护性、可理解性三者之间的关系,采用顺序结构、循环结构、选择结构三种基本逻辑结构来编写程序的方法。,8-3-2 结构化程序设计方法 (Structured Programming),1、顺序结构:,顺序结构表示含有多个连续的处理步骤,按照书写的先后顺序执行。,Int i=0 In
6、t s=1 S=100+i,2、循环结构:,循环结构是由一个或几个模块构成,程序运行时重复执行,直到满足某一条件为止。,Int i=1 Int s=0 Do While(i=100)s=s+ii=i+1 EndDo,3、选择结构:,由某个逻辑表达式的取值决定选择两个处理加工中的一个。,8-4 软件开发工具,利用软件生成工具进行系统开发可以大量的减少甚至避免手工编写程序,并且避免了手工方式下的编程错误,从而极大的提高了系统开发效率。 下页首先对几种常用的工具软件作一简单介绍:,数据库管理系统提供的开发工具,可视化图形界面编程工具, MS Visual Foxpro MS Visual BASlC
7、 PowerBuilder: Delphi (5)办公自动化系统开发工具Lotus Notes,计算机辅助软件工程 (CASE), CASE (COMPUTER AIDED SOFTWARE ENGINEERING)的特点:支持系统分析和系统设计 (如生成数据流程图、生成功能结构图和各种文档资料等)乃至整个系统生命周期的大型软件环境。 功能:CASE中集成了多种工具,这些工具既可以单独使用,也可以组合使用,为系统开发提供了全过程的开发环境,8-5 程序和系统测试,人们常常有一种错觉,认为程序编写出来就“万事大吉”。目前,检验软件的有三种手段:正确性证明、静态检查和动态检查。,8-5-1 测试方
8、法,1、正确性证明:利用数学方法证明程序的正确性,该技术还处于初级阶段。,2、静态测试人工评审软件的文档或程序,发现其中的错误。手续简单,是一种行之有效的检验手段。(1)代码审查:通过阅读程序发现软件错误和缺陷。(2)静态分析:主要对程序进行控制流分析、数据流分析、接口分析和表达式分析。,3、动态检查即测试,有控制地运行程序,从多种角度观察程序运行时的行为, 发现其中的错误。(测试就是为了发现错误而执行程序),测试只能证明程序有错误, 而不可能证明程序没有错误。,520条路径。,黑箱测试 不考虑系统内部结构而运行系统,以检查在一定的输入下,系统的输出是否与期望相同。 白箱测试 不仅要完成前者的
9、内容,还要检查输入的数据是如何通过系统内部设定的结构,到达输出的。,A 黑箱测试,B 白箱测试,8-5-2 测试流程,测试是通过一些典型的数据运行检验系统在各种情况下的正确性的过程。,单元测试,功能测试,系统测试,容量测试,认可测试,1 单元测试,单元测试是测试系统中的每一个低级处理的基本功能,其目标是告诉程序员哪些程序部分需要改正或改进。 程序代码测试 程序功能测试,程序代码调试,利用精心挑选的测试数据,使程序和模块中的每一条语句都能得到执行, 即能够测试程序中的任一逻辑通路。常用的测试数据有以下几种:,用正常数据调试。 用异常数据调试。 用错误数据调试。 试验程序对错误的处理能力,包括显示
10、出错信息以及容许修改错误的可能性。 具体检查内容有: 输入键号错误 输人数据错误 操作错误,程序功能测试,经代码测试正确的程序只是基本上验证了程序逻辑上的正确性,但并不能验证程序是否满足程序说明中定义的功能,也不能验证数据本身是否完备。 程序功能测试则面向程序应用环境,把程序看做一个 “黑盒子“,认为程序只要满足应用功能上的需求,就是可行的。,2 功能测试,将一个功能内所有程序按次序串联起来进行调试,目的是要保证模块内各程序间具有正确的控制关系,同时可以测试模块的运行效率。,3 系统测试,将所开发的系统放在模拟的产品环境中,其目标是保证系统与网络、数据库、硬件和任何其它公司所特有平台和环境因素
11、相协调,保证整个系统运行是一致的,并且使应用程序能满足用户要求的灵活性。, 主控程序和调度程序调试 系统程序总调,4 特殊调试,除了上述常规测试之外,还有一些必要的性能测试,这些测试往往不是针对程序在正常情况下运行的正确与否,而是根据系统需求选择进行的,主要有:,峰值负载测试、 容量测试、 响应时间测试、 恢复能力测试等。 严格核对计算机处理和人工处理的两种结果。 实况测试。,5 认可测试,认可测试贯穿于测试的各个阶段,以确定终端用户是否认可该系统的设计和功能。,系统调试完成后,应该编写操作说明书,完成程序框图和打印源程序清单。,8-6 系统切换、运行,系统转换包括: 新系统和旧系统的切换 把
12、旧系统的文件转换成新系统的文件 数据的整理和录入, 人员、设备、组织结构的改造和调整 有关资料档案的建立和移交。,1、直接转换法,在指定的时间点,停止原系统的使用,启动新系统。,转换简单,费用最省 风险较大,2、并行切换法,新系统投入运行时,老系统并不停止运行,而是与新系统同时运行一段时间,对照两者的输出,利用老系统对新系统进行检验。,并行切换法的特点是风险小、安全系数大 开销大(需要同时运行2套系统) 用户随着并行期的延长而失去热情,甚至拒绝使用新系统 隐含假设:原系统是正确的,3、试运行转换法,前面2种方法的综合。,新系统的部分采取并行方法 并行方法,保险系数大,4、试点过渡法(逐步转换法
13、),新系统一部分一部分地替换老系统,直到全部替代老系统。,避免了直接转换法的危险性,费用也比并行转换法省 这种转换方式接口复杂,当新老系统差别太大是不宜 采取该方法,8-8 系统维护,1、程序的维护在系统维护阶段,会有一部分程序需要改动。,2、数据文件的维护业务发生了变化,从而需要建立新文件,或者对现有文件的 结构进行修改。,3、代码的维护随着环境的变化,旧的代码不能适应新的要求,必须进行改造。,4、机器、设备的维护包括机器、设备的日常维护与管理。,8-8-1 系统维护包括以下几个方面的工作:,1、更正性维护(corrective maintenance)指由于发现系统中错误而引起的维护,包括
14、诊断问题和改正错误。在软件交付使用后,由于开发时测试的不彻底、不完全,必然会有一部分隐藏的错误被带到运行阶段来。改正软件性能上的缺陷、排除实施中的误使用,应进行的诊断和改正错误的过程,是改正性维护。,8-1-2 维护的类型,2、适应性维护(adaptive maintenance),为了适应外界环境的变化而增加或修改系统的部分功能的维护工作。,随着计算机的飞速发展,外部环境(新的硬、软件配置)或数据环境(数据库、数据格式、数据输入输出方式、数据存储介质)可能发生变化,为了使软件适应这种变化,而修改软件的过程叫做适应性维护。,3、完善性维护(perfective maintenance),为了改
15、善系统功能或适应用户的需要而增加新的功能的维护工作。在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。这种情况下进行的维护活动叫做完善性维护。,4、预防性维护(preventive maintenance),对一些使用寿命较长,目前尚能运行,但可能要发生变化的部分进行维护,以适应将来的修改或调整。通常,预防性维护定义为:“把今天的方法学用于昨天的系统以满足明天的需要”。也就是说,采用先进的软件工程方法对需要维护的软件或软件中的某一部分(重新)进行设计、编制和测试。,人员对系统实施的
16、影响,信息系统失败的一个主要原因是用户拒绝使用新系统。拒绝通常来源于对新的工作方式和任务不熟悉,或者对可能发生的改变产生忧虑。例如,当计算机文字处理系统进入到办公室时,许多秘书认为自己的工作会被计算机取代,因而拒绝学习和抵制新技术。然而,实际上字处理软件不仅没有代替秘书的职能,只是完成那些日常重复性、机械化的工作,而且还为秘书创造出新的和更多的管理事务,综合性与分析性的工作大大地增加了。,人员对系统实施的影响(续),当新技术被引入组织时,许多习惯于在原有环境下工作的人会觉得受到威胁。因为环境改变了,原有的工作岗位、个人地位和人际关系也都会相应有所改变,因此容易产生一种失落感和不安全感。持有这种
17、心态的人员会妨碍新系统的实施并企图恢复原系统。如果新的工作方式和工作程序不被接受,那么新系统就达不到预定的目标。拒绝变化的另一个原因是目前的工作环境比较舒适,有关管理人员安于现状。如果没有更多的报酬与激励,管理人员会觉得改变工作条件得不偿失,因而产生惰性。,人员对系统实施的影响(续),要使新系统和新技术的实施成功,企业的最高管理者和系统分析与设计人员就必须起变化代理人的作用,用动态的观点,采用变化的计划实施策略来引导变化。当人们认识到变化的必要性和紧迫性时,就会产生求变心理,去制定改变现状的计划。通过管理业务调查、技术培训等形式,能逐步转变管理人员的观念,完成这项工作需要有耐心和恒心。在系统设
18、计过程中,要注意维持一定的工作满意度,在此基础上对原有工作予以重定义。在系统实施过程中,一旦系统出现问题,系统设计人员应迅速作出反应,以免用户产生不满情绪。,8-9 系统实施阶段的文档,8-9-1 程序设计手册,程序设计手册将选定计算机语言或开发工具,来描述系统的计算机模型,其主要使用者是系统维护人员。 系统采用的术语 系统的功能描述 系统开发最小平台 系统覆盖的流程 系统全局变量 程序清单 每个功能的描述 系统共享数据 系统接口的实现,8-9-2 用户操作手册,用户操作手册为用户提供了系统能够做什么和不能做什么的概况和一份详细的安装指南,以及一个贯穿系统详细指南。 概况 系统运行平台与安装
19、系统操作描述,8-9-3 系统联机帮助,8-10 系统评价,信息系统投入使用一段时间以后,需要对系统进行全面的评价。根据使用者的反映和运行情况记录,评价系统是否达到了设计要求,指出系统改进和扩充的方向。,1、系统运行的一般情况,系统功能是否达到设计要求 用户付出的资源是否控制在预定界限内 用户对系统工作的满意度(响应时间、操作方便性、灵活性等),2、系统的使用效果,从系统提供的信息服务的有效性方面考察: 用户对系统提供的信息的满意度 提供信息的及时性 提供信息的准确性和完整性,3、系统的性能,计算机资源的利用情况 系统的可靠性 系统的可扩充性,4、系统的经济效益,系统的费用(包括系统的开发费用
20、和各种运行维护费用) 系统的收益(包括有形效益和无形效益,如库存资金的减少、成本下降、管理费用减低等等) 投资效益分析,总结分析任何一个项目在执行过程中都会碰到问题的,评价一个项目是否成功并不能以碰到问题的多少作为标准,其标准应是按时、保质实现预先确定的各项指标,比如说系统的功能、系统的性能等等。,系统实施与评价课堂练习,1、购买计算机系统的基本原则是( )。 能够满足管理信息系统的设计要求,并具有一定的 扩充余地 供货商有良好的培训计划和售后服务能力 价廉物美,安装、操作都比较简单 供货商具有良好的信誉,A,2、系统实施是以( )依据的 。 系统分析文档资料 系统设计文档资料 系统分析和系统
21、设计文档资料 数据流程图,C,3、对程序设计基本的质量要求应该是程序的( )。 可理解性 正确性 高效性 模块化,B,4、按照结构化程序设计的原则,任何程序都可以设计成 由以下三种基本逻辑结构组成( )。 顺序结构、多分支结构和循环结构 顺序结构、IF条件结构和循环结构 顺序结构、循环结构和选择结构 以上说法均不正确,C,5、程序和系统调试的目的是( )。 发现程序和系统中的错误并及时改正 改正程序和系统中的错误 发现程序和系统的错误 以上说法均不正确,A,6、系统转换的方式主要有( ) 直接转换、并行转换 直接转换、并行转换和分段转换 直接转换和分段转换 并行转换和分段转换,B,7、系统转换最重要并且工作量最大的是( ) 组织准备和系统初始化工作 物资准备和系统初始化工作 数据准备和系统初始化工作 人员培训和系统初始化工作,C,8、系统评价的主要依据是( ) 系统日常运行记录和现场实际监测数据 系统日常运行记录 现场实际监测数据 系统运行所产生的经济效益和性能指标,A,