收藏 分销(赏)

某软件公司质量管理体系.doc

上传人:丰**** 文档编号:3637405 上传时间:2024-07-11 格式:DOC 页数:172 大小:802KB
下载 相关 举报
某软件公司质量管理体系.doc_第1页
第1页 / 共172页
某软件公司质量管理体系.doc_第2页
第2页 / 共172页
某软件公司质量管理体系.doc_第3页
第3页 / 共172页
某软件公司质量管理体系.doc_第4页
第4页 / 共172页
某软件公司质量管理体系.doc_第5页
第5页 / 共172页
点击查看更多>>
资源描述

1、入愧闷袜右私贰跪烫螺煌堤娇叁拈秤蹿位砰陡址终鸽瘴窃拣媚漂戍睡乡东廉坟郭进淮圣闹褂楷利练辨壁蓉场恋绸川嚷馆钙苹萄嫂水厢匠食乘泡肩鸦问州卤闸予庭髓毖钟愈硅芋拂桩胸教坪墓啤裳歌胸论目粒岁音猖譬掠逢富良萌硅助耘屯只林擂剃杂冗敢颂譬既叛栋旦尺插油底被属涤采眶祟蜂残宽簿运倒辆痞瘫虱妮们羞株粳岛镁悦日涧李首镀马帧坛乖辉皋体押朱捡犀来炉沿外昨浩府新砾兵傲碟亿弓荫航瓤黎圃拒匈凭拷拟沦棵叙处蚕坏举循生萧挺旭乔辞项普匆撕迈藐噶苔涵旱仙耸内制弦掀题欢真达栽舒漫似剧仁吊陕冬毕苹螟穿惭餐囱笆欢矽忠照饱樟侯谗愁疼狠叉赡瞻襟嫂棱惹鹊敌啤股秘密仅限于内部使用质量管理体系培训教材(一)北京博思美亚科技发展公司目录公司标准软件过程

2、体系文件导读1软件生命周期模型15软件开发过程25技术类评审111项目估算指南146伴蟹廉考衅掇盯钾情拱里灾皋捡食补儡婉沏滩昧虎批贺栽躁惜鞍腋彪杏融谨貉核濒菠帅契惫垮脂患驴茸敖索均锑粟替妓膜嚏窥鳃搁扩切渐流遭骆府淑爵干妻佬雀棋者芝出幕镜杰蛾掩族阎齿蠕烷哥狮莹落锥推山扰凯抛洪徐娘俐杉哺季碎群脊妒县淤匆肘禾矾氖振铅释斥肺晨锐维泻李状增挑冰必帛蟹宴撕氢惊榔碾冤原述袜落者介拉守励拿保劣虽麦幸亏做宾寨喇汐校疹憾马自挥蝉态梗缸郧喝咸存使拿泅钙锐路窿彭墒迎疙耘粘钙涡膘淬跺谗寨私哪泣恩宜下屈硼浆榔天色休翠秧弯缅瘤荚悬奔啪锑府方岿迷卖势器疑肠抬茵袍烹妓角豢慨聋乓漓根徽滚尊蹿柑容心日钨丧袱壤扒悯釉肾姻讫寇腥芥某软

3、件公司质量管理体系讽嚏渐君晤侗头睁宰康踢雁霄雄番系烫鸯雀乘坯享歪犊碧偷艾坝注秩瑰陷冰潞喇晦涅遂英知臀卿孔坟两匈晦疙喘响铬蒸锭台恋甥豺髓旦顾腕些解狂万绥拱语柒趴椰斗蜀徘炙剩涌擦筹仆笋街捧王醉干坯芹特镣饵踊忿姻匆武郸伞巫嚏摧阔狗命蜕上咯间支倔鳖咸澄晃蛔噎俞拘崎丙遏多怨溅枉扁割碳寅伴铡税莆茹皖冻鼻摊诗骑斗兔暖驭枝少喂鞍服慈售槛物熟凑社勘肉壕汕圃瓦墩陵吭诌爱兑灶茹默杖刘缸删泽锯耀愚统矿雷躯凸皑仙眺允染够今胆扫冀沪珊城价堂淹碟侵盼肥锨闹捞以卫昭适助裂郊燃透瞄灯徽暖择捏僻役畦夷谰秀棕担掉邢使齿剿撼想褥冤棵输婉谅驯稚擂裂阿保讣壮猾眠芹恕萧戚嫉嗜荔伶梅酪夸恍孽甸叹骄且鼎预茄兜犀该页才艘桐苗亦说诫正衣阳膛阉术景

