1、项目实施为了保障统项目的顺利建设实施,以及系统建成之后能够正常并稳定地运行与应用,必须制定完善的项目管理组织实施方案,做到有效地进行资源控制、进度控制和质量控制,确保项目顺利实施;必须建立职责明确、决策有效、执行有力的项目组织机构,成立有业务专家、技术专家和项目管理专家参加的项目组,从组织管理方面对项目实施严格、规范和有效的控制,将相关各方的人员有机地结合到项目的建设中,规范项目建设过程,保证建设质量,达到预定目标。阶段性任务目标为了减少项目实施风险,我公司根据本项目特点制定实施方案,明确各阶段实施任务目标。项目进度与招标人配合我公司制定针对本项目的项目管理方案,对项目人员组织、质量控制、风险
2、控制以及测试验收、培训有详细的安排计划。并且说明项目管理过程中,与用户单位的责任分工配合需求。项目的控制主要体现为项目范围的控制和进度的控制。质量保证工作主要是根据我司质量管理保证体系,对软件开发过程的控制和评审工作,针对本项目有以下的评审工作:l 业务建模评审l 软件需求评审l 架构设计评审l 概要设计评审l 详细设计评审l 数据库设计评审l 代码评审l 测试评审为了保证整个项目能保质按时地顺利完成并交付使用,作为业主方应提供以下配合内容:l 在项目准备阶段,需要成立本项目的项目领导小组,指定本系统的项目负责人,协调本系统涉及的业务部门与我们公司项目组的沟通;提供现有应用系统的相关资料,明确
3、哪些现有系统需要整合;提供本系统所需的源数据;l 在需求调研阶段,需要提供业务系统相关的纸质和电子资料;配合我们公司项目组安排需求调研的具体时间和调研对象;组织相关业务部门认真填写调研表格;审核我们公司提交的需求分析报告;l 在分析和设计阶段,需要安排合适的技术人员参与本系统的系统分析和设计,确认系统原型;提供我们公司项目组现场系统分析、设计人员的办公环境; l 在编码实现阶段,需要安排合适的技术人员参与本系统的编码工作,配合我们公司项目组进行单元测试和集成测试;l 在系统测试阶段,需要组织相关技术人员参与本系统的测试工作,明确测试方法,签署测试报告; l 在部署阶段,需要提供本系统试运行环境
4、;组织相关人员参与系统测试和验收工作,签署系统验收报告;安排相关人员参与技术培训,监控培训过程,评估培训结果;l 在系统维护阶段,需要安排相关的人员配合我们公司项目维护组进行系统排障,签署系统维护报告。 项目管理重点项目管理主要内容包括进度管理、范围管理、风险管理、项目人力资源管理、质量管理、沟通管理、成本管理、项目采购管理这八个方面。它们从不同的方面对项目进行管理,以促使项目能在一定的时间、成本、范围、质量的限制下顺利完成。当然针对不同的项目,项目管理的重点也有所不同。对于本项目,考虑到成本管理在软件开发和进度是有很大关系的,因此我们主要针对项目进度进行管理,以此取代成本的管理。我们将重点从
5、进度管理、范围管理、风险管理、人员管理、沟通管理、质量管理、采购管理这六大方面对本项目进行管理。进度管理:由于本系统是综合性很强的项目,因此无论是整体上还是局部上都要对项目的进度进行严格的管理和控制。范围管理:针对本系统涉及的范围比较广,严格控制项目的范围,才能以此作为依据更好地开展项目。风险管理:为了要让这个项目顺利地完成,必须对项目中的风险进行识别,并采取相应的应对措施,防范于未燃。项目人力资源管理:本系统是一个比较大的系统,为其配备的人员无论是数量上还是要求上都是相对比较高的。要确保配备人员符合项目要求,并形成一个稳定的团队也是我们需要考虑的。沟通管理:系统涉及的业务比较多,人员配备也比
6、较多,因此必须确保消息能从合适的人处正确、及时地传达到适合的人那里。质量管理:由于本系统在一定程度上是代表本系统信息化建设的建设水平,所以对系统有很高的质量要求。我们要针对这一点做好质量管理的工作。采购管理:主要考虑应用支撑平台软件的采购活动和时间安排。项目实施阶段工作项目准备阶段项目准备阶段主要工作是根据项目需要,组建项目开发团队和开发环境的准备工作。其中开发环境的准备是指项目经理组织相关人员根据本项目需要建立开发环境,建立标准开发过程。并制订统一开发规范,包括命名规范,业务建模规范,需求编写规范,设计规范,编码规则,测试指南等。业务建模阶段项目团队通过对本信息系统相关的业务处室组成的用户代
7、表进行业务调研工作,了解本系统的业务流程及其业务需求,并且得到用户的确认。需求分析阶段项目团队通过需求来描述系统功能需求,并使开发人员和用户就这一描述达成共识。经过需求分析后,项目团队编写需求说明书,并得到用户的确认。分析和设计阶段项目团队将需求转化成未来系统的设计,采用分层的方法,进行架构设计,并且在整个系统遵从统一的架构的原则下,经过分析和设计,得到实施模型。编码实现阶段项目团队通过实现过程中主要是以组件的形式实现类和对象,将开发出的组件进行单元测试和集成测试。测试阶段测试条件在开始各阶段的软件测试工作前,被测试的程序或软件必须满足一定的条件,方可提出测试申请。1.单元测试申请条件 单元测
8、试申请条件:a. 程序无错误地通过编译或汇编;b. 完成代码走查;c. 经过程序调试通过。2. 组装测试申请条件a. 完成各模块的单元测试并提交测试报告:b. 提交符合编程格式的源程序;c. 提交组装测试计划。3. 确认测试申请条件a. 完成组装测试并提交测试报告;b. 经验证完全满足设计要求 (包括所有的输入和输出要求);c. 提交确认测试计划。4. 系统测试申请条件a. 完成确认测试并提交测试报告;b. 系统均满足功能需求及设计要求;c. 提交系统测试计划。5. 系统整体性能和压力测试申请条件a. 完成系统测试并提交测试报告;b. 系统均满足性能需求及设计要求;c. 提交性能和压力测试计划
9、。6. 与业务系统整体联调测试申请条件a. 完成整体性能和压力测试并提交测试报告;b. 系统均满足业务逻辑和流程需求及设计要求;c. 提交整体联调测试计划。7. 验收测试申请条件a. 完成上述各阶段的测试并提交相应的测试报告;b. 软件设计开发的文档资料齐备 (需求规格说明书、概要设计、详细设计说明书、用户操作手册、全部的源程序清单等);c. 满足软件质量保证要求;d. 制定验收标准。测试内容1. 测试文档审查我公司必须交付被测试软件的有关文档,以保证测试组充分了解被测试的软件。测试组在测试活动开始前完成测试计划的确认、评审,测试计划至少应包括测试目的、内容、条件、用例、进度、步骤和评价准则。
10、2. 单元测试内容单元测试是针对每个模块的程序,测试以下5个方面的内容:a. 模块接口,对被测的模块,信息能否正常无误地流入和流出;b. 局部数据结构:在模块工作过程中,其内部的数据能否保持完整性,包括内部数据的内容、形式及相互关系是否正确;c. 边界条件:在为限制数据加工而设置的边界处模块是否能正常工作;d. 覆盖条件;模块的运行能否达到满足特定的逻辑覆盖;e. 出错处理:模块工作中发生了错误,其中的出错处理设施是否有效。3. 组装测试内容组装测试是对由各模块联结起来的软件成分进行测试,主要测试模块接口及程序结构方面的问题。4. 确认测试内容确认测试是对组装好的系统进行测试,主要测试系统的功
11、能、性能及其他限制条件能否满足软件需求规格说明的要求。a. 功能方面应测试系统的输入、处理、输出是否满足需求;b. 性能方面应测试系统的数据精确度、时间特性 (如响应时间、更新处理时间、数据转换及传输时间、运行时间等)、适应性 (在操作方式、运行环境与其他软件的接口发生变化时,应具备的适应能力) 是满足设计要求;c.其他限制条件的测试,如可使用性、安全保密性、可维护性、可移植性、故障处理能力等。5. 系统测试内容系统测试应在集成环境下对各分系统进行综合测试。在不具备集成系统环境时,可根据实际情况进行必要的模拟测试。系统测试的内容应包括对各分系统的间的接口正确性的检查和对系统的功能、性能的测试。
12、系统测试一般通过以下几种测试来完成:1). 恢复测试恢复测试是要采取各种人工方法使软件出错,而不能正常工作,进而检验系统的恢复能力。如果系统本身能够自动地进行恢复,则应检验:重新初始化、检验点设置机构、数据恢复以及重新启动是否正确。如果这一恢复需要人工干预,则应考虑平均修复时间是否在限定的范围内。2). 安全测试安全测试验证安装在系统内的保护机构能否对系统进行保护,使之不受各种干扰。系统的安全测试需设置一些企图突破系统安全保密措施的测试用例,检验系统是否有安全保密的漏洞。对某些与人身、机器和环境的安全有关的软件,还需特别测试其保护措施和防护手段的有效性和可靠性。6. 整体性能和压力测试内容整体
13、性能和压力测试应在集成环境下对各分系统进行性能测试。在不具备集成系统环境时,可根据实际情况进行必要的模拟测试。测试一般通过以下几种测试来完成:1.强度测试强度测试检验系统的能力最能达到什么实际限度。在强度测试中程序被强制在它的设计能力极限状态下运行,进而超出此极限,以验证在超出监界状态下性能降级不是灾难性的。2.性能测试性能测试检验安装在系统内的软件运行性能,这种测试需与强度测试结合起来进行。为记录性能需要在系统中安装必要的测量仪表或度量性能的软件。7. 与业务系统整体联调测试内容业务系统整体联调测试是确认已开发的软件能否达到业务逻辑、规范、流程等要求,测试应在软件投入运行后所处的实际生产环境
14、下进行。8. 验收测试内容验收测试是确认已开发的软件能否达到验收标准,包括对测试有关的文档资料的审查验收和对程序测试验收。对于一些关键性软件不必须按照合同进行一些严格的特殊测试,如强化测试和性能降级执行方式测试等。验收测试应在软件投入运行后所处的实际生产环境下进行。测试记录与报告1. 测试记录测试工作的全过程必须详细记录。必须记录测试过程中测试组成员提出的所有问题、开发人员的解答以及测试组成员对测试软件的看法。另外还必须详细记录对软件提出的修改建议以及这些建议被采纳的情况或不被采纳的理由。测试记录作为测试文档还必须归档保存。2. 测试报告在软件测试工作结束时,必须根据软件测试记录填写软件测试报
15、告。详细地记录测试的各项内容及评价。测试报告还应指出在软件测试过程中,发现的软件缺隐以及错误种类和级别。测试组的全体成员应在测试报告上签字。整合测试根据项目的特点,需要在系统部署的时候,和众多的现有业务系统进行整合,为了确保整合的顺利进行和正常的业务工作不受到任何影响,确保整合方案的有效性是十分重要的。所以测试小组根据整合方案模拟出测试环境,并对其进行测试。主要测试检查点是能否顺利整合,并且不影响原有业务开展。为了防止在整合阶段出现异常,影响原有的业务开展,必须准备充足的备份方案和恢复措施,所以在整合工作开展之前,实施异常应急处理测试是非常重要的。测试小组模拟新建系统发生严重问题或联不通的情况
16、,将系统恢复到原来的系统,测试的主要检查点是恢复措施是否及时有效。部署阶段系统经过测试之后,项目团队提供完整的开发文档和用户支持文档,并协助用户将系统发布在用户相应的环境中。系统实施人员制订部署计划并进行大量的准备工作, 以保证系统完成时, 能够在客户的使用环境下成功地部署系统。文档编写人员生成部署时所需的材料,包括系统安装文档,用户手册,和培训材料等。安装系统:系统安装人员将新建的系统部署到运行环境上,并进行现场联调。系统切割:系统安装人员以更新的系统替换旧有系统,并进行现场联调。系统整合:系统安装人员将新建的系统和其他已建的系统进行整合,并进行现场联调。培训:根据用户的需要, 项目经理会安
17、排相关人员用幻灯片, 示例, 教程等方式编写培训教材, 并对用户进行必要的培训。试运行:用户对系统所提供的功能进行实际的运行测试。验收:系统实施人员确保按照“项目验收计划”进行测试时所需的所有软件和测试平台都已就绪。用户进行验收测试,并完成系统的移交工作。提交的主要文档包括:(1)用户调查与需求分析报告(2)系统概要设计方案(3)功能规格说明书(4)系统详细设计说明书(5)系统模块设计说明书(6)数据库设计说明(包含编码方案)(7)系统维护手册(8)用户操作手册项目收尾阶段项目管理小组组织项目团队对项目进行总结。总结项目的开展情况以及在项目开展过程中获得的经验和教训。并得出总结报告,提交给公司
18、的管理层。以供公司同事借鉴,并作为公司积累。项目文档管理工作文档管理和交付要求我司的系统开发是基于RUP的方法,严格遵照面向对象的方法进行组织的。所有文档的编写均需要按照相应模板进行编写,要符合相应的文档编写规范,编写完成的文档要通过评审,然后提交相应的项目干系人,并且根据变更配置管理进行版本控制。我公司除在规定时间内按照招标文件的要求完成该系统的调研、设计、开发、调试、测试等工作外,还应向用户方提供计算机软件光盘,即该系统的可执行程序,并提交以下技术文档:(1)用户调查与需求分析报告(2)系统概要设计方案(3)功能规格说明书(4)系统详细设计说明书(5)系统模块设计说明书(6)数据库设计说明
19、(包含编码方案)(7)系统维护手册(8)用户操作手册以上所有技术文档应包括完备的系统设计文档、功能模块说明、程序代码、使用手册等。我公司会根据用户要求向用户方公开该系统有关技术细节,提供必要的技术资料和技术支持。我公司会负责在系统运行前将系统的全部各种相关的系统软件,各阶段开发文档,运行稳定可靠的本系统及其安装程序,注释清晰明了的、能够编译生成生产环境下正常运行的应用程序的源代码,以及有关产品和系统说明书、安装手册、技术文件、资料、及安装、测试报告等文档汇集成册交付用户方。文档的范围纳入此文档管理范畴的文档主要有三种,开发文档、软件产品和项目管理文档。开发文档:包括需求说明书、数据要求说明书、
20、系统概要设计说明书、系统详细设计说明书、数据库设计说明书、测试计划、测试记录、用户手册、模块开发卷宗、测试分析报告、系统维护手册、操作手册、系统安装手册、能够编译生成目前正在运行的应用程序的源代码以及采购人认为必要的其他文档等;软件产品:包括各种相关的软件系统、各阶段开发文档、系统安装程序、注释清晰明了的能够编译生成目前正在运行的应用程序的源代码等;项目管理文档:包括软件开发计划、进度报告、培训计划、培训记录、例会记录等文档。上述所有文档都是用中文书写。项目文档移交本项目所有需要向业主提交的文档提供纸质文档一套和电子文档一套。由专门的文档管理人员在项目建设期间对文档进行检查和管理,并随时供业主
21、查阅,项目最终验收后全部移交业主。软件质量控制1).结合ISO9001/CMMI3过程规范和PMBOK(项目管理知识体系),建立符合本项目总体实施流程结合ISO9001/CMMI3的过程标准体系,在PMBOK(项目管理知识体系)的指导下,充分建立本项目的总体实施流程,规范整个项目建设与实施,保障项目质量,涉及范围包括:进度管理、人力资源管理、质量管理、测试管理、发布管理、交付物管理、培训管理、后续服务管理、风险管理和沟通管理等10个方面.2).阶段性评审软件质量保证过程包括对软件过程质量控制和软件产品质量控制。我公司在本系统项目组织中,由质量控制组负责质量控制和管理,采用软件度量过程采集信息对
22、软件过程和软件产品的质量进行管理。对软件过程质量的控制通过量化并提取软件过程信息实现对软件过程的目标管理,量化的主要内容包括:产品质量、项目进度和资源占用。软件过程控制一般采用软件开发过程的节点控制的方法。软件开发过程的节点控制是提高软件开发的计划性和成功经验的可重复应用的重要支持手段。我公司在开发本系统的过程中,将充分利用该方法,确保本系统的高质、准时完成。在本系统的开发过程中,把涉及软件开发、应用的人员分为甲方、乙方,甲方代表各种层次的软件系统的用户,乙方代表软件开发商中各组织、各层次人员。软件系统的最终成功基于甲乙双方对软件开发过程的共同控制与管理,甲方侧重“需求”与“监督”职能,乙方侧
23、重“供求”与“控制”职能。甲乙双方实现职能的基础是软件开发过程的可视性,即从甲乙双方角度得到软件开发过程的可见性。如下图所示:图(a)表示一个对甲乙双方可见性极差的过程,甲方给出需求后,经过乙方的开发过程得到的是最终结果,甲方对软件开发过程没法参与。乙方中只有具体的开发人员了解局部的软件过程,高层管理人员没法得到开发过程中具体的过程状态信息,不能根据过程状态做出决策。图(b)表示一个对甲乙双方可见性较好的软件过程,在软件开发过程的特定阶段设置阶段控制点(也称为里程碑),甲乙双方依据阶段成果,从各自的角度提出过程改善与修改意见,控制软件系统生产的质量、开发过程的效率及项目资源消费。3).测试测试
24、是确保本系统质量的重要手段,不经过认真测试的系统是不能被用于生产的。虽然,对各阶段的文档的审核也可认为是测试,但本项目所指的测试是指对应用软件的测试。做好测试是测试组的责任,测试组是与开发组相互独立的两组,且需要相当的技术和经验,对业务的理解要十分透彻。为保证测试的效率和质量需要主意以下几点,建立高效合理的测试流程,包括:建立尽量模拟真实环境的业务数据模型(即运行业务的初始环境);对测试案例的设计要有深度和广度;特别在系统测试和验收测试阶段,安排好项目组的全体人员的任务和责任;做好测试阶段文档和源程序的版本控制;做好测试中发现的BUGS的记录及存档工作;对发现的任何BUGS都要做好原因分析并记录归档;做好回归测试;防止对程序的修改而引起的其他问题。软件测试是一个过程,涉及到软件生命周期的各个阶段。下图描述了软件测试过程模型:测试过程是与开发过程并行的,软件测试的实施过程是与改错过程既是交错的、同时又是并行进行的。在集成测试阶段中,测试一般应当由独立的软件测试人员来实施。这种方法一方面可以有效地压缩测试的总周期,但更重要的是可以避免开发者自身的思维局限,更加客观全面地进行有效的测试。