1.简单题
1.1 软件工程的定义
将系统化的、规范的、可度量的方法用于软件的开发、运行和维护的过程,即将工程化应用于软件开发中。
1.2 阅读经典名著“人月神话”等资料,解释software crisis、COCOMO模型
软件危机(英语:Software Crisis)是早期计算机科学的一个术语,是指在软件开发及维护的过程中所遇到的一系列严重问题,这些问题皆可能导致软件产品的寿命缩短、甚至夭折。软件开发是一项高难度、高风险的活动,由于它的高失败率,故有所谓“软件危机”之说。软件危机的本源是复杂、期望和改变。这个术语用来描述正急遽增加之电脑的力量带来的冲击和可能要处理的问题的复杂性。从本质上来说,它谈到了写出正确、可理解、可验证的计算机程序的困难。
构造性成本模型(COCOMO,英文全称为Constructive Cost Model)是由巴里·勃姆(Barry Boehm)提出的一种软件成本估算方法。这种模型使用一种基本的回归分析公式,使用从项目历史和现状中的某些特征作为参数来进行计算。
1.3 软件生命周期
软件生命周期(Software Development LifeCycle)是指软件的产生直到成熟的全部过程。早期的软件生命周期往往是说“软件从计划、需求开始,经历分析设计、实现、部署、维护,直到最后逐渐消亡的”。这是受到了第一个软件生命周期模型---瀑布模型影响,上述语句实质上简要的描述了瀑布型生命周期。 现在的软件生命周期不再只考虑瀑布型生命周期,另外常见的软件生命周期模型有原型模型、螺旋模型、迭代模型。
1.4 按照SWEBok的KA划分,本课程关注哪些KA或知识领域?
- Software requirements
- Software design
- Software configuration management
- Software engineering management
- Software engineering process
- Software engineering models and methods
- Software quality
1.5 解释CMMI的五个级别
- Level 1 - Initial 无序
- Level 2 - Managed 已管理
- Level 3 - Defined 已定义
- Level 4 - Quantitatively Managed 已量化地管理
- Level 5 - Optimizing 优化中
1.6 用自己的语言简述SWEBok或CMMI
能力成熟度模型集成(英文:Capability Maturity Model Integration,简称CMMI)是一个过程改进方法,它的目的是帮助组织改进他们的绩效。CMMI可以被用于引导横贯一个项目、一个部门或一个完整的组织的过程改进。
在软件工程和组织发展中的CMMI,是一个过程改进方法,它向组织提供用于有效的过程改进的基本元素。CMMI由卡内基·梅隆大学在美国专利和商标局注册。
按照软件工程研究所说法,CMMI帮助“集成传统独立的组织功能,设置过程改进目标和优先级,为质量过程提供指引,并为评价当前过程提供一个参考点”。
2.解释PSP各项指标及技能要求
PSP2.1 | 解释 |
---|---|
Planning | 计划 |
* Estimate | 估计这个任务需要多少时间 |
Development | 开发 |
* Analysis | 需求分析(包括学习新技术) |
* Design Spec | 生成设计文档 |
* Design Review | 设计复审 |
* Coding Standard | 代码规范 |
* Design | 具体设计 |
* Coding | 具体编码 |
* Cde Review | 代码复审 |
* Test | 测试 |
Reporting | 报告 |
* Test Report | 测试报告 |
* Size Measurement | 计算工作量 |
* Postmortem & Process Improvement Plan | 总结,并提出改进计划 |
需要的技能:需求分析、文档设计、代码编写、测试
统计:结合KanBan和GitHub等在线托管平台进行统计。
网友评论