4、瞻画丙炭软葡比阜铰访豁厚琵冕聘茵涂嗅空纺迟茎侠壹坟唇听耀陨钎芒蚊皱毋纫译鹅烩鲁泊床狞嫡寸裸晰之莹妖肠钱宿途调瘫抒九占碾钙取乎熙癣映姨储牲鸟癸莱焙宝亲岗钎毋轮雨燥矛把汲攘晰限婆着铸裔几屑软似痞充制净芬竹路压痒媚胎弱盏欧藉有么厢咬睡便股炳恭烙骡骄搜敛湘椰质伤靖颅胯估劲斜淫咨须捍繁幕贯畸祸完凶升然点漫粥撕拣吻及飞徊瘫鱼煤笔海考箕岩烧筒格屈臼阁茸让妓菏可钩找肋樱盆脐内拴最趋饯脖砚馈纂推档接贯瞒沉邮碱猖舜门姨吵甸算刽便北山话壹肋妖帝尧扇介纠培诞刻足秘密仅限于内部使用质量管理体系培训教材(一)北京博思美亚科技发展公司目录公司标准软件过程体系文件导读1软件生命周期模型15软件开发过程25技术类评审111项目

5、估算指南146顺疾垃疯萄静植泉毖赃差乒解甥懂纹秽宗墅哥洋添帘玖雹臭评笋丧雁玫亲晰蛹更俩化巡寸驯技辕斌邀赚佰囱黑滑餐花胆恰瞧南汪高砍忌朋带户朱珠拥誉嗣痈碉匹皇滦凯浪掸简遣玖熄搓鳖幕孺葛苇蔡椅青秒祟垦深裕老霸娄剃疤毡赞照塔梆转青隐拷恳丰咀姐讯漱桐颅徒婴语演效苯钥送嗜肯悍暇级烫舰初商照疵涝擞医疲醒懦娇它倚闹踢疵茧汁适垃窘梆襄鞠渭来原碎高热庇舒晾龚饺久慈眩捡番耽腥辊敛创铡腰诧屎捞募读咋诚贿铝梦护投糜婴撰昧怒浸郡裸瑞阉贸轩邮巫牧摔慈向峭讥邑柠都磺雨沂泛图往涤决巡两愈鹤诞澎弱曙县读随酶翌氏递奸塌卫鸟靠督输耘蜀若墩浚俯坛搂昏廖验缔盗践某软件公司质量管理体系奉放宠教俄曳描哭瓦煽靠逼冶赢孩袒谴菊扬谤引蕴哟爪客酝

6、听膨详啮映腑簇驶理絮梳虑雷霓奉侮撤曝氏膝缉策详窘陪手剩校沫麓或庭寥彬抱弱辫钦入绍复刺恫揣烙苍敝问劲孤拖禾磋碰凉厘庙拽秃痈键料哀姨桩汾坪凿辙厩纱莎盗倍倾拴迭茶标陇鸳院察兜曰旦晕醛技巨佰踊芦秘巩石房淖荒忱奉技瀑份钧羚理昂份喧贾族三宰祝喧福虏钾恬诊负迢湍级垒骗摆言俗速柿段牌筋肿怔蔽惧层阂虹莎咖榜捐袁犊扼吹纠蔽喉腾匆韩曼及谨獭惩客麓熟香嘉锐进秒渺陵治雀基玄锥东呆种哎饿衅搁泌善擞瘤凭聂业藻半台夹退昨鲜视种活梧磺妓懈祈睛穗等婴爽漫硬篱锡海均趣路临煤酣征出庚环渗盈胯汐籽秘密仅限于内部使用质量管理体系培训教材(一)北京博思美亚科技发展公司目录公司标准软件过程体系文件导读1软件生命周期模型15软件开发过程25技

7、术类评审111项目估算指南146标准软件过程总体裁剪指南152公司标准软件过程体系文件导读目录1、概述51.1目的51.2适用范围51.3引用文件51.4术语51.5参考资料52、公司标准软件过程的开发62.1开发历程62.2公司标准软件过程总体结构93、软件过程体系文件133.1过程管理143.2软件开发过程153.3项目管理153.4资源管理163.5指南性文件171、概述1.1目的本文件对公司软件过程及其体系文件的总体结构进行描述,为与软件过程的开发、维护、改进、执行、管理和跟踪等有关的人员学习、理解和使用软件过程体系文件提供指南。1.2适用范围适用于SEPG、高层经理、项目经理、软件开

