1.软件工程的定义
Software engineering is “(1) the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, that is, the application of engineering to software,” and “(2) the study of approaches as in (1).” –– IEEE Standard 610.12
2.解释导致 software crisis 本质原因、表现,述说克服软件危机的方法
-
本质原因: 因为软件具有以下本质特性。 complexity 复杂性 conformity 一致性 changeability 可变性 invisibility 不可视性
-
表现: 项目运行超出预算。 项目运行超过时间。 软件质量低落。 软件通常不匹配需求。 项目无法管理,且代码难以维护。
-
克服方法: 要克服软件危机,就要认真分析软件危机的原因,探索用工程的方法进行软件生产的可能性,即用现代工程的概念、原理、技术和方法进行计算机软件的开发、管理、维护和更新
3.软件生命周期
在时间维度,对软件项目任务进行划分,又成为软件开发过程。常见有瀑布模型、螺旋模型、敏捷的模型等
4.SWEBoK 的 15 个知识域(An Overview of the SWEBOK Guide 请中文翻译其名称与简短说明)
Software requirements 软件需求 Software design 软件设计 Software construction 软件构造 Software testing 软件测试 Software maintenance 软件维护 Software configuration management 软件结构管理 Software engineering management 软件工程管理 Software engineering process 软件工程实现 Software engineering models and methods 软件工程模型与方法 Software quality 软件质量 Software engineering professional practice 软件工程专业训练 Software engineering economics 软件工程经济 Computing foundations 计算基础 Mathematical foundations 数学基础 Engineering foundations 工程基础
5.简单解释 CMMI 的五个级别。例如:Level 1 - Initial:无序,自发生产模式。
-
成熟度级别1-无序,自发生产模式
-
成熟度级别2 - 已管理
CM - 配置管理(Configuration Management) MA - 度量和分析(Measurement and Analysis) PMC - 项目监控(Project Monitoring and Control) PP - 项目计划(Project Planning) PPQA - 过程和产品质量保证(Process and Product Quality Assurance) REQM - 需求管理(Requirements Management) SAM - 供应商协议管理(Supplier Agreement Management)
- 成熟度级别3 - 已定义
DAR - 决策分析和决议(Decision Analysis and Resolution) IPM - 集成的项目管理(Integrated Project Management) OPD - 组织级过程定义(Organizational Process Definition) OPF - 组织级过程聚焦(Organizational Process Focus) OT - 组织级培训(Organizational Training) PI - 产品集成(Product Integration) RD - 需求开发(Requirements Development) RSKM - 风险管理(Risk Management) TS - 技术解决方案(Technical Solution) VAL - 验证(Validation) VER - 核查(Verification)
- 成熟度级别4 - 已量化地管理
OPP - 组织级过程绩效(Organizational Process Performance) QPM - 量化的项目管理(Quantitative Project Management)
- 成熟度级别5 - 优化中
CAR - 因果分析和决议(Causal Analysis and Resolution) OPM - 组织级绩效管理(Organizational Performance Management)
6.用自己语言简述 SWEBok 或 CMMI (约200字)
-
SWEBok: The Software Engineering Body of Knowledge (SWEBOK)-软件工程知识体系是一个国际标准,指定了普遍接受的软件工程知识体系的指南。 SWEBoK是IEEE Computer Society为了克服软件危机构建软件生产的最佳实践与相关知识的框架,指导软件工程人才的培养与学科建设。该体系将知识氛围软件工程实践和基础教育两个部分共15个知识域。其中Software Requirements,Software Design是其中最重要的两个领域。
-
CMMI: 能力成熟度模型集成(CMMI) 是一种改进过程的方法,其目的是协助提升组织的绩效。CMMI可用来引导一整个项目、一整个部门乃至一个完整的组织的过程改进。在软件工程和组织发展的领域中,CMMI能够向组织提供用于有效的过程改进的基本元素。