软件过程规范示例.docx
- 文档编号:257607
- 上传时间:2022-10-07
- 格式:DOCX
- 页数:15
- 大小:47.88KB
软件过程规范示例.docx
《软件过程规范示例.docx》由会员分享,可在线阅读,更多相关《软件过程规范示例.docx(15页珍藏版)》请在冰豆网上搜索。
软件过程规范示例
编者说明:
软件过程管理中的一个很重要的工作就是制定项目、组织的过程规范,它是软件开发组织行动的准则与指南。
该文档就是一个实际的过程规范的实例,通过该实例,相信对大家根据自身情况制定符合要求的项目过程规范、组织过程规范有很好的借鉴作用。
1.总则
最大限度提高Q&P(质量与生产率),提高Q&P的可预见性,是每一个软件开发机构的最大目标。
而Q&P
依赖于三个因素:
过程、人和技术,因此要实现Q&P的提高,除了加强技术能力,引进、培育更多优质技
术人才之外,规范、改进机构的过程是一个十分重要的手段。
我们希望通过在制定软件过程规范标准,并在软件开发实践中不断地完善、修订,提高Q&P和Q&P的可预见性。
本规范采用CMM(软件过程成熟度模型)的指导,吸收RUP、XP、MSF、PSP、TSP等过程规范指南的思想、
方法及实践,充分结合XXX技术开发部的实际情况,引入先进的技术、方法、工具,为公司的软件开发工作提供一部详细、可操作的过程指南。
在本规范的第一版本中,主要包括管理过程和开发过程两个部分,
管理过程中包括项目管理过程、需求变更管理过程、配置管理过程。
对于软件开发项目中的其它的一些过
程将在实践中逐步补充、完善。
2.项目管理过程规范
项目管理过程主要包括三个阶段:
项目立项与计划、项目实施、项目关闭。
2.1项目立项与计划
、立项申请人、[相关最
参与人员:
技术开发部指定的项目负责人(包括前期负责人、正式的项目经理)终客户]以及实施该项目的开发组队成员;
入口准则:
接到经公司总经理或副总经理批准的市场部门的《软件开发立项申请表》;
出口准则:
立项申请人签字确认了经修订正后的正式《软件项目计划》,并通过《工作任务卡》下达了开
发任务,开发工作正式开始;输入:
经审批的《软件开发立项申请表》、与需求相关的业务资料;输出:
《软件项目计划》、《软件需求规格说明书》、《开发任务卡》;活动:
接到《软件开发立项申请表》后,技术开发部经理指定前期负责人,并告知立项申请人;
前期负责人阅读《软件开发立项申请表》后,通过与立项申请人的沟通、阅读立项申请人提交的材料、通过立项申请人与客户直接交流等方式,了解项目目标、范围与基本需求;并形成最初的《软件需求规格说明书》;
前期负责人会同技术开发部经理以及其它相关人员,向立项申请人提交最初的《软件项目计划》;
根据立项申请人确认后的《软件需求说明书》,项目经理组织进行软件高层设计,并对工作任务进行分解,并根据实际需要向技术开发部经理申请资源,组建项目组队;
项目经理根据工作任务分解,下发《工作任务卡》,并协同组队成员进行任务估算;
注:
工作任务包括模块开发任务、其它任务(如安装);模块开发任务主要包括:
详细设计、编码和单元
测试
任务估算完成后,组队成员向项目经理提交《个人进度安排》(以甘特图的形式表示),项目经理根据每
个组队成员的《个人进度安排》修订《软件项目计划》(必须包括总的计划甘特图),并提交立项申请人确认;
,下发到每个组队成员,开发
立项申请人确定后,项目经理根据软件项目计划基线,补充《工作任务卡》工作开始。
项目立项与计划过程的工作流程如下图所示:
图表1项目立项与计划工作流程图
相关模板:
《软件需求规格说明书》、《软件项目计划》、《工作任务卡》
说明:
如果计划确认、需求确认未通过,立项申请人与项目经理进行协商,进行修正,无法达成共识
的,提交部门经理、总经理协调;
2.2项目实施
参与人员:
项目经理,|项目组成员;
入口准则:
项目计划基线已建立,并通过立项申请人确定,带有工作进度要求的《工作任务卡》已下发到每个项目成员;出口准则:
立项申请人在《验收报告》上签字确认;
输入:
《软件需求规格说明书》、《软件项目计划》、《工作任务卡》;输出:
经验收测试的可交付的程序、源代码及相关文档。
活动:
在开发期间,项目成员每周需上交一份《时间日志》、《缺陷日志》,每天向项目经理汇报工作任务进度;
在开发期间,项目经理负责填写《项目进度周报》报于技术开发部经理、立项申请人(格式不同,交予立项申请人的只需周报的第一页,报予技术开发部经理的项目进度周报的第二页为跟踪甘特图”;
项目经理必须根据实际的进度情况,及时调整项目计划,若发现进度延误,需采取措施。
相关模板:
《软件项目计划》、《开发任务卡》、《时间日志》、《缺陷日志》、《项目进度周报》
2.3项目关闭
[相关客户、公司总经理、
参与人员:
技术开发部经理或经理助理、项目经理,项目组成员、立项申请人、公司副总经理];入口准则:
立项申请人在《验收报告》上确认;
出口准则:
形成《项目总结》,完成项目绩效考核,项目数据存入过程数据库”
输入:
《时间日志》、《缺陷日志》、《项目开发计划》;
输出:
《项目总结》、已完成的《项目绩效考核表》、过程数据库中的该项目记录;活动:
£持召开项目总结会,交流项目实施过程中的心得体会,对项目实施中的成功处、不足处进行总结,并由项目经理形成《项目总结》;
由技术开发部经理组织对该项目进行绩效考核,并填写相应的《项目绩效考核表》;
项目经理组织所有成员对项目过程中的文档、源程序等资料进行整理、归档;
由项目经理根据过程数据库的需要,整理相应的数据,提交技术开发部经理,存入过程数据库。
相关模板:
《项目总结》、《项目绩效考核表》
3.开发过程规范
开发过程是提炼用户需求,设计、构建和测试满足这些需求的软件并最终将其交付给客户的过程。
是软件过程中的主体过程之一。
当开发新的应用或计划为现有的应用进行重要的增强时,需使用本规范所定义的开发过程执行。
项目管理过程是对开发过程进行计划、监控/管理、总结的辅助过程,但由于项目管理是保证进度、质量
的重要手段,因此在软件项目中也是十分重要的过程之一。
而需求管理过程与配置管理过程则是次重要的辅助过程,需求管理过程是一个需求变更管理的过程,以对变更进行统一的管理;配置管理过程的最重要工作就是版本控制,使得开发过程中的各种交付物能够有机地形成一个个整体。
因此以上四个过程是交织进行的,均是为成功完成软件项目的保障过程。
3.1过程总述
现在比较通行的开发过程模型包括:
瀑布模型、演化模型、原型模型、螺旋模型等。
根据公司的项目特点、队伍规模、组队情况等实际因素,决定选择最为简单、易于掌握的瀑布模型为基础,根据公司特点,进行合理的修改,使其成为公司本阶段的软件开发过程。
正如下图所示,本规范将整个开发过程分为:
需求分析、高层设计、详细设计、编码和单元测试、集成计划与测试、系统测试、验收测试与安装、维护等八个阶段。
图表2开发过程总图
注:
SRS:
软件需求规格HLD:
高层设计DD:
详细设计
SRC:
代码UTPlan:
单元测试计划
注:
归档”在配置管理过程统一说明。
3.2需求分析阶段
Software
需求分析的主要目的是生成一个正确说明客户所有需求的文档。
换言之,软件需求规格(
RequirementSpecification,SRS)文档是该阶段的主要输出。
正确的需求分析和确定需求规格对一个项目的成功是非常关键的。
许多在系统和验收测试时发现的缺陷是在需求阶段产生的。
在验收阶段去掉需求阶段产生的一个错误将比在需求阶段本身去掉该错误要多花100多倍的费用。
很明显,在执行这阶段时,
正确地生成具有最少缺陷的SRS是非常必要的。
参与人员:
项目经理,[分析员],立项申请人,[客户,最终用户];入口准则:
项目立项,最初的项目计划已得到立项申请人的确认。
注:
这里所说明的需求分析阶段是进行开发过程的需求分析阶段,在技术开发部出具初步的项目计划之前的需求沟通工作,不是该过程规范所定义的。
最初的需求沟通工作可以参考本过程规范。
出口准则:
立项申请人、[客户]在《软件需求规格说明书》上签字确认;输入:
《项目立项申请表》、最初的《项目计划》,需求相关的资料;输出:
经确认的《软件需求规格说明书》;活动:
整个需求分析过程主要包括以下几个步骤:
图表3需求分析阶段活动总图首先,项目经理与分析员一块,做好需求分析的准备,包括阅读相关的背景资料,熟悉客户的实际情况,准备用户访谈计划,准备会谈问题清单等;然后通过面谈、专题讨论会等形式与客户进行沟通,采集需求的详细内容,澄清每一个需求点;从而界定出系统的目标和范围;对所采集和澄清的需求进行分析,构建需求模型,从功能性、非功能性两个方面进行需求分析,深入领会客户需求;
形成《软件需求规格说明书》,建立软件需求基线,并为软件需求评审做好准备;由项目经理安排软件需求评审,协同立项申请人、[客户]进行需求评审;
立项申请人[或客户]在《软件需求规格说明书》上确认。
相关模板:
《软件需求规格说明书》
3.3高层设计阶段
高层设计是软件开发过程中的一个重要阶段,在这个阶段将从计算机实现的逻辑角度开发针对用户需求的解决方案。
这一解决方案是一个高级的抽象方案。
高层设计要设计出各主要部分,并说明他们在技术上如何工作:
1)相互间的协作;2)所需外在的硬件和软件环境;3)内在环境。
也就是说,高层设计确定了
组成产品的构件,定义了每个构件的功能任务,并且定义了构件间的接口及构件到运行环境的外部接口。
参与人员:
项目经理,项目组员(设计团队);
入口准则:
《软件需求规格说明书》已通过立项申请人的确认;
出口准则:
形成高层设计,实现任务分解,所有的问题得到解决;
输入:
《软件需求说明书》输出:
《高层设计说明书》(功能与数据库设计)、详细设计、编码、文档和用户接口标准;活动:
制定详细设计、编码、文档和用户接口的标准;
根据项目特点选择运行的目标平台和开发工具;
制定软件的体系结构,定义逻辑和物理的对象模型,包括确定类、类的属性、类方法、类之间的关系和对象间的动态交互。
若采用结构化设计,则该活动应为功能设计;
/记录类型、
从需求规格说明书中的数据模型中得到物理数据库结构,进行物理数据库设计:
包括确定表域和其他部分。
生成高层设计说明书,并组织设计评审。
相关模板:
《高层设计说明书》
3.4详细设计阶段在详细设计阶段,高层设计阶段开发出的整体应用被分成几个模块(或构件)和程序。
为每个程序(或构件)进行逻辑设计,然后归档作为程序规格,同时为每个程序(或构件)生成一个单元测试计划。
详细设计阶段的重要活动包括通用例程和程序的确定、框架程序的开发以及用于提高生产率的实用程序和工具的开发。
在详细设计阶段负责每个程序、模块(或构件)的内部设计,确定其程序流程,并且可以通过使用设计语言、图形流程图(如活动图、状态图)等,或通过简单地写叙述而将设计文档化。
参与人员:
每个模块(或构件)的任务承担人;
入口准则:
《高层设计说明书》已通过评审;
出口准则:
完成详细设计,所有的问题得到解决,详细设计与单元测试计划文档化;
输入:
《软件需求规格说明书》、《高层设计说明书》、详细设计标准
输出:
《详细设计说明书》、《单元测试计划》活动:
将高层设计中的每个程序(或构件)细分成小的组件;
对每个小组件进行详细设计,包括确定调用方法、输入和输出、程序逻辑、数据结构等;根据组件的逻辑,制定单元测试计划,包括确定单元测试环境、测试用例、测试数据等;向项目经理(或高层设计者)提交详细设计与单元测试计划;
相关模板:
《详细设计说明书》、《单元测试计划》
剪裁说明:
对一些小项目,详细设计阶段的活动1、2可以省略。
3.5编码和单元测试
在编码子阶段,根据详细设计用编程语言编写所需的程序。
这个阶段根据合适的编码规范产生源代码、可执行代码以及数据库(如果使用了数据库)。
这个阶段的输出是随后测试和验证的主体。
而单元测试
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 过程 规范 示例