如何评测软件工程知识技能水平?
Posted ustc-yz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何评测软件工程知识技能水平?相关的知识,希望对你有一定的参考价值。
一名优秀的软件工程师应当具备以下的特点:
1. 注意遵循代码规范,遵循统一的代码规范有助于不同技术人员之间的协作,有助于减少开发过程中错误的产生。
2. 注重软件的测试,完整的测试是构建大型软件的基础,为了可以开发出高质量的产品,必须要编写单元测试和集成测试。
3. 注重相关实现文档的完善,具有优秀的写作能力。软件开发的文档能提高软件开发的效率,保证软件的质量,而且在软件的使用过程中有指导,帮助,解惑的作用,是构建合格软件的必须品。
4. 扎实的计算机基础知识,扎实的计算机基础有利于快速地解决bug,避免掉进bug的玄学旋涡,可以帮助编写出高性能的软件。
5. 重视团队间的沟通,注重团队合作能力的培养。
软件工程测试试卷
一、选择题
1. 软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是( )。
A.分析阶段 B.设计阶段 C.编码阶段 D.测试阶段
答案: C
来源: https://wenku.baidu.com/view/6bff8ed048649b6648d7c1c708a1284ac850052b.html
2. 软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试()。
A、结构合理性
B、软件外部功能
C、程序正确性
D、程序内部逻辑
答案:A
来源:https://wenku.baidu.com/view/41b1ade0534de518964bcf84b9d528ea81c72f3f.html
3. 下面几种白箱测试技术,哪种是最强的覆盖准则()
A.语句覆盖 B.条件覆盖 C.判定覆盖 D.条件组合覆盖
答案: D
来源:https://www.nowcoder.com/questionTerminal/cc48563d90b2430ab51f7bceaab055ec?toCommentId=1176213
4. 内聚程度最低的是( )内聚
A.偶然 B.过程 C.顺序 D.时间
答案:A
5. ()是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
A. 多态性 B. 继承 C. 封装 D. 消息
答案:C
来源:https://wenku.baidu.com/view/63f475787fd5360cba1adb5a.html
6. 软件开发活动的顺序应该是 ( )。
A.问题定义、可行性研究、需求分析、设计、编码和测试
B.问题定义、设计、可行性研究、编码和测试
C.需求分析、设计、编码和测试
D.需求分析、编码和测试、试运行
答案:A
来源:https://wenku.baidu.com/view/6af039d7f605cc1755270722192e453610665b18.html
7. 面向对象的主要特征除对象唯一性、封装、继承外,还有 () 。
A.兼容性
B.多态性
C.完整性
D.可移植性
答案:B
来源:https://wenku.baidu.com/view/6889c212f08583d049649b6648d7c1c708a10b90.html
8. 需求分析最终结果是产生()
A.项目开发计划
B.需求规格说明书
C.设计说明书
D.可行性分析报告
答案:B
来源:https://wenku.baidu.com/view/7b2ecc1614791711cc791739.html
9. 需求分析阶段的任务是确定( )。
A.软件开发方法 B.软件开发工具
C.软件开发费 D.软件系统的功能
答案:D
来源:https://wenku.baidu.com/view/bf26103411661ed9ad51f01dc281e53a5802515b.html
10. 软件部件的内部实现与外部可访问性的分离, 是指软件的()。
A、 继承性 B、 共享性 C、 封装性 D、 抽象性
答案:C
来源:https://wenku.baidu.com/view/0aaeee55842458fb770bf78a6529647d272834c4.html
二、简答题(来源于软件工程教材中的概念)
1. 什么是白盒测试?
答:是指实际运行被测程序,通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法、溢出、路径和条件等方面的缺点或者错误,进而加以修正。
2. 软件危机的主要表现是什么?
答:(1)软件开发进度难以预测
(2)软件开发成本难以控制
(3)用户对产品功能难以满足
(4)软件产品质量无法保证
(5)软件产品难以维护
(6)软件缺少适当的文档资料
3. 软件过程是什么?列举几个常见的描述软件过程的模型?
答:软件过程是指为了获取高质量软件所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
常见的软件过程模型有瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型。
三、应用题
1. 每个国家的电压是不一样的, 中国室内的电压一般是220v,美国,日本的电压是110v,假设笔记本需要的电压是12.6v 这时,就需要适配器,将室内电压转为笔记本需要的电压。请使用熟悉的语言或者伪代码使用适配器模式模拟以上场景。
答案:
public interface ChinaVoltageInterface {
void use220v();
}
public class ChinaVoltageInterfaceImpl implements ChinaVoltageInterface {
@Override
public void use220v() {
System.out.println("this is 220v");
}
}
public interface NotebookVoltageInterface {
void use12v();
}
public class ChinaVoltageToNotebookAdapter implements NotebookVoltageInterface {
private ChinaVoltageInterface chinaVoltageInterface;
public ChinaVoltageToNotebookAdapter(ChinaVoltageInterface chinaVoltageInterface) {
this.chinaVoltageInterface=chinaVoltageInterface;
}
@Override
public void use12v() {
System.out.println("notebook use 12v ");
System.out.println(" notebook voltage use china voltage");
chinaVoltageInterface.use220v();
}
}
来源:https://www.jianshu.com/p/daf28a5f80aa
2. 交通一卡通自动充值软件系统需求如下:系统只接收50元或100元纸币,一次充值只能使用一张纸币,一次充值金额只能为50元或100元。请为该系统设计黑盒测试用例。
答案:
若输入50元纸币,并选择充值50元,完成充值后退卡,提示充值成功;
若输入50元纸币,并选择充值100元,提示输入金额不足,并退回50元;
若输入100元纸币,并选择充值50元,完成充值后退卡,提示充值成功,找零50元;
若输入100元纸币,并选择充值100元,完成充值后退卡,提示充值成功;
若输入纸币后在规定时间内不选择充值按钮,退回输入的纸币,并提示错误;
若选择充值按钮后不输入纸币,提示错误
来源:https://www.cnblogs.com/jane4321/p/11028956.html
以上是关于如何评测软件工程知识技能水平?的主要内容,如果未能解决你的问题,请参考以下文章