如何评测软件工程知识技能水平?
一、一个软件工程师的软件工程知识技能水平高低主要体现在哪些方面
1)具备扎实的基本功,如:超快的打字速度、熟悉键盘快捷键的使用、熟练操作工具集和使用正则表达式。
2)代码书写符合规范且风格优良、能够对任务进行合理的分解、具有对代码进行单元测试的习惯。
3)对于业务有独到的理解与分析、熟悉需求工程。
4)可以根据任务的具体要求选择合适的代码结构、特性和描述方法。包括UML图的使用、模块的设计、架构风格、代码结构视图等。
5)熟悉软件工程的过程和项目管理。包括软件的生命周期、软件的开发过程、计划和管理项目、交付系统、维护系统等。
二、软件工程测试题
试题来源:https://www.doc88.com/p-076308260531.html
<1>选择题
1. 可行性分析研究的目的是(B )
A. 争取项目 B. 项目值得开发否 C. 开发项目 D. 规划项目
2. 具有风险分析的软件生存周期模型是(C )
A. 瀑布模型 B. 喷泉模型 C. 螺旋模型 D. 增量模型
3. 需求分析阶段的任务是确定( D)
A. 软件开发方法 B. 软件开发工具 C. 软件开发 D. 软件系统的功能
4. 数据字典是用来定义(D ) 中的各个成份的具体含义的。
A. 流程图 B. 功能结构图 C. 系统结构图 D. 数据流图
5. 程序的三种基本控制结构的共同特点是(C )
A. 只能用来描述简单程序 B. 不能嵌套使用
C. 单入口, 单出口 D. 仅用于自动控制系统
6. 软件设计的方法有多种, (A ) 方法不属于面向数据流的设计方法。
A. 基于 Jackson 图的设计 B. 基于 IDEF0 图的设计-结构化方法-数据流
C. 交换分析设计 D. 事务分析设计
7. 为高质量地开发软件项目, 在软件结构设计时, 必须遵循( A) 原则。
A. 信息隐蔽 B. 质量控制 C. 程序优化 D. 数据共享
8. 软件复杂性主要体现在(A )
A. 数据的复杂性 B. 程序的复杂性 C. 控制的复杂性 D. 问题的复杂性
9. 为了提高软件的可维护性, 在编码阶段应注意(D)
A. 保存测试用例和数据 B. 提高模块的独立性
C. 文档的副作用 D. 养成好的程序设计风格
<2>简答题
1. 软件项目估算内容与步骤
软件估算一般是通过主观经验和客观分析两种方法进行, 包括有四个重要方面: 规模估算、 工作量估
算、 进度估算和成本估算。
(1) 规模估算前先制定良好的规划
(2) 确定软件项目的范围
(3) 制订各级别的估算表框架和模板
(4) 根据合适的估算表模板进行由底而上的估算
(5) 项目组根据项目的特点利用合适的估算表模板继续细化
2. 面向对象设计的准则是什么? 有哪 5 个层次和 4 个部分?
模型化; 抽象; 信息隐蔽; 低耦合; 高内聚(操作内聚、 类内聚、 一般――具
体内聚)
在面向对象方法中, 信息隐蔽通过对象的封装性来实现。 类结构分离了与实现, 从而支持了信息隐蔽。
<3>分析题
1. 根据下面给出的规格说明, 利用等价类划分的方法, 给出足够的测试用例。
“一个程序读入三个整数。 把此三个数值看成是一个三角形的三个边。 这个程序要打印出信息, 说明这个
三角形是三边不等的、 是等腰的、 还是等边的。 ”




浙公网安备 33010602011771号