版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
教学要求掌握系统实施的任务了解系统实施计划包括的内容掌握程序设计的基本方法掌握系统测试的几个步骤了解系统测试报告包括哪些内容具备进行系统测试的能力掌握系统转换的方式和优缺点1主要内容8.1系统实施概述8.2程序设计8.3信息系统的测试8.4信息系统的调试28.1系统实施概述
系统实施是MIS开发的最后一个阶段。系统实施是将系统设计的结果付诸实践,建立计算机硬件环境和系统软件环境,编写计算机程序,组织系统测试、调试和各类人员培训,完成系统的切换并最终交付使用。3系统实施阶段的主要活动设备的购置与安装硬件(通信设备、计算机主机、输入输出设备、存储设备),软件(OS、DBMS、应用程序),附属设备(稳压电源、空调),计算机机房等程序的编制与测试
选定计算机程序语言,编写程序,测试模块数据的录入人员的培训系统的测试、调试与转换4系统实施的内容及流程编程准备编制新系统实施计划硬件准备计算机硬件安装与调试程序的编制、测试与调试数据的收集和准备业务人员培训新系统调试建立文件(DB)老文件转换编写系统操作使用手册系统转换新系统维护与评价验收系统软件准备系统软件的消化与调试提前或并行将大大缩短周期5实施阶段任务之间的关系程序编制设备购置人员培训数据准备程序编制—提供调试设备培训有关人员试用软件提供试验数据调试程序设备购置提供对设备的要求—培训有关人员接受设备提供存储量和内存要求人员培训提供程序以培训人员提供培训设备—提供培训的实验数据数据准备规定数据准备的内容和格式提供录入设备提供录入人员—
注意:不能把系统实施仅仅归结为编程序或买机器。这些任务是相互联系、彼此制约的。6系统实施阶段的特点与系统分析与系统设计阶段相比,系统实施阶段的特点是工作量大,投入的人力、物力多。因此,这一阶段的组织管理工作也很繁重。7自顶向下的实现方法系统实施中,就程序的编写和数据库实现而言,下层模块执行具体功能,上层模块是控制性的结构化方法主张自顶向下实现,尽量先实现上层模块,逐步向下,最后实现下层最基本的模块自顶向下实现的过程是:首先实现系统的轮廓或框架,在此基础上不断添加新的功能,逐步完善,最后达到物理模型所要求的全部功能这一实现过程又叫作“版本划分”。8自顶向下的实现方法(续)具体而言,在实现上层模块时,与这些模块有直接调用关系的下层模块只作为“树桩”(Stub)出现,只保留它的名字及有关参数传递。这样,虽然这些“树桩”的内部功能还没有实现,但可以测试系统结构的正确性,保证接口通畅。9版本划分示例处理领料业务输入控制处理控制录入领料单收集领料单复核领料单登记领料单查库存数发料缺料复核部门编码复核材料编码修改库存量注明已发料打印发料单打印缺货单打印订购单10版本的划分需要考虑以下几个方面总的原则是,先实现控制部分,后实现执行部分,先上层后下层每个版本实现多少模块、实现哪些模块要根据开发力量、设备、培训等方面的情况确定复杂的模块分散在几个版本中逐步实现兼顾功能模块和数据库的实现兼顾硬件、软件、人员培训方面的情况11自顶向下实现方法的优点与传统的方法相比,该方法:有效地解决了接口问题。接口解决不好,往往不得不对调试过的程序反复修改,甚至推倒重来,造成返工便于对系统的设计方案进行校正,保证系统切实符合用户的要求便于控制进度,保证研制工作按时完成12系统实施的计划安排
可采用甘特图(Gantt)、关键路径法(CPM)、计划评审技术(PERT)等工具辅助制定系统实施计划,制定时主要考虑以下几点:工作量估计实施进度安排系统人员的配备和培训计划系统实施的资金筹措和投入计划138.2程序设计
程序设计即编程(Coding),就是为各个模块编写程序。编程的依据是结构图、判断树、判断表、模块说明书、系统流程图等。14选择程序设计语言时考虑的因素应用领域:选择语言的关键因素算法和计算的复杂性软件的运行环境各种性能的考虑数据结构的复杂性程序设计人员的知识水平15好程序的标准什么是好程序?
1950s,计算机内存小、速度慢如今,一般认为好程序具备以下素质:能够工作(最基本的)调试代价低(衡量程序好坏和程序员水平高低的重要标志)效率高易于维护易于修改设计不复杂可读性(Readability),1970s逻辑上正确又易于阅读理解16提高程序可读性的技巧和方法?17提高程序可读性的技巧和方法用结构化方法进行详细设计程序中包含说明性材料良好的程序书写格式良好的编程风格18结构化程序设计软件发展中的三座里程碑子程序高级语言结构化程序设计19结构化程序设计的基本方法限制使用GOTO语句
不用GOTO语句,程序易于阅读、易于验证。无限制地使用GOTO语句,将使程序结构杂乱无章、难以阅读、难以理解,其中容易隐含一些错误逐步求精的设计方法在一个程序模块内,先从该模块功能描述出发,一层层地逐步细化,直到最后分解、细化成语句为止自顶向下的设计、编码和调试把逐步求精之法推广到一个系统的设计与实现20结构化程序设计的基本方法(续)主程序员制的组织形式成员须遵守:不使用可能干扰其他模块的命令或函数按总体设计的要求传递参数,不随意修改其内容与含义按统一规定的格式操作公用文件或数据库按统一的原则使用标识符按统一要求编写文档保持程序风格一致21提高程序可读性的技巧和方法用结构化方法进行详细设计程序中包含说明性材料良好的程序书写格式良好的编程风格22程序的内部文档
程序的内部文档,指程序内部带有的说明材料。需要注意以下几点:程序开始部分注明程序编写者、最后修改日期等注释须与程序一致。修改程序时,要相应修改注释注释不是重复程序语句,而应提供从程序本身难以得到的信息对程序段作注释,而不是对每个语句作注释如果模型的详细设计是用PDL描述的,编程时可将PDL描述作为注释嵌入程序中。23提高程序可读性的技巧和方法用结构化方法进行详细设计程序中包含说明性材料良好的程序书写格式良好的编程风格24缩进式书写除了加注释之外,采用缩进式书写程序也有助于阅读。doi=1ton-1;t=i;doj=i+1ton;ifa(j)<a(t)thendot=j;endifift<>1thendoh=a(t);a(t)=a(i);a(i)=h;endif;end;end;25缩进式书写DOi=1TOn-1 t=i; DOj=i+1TOn IFa(j)<a(t)THENDO t=j; ENDIF IFt<>1THENDO h=a(t);
a(t)=a(i);
a(i)=h; ENDIF END;END;IFA1 DOAELSE IFA2 DOB ELSEIFA3DOC ELSEIFA4DOD ELSE... . . . ENDIF
ENDIF ENDIFENDIF26提高程序可读性的技巧和方法用结构化方法进行详细设计程序中包含说明性材料良好的程序书写格式良好的编程风格27编程风格(1)简单、直接地反映意图(2)变量名、文件名、过程名应规范化
函数和过程的名称最好使用动宾词组,第二个单词的第一位采用大写,驼峰显示规范化的书写格式:缩进的空格数、最好一行一句(3)不要直接使用数字(4)尽量使用局部变量28编程风格(续1)(5)表达式的书写应该一气呵成
比较表达式X=A(I)+I/A(I)与: AI=A(I) X=AI+I/AI在表达式中加括号也可以减少误解:
-A**2有可能被理解成(-A)**2,不如写成-(A**2)29编程风格(续2)(6)合理使用GOTO语句使用时主要注意三条原则:在一个程序中不要多用GOTO语句。一定要避免使用不必要的GOTO语句在其他结构形式难以控制程序流向的情况下才使用GOTO语句。例如,在循环体内遇到例外情况需要跳出时使用不要使GOTO语句相互交叉30主要内容8.1系统实施概述8.2程序设计8.3信息系统的测试8.4信息系统的调试318.3信息系统的测试
程序编写出来就接近尾声了?程序能够运行就通过了?No
32测试的目的Myers将测试的目的归纳为:测试是指“旨在发现错误而执行一个程序的过程”一个好的测试用例是指这个测试用例有很高的概率可以发现一个尚未发现的错误一个成功的测试是指它成功地发现了一个尚未发现的错误33测试的目的(续)测试的目的是为了发现程序中的错误。因此,测试的关键问题是如何设计测试用例,即设计一批测试数据,通过有限的测试用例,在有限的研制时间、研制经费的约束下,尽可能多地发现程序中的错误。发现错误后进行诊断并改正错误的过程就是调试。34测试的概念信息系统测试软件测试硬件测试网络测试单元测试综合测试35测试的原则(1)软件测试必须有预期结果测试用例应包括输入数据和预期的输出结果;测试用例的设计和选择、预期结果的定义要利于错误的检测(2)程序员应避免测试自己的程序;程序设计机构不应测试自己的程序(3)设计最小用例集(4)不仅要选用合理的输入数据作为测试用例,而且应选用不合理的输入数据作为测试36测试的原则(续)(5)全程测试测试用例应长期保留,直到这个程序被废弃。既要检查程序是否完成了它应做的工作,又要检查它是否还做了它不应做的事情。(6)严格执行测试计划,排除测试的随意性(7)充分注意测试中的群集现象在测试中发现缺陷越多的地方,存在的未被发现的缺陷也就越多;“经验表明:程序中尚未发现的错误的数量与该程序段已发现的错误数量往往成正比”37软件错误Neson将错误和缺陷概括为七个方面:编程时的语法错误保留字拼写错误循环体不匹配参数与变元不匹配程序员发现在用某些解释性程序设计语言(如VB,VFP等)编程时检查这类错误容易而且及时
38软件错误(续1)2.程序员对语言结果误解所造成的错误。如,对循环体结构的误解3.算法或逻辑上的错误4.近似算法会使某些输入变量得不到精确的甚至错误的结果5.由于错误的输入导致程序的错误6.数据结构说明不当或实现中的缺陷所造成的错误7.由于系统(或模块)说明书的缺陷所造成的错误最为严重。39测试的任务预防软件发生错误发现并改正程序错误提供错误诊断信息40软件测试的基本手段人工测试人工测试可以由编写者本人非正式地进行,也可以由审查小组正式地进行。人工测试技术有:程序审查(CodeInspections)人工运行(Walkthroughs)桌前检查(DeskChecking)41计算机测试(1)设计测试情况计算机测试要遵循的步骤:(2)进行模块测试(3)进行高级测试准备一些测试程序在计算机上运行,以此来查找程序错误42软件测试方法正确性证明方法动态测试方法静态测试方法43程序正确性证明程序正确性证明技术目前还处于初级阶段,近期内还不可能适用于大型系统。例如一个433行的ALGOL程序,其证明长达46页。怎样保证“证明”这46页中没有错误?44动态测试方法
动态测试,即有控制地运行程序,从多种角度观察程序运行时的行为,发现其中的错误。可细分为黑盒测试与白盒测试两种方法。
测试只能证明程序有错误,而不可能证明程序没有错误。45动态测试方法黑盒测试白盒测试46黑盒测试(功能测试)方法(Black-boxTesting)黑盒测试黑盒测试方法黑盒测试方法的原理穷举测试黑盒测试使用的数据47黑盒测试方法工作原理把程序看成一个黑盒子黑盒程序48黑盒测试方法工作原理完全不考虑程序的内部结构和处理过程49黑盒测试方法工作原理在接口进行测试检查程序功能是否按规格说明书的规定正常使用正常使用规格说明书50黑盒测试方法工作原理程序是否适当地接收输入数据产生正确的输出数据保持外部信息的完整性51黑盒测试的穷尽输入测试至少必须对所有输入数据的各种可能值的排列组合都进行测试例,一个程序需要三个整数型的输入数据如果计算机字长是16位,则每个整数可能取的值有216个三个数的可能排列组合是216*216*216(3*1014种)假设每执行一次程序需要1毫秒,则需1万年52黑盒测试使用的数据程序有效的输入数据程序无效的输入数据极端的数据元素正常的数据元素特殊的数据元素53白盒测试(结构测试)方法(White-boxTesting)白盒测试方法白盒测试白盒测试方法的原理穷尽测试54白盒测试(结构测试或逻辑覆盖法)方法已经知道了产品内部工作过程通过测试检验来检验产品内部动作是否按照规格说明书的规定正常进行55白盒测试方法工作原理白盒程序56完全了解程序的内部结构和处理过程白盒测试方法工作原理57按照程序内部的逻辑测试程序白盒测试方法工作原理检验程序中的每一条通路是否都能按预定的要求正常工作58白盒测试的穷尽路径测试至少必须对所有路径都进行测试即使可以穷举出所有的路径(不可能遍历所有),但是若程序少写了一个路径,则查不出错误59静态测试法程序审查会——代码会审(CodeInspections)桌前检查(DeskChecking)——静态检查人工运行(Walkthroughs)60注意需要特别注意的是:测试不能表明系统中不存在错误,它只能说明系统中存在错误。
原因:穷举不可行,遍历不可行。测试的致命缺陷是:测试的不完全、不彻底性。61动态测试方案设计黑盒测试用例设计白盒测试用例设计62白盒测试--逻辑覆盖测试的种类语句覆盖判定覆盖条件覆盖判定/条件覆盖多重条件覆盖实例63语句覆盖程序的某次运行并不一定执行其中的所有语句。因此,如果某个含有错误的语句在测试中并没有执行,这个错误便不可能发现。语句覆盖法就是要选择测试用例,使得程序中的每个语句至少执行一次。该方法发现错误的能力比较弱。64用例设计例:被测试程序的流程图PROCEDUREM(VARA,B,X:REAL) BEGIN IF(A>1)AND(B=0) THENX:=X/A IF(A=2)OR(X>1) THENX:=X+1 END;若选择测试用例为A=2,B=0,X=3,则程序通过路径ace,程序中每个语句都执行了一次,达到语句覆盖的要求。A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde65判断覆盖判断覆盖是指设计测试用例使程序中的每个判断的取“真”值和取“假”值的每一个分支至少通过一次。本例中,若取测试用例为A=2,B=0,X=3和A=3,B=1,X=1,则可以使得两个判断语句的4个分支都得到覆盖。判断覆盖比语句覆盖更严格一些。A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde66条件覆盖条件覆盖是指执行足够的测试用例,使得判断中的每个条件获得各种可能的结果。本例中,有四个条件:
A>1,对应A>1或A≤1
B=0,对应B=0或B≠0
A=2,对应A=2或A≠2
X>1,对应X>1或X≤1A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde67条件覆盖(续1)A>1,对应A>1或A≤1B=0,对应B=0或B≠0A=2,对应A=2或A≠2X>1,对应X>1或X≤1以下2用例可以满足要求:①A=2,B=0,X=4②A=1,B=1,X=1A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde68条件覆盖(续2)一般说来,条件覆盖比判断覆盖要求严格,因为判断覆盖的对象是每个判断结果,而条件覆盖则要考虑每个判断中的每个条件。但是由于条件覆盖分别考虑每个条件而不管同一判断中诸条件的组合情况,因此,测试用例可能满足条件覆盖的要求,但不满足判断覆盖的要求。如①A=1,B=0,X=3②A=2,B=1,X=1A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde69判定/条件覆盖编写足够的测试情况,使得判定中每个条件取得“真”和“假”两种结果。并使每个判定本身的“真”和“假”两种结果也至少出现一次。同时每个入口点至少要进入一次。①A=3,B=0,X=3②A=2,B=1,X=1①A=2,B=0,X=4②A=1,B=1,X=1A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde70多重条件覆盖(条件组合覆盖)要写出足够的测试情况,以使判定的每条分支至少通过一次。编写足够的测试情况,使得每个判定中条件结果的所有可能组合至少出现一次,且所有的入口点都至少进入一次。A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde71多重条件覆盖(条件组合覆盖)(续)有8个条件:①A>1,B=0②A>1,B≠0③A≤1,B=0④A≤1,B≠0⑤A=2,X>1⑥A=2,X≤1⑦A≠2,X>1⑧A≠2,X≤1A=2,B=0,X=4覆盖①,⑤A=2,B=1,X=1,覆盖②,⑥A=1,B=0,X=2覆盖③,⑦A=1,B=1,X=1覆盖④,⑧A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde72路径覆盖
设计测试用例,使它覆盖程序中所有可能的路径。本例中有四条可能的路径:abd,ace,abe,acd。如下测试用例可满足路径覆盖要求:①A=2,B=0,X=3(ace)②A=1,B=0,X=1(abd)③A=2,B=1,X=1(abe)④A=3,B=0,X=1(acd)A>1ANDB=0X=X/AX=X+1A=2ORX>1NNYYacbde73路径覆盖(续)路径覆盖的测试功能很强。但对于实际问题,即使一个不太复杂的程序,其路径数也可能相当庞大而不可能完全覆盖。74实例假如有如下一条语句:IF(X>0)AND(Y≠0)THENS1ELSES2ENFIFX>0ANDY≠0S1YNS275满足判定覆盖标准,但不满足条件覆盖标准满足条件覆盖标准,但不满足判定覆盖标准满足判定/条件覆盖标准
满足组合条件覆盖标准X>0ANDY≠0S1YNS2实例76动态测试方案设计黑盒测试用例设计白盒测试用例设计77黑盒测试的种类等价类法边值分析法因果图法错误推测法78等价类划分
对于某个输入域的子集合,如果该集合中的各个输入数据对于揭露程序中的错误都是等效的,则称这个集合为等价类。测试某等价类的代表值就等价于对这一类其他值的测试。使用这一方法设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步。79等价类划分等价类的划分有两种不同的情况:有效等价类,无效等价类。在设计测试用例时,要同时考虑有效等价类和无效等价类的设计。80等价类划分原则①如果输入条件规定了取值范围或值的个数,则可以确定一个有效等价类和两个无效等价类例如:在程序的规格说明中,对输入条件有一句话,“一次取款不得少于50元,最多可取2000元……”则有效等价类是“50<所得额<2000”,两个无效等价类是“所得额<50”或“所得额>2000”。81等价类划分原则(续1)②如果输入条件规定了输入值的集合,或者是规定了“必须如何”的条件,这时可确立一个有效等价类和一个无效等价类例如:在C语言中对变量标识符规定为“以字母打头的……串”,则所有以字母打头的构成有效等价类,不以字母打头的归于无效等价类。如果输入条件是一个布尔量、则可以确定一个有效等价类和一个无效等价类。82等价类划分原则(续2)③如果规定了输入数据的一组值,而且程序要对每个输入值分别进行处理,这时可为每一个输入值确立一个有效等价类,此外针对这组值确立一个无效等价类,它是所有不允许的输入值的集合例如:在教师奖酬金方案中规定对教授、副教授、讲师和助教的课时分别折算工作量。则四个有效等价类为教授、副教授、讲师和助教,一个无效等价类,它是不符合以上身份的人员的的集合。83等价类划分原则(续3)④如果规定了输入数据必须遵守的规则,则可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)在确立了等价类之后,建立等价类表(P270),列出所有划分出的等价类。最后确定测试用例。84边值分析(边界值测试)经验证明,程序往往在处理边缘情况时犯错误,因此检查边缘情况的测试用例效率比较高的。使用边界值分析方法设计测试用例,首先应确定边界情况。应当选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。85边值分析(边界值测试)(续1)把边界值的概念扩大,可以设计出种种测试用例。例如:①对新记录在文件第一个记录之前加一个记录在文件最后一个记录之后加一个记录插入的新记录对应实体是实际不可能存在的86边值分析(边界值测试)(续2)②处理业务处理文件的第一个记录处理文件的最后一个记录处理中间的一个记录处理同一程序刚建立的记录连续处理相邻记录试图处理一个不存在的记录处理业务使某个数值超过常规(如库存数为负或域值上溢)对某些关键数据输入有错误的数据同一业务处理过程中造成多重例外和出错87边值分析(边界值测试)(续3)③记录删除删除文件的第一个记录删除文件的最后一个记录试图删去不存在的记录连续删除多个记录删除一个记录,并试图处理这个记录88边值分析(边界值测试)(续4)④试验逻辑检查所有能产生最大值,最小值,平均值的计算除式中除数为0数据域填入最小数或最大数数据域填入允许值以外的数这种方法表面上看起来很简单,但许多程序的边界情况极为复杂,要找出适当的测试用例,需要有一定经验和创造性。89因果图法(case_effectgraphing)因果图法的原理因果图使用符号因果图实例90因果图法原理从用自然语言书写的功能说明表中找出因--输入条件--输出结果通过因果图将功能说明转换成一张判断表为每种输出条件的组合设计测试用例91因果图使用的符号恒等ab非abSabcd∨或abc∧与92因果图法实例第一列字符必须是A或B,第二列字符必须是一个数字。在这种情况下,修改文件。如果第一个字符不正确,则发出信息X12。如果第二列字符不是数字,则发出信息X1393因1--第1列字符是A2--第1列字符是B3--第2列字符是一个数字果70--修改文件71--发出信息X1272--发出信息X13实例分析9412311∨∧717072∼∼12311∨∧717072∼∼E实例分析95错误推测法(猜错)(errorguessing)很大程度上依靠直觉和经验进行,列举出程序中可能有的错误和容易发生错误的特殊情况,选择测试方案。96静态测试方法
静态测试指人工评审软件文档或程序,发现其中的错误。这种方法手续简单,是一种行之有效的检验手段。
据统计,30%-70%的错误是通过评审发现的,且这些错误往往影响很大。97测试类型划分模块测试联合测试验收测试系统测试98模块测试模块测试是对一个模块进行测试,根据模块的功能说明,检验模块是否有错误。模块测试一般由编程人员自己进行,模块测试有以下项目:①模块界面。调用参数(流入数据)数目、顺序、类型②内部数据结构。如初始值对不对,变量名称是否一致,共用数据是否有误③独立路径。是否存在不正确的计算、不正确的循环及判断控制④错误处理。预测错误的产生及处理,看是否和运行一致⑤边界条件。对数据大小界限和判断条件的边界进行跟踪运行。99联合测试联合测试即通常说的联调。联合测试可以发现总体设计中的错误。联合测试方法有两种,即根据模块结构图由上到下或由下到上进行测试。
①由上到下。设置下层模块为桩模块,检查控制流,较早发现错误,而不至于影响到下层模块。②由下到上。先设置上层模块为驱动模块,测试下层模块执行的正确性,然后逐步向上推广100验收测试验收测试检验系统说明书的各项功能与性能是否实现,是否满足要求。验收测试的方法一般是列出一张清单,左边是需求的功能,右边是发现的错误或缺陷。常见的验收测试有所谓的α测试和β测试,前者由使用者在应用系统开发所在地与开发者一同进行观察记录,后者由用户在使用环境中独立进行。101系统测试系统测试是对整个系统的测试,将硬件、软件、操作人员看做一个整体,检验它是否有不符合系统说明书的地方。这种测试可以发现系统分析和设计的错误。102
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国保安报警系统市场调查研究报告
- 汽车行业不良事件追踪与报告流程
- 施工现场交通安全管理计划
- 环保行业废弃物处理管理制度及岗位职责
- 道路工程施工设备管理计划
- 宠物寄养服务免责条款及协议
- 2024年可再生能源发电项目合作协议
- 基于云计算平台服务合作协议
- 影视娱乐行业演员参演合同协议
- 广告发布代理协议
- 2024 消化内科专业 药物临床试验GCP管理制度操作规程设计规范应急预案
- 2024-2030年中国电子邮箱行业市场运营模式及投资前景预测报告
- 基础设施零星维修 投标方案(技术方案)
- 人力资源 -人效评估指导手册
- 大疆80分钟在线测评题
- 2024届广东省广州市高三上学期调研测试英语试题及答案
- 中煤平朔集团有限公司招聘笔试题库2024
- 2023年成都市青白江区村(社区)“两委”后备人才考试真题
- 不付租金解除合同通知书
- 区域合作伙伴合作协议书范本
- 中学数学教学设计全套教学课件
评论
0/150
提交评论