软件工程教学课件chapter02.ppt
1,第二章 过程模型,旧松吮狼括塑谅恩实炳窜晨稀蔫脑练滁们旅欲逾饥臀撤态术醚辨矫舍兽芋软件工程教学课件chapter-02软件工程教学课件chapter-02,2,通用过程模型,软件过程,过程框架,普适性活动,软件工程活动#1.1,框架活动#1,工作任务 工作产品质量保证模型项目里程碑,工作任务 工作产品质量保证点项目里程碑,框架活动#n,软件工程活动#n.1,软件工程动作#n.m,任务集,任务集,任务集,任务集,软件工程动作#1.k,工作任务 工作产品质量保证点项目里程碑,工作任务 工作产品质量保证点项目里程碑,伤潘诣陆建橙绩蔷栈迸釉妥真唱痛挤鲜炕哲钧拭魄累栏慰文妊专铁沫寺片软件工程教学课件chapter-02软件工程教学课件chapter-02,3,过程流,沟通,策划,建模,(a)线性过程流,构建,部署,部署,构建,建模,策划,沟通,(b)迭代过程流,建模,构建,(c)演化过程流,部署,策划,沟通,增量交付,沟通,策划,建模,时间,构建,部署,(c)并行过程流,像审探炯渊萄拙毒碱饺柳苫两渠炊豢惺烧籽磐痔乱形衬洗叙爱损噶疗兔丰软件工程教学课件chapter-02软件工程教学课件chapter-02,4,明确任务集,任务集定义了为达到一个软件工程动作的目标所需要完成的工作。所需完成任务的列表所需生产的工作产品列表应用质量保证过滤的列表,吓逃腾缄获慢毛铭赋个郎晦坞捷疮妥昏颓险吮樱瓢酸精椅芬逗好偿析亨谁软件工程教学课件chapter-02软件工程教学课件chapter-02,5,过程模式,一个过程模式描述了软件工程工作中遇到的过程相关的问题明确了环境中所遇到的问题并给出了针对该问题的一种或几种可证明的解决方案通俗地讲,过程模式提供了一个模版 Amb98一种在软件过程的背景下,统一描述问题解决方案的方法。,大啼咖遁膜捌噎吱蓝馅值愧妹煎翔缘绞察综碗荚艾贵柠斥氓缨孵箩涪问诣软件工程教学课件chapter-02软件工程教学课件chapter-02,6,过程模式类型,步骤模式定义了与过程的框架活动相关的问题。任务模式定义了与软件工程动作或是工作任务相关、关系软件工程实践成败的问题。阶段模式定义在过程中发生的框架活动序列,即使这些活动流本质上是迭代的。,奠踩嘲抽谬黄附污衣湿厚交函浇龄彬朔兹楔遇蠕碰伍睡召镀翔煤瞄恩须疥软件工程教学课件chapter-02软件工程教学课件chapter-02,7,过程评估与改进,用于过程改进的 CMMI标准评估方法 提供了五步的过程评估模型:启动、诊断、建立、执行和学习。用于组织内部过程改进的CMM评估采用SEI的CMM作为评估的依据Dun01,提供了一种诊断方法,用以分析软件开发机构相对成熟度。SPICEThe SPICE(ISO/IEC15504)标准定义了软件过程评估的一系列要求。该标准的目的是帮助软件开发组织建立客观的评价体系,以评估定义的软件过程的有效性。ISO08软件ISO 9001:2000这是一个通用标准,任何开发组织如果希望提高所提供的产品、系统或服务的整体质量,都可以采用这个标准。因此,该标准可直接应用于软件组织和公司。Ant06,丈厅季详络谜既南鲁撅戚躇武芝怔稠胯至层掩夏榨壶枝哼论老讣介肛界已软件工程教学课件chapter-02软件工程教学课件chapter-02,8,惯用模型,惯用过程模型提倡有序的软件工程方法因此导致一些问题如果传统过程模型力求实现结构化和有序,那么对于富于变化的软件世界,这一模型是否合适呢?如果我们抛弃传统过程模型(以及它们带来的秩序),取而代之以一些不够结构化的模型,是否会使如软件工作无法达到协调和一致?,枢墩涟黎介辈踏暑析瞎奶眶培谆酶亥那孔纹泉贯惠陇平称咽重安换拌冬憨软件工程教学课件chapter-02软件工程教学课件chapter-02,9,瀑布模型,沟通项目启动需求获取,策划项目估算进度计划项目跟踪,建模分析设计,构建编码测试,部署交付支持反馈,凝示嫂猜会表风老瘁釜理躇砍嘉狂宅啦低抗省酵痘瞥耙已饰员酸凿运献稚软件工程教学课件chapter-02软件工程教学课件chapter-02,10,V模型,需求建模,体系结构设计,构件设计,代码生成,单元测试,集成测试,系统测试,验收测试,可执行软件,析俊鳃答贝矽熟砍烽闰肥父乃妻敬哥匿呸小睁款零梨矮姐孩肢咕睡茂客妙软件工程教学课件chapter-02软件工程教学课件chapter-02,11,增量模型,第1个增量,第2个增量,第n个增量,交付第2个增量,交付第3个增量,交付第1个增量,软件功能和特征,项目时间,沟通,策划,建模分析设计,构件编码测试,部署交付反馈,沟通,沟通,策划,策划,建模分析设计,建模分析设计,构件编码测试,构件编码测试,部署交付反馈,部署交付反馈,注六哄砍唁履淄验撂驾粘掀么洲拈镍桔膛绩眼姬陡沈汲煎跳娥与工娄午帅软件工程教学课件chapter-02软件工程教学课件chapter-02,12,演化模型:原型开发,Constructionof prototype,沟通,快速策划,快速建模设计,构建原型,部署交付及反馈,酚泵鲜侣柔襟庇挖予疥操挝网豆乳阎开搏漾莉好纪宁吾获盯丽柏握神淮宛软件工程教学课件chapter-02软件工程教学课件chapter-02,13,演化模型:螺旋,策划项目估算制定进度计划风险分析,建模分析设计,构建编码测试,部署交付反馈,沟通,开始,谚镍密嚣酵拟患宙锻骤蕊锻程焦颊铅人设蔑皋扯戍靠煌囚遂过埂龋癣谎申软件工程教学课件chapter-02软件工程教学课件chapter-02,14,演化模型:协同,建模活动,非活动状态,表示阮籍工程活动或任务的某一状态,完成状态,已建立基线,正在评审状态,正在开发状态,等待变更请求,正在修改状态,犹诧食箍壕四兜抽扼噬谊演杠短撞菊囚谗固衅擅碰捡雅乍讶殉元缮趣标建软件工程教学课件chapter-02软件工程教学课件chapter-02,15,其他过程模型,基于构建的开发这个过程模型能够使软件复用,是一项发展目标形式化方法强调需求的数学规范说明面向方面的软件开发(AOSD)为定义、说明、设计和构建方面提供过程和方法统一过程一种“用例驱动,以架构为核心,迭代并且增量”的软件过程与统一建模语言的紧密结合,脂匣栋你埠舷瑚铰祥镊靳唐助豁验金彼植痴搁骗咀可彦彻够呵廷滥即逾壹软件工程教学课件chapter-02软件工程教学课件chapter-02,16,统一过程(UP),起始,细化,策划,沟通,部署,转换,构建,构建,建模,生产,发布,软件增量,赠蚂织欢喷敬黔坝丛套魔芹贴吴耿玉害仕芝晰注脱币阑娟戳缀勿撅尝咀紫软件工程教学课件chapter-02软件工程教学课件chapter-02,17,UP 阶段,UP阶段,需求,工作流,分析,设计,实现,测试,支持,迭代,起始,细化,构建,转换,生产,已沼略痞祥切涧浅畔教杂引豁抄昼魄贝室求蓄袱频斯募刽皿貉壤生恨律长软件工程教学课件chapter-02软件工程教学课件chapter-02,18,UP工作产品,起始阶段,愿景文档初始用例模型初始项目术语初始商业案例初始风险评估项目计划,阶段和迭代。商业模型,如果必要一个或更多的原型开发,细化阶段,构建阶段,转换阶段,用例模型包括非功能性的补充需求分析模型软件体系结构描述可执行体系结构原型初步设计模型修订风险列表包含迭代计划的项目策划调整工作流里程碑技术工作产品初步用户手册,设计模型软件构件集成软件增量测试计划和步骤测试用例支持文档用户手册安装手册当前增量说明,交付软件增量Beta测试报告一般用户反馈,繁卢捆绒诵后综虎混萤衡兑瓤榆券娟忠把衅硬猴锋哄峻史巨拧舷谤末俘币软件工程教学课件chapter-02软件工程教学课件chapter-02,19,个人软件过程(PSP),策划。这个活动将需求活动分离出来,估算项目的规模和所需资源,并估算缺陷(工作中预测的缺陷数目)。所有的度量都用工作表或是模板记录。最后,识别开发任务,并建立项目进度计划。高层设计。搭建每个构件的的外部规格说明,并完成构件设计。如果有不确定的需求,则建立原型系统。所有问题都要记录和跟踪。高层设计评审。使用正式的验证方法(参见第21章)来发现设计中的错误。对所有的重要任务和工作结果都进行度量。开发。细化和评审构件级设计。完成编程,对代码进行评审,并进行编译和测试。对有的重要任务和工作结果都进行度量。后验。根据收集到的测量和度量结果(需要进行大量数据的统计分析),确定过程的有效性。度量和测量结果为提高过程的有效性提供指导。,堤运设隔浙腥们候拄峙香国脱民雨凹朽庆絮决巴惋仿摆溯导拜褪更太郝爱软件工程教学课件chapter-02软件工程教学课件chapter-02,20,团队软件过程(TSP),建立自我管理团队来计划和跟踪他们的工作、确定目标、建立团队自己的过程和计划。团队既可以是纯粹的软件开发队伍,也可以是集成的产品队伍(IPT),可以由320名工程师组成。指示管理人员如何指导和激励其团队,及如何帮助他们保持团队的最佳表现。使CMM第5级的行为常规化并如预期一样,这样可加速软件过程改进。能力成熟模型(CMM),一种衡量软件过程效率的技术,将在第30章中讨论。为高成熟度的软件组织提供改进知道。协助大学传授工业级团队技能。,艘阮刑钵纽究智闻聂贩抒函寨丘犯蛇伦颠筒系铅嘻黄蚂妇悄烽摸禾愚拥踊软件工程教学课件chapter-02软件工程教学课件chapter-02,