ISBN0-13-146913-4Prentice-Hall,2006Chapter2过程和生命周期的建模Copyright2006Pearson/PrenticeHall.Allrightsreserved.PfleegerandAtlee,SoftwareEngineering:TheoryandPracticePage2.2©2006Pearson/PrenticeHall2.1过程的定义•过程:一组有序的任务,包括活动、约束和资源使用的一系列步骤,用于产生想要的输出•一个过程常常涉及一系列的工具和技术PfleegerandAtlee,SoftwareEngineering:TheoryandPracticePage2.3©2006Pearson/PrenticeHall2.1过程的含义过程的特性•规定了所有主要的活动•遵从一组约束(例如项目进度)使用资源•产生中间结果和最终产品•可以是用某种方式连接起来的子过程构成•每个过程活动具有进入和退出标准•活动按一定的序列组织,这样可以知道活动什么时候开始和结束•每个过程都有其指导原则,用于解释每个活动的目标•约束和控制可以应用于活动、资源或产品PfleegerandAtlee,SoftwareEngineering:TheoryandPracticePage2.4©2006Pearson/PrenticeHall2.1过程的含义过程的重要性•强制活动具有一致性和一定结构•引导我们理解、控制、测试和改进组成过程的活动•能够让我们获取经验并传授他人PfleegerandAtlee,SoftwareEngineering:TheoryandPracticePage2.5©2006Pearson/PrenticeHall2.2软件过程模型过程建模的原因•形成共同的理解•发现不一致、冗余和遗漏•根据目标评估候选活动是否合适•根据具体情况对每一个过程进行裁剪PfleegerandAtlee,SoftwareEngineering:TheoryandPracticePage2.6©2006Pearson/PrenticeHall软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的生存期。当过程是在开发软件产品时,把这种软件开发过程称为软件生命周期。2.2软件过程模型软件生命周期PfleegerandAtlee,SoftwareEngineering:TheoryandPracticePage2.7©2006Pearson/PrenticeHall软件生存期的阶段划分(1)可行性研究与计划(2)需求分析(3)总体设计上游(4)详细设计(5)实现(6)集成测试(7)确认测试下游(8)使用和维护(根据国标《计算机软件开发规范》)PfleegerandAtlee,SoftwareEngineering:TheoryandPracticePage2.8©2006Pearson/PrenticeHall软件工作的范围只考虑编写程序涉及整个软件生存周期扩展到PfleegerandAtlee,SoftwareEngineering:TheoryandPracticePage2.9©2006Pearson/PrenticeHall2.2软件过程模型软件开发模型是软件开发全部过程、活动和任务的结构框架。它能直观表达软件开发全...