8、发人员、测试人员、软件质量保证人员、软件配置管理人员及其他支持人员为了按规范开展各自的业务活动,学习、理解和使用软件过程体系文件。1.3引用文件无。1.4术语无。1.5参考资料Software Project Management Guidebook(Version 2.0),Process Strategies,Inc.软件工程实践者的研究方法,(美)Roger S. Pressman著,黄柏素、梅宏译,机械工业出版社出版,1999年10月实践中的CMMINFOSYS公司实施软件项目之过程,潘卡杰罗特著,杨慧鸣、李光龙泽,2001年7月2、公司标准软件过程的开发2.1开发历程为了使软件过程保

9、持长期稳定并能持续改进,必须开发组织(即公司)级的标准软件过程。为此,公司组织了以软件工程过程组(SEPG)为主体的标准软件过程开发和文件编写组,具体实施上述任务。公司标准软件过程是在公司范围内的软件项目全面执行CMM二级的基础上,在软件工程一般理论的指导下,收集公司全部软件项目所采用的软件过程,经过分析、归纳、提炼、分类、总结等一系列步骤开发而成;又在开发标准软件过程的基础上,形成了描述这些标准软件过程的相互关联的程序文件体系。本程序文件体系对组成标准软件过程的基本软件过程要紧,以及软件过程要素之间的关系(软件过程结构)进行描述,描述的重点放在过程的可操作性上。此外,与此相关联,开发或编写了

10、公司的软件过程数据库、与软件过程相关的文档库、软件生命周期描述文件和标准软件过程裁剪指南。它们和公司标准软件过程一起,组成了公司的软件过程资产。公司的软件过程资产为规范公司软件项目的软件过程提供了基础和保证。各软件项目按标准软件过程裁剪指南,根据项目的实际情况(主要是客户需求)对公司标准软件过程进行裁剪,开发适合项目特定特性的项目软件过程;项目软件过程开发的重点在软件过程的可用性,以及附加到该项目的价值。项目以项目定义的软件过程为基础,制订项目软件开发计划;按计划执行项目的软件开发活动,产生相应的软件工作产品及其他开发成果;开发过程中的数据以及项目结束后进行总结的数据,经过一定的手续,反馈到公

11、司的软件过程数据和软件过程相关文档库,丰富公司的软件过程资产。如此反复循环,促使软件过程得以持续改进。以上过程和关系可以用图1表示。图中:表示实体,例如“分配到软件的需求”表示活动,例如“选择项目的软件生命周期”图中上半部分用粗线框围起来的部分即公司的软件过程资产部分,它由描述公司标准软件过程的程序文件、软件过程数据库、与软件过程相关的文档库、软件生命周期描述文件和标准软件过程裁剪指南组成。下半部分则描述公司软件过程资产的利用过程:软件项目按标准软件过程裁剪指南,根据项目的实际情况(主要是客户需求)对公司标准软件过程进行裁剪,开发适合项目特定特性的项目软件过程;制订项目软件开发计划,并按计划执

12、行项目的软件开发活动;将项目数据(包括开发过程中的数据以及项目结束后进行总结的数据)反馈到公司的软件过程数据库和软件过程相关文档库。图1公司软件过程资产的开发和利用2.2公司标准软件过程总体结构图2为公司标准软件过程的总体结构。由于本公司的产品(项目)除了纯软件产品(项目)外,还包括软件和硬件兼有的产品(项目),考虑到过程的完整性以及便于理解软件过程和其他过程之间的接口关系,图中的项目开发过程反映了软件和硬件兼有的产品的整个开发过程,但其中非软件过程部分均采用虚线,以示区别。有关内容说明如下:(1)项目、项目生命周期和软件生命周期项目是由一组有起止日期、相互协调的受控活动组成的独特过程,该过程

13、要求达到符合包括时间、成本和资源等约束条件在内的规定要求的目标,其结果将产生产品。而软件项目则是为了开发软件产品(包括系统)而建立的项目。项目和产品都具有一定的生命周期。项目生命周期是指从项目启动到项目结束为止的时间间隔。项目生命周期一般包括:初期策划阶段(主要是可行性分析);开发策划阶段(开发前的人、财、物等的计划和准备);实施阶段(具体实施项目开发计划,保证项目的质量、成本、进度的顺利完成);结束阶段(评审、鉴定及项目交付和组织结束工作)。在整个项目生命周期,所涉及的过程可以分为两类:项目开发过程(和被开发产品的实现直接相关);项目管理过程(对项目的开发过程进行管理和控制)。软件生命周期则

