第一篇:软件开发流程
某软件项目开发流程
1.总纲
目的主要讲述如何组织开发软件项目,使之更加快速、有效的完成。并分成以下几个阶段进行详细讲述:项目计划阶段、需求分析阶段、软件开发阶段、测试阶段、管理软件开发过程、各参与角色的具体职责描述及对人员的要求。
适用范围
开发周期3周、开发人月2人月的项目,中小型(3-7人)软件项目的开发指南,而大型软件项目使用RUP会更好。
注:周期小于上述范围,使用开发任务需求单进行安排,走任务开发流程。
总体流程
计划阶段-》需求分析阶段-》软件开发阶段-》测试阶段-》完成2.项目计划阶段
项目计划草案和风险管理计划作为第一步,当有一个商业机会后,根据公司高层负责制定的初步商业计划书来完成项目的计划草案,确定、分析项目风险并确定其优先级,还要制定风险解决方案。本阶段的目的是确立产品开发的经济理由。
当确定开发之后则制定软件开发计划、人员组织结构定义及配备、过程控制计划。
(1)项目计划草案
项目计划草案应包括产品简介、产品目标及功能说明、开发所需的资源、开发时间和里程碑。
(2)风险管理计划
也就是把有可能出错或现在还不能确定的东西列出来,并制定出相应的解决方案。风险发现得越早对项目越有利。
(3)软件开发计划
软件开发计划的目的是收集控制项目时所需的所有信息,项目经理根据项目计划来安排资源需求并根据时间表跟踪项目进度。项目团队成员根据项目计划以了解他们的工作任务、工作时间以及他们所依赖的其他活动。
可将计划分成总体计划和详细计划,总体计划中每个任务为一个里程碑,详细计划中必须将任务落实到个人。
软件开发计划还应包括产品的应收标准及应收任务(包括确定需要制订的测试用例)。
(4)人员组织结构定义及资源计划
常见的人员组织结构有垂直方案、水平方案、混合方案。垂直方案中每个成员充当多重角色。水平方案中每个成员充当一到两个角色。混合方案则包括了经验丰富的人员与新手相互融合。具体选择根据人员实际技能情况进行选择。
适用范围:开发人月大于5人月、周期超过2个月、投入人员4人以上的项目必须编写计划,低于范围的则可省略或者简化
(5)过程控制计划
过程控制计划的目的是收集项目计划正常执行所需的所有信息,用来指导项目进度的监控、计划的调整,确保项目按时完成。
适用范围:开发人月大于5人月、周期超过2个月、投入人员4人以上的项目必须编写计划 低于范围的则可省略或者简化
3.需求分析阶段
需求分析阶段的目的是在系统工作方面与用户达成一致。
(1)软件需求规约
详细说明系统将要实现的所有功能。
参考文档:
(2)用户界面原型
可以有三种表示方法:图纸(在纸上)、位图(绘图工具)、可执行文件(交互式)。
参考文档:
4.软件开发阶段
本阶段从物理上实现目标系统。采用了面向对象方法。
(1)软件架构
说明软件的组织结构、部署结构及运行环境。
(2)类设计
定义类之间的关联和类的属性、方法。
(3)数据库设计
定义数据库表之间的关联和各个表的字段。
(4)编码和单元测试
按照设计文档进行编码,每完成一个模块应进行单元测试。
(5)集成系统
按软件组织结构的要求将各个子系统组合起来。
四、测试阶段
测试的目的是在发布之前找出程序的错误。包括:核实每个模块是否正常运行(参考设计文档)、核实需求是否被正确实施(参考需求文档)。
(1)测试计划
收集和组织测试信息,为测试工作提供指导。
(2)测试数据
尽量使用真实数据。
(3)测试报告
记录测试结果,详细描述问题,提出解决办法。
(4)帮助文件和用户操作手册
五、管理软件开发过程
有以下几方面地工作:
(1)组织会议
讨论会议、总结会议等。
(2)评审程序
对各个阶段的工作结果进行审核。
(3)协调人员
(4)配置管理
使用一些配置管理工具进行开发文档管理,如:Visual Sourcesafe,Teamsouce等
六、各参与角色的具体职责描述及对人员的要求
(1)项目经理
职责:
1、制定产品的目标。
2、制定各个工作的详细任务表,跟踪这些任务的执行情况,进行控制。
3、组织会议对程序进行评审。
4、综合具体情况,对各种不同方案进行取舍并做出决定。
5、协调各项目参与人员之间的关系。
人员要求:
对产品有激情,具有领导才能。
对问题能正确而迅速地做出确定。
能充分利用各种渠道和方法来解决问题。
能跟踪任务,有很好地日程观念。
能在压力下工作。
(2)系统分析员
职责:
1、了解用户需求,写出《软件需求规约》。
2、建立用户界面原型。
人员要求:担任系统分析员的人员应该善于协调,并且具有良好的沟通技巧。担任此角色的人员中必须要有具备业务和技术领域知识的人才。
(3)设计员
职责:
1、定义类的方法和属性以及各个类之间的关联,画出类图。
2、进行数据库设计。
人员要求:掌握面向对象分析与设计技术,统一建模语言(UML)。
(4)程序员
职责:按项目的要求进行编码和单元测试。
人员要求:良好的编程技能和测试技术。
(5)测试员
职责: 执行测试,描述测试结果,提出问题解决方案。
人员要求:了解被测试的系统,具备诊断和解决问题的技能,编程技能
根据每个人的特长来担任其中的一个或多个角色。最好是每个人都能参与设计和编码工作,每个人都能够建立起系统地全局观
第二篇:软件开发流程
开发流程
第一步:需求调研分析1相关系统分析员和用户初步了解需求,然后用WORD列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。2 系统分析员深入了解和分析需求,根据自己的经验和需求用WORD或相关的工具再做出一份文档系统的功能需求文档。这次的文档会清楚例用系统大致的大功能模块,大功能模块有哪些小功能模块,并且还例出相关的界面和界面功能。3 系统分析员和用户再次确认需求。
第二步:概要设计首先,开发者需要对软件系统进行概要设计,即系统设计。概要设计需要对软件系统的设计 进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。
第三步:详细设计在概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,描述实 现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。应当保证软件的需求完全分配给整个软件。详细设计应当足够详细,能够根据详细设计报告进行编码。
第四步:编码在软件编码阶段,开发者根据《软件系统详细设计报告》中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。
第五步:测试测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。
第六步:软件交付准备在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物。《用户安装手册》应详细介绍安装软件对运行环境的要求、安装软件的定义和内容、在客户端、服务器端及中间件的具体安装步骤、安装后的系统配置。《用户使用指南》应包括软件各项功能的使用流程、操作步骤、相应业务介绍、特殊提示和注意事项等方面的内容,在需要时还应举例说明。
第七步:验收用户验收。
第三篇:软件开发管理流程
软件开发管理流程
根据我公司目前工作现状,开发管理流程涉及到三个方向的工作管理;一是全新项目开发整体流程;二是二期项目开发管理流程(项目已部分上线,二期进行其它公司或模块上线);三是维护工作管理流程;
一、升级项目流程
针对我公司现有的BSP项目,存在有些省份的BSP项目存在部分上线而对于后期需要继续上线其他部分的情况,提出以下工作流程。
总体流程
计划阶段-》需求分析阶段-》软件开发阶段-》测试阶段-》部署上线—》验收完成(一)计划阶段
制定整体开发计划,计划体现整个开发周期,包括需求、编码、测试周期以及资源要求;
(二)需求分析阶段
修订需求版本,提供需求说明书,并提出需求评审申请。
评审:发起需求评审的同时提交评审资料至项目管理部—》项目管理部给相关
人员发放资料并通知评审安排--》记录评审结果(需整改时整改之后可再次评审)--》确定需求版本。
(三)软件开发阶段
编码开发前:开发环境搭建,其中包括迁出代码最新版本,从线上复制出数据库(或者导出基础数据库表数据);其目的为开发环境与正式环境保持一致,为上线前的部署做好准备。
编码开发中:开发组长对整个开发过程做好监控,保证质量的同时保证进度;并且要求开发人员做好工作记录;加强团队的协作与沟通。
编码开发完:提交相关资料(操作手册、部署文档:sql脚本、代码文件路径记录、流程文件路径记录),组长整理部署文档并且提交测试申请;部署文档要求写明部署步骤及部署内容及相应注释;
(四)测试阶段
测试组长根据测试申请中的测试内容安排测试。测试环境模拟线上测试环境,根据部署文档进行部署,并且记录所有补丁包。测试过程中开发人员在修改bug的同时需要维护部署文档。
(五)部署
部署人员根据部署文档中描述的步骤部署系统。完成之后实施人员安排验收。
二、全新项目开发管理流程
总体流程
计划阶段-》需求分析阶段-》软件开发阶段-》测试阶段-》部署上线—》验收完成(一)计划阶段
项目计划草案和风险管理计划作为第一步,确定、分析项目风险并确定其优先级,还要制定风险解决方案。本阶段的目的是确立产品开发的经济理由。当确定开发之后则制定软件开发计划、人员组织结构定义及配备、过程控制计划。
项目计划草案
项目计划草案应包括产品简介、产品目标及功能说明、开发所需的资源、开发时间和里程碑。
风险管理计划
就是把有可能出错或现在还不能确定的东西列出来,并制定出相应的解决方案。风险发现得越早对项目越有利。
软件开发计划
软件开发计划的目的是收集控制项目时所需的所有信息,项目经理
根据项目计划来安排资源需求并根据时间表跟踪项目进度。项目团队
成员根据项目计划以了解他们的工作任务、工作时间以及他们所依赖的其他活动。
项目管理培训
可将计划分成总体计划和详细计划,总体计划中每个任务为一个里
程碑,详细计划中必须将任务落实到个人。
软件开发计划还应包括产品的应收标准及应收任务(包括确定需要
制订的测试用例)。
人员组织结构定义及配备
常见的人员组织结构有垂直方案、水平方案、混合方案。垂直方案
中每个成员充当多重角色。水平方案中每个成员充当一到两个角色。
混合方案则包括了经验丰富的人员与新手相互融合。具体选择根据人
员实际技能情况进行选择。
过程控制计划
过程控制计划的目的是收集项目计划正常执行所需的所有信息,用来
指导项目进度的监控、计划的调整,确保项目按时完成。
(二)需求分析阶段
需求分析阶段的目的是在系统工作方面与用户达成一致。
(1)软件需求规约
详细说明系统将要实现的所有功能。
(2)用户界面原型
可以有三种表示方法:图纸(在纸上)、位图(绘图工具)、可执行文件(交互式)。
(三)软件开发阶段
本阶段从物理上实现目标系统。采用了面向对象方法。
(1)软件架构
说明软件的组织结构、部署结构及运行环境。
(2)功能设计
定义功能点之间的关联。
(3)数据库设计
定义数据库表之间的关联和各个表的字段。
(4)编码和单元测试
按照设计文档进行编码,每完成一个模块应进行单元测试。
(5)集成系统
按软件组织结构的要求将各个子模块组合起来。
(四)测试阶段
测试的目的是在发布之前找出程序的错误。包括:核实每个模块是否正常运行(参考设计文档)、核实需求是否被正确实施(参考需求文档)。
(1)测试计划
收集和组织测试信息,为测试工作提供指导。
(2)测试数据
尽量使用真实数据。
(3)测试报告
记录测试结果,详细描述问题,提出解决办法。
(4)用户操作手册
(五)管理软件开发过程
有以下几方面地工作:
(1)组织会议
讨论会议、总结会议等。
(2)评审程序
对各个阶段的工作结果进行审核等。
(3)协调人员
(4)监控进度
软件项目开发流程
第一个步骤是市场调研,技术和市场要结合才能体现最大价值。
第二个步骤是需求分析,需求人员出需求分析说明书。发起需求评审申请,项目管理部组织开发团队进行评审;
评审:发起需求评审的同时提交评审资料至项目管理部—》项目管理部给相关人员发放资料并通知评审安排--》记录评审结果(需整改时整改之后可再次评审)--》确定需求版本。
第三个步骤是概要设计,将系统功能模块初步划分,并给出合理的研发流程和资源要求。按照公司现状,使用快速原型设计方法完成概要设计就可以进入编码阶段了,通常采用这种方法是因为涉及的研发任务属于新领域,技术主管人员一上来无法给出明确的详细设计说明书,但是并不是说详细设计说明书不重要,事实上快速原型法在完成原型代码后,根据评测结果和经验教训的总结,还要重新进行详细设计的步骤
第四个步骤是详细设计,这是考验技术专家设计思维的重要关卡,详细设计说明书应当把具体的模块以最‘干净’的方式提供给编码者,使得系统整体模块化达到最大;一份好的详细设计说明书,可以使编码的复杂性减低到最低。
第五个步骤是编码,开发人员需严格按照编码规范及需求文档编码,编码时不同模块之间的进度协调和协作是最需要小心的,也许一个小模块的问题就可能影响了整体进度,让很多程序员因此被迫停下工作等待,这种问题在以前的开发过程中都出现过。编码时的相互沟通和应急的解决手段都是相当重要的。项目组长需提高对开发过程中问题的管控能力。尽量避免重大问题,提高工作效率。
第六个步骤是测试,测试有很多种:按照测试执行方,可以分为内部测试和外部测试;按照测试范围,可以分为模块测试和整体联调;按照测试条件,可以分为正常操作情况测试和异常情况测试;按照测试的输入范围,可以分为全覆盖测试和抽样测试。总之,测试同样是项目研发中一个相当重要的步骤。
第七个步骤是部署,搭建部署环境,按照部署方案进行部署,完成后验收测试;
第四篇:股票软件开发方案流程
股票软件开发顾名思义就是股票软件开发公司为公司或个人开发制作自已个性化的股票分析软件,从此彻底告别依赖别人的技术平台支持,从股票软件名称,公司LOGO,启动界面,系统功能,特色指标、特色选股、软件注册后台,信息发布平台,机构数据,主力行情,大盘分析,个股分析,资金分析,热点分析等等一系列功能上实行自已品牌化管理运行。
【行情平台】
股票软件开发商提供专用稳定的股票数据接收服务器,以及专用股票软件时时接收的行情数据,做到与行情软件时时数据相差无几,但比行情软件综合数据库要多要大要全,特色指标和特色选股要全面,特有的信息发布平台让资讯更及时更准确,独特的网络注册后台让注册修改客户帐号变的更轻松更快速,等众多优于其他同类软件的功能特点。
股票软件的实质是通过对市场信息数据的统计,按照一定的分析模型来给出数(报表)、形(指标图形)、文(资讯链接),用户则依照一定的分析理论,来对这些结论进行解释,也有一些傻瓜式的易用软件会直接给出买卖的建议。其实,比较正确,或者实在的用法,是应该挑选一款性能稳定、信息精准的软件,结合自己的炒股经验,经过摸索之后,形成一套行之有效的应用法则,那样才是值得信赖的办法,而机械地轻信软件自动发出的进场离场的信号,往往会谬以千里。
第五篇:政府信息化软件开发工作流程
北京赛迪时代信息产业股份有限公司
政府信息化软件开发工作流程
第一章 总则
根据政府信息化事业部(以下简称“事业部”)业务的特点,事业部的软件开发流程按项目阶段进行划分,通过对每个阶段所进行的流程定义,来保证最终软件的质量。
事业部软件开发项目的开发工作流程,主要包含以下7个要素来描述。
软件立项控制 软件开发计划 软件需求分析 软件设计 软件实现
软件测试和测试状态 软件产品实施维护 项目开发的总体过程流程如下图:
Page 1 of 19 北京赛迪时代信息产业股份有限公司
第二章 软件立项控制
§2.1 目 的
加强事业部对软件项目/内部产品立项的控制,保证软件项目/内部产品的开发过程及开发目标的可行性和合理性,确保及时的推出有市场竞争能力、有广阔应用前景、产品化程度较高的软件产品。§2.2 适用范围
适用于需要公司投资的软件研发项目,现有软件产品化项目、现有软件/产品二次开发项目、现有软件/产品重大升级项目等,均属本项程序适用范围。§2.3 岗位与职责
业务(市场)部门
根据市场提供的业务立项申请和客户信息系统集成需要,提出软件开发立项的可行性分析,经事业部总经理审核后,提交项目管理委员会进行立项评审。
研发小组
事业部研发小组根据事业部软件产品发展规划,提出软件产品立项可行性分析;经事业部总经理审核后提交项目管理委员会进行立项评审。研发小组负责通过立项评审后软件产品的开发。
事业部总经理
事业部总经理审核软件开发立项的可行性分析报告,并提交项目管理委员会进行立项评审。
项目管理委员会
项目管理委员会对各业务部门提交的立项报告进行评审。参与立项报告评审,立项相关文档备案。
公司总经理
公司总经理根据评审结果,批准立项报告。
公司财务部门
参与立项报告评审,立项相关文档备案。§2.3 业务操作流程
§2.3.1 工作流程图
软件立项工作的详细的工作流程如下图所示例:
Page 2 of 19 北京赛迪时代信息产业股份有限公司
业务(市场)部 项目/产品 立项申请 立项 可行性分析 事业部总经理 项目管理委员会 公司总经理 财务部门 提交立项 评审 立项评审 立项评审 报告 项目/产品 立项审批 立项备案 立项备案 立项备案 软件产品开发立项流程图
§2.3.2 流程说明
(1)立项申请
各业务部门和事业部可根据公司的整体发展规划,紧密结合项目/产品市场及本公司的具体情况,提出软件立项。提交事业部总经理,经事业部总经理审核通过后,提交项目管理委员会进行立项评审。
Page 3 of 19 北京赛迪时代信息产业股份有限公司
(2)立项评审与审批
由项目管理委员会组织立项评审,对各部门提交的立项申请进行评审,根据评审结果,由公司总经理确定是否立项。
立项申请批准后,软件开发由事业部研发小组负责执行,研发小组成立具体软件项目/产品开发组,确定开发负责人。(3)软件开发立项备案
软件开发立项审批通过后,立项过程中的相关资料分别在财务部、事业部项目管理委员会、立项申请部门备案。
第三章 软件开发计划
§3.1 目 的
编制软件开发计划的目的在于规划软件开发过程中的各种活动,确保开发计划制定的正确性与有效性,保证软件开发过程可估量。§3.2 适用范围
本程序适用于软件项目/产品开发计划的制定与修改。§3.3 岗位与职责
项目经理/技术开发经理
制定、审批与修订软件项目/产品开发计划;开发计划备案。
事业部总经理
审批《软件开发计划》。
项目管理部
负责软件开发计划的归档管理;监督检查软件开发计划的执行情况;协调软件开发计划执行过程中资源配置;向有关领导(项目实施部门经理、事业部总经理、公司总经理)报告项目执行状况。
§3.4 工作流程概述
§3.4.1 业务操作流程图
制定软件开发计划部分的详细的工作流程如下图所示:
Page 4 of 19 北京赛迪时代信息产业股份有限公司
项目经理/技术开发经理 项目计划制定 主管副总经理 项目管理部 项目计划修订 项目计划审批 备案 备案 备案 软件产品开发计划业务流程图 §3.4.1 业务操作流程说明
(1)软件开发计划制定、审批与备案
项目经理根据审核批准的立项申请,制定软件开发计划,并提交给事业部总经理审批。项目经理根据审批结果对开发计划进行修订、补充直到审批通过。
重大项目的软件开发计划应由事业部总经理审批。项目经理根据审批结果对开发计划进行修订、补充直到审批通过。
项目经理将审批通过后的软件开发计划归档。(2)软件开发计划的修订
在项目/产品开发过程中,项目经理根据开发中的具体情况需修改软件开发计划时,须向本事业部总经理提出申请;经同意方可修改软件开发计划相关内容。
第四章 软件需求
§4.1 目的
通过对用户业务进行需求分析和学习,减少对客户业务的理解偏差,从而降低需求阶段的风险。保证软件能够满足客户的业务需要。
Page 5 of 19 北京赛迪时代信息产业股份有限公司
§4.2 适用范围
适用于软件开发过程中需求分析和需求分析修改的操作过程。§4.3 岗位与职责 项目经理: 制定需求分析计划;组织开展从技术应用角度出发的纵向与横向的调查;撰写需求分析调查报告;组织相关人员进行需求分析;撰写需求规格说明书,并提交项目管理委员会进行内部评审;评审后的需求分析说明书提交给客户方签字确认。参与需求规格说明书的评审。 项目组
参与从技术应用纵向与横向的调查;参与需求分析;参与需求分析评审。 客户方代表:
参与制定需求分析计划;组织开展用户应用角度出发的调查;撰写需求调查报告;参与需求分析;参与撰写需求规格说明书;参与需求分析评审。 项目管理委员会
项目管理委员会组织软件项目/产品的需求规格说明书评审。需求规格说明书的归档管理;监督检查需求分析阶段计划的执行情况;协调项目执行过程中资源配置。
事业部总经理:
审核需求规格说明书,并参加需求规格说明书评审,审批一般项目的需求规格说明书。 总经理:
审批重大项目的需求规格说明书。§4.4 程序概述
§4.4.1 业务操作流程图
需求分析阶段详细的业务操作流程如下图:
Page 6 of 19 北京赛迪时代信息产业股份有限公司
§4.4.2 业务操作流程描述
(1)需求分析计划的制订与审批
项目经理组织开发小组根据软件开发计划编写软件的需求分析计划。计划内容主要有: 业务调查计划; 需求分析采用的方法; 需求分析采用的工具; 需求分析过程; 需求分析结果表示方法; 需求分析进度安排及人员分工。
需求分析计划编写完成后由项目经理提交给事业部总经理审批。(2)《需求规格说明书》编写、评审与审批
需求分析结束后,项目经理汇总需求分析结果形成《需求规格说明书》,所有需求分析结果如流程图或表格文件均以附件纳入《需求规格说明书》中。并提交项目管理委员会备案或评审。
Page 7 of 19 北京赛迪时代信息产业股份有限公司
第五章 软件设计
§5.1 目的
设计详细的软件开发和设计过程,保证整个过程和软件功能模块的设计有可遵循的依据和规范,保证软件设计过程的完整性和可跟踪性。§5.2 适用范围
适用于软件开发过程中的概要设计和详细设计。§5.3 岗位与职责 项目经理
制定软件开发详细计划;汇总和审核概要设计文档;编写概要设计说明书,并提交项目管理委员会评审;参与概要设计评审;汇总和审核详细设计文档;编写详细设计说明书。 开发小组:
进行概要设计,编写系统配置方案文档和模块的概要设计文档;参与概要设计评审;进行详细设计。技术经理负责检查详细设计说明书。 项目管理委员会:
组织概要设计说明书的评审。 事业部总经理:
参加概要设计说明书评审并审批设计方案。§5.4 程序概述 §5.4.1 工作流程图
详细的工作流程如下图:
Page 8 of 19 北京赛迪时代信息产业股份有限公司
项目经理 开发小组/技术经理 项目管理委员会 事业部总经理 制订设计计划 编写概要设计 编写详细设计 审批 评审准备 组织评审审批 备案 审批 审批 备 案 软件设计流程图
第六章 软件实现
§6.1 目的
规范软件开发实现过程,保证产品质量。§6.2 适用范围
适用于软件产品详细设计结束后的产品实现过程。§6.3 岗位与职责
研发小组
负责软件的详细实现,代码的编写、用户手册的编写;程序源代码的调试和用户手册备案;
项目经理
负责过程的跟踪和资源的调配。§6.4 程序概述 §6.4.1 详细工作流程图
Page 9 of 19 北京赛迪时代信息产业股份有限公司
软件实现阶段的详细工作流程如下图所示:
项目经理 制订实现计划 开发小组 事业部经理 上报审批 编写源代码 审核源代码 代码调试 调试确认 编写手册 手册审核备案 软件实现流程图
§6.4.2工作流程说明
(1)制定软件实现计划
项目开发经理制定软件实现计划,计划的主要内容有:
任务描述;
编程语言;
用户手册清单;
产品实现过程及检查审核;
产品实现阶段进度安排及人员分工;(2)开发过程中的进度控制
设计人员根据项目的任务分配和进度情况,制定周计划,并提交相应的周总结。对任务完成情况和存在的问题进行说明,交项目经理审核和检查。(3)源代码编写
软件工程师(开发小组)根据详细设计说明书进行程序代码的编写,编写的代码参考开发小组内部的软件产品开发编程指南。(4)源代码会审
Page 10 of 19 北京赛迪时代信息产业股份有限公司
代码编写完后,项目经理/技术开发经理组织开发小组对程序源代码进行交叉代码会审并作好记录,会审要点如下:
是否遵循所使用的程序语言编码规范;
数据结构是否合理化,即数据结构访问的规范化、标准化。
程序设计风格,主要包括:
源程序的文档化,包含符号名的命名、程序的注释、视觉组织—空格、空行和缩进;
数据说明的方法;
语句结构;
输入输出结构。
对于审核中不合格的地方,开发组应进行修改。(5)程序调试与确认
源代码会审通过后,开发小组开始进行程序调试,直至基本运行无误。程序调试通过后,技术经理/项目经理应对其进行确认。(6)用户手册编写与审核
开发小组根据《概要设计说明书》和《详细设计说明书》编写用户手册,包括产品安装手册、产品使用手册和产品维护手册。用户手册编写好后,技术/项目经理应对其进审核。(7)源代码和用户手册备案管理
程序调试结束后,技术/项目经理编写软件源代码清单,并将程序源代码和用户手册统一管理。
第七章 软件测试和测试状态
§7.1 目的
说明本程序的目的是规范软件测试过程,指导软件测试工程师进行软件测试,提高软件产品的质量。§7.2 适用范围
适用于单元测试、集成测试、系统测试、三类测试业务。§7.3 岗位与职责
事业部总经理
负责审批《测试计划书》;签发《产品发布证明》。
Page 11 of 19 北京赛迪时代信息产业股份有限公司
项目经理/技术经理
负责评审测试计划;测试分析报告。
软件测试经理
软件测试经理/项目经理负责撰写软件测试计划;评审测试需求说明书和测试用例说明;对测试环境进行确认;
软件开发小组负责人
组织单元测试和集成测试;单元测试通过确认;测试异常终止确认;测试异常汇总,撰写单元测试分析报告;组织产品开发工程师修改程序;编写软件发布证明。
软件测试工程师
负责撰写测试需求规格说明书和测试用例文档;搭建测试环境、初始化和检验;执行测试用例和进行系统测试;分析和报告测试过程中异常。
软件开发工程师
负责测试未通过后程序的修改。§7.4 工作流程概述
§7.4.1 工作流程图
软件测试详细的工作流程见下图:
Page 12 of 19 北京赛迪时代信息产业股份有限公司
用户 软件测试 工程师 软件开发 工程师 项目经理 研发小组 负责人 事业部 总经理 制定测试计划书 审批 测试规格书 测试用例 审 核 内部测试 修改 外部测试 修改 测试分析 报告 审批 产品发布 证明 审批 并签字 软件测试和软件状态流程图
§7.4.2 详细工作流程描述
(1)测试计划书的编制与评审
软件项目启动后,软件测试经理指派测试工程师参与项目开发的整个过程,编制软件产品测试方案,安排各测试阶段时间,软件测试人员等。在软件开发的需求阶段软件测试介入编写软件测试计划书。软件测试经理指派测试工程师根据软件开发计划、需求规格说明书、概要设计说明书和详细设计说明书编制软件测试计划书,测试计划书主要包括如下内容:
Page 13 of 19 北京赛迪时代信息产业股份有限公司
测试目的;
测试范围;
测试方法;
测试路径;
测试工具;
测试通过准则;
测试异常终止准则;
测试进度安排及人员分工。
软件测试人员提交测试计划书给软件测试经理和软件开发小组负责人、项目经理共同评审。审批后的测试计划书由软件测试经理安排相应的软件测试工程师执行。
(2)测试用例的编写、审核与备案
软件测试工程师根据测试计划、概要设计说明书和详细设计说明书编写测试规格书与测试用例。
《测试规格书》主要包含如下内容的详细信息:
测试环境说明;
业务功能点;
测试功能点;
测试检测点;
测试用例使用。
《测试用例》是软件测试工程师使用的文档化细则,其规定如何对某项功能或者功能组合进行测试。主要包含下列内容的详细信息:
测试目标;
要测试的功能;
测试环境要求/前置条件;
测试数据;
过程;
系统的预期行为;
项目经理、软件测试经理和开发小组负责人评审测试规格书和测试用例,主要包括以下方面:
Page 14 of 19 北京赛迪时代信息产业股份有限公司
测试用例的覆盖范围是否合适;
测试输入条件的设计是否合理、有效;
在给定的输入条件下,预期的输出结果是否正确;
测试强度是否足够。
评审通过后,软件测试工程师将按照《测试规格书》和《测试用例》进行实际的测试活动。
(3)测试环境的建立、检验与确认
软件测试工程师根据《测试规格书》建立测试环境,主要包括:
主机环境;
操作系统环境;
数据库平台;
网络环境;
应用平台;
其它支撑环境。
若《测试规格书》对测试环境有初使化要求,软件测试工程师进行环境的初始化设置。
测试环境准备好后,软件测试工程师应检验测试环境各项参数,将结果记录在测试环境初始化记录表中。若检查结果不符合测试环境要求,产品测试工程师应仔细分析原因,采取措施,直到满足要求为止。软件测试/项目经理对测试环境进行确认。(4)软件测试过程
软件项目都可根据项目自身情况选择下面几种测试方式。
单元测试
Page 15 of 19 北京赛迪时代信息产业股份有限公司
软件开发工程师使用单元测试用例执行单元测试,并将测试结果如实记录在测试结果记录栏内。
1.若测试结果正常,软件开发工程师在《测试状态控制表》中标识该测试用例为测试通过,继续下一单元《测试用例》的测试。
2.若测试结果为一般异常,软件开发工程师首先在《测试状态控制表》中标识该测试用例为测试异常,然后开发工程师首先进行原因分析,然后修改程序,修改好后将程序转交给重新进行单元测试。
单元测试结束后,软件开发小组负责人/项目经理应查对《测试状态控制表》,并审核各单元测试用例记录结果,确认单元测试全部通过。
集成测试
单元测试通过后,软件开发负责人组织软件开发工程师使用集成测试用例进行集成测试,并将测试结果如实记录在集成测试用例中的测试结果记录栏内。
系统测试
系统测试是指(非开发人员)在开发环境或模拟实际操作环境下进行的测试。通常在公司内部进行,所以也可叫内部试运行。
1.软件测试经理/项目经理准备《测试规格书》和《测试用例》,向软件测试人员进行产品介绍和测试介绍。
2.软件开发工程师辅助测试工程师建立、初始化并检验测试环境,项目经理进行确认。
3.软件测试人员执行系统测试,详细记录使用中出现的问题和测试过程中的错误情况。
4.系统测试结束后,软件测试经理汇总所有测试异常情况,撰写软件系统测试分析报告,并组织开发小组进行缺陷的评审。
5.项目经理/软件开发小组负责人组织软件开发工程师进行产品修改并调试通过后,重新开始回归测试。
(5)测试总结
测试异常分析
Page 16 of 19 北京赛迪时代信息产业股份有限公司
系统测试结束后,软件测试工程师对系统测试用例中出现的测试异常进行原因分析,主要内容有:
该测试异常可能为模块内部错误、模块间藕合错误。 该测试异常可能为需求分析错误、设计错误或实现错误。 该测试异常错误原因描述。
软件测试工程师将分析结果记录在测试用例中。测试异常汇总与测试分析报告撰写、审核
软件测试经理收集所有测试用例,汇总所有测试异常情况和缺陷问题记录,编写《测试分析报告》,主要有以下方面:
1、测试结果
测试用例通过率;
强度测试和性能测试结果。
2、分析结果
分别涉及需求分析、设计、实现错误个数及比率;
模块内部错误、模块间藕合错误(接口错误)比率及相对比例;
主要错误源。
3、测试结论
测试通过;
未通过且修改完成后进行回归测试(集成测试);
未通过且修改完成后重新开始集成测试;
放行;
软件测试经理组织软件开发小组负责人和项目经理评审测试缺陷分析报告。
(6)测试结果处理
1、测试通过
若测试结论为“测试通过”,项目经理/软件开发小组负责人可申请产品内部发布。
2、测试未通过
若测试结论为“测试未通过”,则:
Page 17 of 19 北京赛迪时代信息产业股份有限公司
软件开发工程师根据测试用例中“测试记录”和“异常分析”,修改、调试程序,并重新进行单元测试直到通过为止。
3、产品放行
若测试结论为“放行”,则:
项目经理填写《产品发布证明》,提出产品发布申请,主要包括:
产品名称;
产品编号;
版本号;
产品测试结论;
产品发布内容;
产品包装内容;
产品储存媒介;
技术保密措施;
交付用户使用方式。
事业部总经理审批产品发布证明。
4、版本冻结与版本管理启动
产品正式发布审批通过后,项目经理将该版本统一管理。
第八章 软件产品实施、支持和维护 §8.1 目 的
本部分流程描述的目的是规范软件产品的实施、支持和维护活动,解决软件在客户环境下进行安装、验收、使用、维护中出现的问题,及时有效地修改软件错误,扩充软件功能、改进软件性能,树立良好的产品形象。§8.2 适用范围
适用于软件产品实施、支持和维护,包括技术支持和维护培训、间接技术支持和维护、直接技术支持和维护。§8.3 岗位与职责
软件实施工程师
负责软件系统的安装部署、实施。系统使用的技术支持和维护培训、咨询;故障登录;新故障编号与入库;故障诊断;故障回复;故障统计;产品升级申请;直接技术支持和维护;解决软件产品故障;故障升级处理报告;
Page 18 of 19 北京赛迪时代信息产业股份有限公司
项目经理
负责组织协调故障升级处理措施;
软件开发小组
负责产品版本升级申请审核;技术支持和维护支援申请;
软件实施经理
统一安排和规划软件实施过程中的所有活动。§8.4 程序概述
软件开发小组组织人员针对所开发之产品对软件实施人间进行相关的安装配置培训。
软件正式发布通过后,软件开发小组对软件实施小组实施人员对公司内实施经理和实施人员进行技术支持和维护培训,具体包括:产品介绍、产品安装、产品使用、产品维护。
软件实施经理根据客户的要求安排软件的实施计划。确认安装资源是否准备到位等活动。实施过程中软件实施小组人员可以电话、传真、电子邮件方式向软件开发小组提出关于产品安装、使用和维护过程中所产生的疑问开发小组根据提问者要求和问题严重情况以电话、传真、电子邮件及时进行回复,并帮助解决软件产品故障。
软件实施小组针对客户要求直接面向客户进行产品的培训和现场技术支持。软件实施小组定期统计软件实施过程中发现的产品故障,统计软件产品故障。若软件故障较为严重且数目很多,产品实施工程师提出软件版本升级申请单交产品研发小组/项目经理共同评审。
Page 19 of 19