简答题
- 软件工程的定义
应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度,实现满足用户要求的软件产品的定义、开发、和维护的工程或进行研究的学科。
- 解释导致 software crisis 本质原因、表现,述说克服软件危机的方法
原因:
用户对软件需求的描述不精确 |
---|
软件开发人员对用户需求的理解与用户的本来愿望有差异 |
多数管理人员缺乏开发大型软件系统的经验 |
缺乏有利的方法学和工具方面的支持 |
软件产品的特殊性和人类智力的局限性 |
表现:
专案运行超出预算 |
---|
专案运行超过时间 |
软件品质低 |
软件通常不符合需求 |
专案无法管理,代码难以维护 |
克服软件危机的方法:
认真分析软件危机的原因,探索用工程的方法进行软件生产的可能性,即用现代工程的概念、原理、技术和方法进行计算机软件的开发、管理、维护和更新。
- 软件生命周期
软件生命周期是软件的产生直到报废或停止使用的生命周期。旧的解释是周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。
包括问题定义、可行性研究、需求分析、开发阶段和维护。
- SWEBoK 的 15 个知识域
软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程模型和方法、软件质量、软件工程专业练习、软件工程经济、编程基础、数学基础、工程基础。
- 简单解释 CMMI 的五个级别
Lv | 名称 | 作用 |
---|---|---|
1 | 完成级 | 明确项目的目标和要做的努力,在有同类项目时无法保证实现 |
2 | 管理级 | 实施项目遵循计划,有资源和人员准备,实现对项目的一系列管理 |
3 | 定义级 | 可以根据自身特殊情况,将管理体系制度化 |
4 | 量化管理级 | 在此前的基础上,对管理流程进行量化与数字化 |
5 | 优化级 | 之前的要求加上充分利用信息,预防次品,主动改善流程 |
- 用自己语言简述 SWEBok 或 CMMI (约200字)
CMMI是软件成熟度集成模型。最早由美国国防部设想,由SEI创立。它的目的是帮助软件企业对软件工程过程管理进行改进,从而使其能够按计划地开发出高质量软件。它把多学科的各种成熟度模型集成到一个模型中,可以从各个方面去评估软件开发过程中的状态。它主要的关注方向是成本效益、明确重点、过程集中和灵活性。它用五个能力度级别评估软件工程过程的能力成熟度,并给每一层级的工程提出更高的要求和完善的方法。它能保证软件开发的质量和进度,是现代软件企业软件开发过程中必不可少的一部分。