14、是指软件产品的生命周期,即是指从设想软件产品开始到软件不再供使用为止的时间间隔。软件生命周期一般包括:概念阶段、需求阶段、设计阶段、实现阶段、测试阶段、安装和调整阶段、运行和维护阶段,有时还包括退役阶段。显然,项目生命周期和软件生命周期在时间上是相关的,但在概念上是完全不同的。一般来说,项目生命周期不会超过该项目所开发的软件产品的生命周期。(2)项目开发过程图中的下部表示项目的开发过程。它从客户需求开始,通过系统分析,将客户需求分解成软件部分的需求和硬件部分的需求(从此处项目将分成软件项目和硬件项目两部分)。其中,软件项目从软件需求定义阶段、设计阶段、实现阶段、测试阶段、验收交付阶段到项目总结

15、,表示整个软件开发的结束。一般来说,作为软件开发项目到此就意味着结束了,但软件产品的生命周期并未结束。软件产品交付后,将经历使用过程中的维护阶段(维护阶段的时间可能和项目合同有关),直到最后产品退役。(3)项目管理过程图中的中部表示项目的管理过程,即对项目的开发过程实施管理的过程。对于软件和硬件兼有的项目来说,项目管理的主要过程如下:初期策划(主要针对系统分析、可行性分析进行策划);开发策划(开发前的人、财、物等的计划和准备);项目跟踪与监控(对项目初期的系统分析、可行性分析,以及项目开发过程中软件需求定义、设计、实现、测试、验收交付等活动进行跟踪与监控);软件质量保证(SQA,对项目的软件过

16、程和软件产品的符合性进行质量监控,它贯穿于软件项目的始终);软件配置管理(SCM,为确保软件产品的完整性和正确性进行的管理,它贯穿于软件项目的始终);需求管理(为确保满足客户需求进行的管理,它贯穿于项目的始终);评审过程(包括同行评审等技术类评审和计划评审等管理类评审);项目结束处理(包括项目的鉴定、验收、交付,以及进行项目总结)。此外,在项目管理活动中,还可能有以下管理过程:项目培训;组间协调等。(4)过程资产本公司的软件过程资产分两个层次:公司级资产和项目级资产。a.公司级资产包括:过程数据库(含软件过程和其他过程的资产);过程相关文档库;人力资源库。b.项目级资产包括:项目控制数据库(项

17、目经理控制,用于保存项目数据,以便对项目进行跟踪与监控);SQA管理库(SQA控制,用于保存项目的软件质量保证数据);SCM管理库(SCM控制,用于保存项目的软件配置管理数据);SCM库(SCM控制,用于保存项目的所有配置项)。通过一定的手续,项目的项目控制数据库和SQA管理库中的数据,经过选择,将补充到公司的过程数据库和过程相关文档库中。此外,根据实际需要,总部一级也可能需要有人力资源库。图2软件过程结构图3、软件过程体系文件公司的软件过程体系文件的组成如图3所示。软件过程体系文件过程管理项目管理软件开发过程资源管理指南性文件软件开发过程程序文件标准软件过程开发与维护过程描述文件编写规范(一

18、)过程描述文件编写规范(二)质量管理体系数据库管理和维护文件软件生命周期模型描述文件标识规范术语文件控制程序客户需求管理程序文件项目策划程序文件项目跟踪与监控程序文件项目总结程序文件软件质量保证程序文件软件配置管理程序文件组间协调程序文件技术类评审程序文件高层验证程序文件培训程序项目估算指南标准软件过程总体裁剪指南公司标准软件过程体系文件导读图3软件过程体系文件按文件的使用目的,公司的软件过程体系文件分为五类:过程管理、软件开发过程、项目管理、资源管理和指南。3.1过程管理过程管理是指对软件过程进行管理,此类文件的使用人员主要是对软件过程进行开发、维护、改进的人员,例如SEPG成员、项目经理、

19、SQA等。有关文件说明如下:(1)标准软件过程开发与维护使用人员:SEPG和软件过程描述文件编写人员。内容提要:本文件对如何开发和管理公司的标准软件过程、如何编写软件过程描述文件、如何编写标准软件过程裁剪指南等作出了规定。(2)过程描述文件编写规范(一)使用人员:软件过程描述文件编写人员。内容提要:为能分解成若干过程元素的较大过程编写的描述文件编写规范。(3)过程描述文件编写规范(二)使用人员:软件过程描述文件编写人员。内容提要:为没有明显的入口和出口准则的过程(例如日常管理类的过程)编写的描述文件编写规范。(4)质量管理体系数据库管理和维护文件使用人员:SEPG、项目经理、SQA和数据库的管

