一.简单题
1.软件工程的定义
答:(1)将系统化,规范化,可度量的方法应用于软件的开发,运行和维护的过程,即将工程化应用于软件中。
(2)对(1)中所述方法的研究。
2.software crisis 和 COCOMO模型的解释
答: 六十年代以来,随着计算机应用需求的驱动,系统软译系统和件和应用软件有很大的发展,如操作系统,编译系统和大型应用软件等。由于软件生产的复杂性和高成本,使大型软件的生产出现了很大的困难,即出现软件危机。
COCOMO,英文全称为constructive cost model,中文为构造性成本模型。它是一种精确、易于使用的,基于模型的成本估算方法,最早由勃姆 (Boehm) 于 1981 年提出。从本质上说是一种参数化的项目估算方法,参数建模是把项目的某些特征作为参数,通过建立一个数字模型预测项目成本(类似于居住面积作为参数计算的整体的住房成本)。
3.软件生存周期
答:软件生命周期又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。
4.按照 SWEBok 的 KA 划分,本课程关注哪些 KA 或 知识领域?
答:software requirements
software design
software construction
software engineering management
software engineering tools and methods
5.解释 CMMI 的五个级别。例如:Level 1 - Initial:无序,自发生产模式。
1. 初始级
软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。管理是反应式的。
2.可管理级
建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。
3. 已定义级
已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。
4. 量化管理级
分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。
5. 优化管理级
过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。
6.用自己语言简述 SWEBok 或 CMMI (约200字)
SoftWare Engineering Body Of Knowledge, 即软件工程知识体系,是由多个行业成员和团体合作建立的一种国际标准,用于说明软件工程知识体系指南。
软件工程知识体系从2004年建立开始,经过了数次的版本迭代,其体系下知识领域也在不断细化与扩展。 知识体系在软件工程领域内定义了许多知识领域,到目前为止的版本一共定义了15个KAs,包括软件需求、软件设计、软件构件、软件测试、软件维护等软件工程体系下的细分领域。同时知识体系内也有已提及但未定义到的相关领域,包括计算机工程、系统工程、项目管理、数学等专业领域。
二、解释 PSP 各项指标及技能要求:
阅读《现代软件工程》的 PSP: Personal Software Process 章节:
http://www.cnblogs.com/xinz/archive/2011/11/27/2265425.html
按表格 PSP 2.1, 了解一个软件工程师在接到一个任务之后要做什么,需要哪些技能,解释你打算如何统计每项数据? (期末考核,每人按开发阶段提交这个表)
软件工程师需要完成的工作:任务计划;需求分析;根据分析设计文档、代码规范等;根据文档进行程序开发;开发完成后进行复审、测试;总结工作等。
需要统计的数据有:时间花费以及工作量。可将需求设计为日程安排,细化每天的任务量,这样就能够统计出每一项工作所花费的时间。在工作量的计算上,需要将各个阶段分开来统计,以便后续总结优化。