




已阅读5页,还剩58页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
*1 第六章 系统实施 爱帮美 来至网络 *2 本节主要内容 q系统实施阶段的主要活动 领会系统实施在管理信息系统建设中的作用与地位。 领会系统实施的前提条件。 识记系统实施阶段的主要活动。 爱帮美 来至网络 *3 6.1 系统实施阶段的主要活动 系统实施阶段要继承此前各阶段的工作成果,将技术设计转化为物理实 现,因此系统实施的成果是系统分析和设计阶段的结晶。 系统实施作为系统生命周期中的后期阶段,是把系统设计转化为可实际 运行的物理系统的必然步骤,再好的系统设计,不通过系统实施也只能 是不能带来现实效益的空中楼阁。系统实施作为系统最后的物理实现阶 段,对于系统的质量,可靠性和可维护性等有着十分重要的影响。 系统实施工作的前提条件是必须在系统分析和系统设计工作完成后,严 格按照系统开发文档进行。 系统实施是以系统分析和设计文档资料为依据的。 在系统实施时,系统开发人员不但需要了解自己所承担的部分,同时还 需要对整个系统的总体结构,彼此接口等相互联系的内容有一定的了解 ,以保证在系统实施工作中局部分散实施与系统整体协调的一致性。 爱帮美 来至网络 * 信息系统开发 4 6.1 系统实施阶段的主要活动 系统实施阶段 系统实施阶段主要由编码,系统测试,系统安装和新旧系统转换等活动 构成。 编码(程序设计):是指按照详细设计阶段产生的程序设计说明书用选 定的程序设计语言编写源程序。 系统测试是系统质量可靠性保证的关键,也是对需求分析,系统设计和 编码最终评审。 系统安装主要是指各种软,硬件设备的选型,论证,购置,安装以及整 个系统调试运行。 新旧系统转换(也称系统切换与运行):是指以新开发的系统替换旧的 系统,并使之投入使用的过程。包括系统交付前的准备工作,系统切换 的方法和步骤等。 请与第5章中的代码设计加以区别! 爱帮美 来至网络 *5 本节主要内容 q程序设计 领会程序设计的任务和作用。 深刻理解对程序设计的质量要求。 识记程序设计的步骤。 程序设计语言的分类以及各类语言的基本特点。 识记结构化程序的基本控制结构。 熟练掌握结构化程序设计的方法和步骤。 掌握良好程序设计风格应达到的基本要求。 爱帮美 来至网络 *6 6.2 程序设计 程序设计(编码)的任务和作用 程序设计的任务主要是使用选定的程序设计语言,把经过概要设计和 详细设计所得到的以程序设计说明书体现的信息处理过程描述后,转 换成能在计算机系统上运行的程序源代码。 需要注意的是程序设计人员必须注意保证系统实施与系统设计的一致 性,以保证功能的正确实现。 对程序设计的质量要求: 对于程序设计基本质量要求应该是程序的正确性,主要体现在两个方 面: 1.正确运用程序设计语言环境,避免语法错误。 2.程序所描述的过程和算法要满足系统设计的功能要求,以避免语义错 误。 爱帮美 来至网络 *7 6.2 程序设计 程序的正确性是不是程序设计质量的唯一要求呢? 一个软件在源程序的其他方面都正确无误,只是不容易被人看懂的程序 也不是一个好的程序。因为从系统的周期中可以看到一旦系统投入使用 ,必然会面临很多如维护,功能的扩充和性能的改善等问题,而这些问 题必然涉及到程序的代码。 所以从软件维护的角度出发,程序设计人员在保证程序正确性的同时, 还必须保证源程序的可读性。 保证源程序可读性的主要措施是进行结构化程序设计,并在风格上遵守 一些标准和原则。 从系统开发和应用角度来看,程序的编写和运行效率也是程序设计质量 的一个考虑方面。 这里所说的效率是指程序的 语句行数,对存储空间的要 求,以及运行速度等。 爱帮美 来至网络 *8 6.2 程序设计 程序设计的步骤: 1.了解计算机系统的性能和软硬件环境,其中包括: a.计算机系统的运算速度与存取速度; b.内存和外存大小; c.操作系统,程序设计语言以及开发工具; d.外设连接及通讯能力等性能指标。 2. 充分理解系统概要设计和详细设计的文档准确把握系统的软件功能, 模块间的逻辑关系,算法的详细方案以及输入输出要求。 3.根据设计要求和硬软件环境条件,选定程序设计语言。 4.编写程序代码。 5. 程序的检查,编译与调试。 爱帮美 来至网络 *9 6.2 程序设计 程序设计语言: 程序设计语言的发展与分类 机器语言 第一代 汇编语言 第二代 高级语言 第三代 甚高级语言 第四代 面向机器语言高级语言 是随计算机的发明而产生的第 一代计算机语言,其指令代码 由操作代码和操作数的绝对地 址构成,指令无需翻译和解释 ,可以直接执行。不同的机器 ,语言不相同.它一般不用来进 行程序设计。 属于低级程序设计语言。它 的产生是为了改善机器语言 的不直观性而发展起来的机 遇助记符的语言。每个操作 指令通过特定的助记符来表 达。汇编语言与机器指令之 间基本上是一一对应的关系 。 是指在符号,概念和语法 上与人类思维和表达方式 相近的第三代程序设计语 言。 高级语言是面向数据处理 的过程化语言,必须在程 序设计中描述“怎么做”。 而第四代语言是直接面向 应用的,它只在程序设计 中说明做什么,就可以了 。 爱帮美 来至网络 *10 6.2 程序设计 汇编语言:第二代语言,属于低级程序设计语言。它的产生是为了改善 机器语言的不直观性而发展起来的机遇助记符的语言。每个操作指令通 过特定的助记符来表达。汇编语言与机器指令之间基本上是一一对应的 关系。 汇编语言程序需要经过翻译转换成机器语言才能运行。 其具有无法移植,不易维护等特点,故在系统开发中很少使用。 高级语言:是指在符号,概念和语法上与人类思维和表达方式相近的第 三代程序设计语言。 具有可移植性的特点。 用高级语言写出来的源程序必须经解释或编译后才能够在计算机上运行 。 因为高级语言编码速度快,并且引入了控制结构语句,函数功能,宏替 换等使软件生产效率有了极大的提高,所以目前绝大多数系统都是用高 级语言进行程序设计的。 爱帮美 来至网络 *11 6.2 程序设计 汇编语言代码片断 PULES2:MOV R3, #N MOV TMOD, #01H MOV TL0, #XL MOV TH0, #XH SETB TR0 SETB P1.0 LOOP1: JBC TF0, REP AJMP LOOP1 REP : MOV TL0, #XL MOV TH0, #XH CPL P1.0 DJNZ R3, LOOP1 RET 高级语言代码片断 void m(a,b,x) float a,b,x; if (a1) if(a=2)|(x1) x=x+1; 爱帮美 来至网络 *12 6.2 程序设计 高级语言可以按照用途和特征划分为以下几类: 基础语言:是人们最熟悉且应用很广泛的一类程序设计语言。主要的基 础语言有下列几种: BASIC语言:具有人机对话功能,便于修改和调试,适用于简单的数值 计算服务和事务处理.有BASIC,GWBASIC,TRUE BASIC等版本。 COBOL语言:是一种适用于商业及管理领域,面向事务和数据处理的 程序设计语言。其主要功能是描述数据结构和分析处理大批量的数据, 可对各种类型的数据进行收集,存储,传送,分类,排序,计算和打印 报表等。 FORTRAN语言:是一种适合于工程与科学计算的程序设计语言,是最 早的高级语言。 爱帮美 来至网络 *13 6.2 程序设计 结构化程序语言:其主要特点是直接支持结构化程序设计思想 ,具有很 强的过程结构化特点和数据结构描述能力。结构化程序设计语言的主要 代表有: PASCAL语言:是第一个系统的体现结构化程序设计概念的程序设计语 言,它具有模块清晰,控制结构完备,有丰富的数据结构和数据类型, 以及表达能力强,移植容易等特点应用很广泛。 PL/1语言:具有ALGOL,FORTRAN,GOBOL等语言的共同特点,并 引入了异常处理,多任务处理(即并发控制)等全新概念。使得它成为一 种包含很多特征的大型通用语言。 C语言:C语言一方面具有高级语言的特点,具有先进性的控制结构和数 据结构,丰富的数据类型,并且有很灵活方面的多种操作符,语句简洁 ,表达清晰,使得它容易阅读和编写。另一方面它同时具有汇编语言的 功能,可以处理计算机直接操作的大多数数据直接完成硬件的算术或逻 辑运算。 ADA语言:比较适合于实时并行处理。 爱帮美 来至网络 *14 6.2 程序设计 专用语言:是指为某一特定的应用而专门设计的程序设计语言,一般 具有与特定应用密切相关的特殊语义,语法形式,且每一种语言的应 用范围都比较小。 程序设计工作是相当繁重的,故而寻求进一步提高编码效率的途径是 第四代语言产生的背景。 第四代语言:高级语言是面向数据处理的过程化语言,必须在程序设 计中描述”怎么做”而第四代语言是直接面向应用的,它只在程序设计 中说明“做什么“就可以了。 4GL具有的特征: 1.语言的使用者是一般用户,而不是计算机专业技术人员。 能够提供一组高效,非过程化的命令基本语句,编码时用户只需用这 些命令说明”做什么”,而不必描述实现的具体细节。 具有很强的数据管理能力,能对数据库进行有效的存取,查询和相关 操作。 是多功能,一体化的语言。除必须含有控制程序逻辑和数据库操作的 语句外,还应有生成处理,报表处理,图象处理以及实现数据运算和 统计分析功能的语句,以适应多种开发的需要。 爱帮美 来至网络 *15 6.2 程序设计 程序设计语言的选择 选择程序设计语言的时候应该综合考虑编码,测试和维护各个阶段来 选择语言,避免将眼光仅仅局限在编写程序上。 在程序选择上主要应考虑以下几个方面问题: 1.应用领域。 2.过程与算法的复杂程度。 3.数据结构和数据类型的考虑。 4.编码及维护的工作量与成本。 5.兼容性和可移植性。 6.有多少可用的支撑软件。 开发人员,用户知识水平和熟练程度。 程序设计语言的特性。 系统规模。 系统的效率要求。 可以看出:并没有那种 语言绝对好或不好,每 种语言都各有不同的特 点,关键是要根据实际 需要和困难,选择最适 合的语言,以满足系统 的要求。 爱帮美 来至网络 *16 6.2 程序设计 结构化程序设计 为什么以前的很多程序除了自己能看懂或明白外,其他的程序编写人员 却无法弄清?你认为其中的原因会是什么呢? 最大的原因是:除了程序人员的观念问题外,还有一个很重要的原因就是 当时的程序设计语言是非结构化的。 所以,为了提高软件生产率和降低软件维护费用创立一种新的程序设计思 想,方法和风格就变的越来越重要了。 而结构化程序设计思想就是在这样的背景下开始形成它主要是以自顶向 下的方式,按照模块化和逐步细化的思想,用一组单口入单出口的基本控制 结构及其反复嵌套来进行程序设计。 爱帮美 来至网络 *17 6.2 程序设计 程序设计的基本控制结构: 顺序结构:表示含有多个连续的处理步骤,按照书写的先后顺序执行。 A B C 入口 出口 代码示例: float x; int i; I = (int)x; printf(“x=%f, i=%d”,x,i); 爱帮美 来至网络 *18 6.2 程序设计 程序设计的基本控制结构: 选择结构(条件结构):由某个逻辑表达式的取值决定选择两个处理加 工中的一个。 P 入口 出口 A T B F 代码示例: if (year%4 !=0) leap = 1; else if (year%100 != 0) leap = 1; else if (year%400 != 0) leap = 0; else leap =1; 爱帮美 来至网络 *19 6.2 程序设计 程序设计的基本控制结构: 循环结构或重复结构:它有两种类型。 一种为“当”循环结构(DOWHILE结构)。 入口 出口 F T 代码示例: int i, sum =0; i=1; while(i1)and(b=0) (a=2)and(x1) x=x/a x=x+1 A FT B C FT D E 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 46 6.3 系统测试 v语句覆盖:设计测试用例,使程序中的每个执行语句至少执行一次。 v语句覆盖的例子: A C E (a1)and(b=0) (a=2)and(x1) x=x/a x=x+1 FT B FT D 测使用例: a=2,b=0,x=4 语句覆盖是最弱 的逻辑覆盖。 则可以看到通过 的路径是ACE, 使程序的四个语 句都执行了一次 ,达到了语句覆 盖。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 47 6.3 系统测试 v判断覆盖:使程序中每个判断的取真分支和取假分支至少经历一次,即 使得每个判断获得各种可能的结果。 v判断覆盖的例子: 测使用例: a=2,b=0,x=4 a=1,b=0,x=1 则可以看到通过 的路径是ACE和 ABD,使两个判 断的四个分支都 得到了覆盖,达 到了判断覆盖。 同理,选择路径ACD和ABE也 可以做到判断覆盖。 (a1)and(b=0) (a=2)and(x1) x=x/a x=x+1 A F T F T C E B D 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 48 6.3 系统测试 v条件覆盖:使每个判断的每个条件的可能取值至少满足一次。 v条件判断的例子: 测使用例: a=2,b=0,x=4 a=1,b=1,x=1 B D x=x/a x=x+1 A (a1)and(b=0) (a=2)and(x1) FT C FT E 由于判断覆盖的对象是每个判断,而条件覆盖的对象 是每个判断中的每个条件,因此一般来说条件覆盖比 判断覆盖要严格。但并不绝对。 则可以看到通过 的路径是ACE和 ABD,使两个判 断的四个分支都 得到了覆盖,达 到了判断覆盖。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 49 6.3 系统测试 v判断条件覆盖:设计测试用例,使得判断中每个条件的所有可能取值 至少出现一次,并且使每个判断本身的判定结果也至少出现一次。 v判断条件覆盖的例子: (a1)and(b=0) (a=2)and(x1) x=x/a x=x+1 A FT B C FT D E 判断条件覆盖比单纯的 判断覆盖和条件覆盖都要 强。 测使用例: 请同学自行设计 。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 50 6.3 系统测试 v路径覆盖:设计测试用例,以覆盖程序中所有可能的路径。 v路径覆盖的例子: (a1)and(b=0) (a=2)and(x1) x=x/a x=x+1 A FT B C FT D E 测使用例: 请同学自行设计 。 对于实际问题,往往不太现实, 因为其路径的数量可能相当庞大 。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 51 6.3 系统测试 测试用例设计技术 等价类划分法:它属于黑盒测试方法。它是在完全不考虑内部结构情况 下,只根据程序的规格说明设计程序设计用例。它是把程序的输入范围 划分成若干部分,然后从每一部分中选取少量代表性数据作为测试用例 。 有效等价类:是指对程序的功能要求来讲是有意义的,合理的输入数据 所构成的集合。 无效等价类:是指那些不合理的或非法的输入数据所构成的集合。 等价类划分原则请参考教材。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 52 6.3 系统测试 测试用例设计技术 边值分析法:它是针对如下标,数据结构,标量和循环变量取最大值 ,最小值等容易发生错误的区域而设计测试用例的方法。边值分析法 也是一种黑盒测试方法。 遵循的原则: 1.若输入条件规定了取值范围,则应选择恰好落在边界上,以及处在边 界内、外边上的测试值。 2.如规定了输入数据的个数,则可选择最小个数,最大个数,比最小个 数多1、少1等等情况作为测试输入的个数。 3.如输入数据为有序集合数据,则应特别注意选取有序集中的第一个和 最后一个元素以及空元素作为测使用例。 边值分析法与等价类分析方法的区别在于: 1.它不是从等价类中任选一个例子,而是在等价类的边界及其附近选一 个或几个例子。 2.边值分析法不仅注意输入条件的边值,还应根据输出条件的边值设计 测试用例。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 53 6.3 系统测试 测试用例设计技术 错误猜测法:主要是依靠测试人员的经验直觉来推测软件中可能存在 的各种错误,并针对这些可能的错误设计测试用例子。 v其基本思想是列举出程序中可能有的错误和容易发生错误的特殊情况 ,并据此选择测试用例。 综合测试方法:将各种方法结合起来综合使用,使之互补设计出完整 而又全面的测试用例。 v一般来说先用黑盒法设计出基本的测试用例,然后再用白盒补充一些 必要的测试用例。具体步骤: 1.用边值分析法设计出一组测试用例。考虑输入输出数据的边界情况。 2.必要时用等价划分法补充测试方案。 3.用错误猜测法补充一些测试用例。 4.检查上面测试用例对程序逻辑的覆盖程度,并根据系统的可靠性要求 采用不同的逻辑覆盖标准,然后在补充测试用例。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 54 6.3 系统测试 工程上一般用来考察测试工作进行程度的方法主要有: 1.规定测试的方法和应该达到的条件。 2.规定至少要查出的错误数。 3.根据发现错误的趋势来停止测试.。 具体采用什么方法结束测试都要以测试的最佳效果为标准的。需要说 明的是最佳效果是:通过较小的测试成本把未暴露的错误降到最低。 排错 测试的目的是为了发现程序存在的错误。 排错的目的:找到错误所在并改正错误。 排错的任务: 1.确定错误的位置和性质(约占工作量的95%)。 2.改正错误。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 55 6.3 系统测试 排错的步骤: 1.从错误的外部表现形式入手,确定程序中出错的位置。 2.研究相关的部分源程序,找出错误的内在原因。 3.修改设计和编码。 4.重复进行暴露这个错误的原始测试或某些相关测试,以确定错误是否 排除,以及是否引入了新的错误。 5.如果所做的修改无效,则撤消这次修改,重复以上过程直到找到一个 有效的解决方法为止。 6.根据排错所产生的变化,对系统开发文档中的相关部分进行修改。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 56 6.3 系统测试 排错方法: 试探法:适用于结构比较简单的程序。 跟踪法:对于小型程序比较有效。 反向跟踪:从发现错误症状的地方开始回溯,人工沿着程序的控制流 程往回追踪程序代码,直到错误根源。 正向跟踪:沿着程序的控制流,从头开始正向跟踪,检查中间结果, 找到最先出错的地方。 对比查找法:主要用于缩小错误的范围。 归纳法:从错误征兆的线索出发,通过分析这些线索之间的关系而找 出错误。 其步骤为: 1.收集有关程序正确或不正确的数据 2.整理数据,找出规律,看什么条件下有错,没有错 3.提出关于错误的一个或几个假设. 4.用假设来解释所以原始测试成果. 演绎法 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 57 本节主要内容 q系统转换 识记系统转换的任务。 了解系统转换的主要工作。 掌握系统转换的各种方式。 爱帮美 来至网络 * 信息系统开发 西南科技大学计 算机学院 58 6.4 系统转换 系统转换的含义: 系统转换就是指以新系统替换老系统的过程,也即是老系统停止使用, 新系统开始运行。 系统转换的任务:保证新老系统进行平稳而可靠的交换,最后使整个新 系统正式交付使用。 需要注意的是系统转换是是系统开发的整个过程中动用人力和物力最多 的一个环节,它需要各个部门以及相关领导和技术人员的相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年微滴灌施肥装置项目发展计划
- 2025年放射性核素遥控后装机项目建议书
- 2025年证券经纪代理与营业部服务项目发展计划
- 抗生妇产科素使用课件
- 2025年海南省澄迈县中考数学模拟试卷(二)(含答案)
- 2025年汽车轮胎压力监测系统合作协议书
- 2025年青马班考试题目及答案
- 2025年毕节地区考试试卷及答案
- 2025年设备能源考试题型及答案
- 慢性肉芽肿性疾病
- 2025年巷道掘砌工(技师)职业技能鉴定理论考试题(附答案)
- 中铁合同交底培训
- 新版外研社小学英语三起点四年级下册全册教案
- 颅脑外伤所致精神障碍护理查房
- 学生心理健康一生一策档案表
- 工程施工队伍管理制度
- 2025年室内设计师劳动雇佣合同范文
- 2025睿实消防自动跟踪定位射流灭火系统说明书
- 《数字技术应用 基础模块(WPS Office 上册)》 课件全套 第1-3单元 探索数字世界 数字技术应用基础 -编程的魅力 程序设计入门
- 餐饮服务与数字化运营 习题及答案 项目二
- 2025-2030全球卫星星座行业调研及趋势分析报告
评论
0/150
提交评论