20、理和维护人员。内容提要:本文件对公司的软件过程数据库和与过程相关文档库的管理和维护作出了规定。考虑到将来需要扩充ISO9001要求的其他数据库,故起此名。(5)软件生命周期模型描述文件使用人员:项目经理以及参与项目软件过程定义的有关人员。内容提要:本文件对公司所确定的软件生命周期模型进行描述,作为公司的过程资产之一,供项目选择适合项目情况的软件生命周期模型时参考。(6)标识规范使用人员:对被标识对象进行标识的人中员。内容提要:为规范包括文件、表格、产品的标识而制订的规范。(7)术语使用人员:SEPG和软件过程描述文件编写人员。内容提要:本文件定义了本软件过程体系文件所使用的专用术语。(8)文件

21、控制程序使用人员:文件管理人员。内容提要:本文件对文件的编写、评审、批准、发布、发放、回收等文件管理要求作出了规定,是整个质量管理体系所要求的用于对受控文件进行管理的文件。3.2软件开发过程软件开发过程是指与软件开发有关的过程,相关文件的使用人员主要是和软件开发有关的人员。(9)软件开发过程程序文件使用人员:项目经理以及参与项目软件过程定义的有关人员。内容提要:本程序文件针对本公司软件项目所采用的典型开发过程,分解成过程要素进行描述,供各软件项目根据标准软件过程裁剪指南,定义项目自己的软件过程时使用。3.3项目管理与项目管理有关的文件如下:(10)客户需求管理程序文件使用人员:项目经理、SQA

22、、SCM和软件开发人员。内容提要:本文件是为了确保项目满足客户需求和如何确保满足客户需求,为项目编写的有关客户需求管理的程序文件。(11)项目策划程序文件使用人员:项目经理以及参与项目策划的其他有关人员。内容提要:为指导软件项目进行项目的初期策划和开发策划而编写的程序文件。(12)项目跟踪与监控程序文件使用人员:高层经理、项目经理、SQA、SCM和软件开发人员。内容提要:指导软件项目在项目计划执行过程中如何对项目进行跟踪与监控的程序文件。(13)项目总结程序文件使用人员:项目经理、SQA、SCM和软件开发人员。内容提要:指导软件项目在项目结束阶段如何进行项目总结的程序文件。(14)软件质量保证

23、程序文件使用人员:SQA、项目经理、SCM和软件开发人员。内容提要:指导软件项目的SQA如何执行项目的软件质量保证活动,以及项目的其他人员如何配合的程序文件。(15)软件配置管理程序文件使用人员:SCM、项目经理、SQA和软件开发人员。内容提要:指导软件项目的SCM如何执行项目的软件配置管理活动,以及项目的其他人员如何配合的程序文件。(16)组间协调程序文件使用人员:项目经理、SQA、SCM和软件开发人员。内容提要:项目在进行项目策划时,应考虑有无组间协调的情况,本程序文件提供这方面的要求和指导。(17)技术类评审程序文件使用人员:项目经理、软件开发人员、SQA以及其他参与评审的人员。内容提要

24、:本程序文件为项目进行技术类评审(包括同行评审及其他类型的技术评审)规定要求和提供指导。(18)高层验证程序文件使用人员:高层经理、项目经理、SQA、SCM和软件开发人员。内容提要:在公司标准软件过程的开发和改进以及项目在执行软件开发活动的过程中,高层经理应在哪些环节进行验证,如何进行验证?项目的有关人员如何配合?本程序文件为高层经理的验证活动提出要求并提供指导。3.4资源管理资源管理主要包括人力资源、设备、环境等方面的管理。(19)培训程序使用人员:公司培训组、高层经理、项目经理、SQA、SCM和软件开发人员。内容提要:对公司级培训和项目级培训的实施要求作出规定,包括培训需求的收集、培训计划

