软件过程与管理复习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
复习题
1. 软件过程通常分为哪几类,简述每一类过程中的主要内容有哪些.
(1)软件工程(实现)过程:软件获取、供应、开发、运行和维护的过程,包括需求分析、软件设计、编码等过程。
(2)软件支持过程:对软件主要过程提供支持的过程,包括文档编制过程、配置管理过程、质量保证过程、验证和确认过程(测试过程)、评审过程等。
(3)软件组织过程:对软件主要过程和支持过程的组织保证过程,包括管理过程、基础设施过程、改进过程和培训过程。
2.简述有哪几种典型的软件过程模型
(1)瀑布模型
(2)螺旋模型、增量模型
(3)V模型
(4)极限编程(XP)
(5)IBM-Rational统一过程(RUP)
3. 简述不成熟的软件企业通常具有哪些特性。
(1)软件过程能力低,不能按预定计划开发出客户满意的产品,项目拖延、费用大大超出预算已成惯例。
(2)过程性能的不可预见性,对进度和预算估计、产品质量的目标缺乏历史数据和有效方法的客观基础,开发的进度、成本和产品的质量都难以预测。
(3)过程的不可视性,软件过程缺乏定义、缺乏文档和缺乏跟踪,在整个软件过程中,不清楚每个阶段进出的标准、执行的方法和规则。
(4)过程的不稳定性,实际的、具体的操作过程是在一个项目开始后临时拼凑而成,每个项目都不一样。
(5)过程的被动性、缺乏改进的主动性。
4.什么是CMM,五个级别分别是什么?并简述五个级别的特点.
CMM是软件过程能力成熟度模型(Capacity Maturity Model,CMM)的
简称。CMM由美国卡内基·梅隆大学的软件工程研究院(SEI)提出。CMM可以有效地帮助软件企业建立和实施过程改进计划。它描述一条从无序的、混乱的过程到成熟的、有纪律的过程的改进途径,描绘出软件组织如何增加对软件开发和维护的过程控制,如何向软件工程和管理的优秀文化演变等方面的指导。
CMM的五个级别:
初始级:具有明显的不成熟过程的特点.
可重复级/受管理级:建立了管理软件项目的方针和实施这些方针的规程.
已定义级:具有良好的文档化、标准化,使软件过程具有可视性、一致性、稳定性和可重复性,软件过程被集成为一个有机的整体。
已管理级:软件过程是量化的管理过程。
优化级: 为了预防缺陷出现,组织有办法识别出弱点并预先针对性地加强过程
5.画出CMM的结构图。
6.简述什么是PSP和TSP。
个体软件过程(PSP)着重于软件开发人员的个人培训、品质改善和工数估算,既是软件能力成熟度从组织转向个人的飞跃,也是软件工程从定性转为定量的标志。
团队软件过程(TSP)讲述了如何创建高效且具有自我管理能力的工程小组,工程人员如何才能成为合格的项目组成员,管理人员如何对群组提供指导和支持,如何保持良好的工程环境使项目组能充分发挥自己的水平等软件
工程管理问题。
7.什么是RUP,其主要特点是什么。
RUP:Rational Unified Process,Rational公司提出的软件过程模型。主要有三大特点:
(1)用例驱动: 用例用于驱动大量的开发活动,包括创建和确认系统结构;定义和测试事件和过程;计划反复过程;创建用户文档;系统开发。用例用于同步不同模型的内容。
(2)以架构为中心:在早期使全局的结构基本稳定,控制了架构质量,就可以保证重大风险不会发生,保证了软件未来的扩展性.
(3)迭代和增量开发:开发被组织成一系列固定的短期小项目,称为迭代。每次迭代都具有各自的需求分析、设计、实现和测试活动
8.RUP过程模型包含哪四个阶
(1)初始阶段:主要内容包括识别所有与系统交互的外部实体,在较高层次上定义其交互特性。产出需求文档、原始用例模型、原始的风险评估、一个或多个原型、粗略评估成本。
(2)细化阶段:主要内容包括细化愿景文档、迭代地实现核心构架、解决高风险的问题、定义大多数的需求和范围、进一步评估成本。
(3)构造阶段:主要内容包括所有剩余的构件、应用程序功能、产品功能集成产品详尽测试。
(4)移交阶段:软件产品交付给用户群体。
9.简述项目的风险管理的内容
(1)风险识别:项目初始时,制作风险列表,列出可能的风险
(2)风险分析:分析每个风险发生的概率,以及可能造成的危害,制定预备方案。
(3)风险监控:跟踪监控每个风险是否发生,是否化解
(4)风险处理:一旦发生,做相应处理
10.基于UML建模时,用于获取用户需求的模型时什么?
通常采用用例模型获取需求.用例模型包含用例图、顺序图或活动图等. 用例图从用户的视角来表示系统功能。用例描述使用场景,可用于用户模型视图的建模方案。顺序图或活动图从动态的角度,描述用例场景中的各对象的行为。
11. 需求分业务需求、用户需求和功能需求,简述三种需求的内容分别是什么。
(1)业务需求反映了组织机构或客户对系统、产品的概括的目标要求,它在项目视图与范围文档中予以说明。
(2)用户需求文档从实际用户的角度,描述系统应该具有的功能,以及为了完成这些功能的任务的集合。用户需求在用户案例文档或方案脚本中予以说明。
(3)功能需求从系统的角度出发,描述为了完成用户的需求,系统必须实现哪些软件功能,系统内部所作的操作以及所用的数据信息。
12.什么是需求评审,从哪几个方面进行评审。
需求评审是需求分析阶段结束时,对需求分析人员提出的需求文档进行审查的过程。审查的内容包括功能性需求和非功能性需求。对每个需求应该从完整性、正确性、可行性、必要性、设定优先级、明确性和可验证性等方面进行评审。
13.简述验证、确认、测试的概念。
(1)验证(verification)是指验证或检验软件是否已正确地实现了产品规格书所定义的系统功能和特性,验证过程提供证据表明,软件相关产品与所有生命周期活动的要求相一致。
(2)确认(validation)是为了保证所生产的软件可追溯到用户需求的一系列活动,确认过程提供证据,表明软件是否满足客户需求,并解决了相应问题。(3)测试(testing)是为了发现软件的缺陷,减少产品质量的潜在风险。测