摘要:本文分析了如何做好智能交通信息化项目的质量保证工作,通过参与项目启动、制定质量保证计划、执行质量检查、跟踪问题项、完成项目的质量报告等方法,对智能交通信息化项目的计划制定、需求分析、软件设计和编码、测试、项目验收等方面的关键流程节点,进行了全流程质量监控,确保项目开发的流程符合质量体系规范。
引言
随着上海城市交通的高速发展,近年来拥堵、安全、监控需求等问题日渐逐渐突出,所以我们对城市交通管理提出了更高的要求。
为了减缓城市的交通拥堵现象、提高出行安全、有效地进行交通视频监控,及时准确地进行现场执法,我们运用各种智能交通技术,建立智能交通信息化系统,对上海城市交通进行全方位的管理。智能交通系统是将先进的项目管理方法、数据通讯传输技术、物联网技术、自动化控制技术、信息化技术等方法和技术有效地集成,并运用于整个路面交通的管理和监控。主要功能将包括交通信号控制、视频监控、路面检测分析、交通诱导、数据展示、决策分析等。
信息化项目是整个智能交通系统的重要组成部分,主要包括计划制定、需求分析、软件设计和编码、测试、项目验收等方面的关键流程节点。我们的质量保证工作,就是参与项目启动、制定质量保证计划、执行质量检查、跟踪问题项、完成项目的质量报告,确保项目全生命周期规范、有序地开展进行。
背景
近年来,上海市经济进入高速增长期。汽车、摩托车、电瓶车、自行车、共享单车等各类车辆数量急剧增加,导致现有交通系统已远很难跟上经济增长的需要,各类交通状况问题日益严重。我们在加快道路硬件基础设施建设的同时,已经开始意识到,仅仅依靠单纯的道路硬件基础设施建设永远满足不了日益增长的交通管理需要,所以我们必须依靠各类智能技术来改造现有的交通系统,进行有效的各类管理,提高道路通行能力和服务质量,才有可能从很大程度上缓解交通阻塞问题,降低交通事故发生率,提升市民出行质量。
智能交通信息化项目各阶段的主要流程
2.1 计划制定
制定《项目已定义过程》:定义项目需要产出的工作产品,并确定基线包含的工作产品。
制定《人力资源计划》:人力资源计划需要包含资源名称(确定的用具体人名,不确定的可暂时用角色以及资源能力要求)、明确资源的投入期间(资源进入项目时间,资源退出项目时间、投入百分比)等。
制定《里程碑计划》:至少包含需求和初验里程碑以及合同约定的其他关键节点。每个里程碑都要包含里程碑目标、主要产出物、可被验证的完成标志。里程碑计划完成后,组织部门经理、项目组、质量保证人员评审,并与甲方进行确认。
制定《进度计划》:按照《里程碑计划》制定需求阶段的详细进度安排;需求评审后,制定后续活动的详细进度安排;进度计划需包含分析、设计、编码、测试、评审、项目管理等活动,必须包含SOW交付物对应的活动;进度计划需涵盖到初验时的所有活动,建议近期(一个月内)活动的工作量小于等于5人日,中长期(一个月以上)活动的工作量小于等于1人月;进度计划需得到项目相关干系人的评审和确认。
制定《项目管理计划》:主要包括项目背景、项目基本信息、项目目标与范围、假设与限制、术语和缩写、参考、项目工作环境、项目组织结构、角色与责任,以及其它各类下属计划。项目立项后,项目经理制定《项目管理计划》,并进行评审。
由于智能交通信息化项目是智能交通系统的一个子系统,进度还会受到到其它子系统的影响,因此在计划时要充分考虑到其它子系统的进度安排,所以必须和整个系统的项目经理,以及其它子系统的项目经理,进行充分的沟通,确认不会发生太大的冲突。
2.2 需求分析
我们采用业务需求定义最佳实践-GPOA法则:
G(目标):要确定需要开发的内容之前,分析其应该达到的目标。
P(问题):要达到该目标所需解决的问题。
O(选项):针对这些问题可选的解决方案。
A(答案):针对各种Option进行分析、评估,最终确定答案。
需求调研人员识别需求的所有提供者,并对其进行分类。
需求提供者主要有但不仅限于:目标系统的出资人,目标系统的使用者和运行影响者,目标系统的开发、测试、推广、维护、培训者,与目标系统有接口关系的其它系统的开发者。
需求调研人员与用户沟通,确定用户代表以及客户方的负责联系人及我方的负责联系人 。
需求调研人员进行获取客户需求的前期准备工作,包括:需求获取的时间,地点及人员,准备访谈内容、准备客户访谈记录、对现有系统进行调研等。
获取需求主要的活动包括:用户访谈、客户访谈记录、观察正在工作的用户等。
整理需求:访谈结束后,需求调研人员及时整理得到的客户需求,并将访谈内容文档化。
开发用户需求:需求调研人员消除客户需求中的矛盾之处,并对其中不一致的地方进行协调和平衡,确定客户需求优先级,分析需求可行性,开发《用户需求说明书》。
验证并确认用户需求:需求调研人员和项目经理与用户一起确认需求,共同进行需求评审,并对各层次人员进行需求的讲解。评审过程要求用户方高层经理、管理人员、业务人员、技术人员尽可能参加。
需求调研人员根据评审结果更新《用户需求说明书》,要求用户方各层次负责人签字确认,代表用户对需求的一致理解。
2.3 软件设计和编码
制定候选技术解决方案:项目经理召集设计人员和开发人员,根据《需求规格说明书》的要求,讨论并制定技术解决方案。
概要设计:根据《用户需求说明书》,进行概要设计,对模块进行分析和划分,确定共通模块和独立模块等,明确模块之间交互的接口,编写《概要设计说明书》,采用审查的方式对《概要设计说明书》进行评审。
详细设计:根据《需求规格说明书》和《技术解决方案说明书》,进一步扩展业务对象模型,建立分析对象模型,明确系统对象的职责,形成《详细设计说明书》和《数据库设计说明书》,并采用审查或走查的方式对详细设计活动进行评审。
代码开发:根据《详细设计说明书》,按照类的详细设计和构件图,结合业务规则的实现优先级,按《编码规范》要求进行系统和组件的编码实现。
代码检查:使用代码走查、代码评审或代码工具检查等方式对所有开发的代码进行检查,对关键业务流程、算法类的模块等核心模块的代码进行代码评审,其余部分可以以走查的方式进行。
单元测试:由项目经理根据实际情况决定单元测试的方式。如:交换测试、编写单元测试代码等。
编写用户手册:指导用户操作和使用本系统。采用审查或走查的方式对《用户手册》进行评审。
制定部署方案:编写《安装部署说明书》,规范安装和部署的操作过程。
2.4 测试
制定测试计划:测试工作从需求开发阶段开始,在需求人员明确需求规格说明书初稿后,测试人员即可参照需求规格说明书制定项目的测试计划。
评审测试计划:测试计划需要接受由包括需求人员、设计人员、开发人员、测试人员,以及项目经理等组成的评审委员会的评审。
编写测试用例:在测试计划评审通过后,测试人员即可开始编写测试用例。测试用例应该参照需求规格说明书和详细设计书,应该覆盖全部的需求和所有的设计。
评审测试用例:测试用例需要由包括需求人员、设计人员、开发人员、测试人员,以及项目经理等组成的评审委员会的评审。
发现缺陷:测试人员根据用例执行测试,发现缺陷。
建立缺陷跟踪记录表:测试人员对测试过程中发现的缺陷在缺陷跟踪记录表中进行跟踪。
编写测试报告:每轮测试完成后,测试人员应该根据测试情况编写集成测试报告。
缺陷修复:开发组依据测试报告指定开发人员对有关缺陷进行修复,缺陷修复完成后,开发组可以提交下一轮集成测试。
2.5 项目验收
提交组织过程资产:项目初验时把项目成果、《项目过程资产清单》、《项目开发总结报告》,提交到公司组织资产库中;还包括可复用代码,经典解决方案,优秀范例、过程改进建议等。
智能交通信息化项目各阶段的质量保证工作
3.1 参与项目启动
质量保证人员辅导项目经理按照项目实际情况,制定项目已定义过程,明确项目的各交付物,并审核。
3.2 制定质量保证计划
根据项目计划,制定质量保证计划。主要包括检查内容,检查时间,检查人,被检查对象等信息。
根据项目实际情况裁剪各类检查单模板。裁剪的内容必须是项目已定义过程里已经裁剪的。下图是项目计划过程检查单的一部分。
检查单覆盖了信息化生命周期的各过程。
质量保证计划作为项目计划的子计划之一,和项目计划一起评审,并告知项目组检查内容。
3.3 执行质量检查
质量保证人员至少提前一天再次通知项目组检查时间和检查内容。
检查时,和检查对象一起,根据质量保证计划和检查单对项目过程和产品进行检查,发现问题当场和相关检查对象进行确认,并记录。
根据发现的问题,汇总成不符合项追踪表,和检查对象确定纠正措施、计划完成时间、负责人。
每次检查结束后,和项目组确定下一次检查时间。
3.4 跟踪问题项
每周对不符合项修正进度进行跟踪,把不符合项报告发给项目组。
升级规则:如果不符合项未和项目经理达成一致,说明不一致的地方,并注明理由,邮件形式发送部门负责人,请部门负责人一周内以邮件回复确认豁免,否则,按质量保证人员的意见处理。如果部门负责人确认豁免而质量保证人员仍认为有必要纠正的话,则先与部门负责人沟通,若未达成一致将情况上报高层领导。
3.5 完成项目的质量报告
每月第一周,汇总上月数据,完成质量月报。
向项目团队、部门负责人、高层领导邮件汇报项目情况。
结 论
本文通过质量保证方法,对智能交通信息系统进行了全流程监控,从而提升了智能交通信息系统的质量,确保系统全生命周期有序、健康地发展。
参考文献
[1] 杨根兴,蔡立志,陈昊鹏,蒋建伟等,软件质量保证、测试与评价[M],北京,清华大学出版社,2007
[2] 国家质量技术监督局,信息技术 软件包 质量要求和测试,北京,国家质量技术监督局,1999
[3] 张万军,基于CMMI的软件工程及实训指导,北京交通大学出版社,2011
[4] 任甲林,术以载道——软件过程改进实践指南,人民邮电出版社,2014