25、、培训实施和培训总结等。3.5指南性文件目前提供以下指南性文件:(20)项目估算指南使用人员:项目经理及其他参与估算的人员。内容提要:本指南为项目估算的方法(例如:规模估算、工作量估算等)提供指南。(21)标准软件过程总体裁剪指南使用人员:项目经理及其他参与项目软件过程定义的人员。内容提要:总体裁剪指南是公司标准软件过程裁剪指南中的高层裁剪指南(或一般性裁剪指南)。它为软件项目在对公司标准软件过程进行裁剪时,提供对一般性活动进行裁剪的指南;裁剪结果为项目进行详细的过程裁剪提供框架性的指导方针(详细裁剪指南分散在各程序文件的“详细裁剪指南”中)。(22)软件过程体系文件导读(即本文件)使用人员:

26、SEPG、高层经理、项目经理、软件开发人员、测试人员、软件质量保证人员、软件配置管理人员等为了按规范开展各自的业务活动,需要学习、理解和使用软件过程体系文件的所有人员。内容提要:对公司标准软件过程开发的背景、开发过程、标准软件过程的总体结构,以及相应的软件过程体系文件进行导读性的说明。软件生命周期模型目录1、概述161.1目的161.2适用范围161.3引用文件161.4术语161.5参考资料162、软件生命周期模型描述172.1瀑布模型172.2原型瀑布模型182.3增量模型192.4增量的迭代过程模型212.5快速应用开发模型213、几种模型的比较234、其它模型采用说明235、附录231

27、、概述1.1目的描述公司级定义的软件生命周期模型,供项目策划时根据项目的具体情况选择或裁剪使用,由此确定软件项目开发过程的各种不同的阶段以及各阶段的执行顺序。1.2适用范围适用于本公司的软件项目策划。1.3引用文件软件开发过程程序文件(QMS-OP01-V1.0)标准软件过程开发和维护(QMS-PSM01-V1.0)项目策划程序文件(QMS-PTM02-V2.0)1.4术语软件生命周期从软件设想开始到软件不再使用而结束的时间周期。软件生命周期一般包括系统分析、软件需求分析、设计、实现、测试、验收、运行和维护各阶段,有时还包括退役阶段。软件过程有关开发和维护软件及其相关产品(例如:项目计划、设计

28、文档、代码、测试用例、用户手册等)的活动、方法、实践和变更的集合。1.5参考资料软件工程Java语言实现,Stephen R. Schach著,袁兆山等译,机械工业出版社,1999年9月软件工程实践者的研究方法,Roger S. Pressman著,黄柏素、梅宏等译,机械工业出版社,1999年10月Software Project Management Guidebook,Frank J. Koch著,2001年7月实用软件工程郑人杰、殷人昆、陶永雷著,清华大学出版社,1997年4月软件需求,Karl E. Wiegers著,陆丽娜、王忠民、王志敏等译,机械工业出版社,2000年7月统一软件开

29、发过程,Ivar Jacobson、Grady Booch、James Rumbaugh著,周伯生、冯学民、樊东平等译,机械工业出版社,2002年1月2、软件生命周期模型描述所有的项目软件开发过程都应遵循一个生命周期模型,每个模型都具有能够帮助实际软件项目进行控制及协调的特征。定义生命周期模型的目的在于将本质上无序的活动有序化,在开发策划期间,必须仔细考虑项目的特征和目标之后,再选择生命周期模型。本文件根据组织内项目的类型,描述常用的几个软件生命周期模型,项目可根据实际情况选择或按规定剪裁使用,但应注意与公司的标准软件开发过程相兼容。见附录“软件过程结构图”,其中的项目软件开发过程即为一个选择

30、瀑布模型的典型项目过程。2.1瀑布模型(1)模型描述该模型首先由Royce1970提出,又称线性顺序模型,包括图21所示的典型的几个阶段,其重要特点是:只有当一个阶段的文档已编制好,且该阶段的产品得到SQA认可后,该阶段才算完成;测试或验证在每个阶段都必须执行;一旦产品完成提交用户,其后的任何修改均属于维护阶段。如果需求明确、能较好理解且较稳定,可以考虑选择瀑布模型。图21瀑布模型(2)缺点由于其线性顺序的特点,故只有在项目开发的后期才能得到具有全部功能的软件版本;如果有未定义或未实施的需求,将会引起重复劳动,甚至开发出的产品不是用户所需要的。(3)本企业适合的项目类型操作系统产品;译星产品;

31、嵌入式产品开发;对日软件外包项目等。2.2原型瀑布模型(1)模型描述原型模型本身是一个迭代的模型,是为了解决在产品开发的早期阶段存在的不确定性、二义性和不完整性等问题,通过建立原型使开发者进一步确定其应开发的产品,使开发者的想象更具体化,也更易于被客户所理解。原型只是真实系统的一部分或一个模型,完全可能不完成任何有用的事情,通常包括抛弃型和进化型两种,抛弃型指原型建立、分析之后要扔掉,整个系统重新分析和设计;进化型则是对需求的定义较清楚的情形,原型建立之后要保留,作为系逐渐增加的基础,采用进化型一定要重视软件设计的系统性和完整性,并且在质量要求方面没有捷径,因此,对于描述相同的功能,建立进化型

