笔记-实施阶段监理-23.1 实施阶段的系统建设任务
23.1 实施阶段的系统建设任务
在信息应用系统建设的实施阶段,承建单位主要进行编码、单元测试、集成测试等项工作。单元测试的工作在开发组内部进行,以自测为主互测为辅,需要对测试的情况进行记录并进行错误的修改与回归测试。集成测试由专门的测试小组负责,可以在模拟环境或真实环境中进行,测试中要全面检测系统的基本功能,需要对测试情况进行记录并进行错误的修改与回归测试。
23.1.1 编码阶段的系统建设任务
1. 编码阶段进入条件
- 软件详细设计说明已通过评审;
- 软件详细设计说明己进入配置管理受控库;
- 所有须编码的软件单元,都已建立了相应的模块开发卷宗。
2. 编码阶段工作任务
实现软件设计功能,运用程序设计语言,编写出编程风格好、程序效率高和代码安全程序的过程。这反映在软件编码的可追踪性和完备性上,软件编码的独立性、数据规则、处理规则、异常处理规则和表示法规则反映在项目软件过程的编程风格中。
3. 编码阶段工作成果
程序代码和编码工作文档。
4. 软件编码要遵循的一般原则
- 遵循开发流程,在设计的指导下进行代码编写;
- 代码的编写以实现设计的功能和性能为目标,要求正确完成设计要求的功能,达至设计的性能;
- 程序具有良好的程序结构,提高程序的封装性好,减低程序的耦合程度;
- 程序可读性强,易于理解;
- 软件方便调试和测试,可测试性好;
- 软件易于使用和维护;
- 软件具有良好的修改性、扩充性;
- 软件可重用性强/移植性好;
- 软件占用资源少,以低代价完成任务;
- 软件在不降低程序的可读性的情况下,尽量提高代码的执行效率。
23.1.2 测试阶段的系统建设任务
1. 单元测试进入条件
(1)完成所有单元编码;
(2)软件单元无错通过编译;
(3)完成代码审查等静态测试:
(4)所有软件单元纳入软件开发单位的配置管理受控库。
2. 单元测试工作
(1)软件单元的功能测试;
(2)软件单元的接口测试;
(3)软件单元的重要执行路径测试;
(4)软件单元的局部数据结构测试;
(5)软件单元的语句覆盖和分支覆盖测试;
(6)软件单元的错误处理能力;
(7)软件单元的资源占用、运行时间、响应时间等测试。
3. 单元测试工作成果
(1)单元测试报告,包括测试记录、测试结果分析;
(2)软件问题报告单和软件修改报告单;
(3)与软件修改报告单一致的,经过修改的全部源程序代码;
(4)回归测试的测试记录和测试结果。
4. 集成测试进入条件
(1)被集成的软件单元无错通过编译;
(2)被集成的软件单元通过代码审查;
(3)被集成的软件单元通过单元动态测试并达到测试要求;
(4)被集成的软件单元己置于软件开发单位的配置管理受控库;
(5)已具备了集成测试计划要求的软件组装测试和测试工具。
5.集成测试阶段工作内容
集成测试主要是验证软件单元组装过程和组装得到的软件部件,重点检查软件单元之间的接口。集成测试的主要内容有:
(1)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;
(2)一个模块的功能是否会对另一个模块的功能产生不利的影响;
(3)各个子功能组合起来,能否达到预期要求的父功能;
(4)全局数据结构是否有问题;
(5)单个模块的错误是否会导致数据库错误。
6. 集成测试阶段成果
(1)集成软件测试报告;
(2)软件使用说明;
(3)所有软件问题报告单和软件修改报告单;
(4)与软件修改报告单一致的、经过修改的全部源程序代码。
7. 确认测试进入条件
(1)软件完成了集成测试;
(2)软件可运行;
(3)所有软件代码都在配置管理控制下;
(4)已经具备了合同规定的软件确认测试环境。
8. 确认测试阶段工作内容
确认测试又称有效性测试。它的任务是验证软件的有效性,即验证软件的功能和性能及其他特性是否与用户的要求一致。软件需求说明书描述了全部用户可见的软件属性,是软件确认测试的基础。 ▲▲▲ 常见考点
在确认测试阶段需要做的工作(如图23.1所示):进行有效性测试以及软件配置复审。软件只有通过了专家鉴定验收之后,才能成为可交付的软件。
1)进行有效性测试
有效性测试是在模拟的环境(可能就是开发的环境)下,运用黑盒测试的方法,验证被测软件是否满足需求说明书列出的需求。通过实施预定的测试计划和测试步骤,确定软件的特性是否与需求相符,确保所有的软件功能需求都能得到满足,所有的软件性能需求都能达到,所有的文档都是正确且便于使用。同时,对其他软件需求,例如可移植性、兼容性、出错自动恢复、可维护性等,也都要进行测试,确认是否满足。
2)软件配置复查
软件配置复查的目的是保证软件配置的所有成分都齐全,各方面的质量都符合要求,具有维护阶段所必需的细节,而且已经编排好分类的目录。
除了按合同规定的内容和要求,由人工审查软件配置之外,在确认测试的过程中,应当严格遵守用户手册和操作手册中规定的使用步骤,以便检查这些文档资料的完整性和正确性。必须仔细记录发现的遗漏和错误,并且适当地补充和改正。
9. 确认测试阶段成果
(1)软件确认测试分析报告,含所有的软件确认测试结果;
(2)所有软件问题报告单和软件修改报告单;
(3)与软件修改报告单相一致的,经过修改和回归测试的全部源程序代码;
(4)经过修改的软件产品使用说明。
10. 系统测试进入条件
(1)完成并通过软件确认测试;
(2)所有软件产品都在配置管理控制下;
(3)己经具备了软件系统测试环境。
11. 系统测试工作内容
所谓系统测试,是将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行(使用)环境下,对计算机系统进行一系列的组装测试和确认测试。
系统测试的目的在于通过与系统的需求定义作比较,发现软件与系统定义不符合或与之矛盾的地方。系统测试的测试用例应根据需求说明书来设计,并在实际使用环境下来运行。根据软件的安全性等级和软件规模等级,选择进行系统的功能性测试、系统的可靠性测试、系统的易用性测试、系统的效率测试、系统的维护性测试和系统的可移植性测试。软件的系统的功能性测试、系统的可靠性测试和系统的效率测试是属于必须测试的内容。
系统测试一般由专门委托的测试机构进行,需要对所有软硬件进行以功能为主的测试工作(必要情况下附加性能测试),需要对测试情况进行记录并进行错误的修改与回归测试,在测试完成后要根据测试全过程的情况编写正式的系统测试报告。
12. 系统测试工作成果
(1)系统测试报告,包括测试记录和测试结果分析;
(2)软件问题报告和软件变更报告;
(3)回归测试的测试记录。
23.1.3 试运行与培训阶段系统建设工作任务
在系统的试运行与维护阶段,承建单位在业主单位现有条件下进行系统的试运行与维护工作。承建单位制定详细的试运行计划,进行现场跟踪,修改实现环境运行工程中发现的问题,对用户进行培训,制定详细的维护方案。
目前国内信息应用系统建设过程中,在此阶段常发生承建单位试运行计划不充分、现场跟踪不到位、错误修改及更新不落实、出现异常情况无法处理、培训工作不充分、缺少应有的维护方案等情况。虽然在前几个阶段的工作可能己基本完成了工程建设的主体工作,但以上环节工作不到位仍然可能造成工程建设出现大的问题。
因此,在此过程监理单位需要对承建单位在现场试运行的情况及培训情况进行监督,检查承建单位是否有详细的试运行计划、是否有详细的现场跟踪检验机制、是否有稳妥可行的修改错误及更新方案、是否有详细的异常情况处理办法、是否有详细的培训计划、是否有详细的培训方案、是否有完善的正式运行维护方案。
试运行阶段的监理的重点是:
- 协助业主方和承建单位处理系统试运行期间出现的各项问题,并予以记录;
- 对于一些重复出现的问题,在验收测试时给予必要的关注,督促承建单位必要的解决措施;
- 监督检查承建单位试运行阶段的培训工作。
技术培训监理的重点是:
- 监督承建单位按照合同和业主的要求制定培训计划;
- 审核培训计划的可操作性,要求在培训计划中明确培训对象、培训教材、培训时间、培训方式和培训师资;
- 监督技术培训计划的实施,对培训教材和师资进行评估,将培训计划执行情况和效果通报给业主。