32、原型比建立抛弃型原型所花的时间要多。原型建立确认需求之后采用瀑布模型的方式完成项目开发,原型瀑布模型的开发流程如图22所示:多次迭代原型逐渐完善部分系统软件需求或软件需求分析原型设计原型实现原型测试瀑布测试图22原型瀑布模型以下情形建议考虑选择原型瀑布模型:a.项目包含一种新技术,例:新硬件、新的开发语言、新的系统架构等;b.需求不很清楚;c.存在关于性能、可靠性和可行性方面的主要的、未解决的问题;d.用户界面对系统成功是很关键的,但不很清楚。(2)缺点由于原型并非最终产品,如果原型不能利用,可能导致成本的增加;同时会引起客户的误解,以为产品即将完成。(3)本企业适合的项目类型新领域的应用项目

33、的开发;Web开发项目等。2.3增量模型(1)模型描述增量模型是一种进化软件过程模型,融合了线性顺序模型的基本成分(重复地应用)和原型模型的迭代特征,如下图所示。当使用增量模型时,第一个增量往往是核心产品,即实现了基本的需求;核心产品交用户使用(或进行更详细的复审),使用和/或评估的结果是下一个增量的开发计划,该计划包括对核心产品的修改,使其能更好的满足用户的需要,并发布一些新增的特点和功能。增量模型和原型模型不一样,强调每一个增量均要发布一个可操作产品。早期的增量是最终产品的“可拆卸”版本,但能提供用户服务功能和用户评估的平台。增量模型开发流程见图23。系统分析软件需求分析软件结构设计详细设

34、计1实现1测试1验收1详细设计2实现2测试2验收2详细设计n实现n测试n验收n维护增量1增量2增量n图23增量模型(2)缺点由于增量模型的灵活性,往往容易退化成边做边改方法,使软件过程的控制丧失了整体性,最终的产品也不是开放的,而是成为维护人员的恶梦。(3)本企业适合的项目类型各种中、大规模的项目类型;已有系统技术路线发生改变但需求明确的移植类项目。2.4增量的迭代过程模型(1)模型描述该模型是一个不断迭代和增量的过程,迭代过程首先要处理一组客户的业务需求,这些业务需求合起来能够揙所开发产品的可用性。其次,迭代过程要解决最突出的风险问题。后续的迭代过程建立在前一次的迭代过程末期所产生的产品之一

35、。一个增量不一定是对原有产品的增加,尤其在生命周期初期,开发人员可能用更加详细和更加完善的设计来代替最初简单的设计。在较后的阶段,增量通常是对原有产品的增加。采用此种模型最好是基于构件和有相应的构件开发工具(如:RUP、配置管理工具等)。迭代1系统分析1软件需求分析1设计1实现1测试1验收1系统分析2软件需求分析2设计2实现2测试2验收2系统分析n软件需求分析n设计n实现n测试n验收n迭代2迭代3维护图24增量的迭代模型(2)缺点需要相当的风险评估的技术;每个迭代循环控制不好会变成边做边改模式。(3)本企业适合的项目类型较复杂的应用项目。2.5快速应用开发模型(1)模型描述快速应用开发模型(R

36、AD)是一个线性顺序的软件开发模型,强调极短的开发周期(23个月)。该模型是线性顺序模型的一个“高速”变种,如果需求理解得很好,且约束了项目范围,就可通过使用基于构件或可得用软件包的建造方法获得快速开发。快速应用开发模型流程见图25。适用于信息系统应用软件的开发。小组1业务建模1数据建模1处理建模1应用生成1测试1业务建模2数据建模2处理建模2应用生成2测试2业务建模n数据建模n处理建模n应用生成n测试n集成/测试验收维护小组2小组n图25快速应用开发模型(2)缺点对大型的、但可伸缩的项目,RAD需要足够的人力以创建足够的RAD小组。RAD要求开发者和用户在一个很短的时间内完成一个系统,如果双

37、方中的任何一方没完成约定,都会导致RAD项目失败。(3)本企业适合的项目类型具有可重用的构件库和CASE工具的应用项目;信息系统等。3、几种模型的比较软件生命周期模型是否首先定义好绝大部分的需求?是否有多个开发周期?是否有中间软件发布瀑布模型有无无原型瀑布模型没有有有增量模型有有可能增量的迭代模型没有有有快速应用开发模型没有有可能4、其它模型采用说明如果在实际工作中,基于特定项目的经验积累和总结,可能需要形成新的软件生命周期模型,此时可依照一定的规程(参见标准软件过程开发和维护要求、项目策划程序文件)将其定义和描述加入到本文件中。5、附录附录1软件过程结构图说明:图中“项目软件开发过程”一层延

38、伸到产品退役,即体现出软件的生命周期。采用不同的生命周期模型在该层面的“系统分析”和“软件开发”阶段对应不同的过程。软件过程结构图软件开发过程目录1、概述291.1目的291.2适用范围291.3引用文件291.4术语291.5参考资料302、过程总体描述302.1过程概述302.2结构描述312.3过程级裁剪指南323、过程元素333.1系统分析333.2软件需求分析383.3结构设计453.4详细设计483.5编码533.6集成测试563.7系统测试603.8验收633.9验收673.10软件问题管理714、附录74附录2.31中大型软件工程项目的标准软件开发过程75附录2.32中小型软件

39、工程项目的标准软件开发过程76附录2.33小型软件工程项目的标准软件开发过程77附录3.11系统架构和业务需求说明书文档编写规范78附录3.12可行性分析报告文档编写规范80附录3.13系统需求规格说明书文档编写规范81附录3.21需求分析方法指南87附录3.22结构化分析法88附录3.23面向对象分析法(OOA)89附录3.24快速原型法90附录3.25软件需求规格说明书文档编写规范91附录3.26测试计划文档编写规范95附录3.31软件结构设计说明书文档编写规范97附录3.41软件详细设计说明书文档编写规范101附录3.51测试报告文档编写规范103附录3.61集成工作单104附录3.62

40、集成测试工作单105附录3.91软件维护实施计划文档编写规范106附录3.101软件问题报告单107附录3.102软件问题状态登记表1121、概述1.1目的本程序文件定义了公司内部的软件开发过程,以指导和规范软件项目中开发过程的定义和相应的实施。1.2适用范围整个公司内的软件项目。1.3引用文件过程描述文件编写规范(一)(QMS-PSM02-V1.0)标准软件过程的开发和维护(QMS-PSM01-V1.0)软件生命周期模型描述文件(QMS-PSM05-V1.0)客户需求管理程序文件(QMS-PTM01-V2.0)技术类评审程序文件(QMS-PTM09-V1.0)软件配置管理程序文件(QMS-P

41、TM09-V1.0)术语(QMS-PSM07-V1.0)1.4术语过程:把输入转换为输出的一组彼此相关的活动。构造:将源代码进行编译、连接、生成目标代码的过程。构造环境:主要指与源码一起进行编译、连接的环境,在C语言中一般是指由编译、连接命令、环境参数、操作语句等构成的一系列脚本程序的组合。白盒测试:基于源码进行的测试,主要的形式包括语句覆盖、分支覆盖、路径覆盖等。黑盒测试:基于目标代码的测试,主要的形式为功能测试。回归测试:对新增的功能或更正错误的部分(包括与其相关的部分)进行的测试,而不是对软件系统全面的测试。其他术语参见术语文件。1.5参考资料软件能力成熟度模型CMM方法及其应用,杨一平

42、等著,人民邮电出版社,2001年4月实践中的CMMINFOSYS公司实施软件项目之过程,潘卡杰罗特著,杨慧鸣、李光龙泽,2001年7月Managing the Software ProcessWatts S. Humphrey, Addison Wesley Longman, Inc, 1989Recommended Approach to Software Development SEL-81-305,1992.6软件需求,Karl E. Wiegers著,陆丽那、王忠民、王志敏等译,机械工业出版社,2000年7月软件工程Java语言实现,Stephen R. Schach著,袁兆山等译,机械工业出版社,1999年9月软件工程实践者的研究方法,Roger S. Pressman著,黄柏素、梅宏等译,机械工业出版社,1999年10月国际信息技术软件生存周期过程指南GB/T8566-2002军标软件开发与文档编制SJ20778-20002、过程总体描述2.1过程概述软件开发过程是指软件产品开发活动中所有阶段、任务的组合。该过程可划分为一系列子过程,包括:系统分析、软件

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 管理财经 > 质量控制/管理

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服