当前位置:文档之家› 软件工程师(复习资料)

软件工程师(复习资料)

软件工程师(复习资料)
软件工程师(复习资料)

装装装

2011 ~ 2012 学年度第 二 学期

高职2010级信息工程系 (软件技术专业)《软件工程》 期末考试试卷(标答)

一、单项选择题(共20分,每小题2分,每小题有一项正确答案,请将答案正确

的序号填写在括号内)

1.软件工程是( C )。 A. 是结构化程序设计的指导方法。

B. 是软件开发技术和软件工程管理学为内容的学科。

C. 是指导计算机软件开发和维护的工程学科。

D. 是指导软件开发的工程方法。

2.在软件开发模型中,提出最早、应用最广泛的模型是( A ) A. 瀑布 B. 螺旋

C. 演化

D. 智能

3.软件可行性研究一般不考虑( D )。

A. 是否有足够的人员和相关的技术来支持系统开发

B. 是否有足够的工具和相关的技术来支持系统开发

C. 待开发软件是否有市场. 经济上是否合算

D. 待开发的软件是否会有质量问题

4.软件详细设计的主要任务是确定每个模块的( A )。 A. 算法和使用的数据结构 B. 外部接口 C. 功能

D. 编程

5.为了提高软件的可维护性,在编码阶段应注意( D )。 A. 保存测试用例和数据 B. 提高模块的独立性 C. 文档的副作用

D. 养成好的程序设计风格

6.概要设计过程是( A )。

A. 先确定系统的实现方案,然后在结构设计阶段中确定软件的模块结构

B. 确定软件的模块结构,再设计出系统的所有程序和数据文件

C. 设计出系统的HIPO 图并对所有模块进行描述

D. 规划出系统的后期设计总体结构

7.软件需求分析的主要任务是准确地定义出要开发的软件系统是( C )。

A. 如何做

B. 怎么做

C. 做什么

D. 对谁做

8.软件生命周期中所花费用最多的阶段是( D )。

A .详细设计

B. 软件编码 C .软件测试

D. 软件维护

9.数据字典是用来定义( B )中的各个成份的具体含义的。

A .流程图

B .功能结构图

C .系统结构图

D .数据流图

10.在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了( A )。

A .软件危机

B .软件工程

C .程序设计革命

D .结构化程序设计

二、填空题( 共 10 分,每空 1 分,请将正确答案填在空白处)

1. 软件工程釆用层次化的方法,每个层次都包括 过程 、方法、工具三要素。

2. 类图描述系统的 静态 结构,类图的结点表示系统中的类及其属性和操作,类图的边表示类

之间的联系,包括 继承 、关联、依赖、聚合等。

3. 根据领域知识、业务需求描述和既往经验,建立以包图表示的目标软件系统的 顶层架构 ,

形成以类图表示的 领域概念 模型。

4. 原型方法是用户和设计者之间的一种交互过程,选用于__ 需求不确定性较高的_ __系统。

5. 软件设计过程是对 过程 结构、数据结构和 过程细节 逐步求精、复审并编制文档

的过程。

6. 软件设计阶段的输出结果为 设计规格说明书 ,此文档经严格复审后将作为 编码

阶段的输入文档。

————订线————————————————————

订线————————————————————

订线————

名.

号.

别.

业班级.

————装订线————————————————————装订线————————————————————装订线————三、名词解释(共10分,每小题5分)

1. 软件。

软件是与计算机系统中硬件相互依存的部分,它是包括程序、数据及相关文档的完整集合。

2. 编程风格。

编程风格是在不影响性能的前提下,有效地编排和组织程序以提高可读性和可维性。

3. 实体—关系图(ERD)。

ERD描述系统所有数据对象的组成和属性,描述数据对象之间关系的图形语言。

4. 可行性分析的内容包括什么。

可行性分析的内容包括:环境可行性分析、技术可行性分析、经济可行性分析,其中经济可行性

又分为费用估计和经济效益估计。

5. 软件总体设计的核心内容

软件总体设计的核心内容就是依据需求规格或规格定义,合理、有效地实现产品规格中定义的

各项需求。

四、简答题(共40分,每小题2分)

(本题10分)1.简述David设计准则

解:

David设计准则(总体设计准则)

1、设计过程应该考虑各种可选方案,根据需求、资源情况、设计概念来决定设计方案。

…………2分

2、设计应该可以跟踪需求分析模型。

…………2分

3、设计资源都是有限的。

…………2分

4、设计应该体现统一的风格。

…………2分

5、设计的结构应尽可能满足变更的要求。

…………2分

(本题10分)2. 软件危机的原因及解决方法。

(1)由于缺乏软件开发经验和有关软件开发数据的积累,使得开发工作的计划很难制订。

(2)

(2)软件人员与用户的交流存在障碍,除了知识背景的差异,缺少合适的交流方法及需求描述工具

也是一个重要的原因,这使得获得的需求不充分或存在错误,在开发的初期难以发现,存在的

问题往往在开发的后期才暴露出来,使得开发周期延长,成本增高。

(2)

(3)软件开发过程不规范,缺少方法论和规范的指导,开发人员各自为战,缺少整体的规划和配合,

不重视文字资料工作,软件难以维护。

(2)

(4)随着软件规模的增大,其复杂性往往会呈指数型增长。

(2)

(5)缺少有效的软件评测手段,提交用户的软件质量差,在运行中暴露出大量的问题,轻者影响系

统的正常使用,重者发生事故,甚至造成生命财产的重大损失。2. 编程风格。

(2)

(本题10分)3.简述可行性分析的主要步骤和评价准则。

解:可行性分析的主要步骤:

1)确定目标。…………1分

2)进行系统调查。…………1分

3)列出可能的技术方案。…………1分

4)技术先进性分析。…………1分

5)经济效益分析。…………1分

6)综合评价,…………1分

可行性分析的评价准则:

1)效益性原则。…………1分

2)经济性原则。…………1分

3)可靠性原则。…………1分

4)可比性原则。…………1分

————装订线————————————————————装订线————————————————————装订线————(本题10分)4.软件设计的总体目标和步骤

解:

软件设计的总体目标:

1、依据现有资源,选取合理的系统解决方案,设计最佳的软件模块的结构。…………1分

2、全面的精准的数据库设计。…………1分

3、同时制订详细的测试计划,书写相关的文档资料。…………1分

软件设计的总体步骤:

1、根据用户需要,确定要做哪些工作,形成系统的逻辑模型。

…………2分

2、将系统分解成一组模块,各个模块分别满足所提出的要求。

…………1分

3、将分解出来的模块,按照是否能满足正确的需求进行分类。对不能满足正常需求的模

块要进一步调查研究,以确定能否进行有效地开发。

…………2分

4、制订工作计划,开发有关的模块,并对各模块进行一致行动测试以及系统的最后运行。

…………1分

五、上机操作题(共20分,共1题)

(本题20分)1.图书馆的预定图书子系统有如下功能:

(1)由供书部门提供书目给订购组;

(2)订书组从各单位取得要订的书目;

(3)根据供书目录和订书书目产生订书文档留底;

(4)将订书信息(包括数目,数量等)反馈给供书单位;

(5)将未订书目通知订书者;

(6)对于重复订购的书目由系统自动检查,并把结果反馈给订书者。

试根据要求画出该问题的数据流程图,并把其转换为软件结构图。

软件开发招聘要求

Web前端设计工程师2人职位要求: 1、Web前端表现层与后端交互的架构设计和开发; 2、精通HTML5、CSS/CSS 3、JavaScript等前端相关技术,熟悉W3C标准; 3、熟悉Jquery、JqueryMobile框架,响应式页面开发经验,并且能实现各种交互效果; 4、对用户体验、交互操作流程、及用户需求有一定了解; 6、具备良好的服务意识、责任心、较强的学习能力、优秀的团队沟通与协作能力。 建议薪酬:6000 – 12000元 Android 开发工程师2人职位要求: 1、两年以上Java开发经验,一年以上Android开发经验; 2、深入了解Java设计模式、Android系统框架和SDK等; 3、对软件产品有强烈的责任心,具备良好的沟通能力和优秀的团队协作能力; 4、对手机软件性能优化、内存优化有一定经验 5、能独立开发App,有成功发布App者优先 建议薪酬:8000 – 16000元 Java开发工程师2人职位要求: 1、3年以上的J2EE开发工作经验、具有扎实的Java编程功底和良好的编码规范 2、精通项目开发过程中的各个阶段的任务及其输出物 3、精通Struts,spring,hibernate等常用框架 4、熟悉Tomcat、nginx、apache等多种应用和WEB服务器的配置 5、有丰富的数据库设计经验,熟悉sql语言,并熟悉Mysql数据库系统 6、熟练HTML5、JavaScript、CSS ,了解当前流行的javascript开源框架 7、工作主动性强,有责任心;能承受一定压力,有良好的沟通能力与团队合作精神 建议薪酬:8000 – 16000元 数据库工程师1人职位要求: 1、3年以上IT系统工作经验,两年以上mysql 管理经验; 2、精通mysql 数据库维护(灾难恢复、故障处理、性能优化); 3、熟悉双机热备机制; 4、熟悉主流的存储(阵列、SAN)、备份和容灾环境; 5、熟悉TCP/IP网络技术,有一定的组网经验; 6、大学英语四级,较强的阅读英文文档的能力; 建议薪酬:8000 – 16000元 UI工程师1人职位要求: 1、精通各种视觉效果的呈现,熟练使用photoshop,Illustrator等必备专业软件,手绘能力出色; 2、从事互联网设计3年以上,精通手机端、PC端、网站设计,充分理解UCD设计流程; 3、具有很强的基移动端的UI整体风格策划能力和实现能力; 4、良好的审美意识和艺术修养,能够对行业变化和设计趋势做出有效的判断,有一定的设计思想; 5、有出色的表达能力,有效的分享和交流经验; 6、具备良好的合作态度和团队精神,乐于学习,工作有激情,创新欲望强烈,富有责任感; 建议薪酬:8000 – 16000元

软件工程师面试试题

软件工程师面试试题 姓名: 1、全局变量和局部变量的概念和不同 作用域为整个程序运行空间的变量为全局变量。 作用域为某个函数或复合语句内部的变量为局部变量。 两者作用域不同,所在物理空间申请和分配方式不同。 使用原则:能用局部变量的最好不要用全局变量,以减少模块间的耦合度。2、static类型变量的概念 静态变量是在编译时就分配物理空间的变量。主要用于全局物理空间申请以及函数内部用于独立函数本身存在的应用场合。 3、简述获取双精度浮点数(double)每个字节数据的操作方法 使用字节指针强制转换连两存放的地址。 Double dblTemp = 0.0; Byte * pByte = (byte *)(&dblTemp); 4、在C++中,new和delete分配的内存块为何需要成对使用 两者实际调用的是malloc和free,如果不成对使用,则造成内存泄漏。 5、举例说明数据的二进制表示方式和字符型表示方式 以数据文件为例: Fprintf(f, “%d”, data);//字符形 Fwrite(&data, sizeof(int),1,f);//二进制形

6、头文件中使用#ifndef/define/endif的优点? 防止嵌套重复定义 7、如何向一个窗口发消息,写出windows API。 首先获取一个窗口句柄,可以使用枚举所有窗口的方式(EnumWindows); 使用API函数发送消息; 例如向一个按钮发送点击消息: SendMessage(hwnd, WM_LBUTTONDOWN, MK_LBUTTON, 0x00100019) 8、#include < filename.h >和#include “filename.h”有什么区别? 搜索范围不同。 前者只在编译环境制定的INCLUDE路径范围内搜索; 后者增加对当前目录的搜索。 9、软件编程中,为了便于阅读、记忆和使用,对变量名、数组名、结构体名、 联合体名、函数名等的命名规则简述 变量名:类型加名词或修饰词,例如:double dblTemp;定义一个双精度的临时变量。 数组名:类型加名词复数形式,例如char * strNames[100],定义一个字符串数据结构体:一般定义为类型,结构名为下划线开头,类型名大写。例如:Typedef struct _MyStruct{ Int iAge; … }MYOBJECT; * LPMYOBJECT;

软件测试工程师笔试题及答案

测试工程师笔试题 一、计算机知识(30分) 1、在Linux系统中,一个文件的访问权限是755,其含义是什么 参考答案: 755表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。 2、Linux中,如何从root用户切换到普通用户 参考答案:su su user1 切换到user1,但切换后的当前目录还是root访问的目录 su – user1 切换到user1,并且当前目录切换到user1的根目录下(/home/user1/) 3、简述一下C/S模式和B/S模式的区别 参考答案: c/s 是客户端/服务器架构 b/s 是浏览器/服务器架构 C/S模式有以下特点: S模式将应用与服务分离,系统具有稳定性和灵活性 S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性 3.由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快 4.在C/S模式中,作为客户机的计算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂 B/S模式有以下特点: 1.系统开发、维护、升级方便 每当服务器应用程序升级时,只要在服务器上升级服务应用程序即可,用户计算机上的浏览器软件不需要修改,系统开发和升级维护方便 S模式具有很强的开放性 在B/S模式下,用户通过通用的浏览器进行访问,系统开放性好 S模式的结构易于扩展 由于Web的平台无关性,B/S模式的结构可以任意扩展,可以从包含一台服务器和几个用户的小型系统扩展成为拥有成千上万个用户的大型系统 4.用户使用方便 B/S模式的应用软件都是基于Web浏览器的,而Web浏览器的界面是类似的。对于无用户交换功能的页面。用户接触的界面都是一致的,用户使用方便 4、Windows操作系统中PATH环境变量的作用是什么 参考答案: PATH是Windows操作系统环境变量,PATH作用是用户在命令行窗口执行一个命令,则在PATH变量设置的目录下依次寻找该命令或对应的执行文件,若找到,则执行,若没有找到,则命令行窗口返回无效命令。 5、TCP和UDP有什么区别 参考答案: TCP-有连接,所以握手过程会消耗资源,过程为可靠连接,不会丢失数据,适合大数据量交换UDP-非可靠连接,会丢包,没有校验,速度快,无须握手过程

嵌入式软件工程师工作要求

嵌入式软件工程师工作要求 无锡市瑞丰精密机电技术有限公司 任职要求: 1、电子、计算机、自动化相关专业本科以上学历。 2、掌握电子行业专业英语,能够熟练阅读相关器件英文数据文档。 3、熟悉C/C++编程语言。 4、对力学、温湿度知识有一定基础。 5、欢迎应届毕业生。 薪水范围:1500-1999 北京江河瑞通技术发展有限公司 岗位要求: 1.计算机科学与技术及相关专业,获得硕士或学士学位的优秀毕业生; 2.熟悉掌握RTOS(WINCE、Linux等)之上的嵌入式软件开发; 3.熟悉数据通信原理,熟悉VLAN,STP等相关二层协议; 4.有一定的水利或软件行业相关专业知识背景; 5.有通信、计算机网络协议开发经验者优先; 6.有强烈的责任心和团队合作精神,具有较强的沟通及协调能力。上海华虹集成电路有限责任公司 职位描述 1、负责公司软件产品的设计/实现/编码/维护/文档编制/公共模块积累等工作,为客户提供应用技术支持。

2、协助产品应用方案的推广,反馈客户信息。 技能描述 1、有一定的软件开发经验 2、熟悉C语言、汇编语言,有单片机软件设计经验;熟悉C++、C#、Java等; 3、具有良好的逻辑思维能力、创新能力和团队协作精神;良好的沟通协调能力和服务意识; 4、熟悉智能卡的相关知识的优先; 应聘人员条件 1、熟练使用KEIL,ADS,IAR,https://www.doczj.com/doc/6e5082563.html,,Eclipse等开发环境。 2、熟悉51和ARM7架构及其软件开发和仿真调试。 北京北科亿力科技有限公司 职位描述: 电子或嵌入式软件工程师 一、岗位职责: 1、负责公司电子、工控、仪表等硬件产品的研发、优化及相关技术文档的编写; 2、负责嵌入式软件的设计、编程、测试及技术文档的编写; 3、负责公司新产品知识产权文档的编写和申报; 4、完成上级领导交办的其它工作任务。

经典软件工程师面试题

请参加如下测试,此题是由数十家知名IT企业的人力资源管理部进行 综合分析总结出的测试题,请大家认真完成。 一共 30 道题 ,每题 1 分 ,满分 30 分 1. 如果 A=1,FAT=27,那么 FAITH=? A、44 B、42 C、41 D、40 2. 7/2 × 14/3 + 26/5=() A、1304/15 B、1274/15 C、901/15 D、1261/15 E、以上都不对 3. 如果‘CONTRIBUTE’被写作‘ETBUIRNTOC’,用这种方式写‘POPULARISE’时从左 边数第六个字母是什么? A、R B、I C、A D、L 4. 160的( )%=80的80% A、60 B、30 C、50 D、40 E、以上都不正确 5. 如果用某一编码可以把 ‘STOVE’ 表示成 ‘FNBLK’,那么用此编码可 以把 ‘VOTES’ 表示成如下哪一种? A、LBNKF B、LNBKF

C、LKNBF D、FLKBN 6. 在下列数字系列中有一个数字是错的,请找出来 40 42 49 57 74 100 137 A、100 B、74 C、57 D、49 E、42 7. Rs.6500按照多少的比率才能在5年之后达到Rs.1787.5的利息是 A、4.5 B、6.5 C、7.5 D、3.5 E、以上都不正确 8. 把医生、发烧、药物、药店按照一定的顺序排列: A、药店、药物、发烧、医生 B、发烧、医生、药店、药物 C、医生、药店、药物、发烧 D、药物、医生、药店、发烧 9. 下列5项选择中有4个可以根据一定规律组成一组,哪一个不属于他们? A、重 B、短 C、长 D、轻 E、固体 10. 下列的数字系列中在6之后并且在8之前有多少个3? 3 6 6 8 3 6 6 8 3 6 8 3 6 3 8 3 6 3 8 3 3 8 3 3 9 A、1个 B、2个 C、3个

Java软件开发工程师笔试题(答案)

Java工程师笔试题 一、填空题(本大题10小题,每空1分,共20分)。 1.Java语言的三大特性即是: 继承、封装、多态。 2.在Java中,char 型采用____unicode_______编码方案,这样,无论是中文字符还是英文字符,都是占用__2___个字节的内存空间。 3. 形式参数指的是方法被__定义____ 时的参数行,实际参数是方法被__调用__ _ 时所传递进去的变量或值。 4.JSP内置对象中,application对象是代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息,而session 对象则是每个客户专用的。 5.如果想把一个对象写入一个流,那么这个类就必须实现Seralizable 接口。 6.程序中实现多线程的方法有两种:继承Thread类和实现___Runable _ 接口。 7.多线程中,可以通过调用相应的setPriority() 方法来修改一个线程的相对优先级。 8.面向对象编程的五大设计原则,分别是单一职责、开放封闭、 里氏替换、依赖倒置、接口分离 9.通过Ajax,客户端获取的数据主要有两种类型:文本型和xml 10.Socket通常也称为套接字,用于描述__ ip 和_ _接口 二、选择题(本大题20 小题,每小题2分.共40分)。 1.在JA V A中,如果父类中某些方法不包含任何逻辑,并且需要由子类重写.应该使用( )关键字来声明父类的这些方法: A) final B) static C) abstract D) void 2.在JA V A中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是()。 A) interface A extend B,C B) interface A implements B,C C) class A implements B,C D) class A implements B, implements C

软件工程师面试中常见的问题

面试中常见的问题 1、请你自我介绍一下你自己, 回答提示:一般人回答这个问题过于平常,只说姓名、年龄、爱好、工作经验,这些在简历上都有,其实,企业最希望知道的是求职者能否胜任工作,包括:最强的技能、最深入研究的知识领域、个性中最积极的部分、做过的最成功的事,主要的成就等,这些都可以和学习无关,也可以和学习有关,但要突出积极的个性和做事的能力,说得合情合理企业才会相信。企业很重视一个人的礼貌,求职者要尊重考官,在回答每个问题之后都说一句“谢谢”。企业喜欢有礼貌的求职者。 2、你觉得你个性上最大的优点是什么? 回答提示:沉着冷静、条理清楚、立场坚定、顽强向上。 乐于助人和关心他人、适应能力和幽默感、乐观和友爱。 3、说说你最大的缺点? 回答提示:这个问题企业问的概率很大,通常不希望听到直接回答的缺点是什么等,如果求职者说自己小心眼、爱忌妒人、非常懒、脾气大、工作效率低,企业肯定不会录用你。绝对不要自作聪明地回答“我最大的缺点是过于追求完美”,有的人以为这样回答会显得自己比较出色,但事实上,他已经岌芨可危了。企业喜欢求职者从自己的优点说起,中间加一些小缺点,最后再把问题转回到优点上,突出优点的部分。企业喜欢聪明的求职者。 4、你对加班的看法?

愿意为公司奉献。 回答样本:如果是工作需要我会义不容辞加班。我现在单身,没有任何家庭负担,可以全身心的投入工作。但同时,我也会提高工作效率,减少不必要的加班 5、你对薪资的要求? 回答提示:如果你对薪酬的要求太低,那显然贬低自己的能力;如果你对薪酬的要求太高,那又会显得你分量过重,公司受用不起。一些雇主通常都事先对求聘的职位定下开支预算,因而他们第一次提出的价钱往往是他们所能给予的最高价钱。他们问你只不过想证实一下这笔钱是否足以引起你对该工作的兴趣。 回答样本一:“我对工资没有硬性要求。我相信贵公司在处理我的问题上会友善合理。我注重的是找对工作机会,所以只要条件公平,我则不会计较太多 回答样本二:我受过系统的软件编程的训练,不需要进行大量的培训。而且我本人也对编程特别感兴趣。因此,我希望公司能根据我的情况和市场标准的水平,给我合理的薪水。 回答样本三:如果你必须自己说出具体数目,请不要说一个宽泛的范围,那样你将只能得到最低限度的数字。最好给出一个具体的数字,这样表明你已经对当今的人才市场作了调查,知道像自己这样学历的雇员有什么样的价值 6、在五年的时间内,你的职业规划? 回答提示:这是每一个应聘者都不希望被问到的问题,但是几乎每个人都会被问到。比较多的答案是“管理者”。但是近几年来,许多公司都已经建立了专门的技术途径。这些工作地位往往被称作“顾问”、“参议技师”或“高级软件工程师”等等。当然,说出其他一些你感兴趣的职位也是可以的,比如产品销售部经理,生产部经理等一些与

软件测试工程师市场需求

根据有关职位统计资料显示,在国外大多数软件公司,1个软件开发工程师就需要辅有2个软件测试工程师。目前,软件测试自动化技术在我国则刚刚被少数业内专家所认知,而这方面的专业技术人员在国内更是凤毛麟角。根据对近期网络招聘IT人才情况的了解,许多正在招聘软件测试工程师的企业很少能够在招聘会上顺利招到合适的人才。 随着中国IT行业的发展,产品的质量控制与质量管理正逐渐成为企业生存与发展的核心。从软件、硬件到系统集成,几乎每个中大型IT企业的产品在发布前都需要大量的质量控制、测试和文档工作,而这些工作必须依靠拥有娴熟技术的专业软件人才来完成。而软件测试工程师就是其中之一,目前已成为各类科技企业紧急征召的重要对象。 据了解,由于软件测试工程师处于重要岗位,所以必须具有电子、电机类相关专业知识背景,并且还应有两年以上的实际操作经验。他们应熟悉中国和国际软件测试标准,熟练掌握和操作国际流行的系列软件测试工具,能够承担比较复杂的软件分析、测试、品质管理等任务,并能独立担任测试、品质管理部门的负责人。一般情况,软件测试工程师可分为测试工程师、高级测试工程师和资深测试工程师三个等级。 在具体工作过程中,测试工程师的工作是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。对软件测试工程师而言,必须具有高度的工作责任心和自信心。任何严格的测试必须是一种实事求是的测试,因为它关系到一个产品的质量问题,而测试工程师则是产品出货前的把关人,所以,没有专业的技术水准是无法胜任这项工作的。同时,由于测试工作一般由多个测试工程师共同完成,并且测试部门一般要与其他部门的人员进行较多的沟通,所以要求测试工程师不但要有较强的技术能力而且要有较强的沟通能力 而事实上,在国外许多国家的软件公司,软件测试工作已经逐渐演变成一门独立的科学,包括了配置方案、测试机制、跨平台策略和产品性能、稳定性等独立区域的知识模块。 同时,软件测试员需要参与包括需求分析—设计—编码等所有软件开发环节,尽可能地发现每个环节可能存在的Bug。“这是一个要求非常高的职业。”郑人杰说。因此国外的软件测试工程师基本上都是由从业多年的开发工程师转变而来。 不过,现在软件测试的重要性已经逐渐获得认可。根据51testing提供的一份调查报告,目前近91%的国内软件企业配备了测试队伍,更多的企业通过软件测试来提高自身的软件产品质量。总体上,69%的企业认为通过测试后软件质量得到很好提高。 而所有的招聘网站都开始发布同样的信息:软件测试工程师供不应求,企业招聘不到合格的人才。智联招聘一篇文章称,“从入门级的初级测试工程师到高级测试工程师以及项目Leader全线短缺”。 国家劳动和社会保障部也在3月份发布信息,称未来几年软件测试员这一职位,将会产生大量的市场需求。 国家应用软件产品质量监督检验中心副主任吴铸成告诉记者,国外小一些的软件企业,软件开发与测试人员之比基本上是1:1。微软公司是1:2,windows2000 操作系统在研发过程中甚至使用了250名项目经理、1700名软件开发工程师、3200名软件测试工程师。

软件开发工程师岗位职责说明书

软件开发工程师岗位职责说明书 职务名称软件开发工程师部门编码所属部门研发部直接上级研发部经理管辖岗位 轮换岗位管辖人数人 在组织中的位置 任职资格 1、教育及学历背景 ◆软件工程、计算机、电子、电气、自动化或通信专业 ◆本科以上学历 2、专业知识 ◆熟练掌握C/C++语言,熟练使用VC开发平台,如VC6.0、VS2005或VS2008等,熟悉STL或Boost库; 3、工作经验 ◆熟悉多线程、网络开发、数据库开发; ◆有1-3年以上实际项目开发相关工作经验; 4、技能技巧 ◆熟悉办公软件操作使用; ◆有较强的抗压能力; ◆有较强沟通协调能力; ◆熟悉部门管理及相关工作制度。 5、个性特征 ◆敬业、爱岗,有良好的职业道德;具有良好的团队协作精神; ◆语言表达简洁、准确; ◆思维敏捷,有较强的综合分析能力,遇事判断准备、处置果断,具有较强的理解力、沟通能力、内部协调能力; ◆认同公司企业文化。 总工程师 研发部经理 软件开发工程

工作岗位及职责1、根据项目具体要求,承担开发任务,按计划完成任务目标; 2、根据用户需求按时完成软件开发进度,并分析开发的功能是否能达到客户的要求,以及保证软件到 用户处的稳定性; 3、负责工程中主要功能的代码实现,软件交付客户后,还要参与软件的维护工作,及时解决客户使用 中遇到的问题。 4、负责编制与项目相关的技术文档; 5、协助测试试人员完成软件系统及模块的测试; 6、负责产品设计、新产品的试制、标准化技术规程; 7、负责制订和修改技术规程、编制产品的使用、维修和技术安全等有关的技术规定; 8、负责公司新技术引进和产品开发工作的计划、实施,确保产品开发工作按时完成。确保产品技术的 先进、稳定; 9、合理编制技术文件,改进和规范工艺流程; 10、研究和摸索科学的流水作业规律,认真做好各类技术信息和数据收集、整理、分析、研究汇总、 归档保管工作,为新产品的开发提供可靠的指导依据; 11、负责参与制定公司产品的企业统一标准,实现产品的规范化管理; 12、认真做好技术图张、技术数据的归档工作,严格按照研发部规章制度交接技术数据; 13、及时指导、处理、协调和解决产品出现的技术问题,确保经营工作的正常进行; 14、及时搜集整理国内外产品发展信息,及时把握产品发展趋势; 15、周报月工作计划和总结的按时提交。 16、完成领导临时交办的其他工作。 工作关系1、报告对象:研发部经理 2、监督:无 3、合作部门:公司各职能部门 体质条件1、身体健康; 2、能承受较高的心理压力及高强度的工作; 3、认同公司企业文化和公司发展者; 4、人品、职业道德高尚者。 编制部门参与编制部门研发部 编制日期修订部门审定者:

毕业生软件工程师面试题

2 网络知识 2.1 OSI和TCP/IP 1. 的七层网络结构图(功能及特点)OSI 1) 物理层:为数据链路层提供物理连接,在其上串行传送比特流,即所传送数据的单位是比特。此外,该层中还具有确定连接设备的电气特性和物理特性等功能。 2) 数据链路层:负责在网络节点间的线路上通过检测、流量控制和重发等手段,无差错地传送以帧为单位的数据。为做到这一点,在每一帧中必须同时带有同步、地址、差错控制及流量控制等控制信息。 3) 网络层:为了将数据分组从源(源端系统)送到目的地(目标端系统),网络层的任务就是选择合适的路由和交换节点,使源的传输层传下来的分组信息能够正确无误地按照地址找到目的地,并交付给相应的传输层,即完成网络的寻址功能。 4) 传输层:传输层是高低层之间衔接的接口层。数据传输的单位是报文,当报文较长时将它分割成若干分组,然后交给网络层进行传输。传输层是计算机网络协议分层中的最关键一层,该层以上各层将不再管理信息传输问题。 5) 会话层:该层对传输的报文提供同步管理服务。在两个不同系统的互相通信的应用进程之间建立、组织和协调交互。例如,确定是双工还是半双工工作。 6) 表示层:该层的主要任务是把所传送的数据的抽象语法变换为传送语法,即把不同计算机内部的不同表示形式转换成网络通信中的标准表示形式。此外,对传送的数据加密(或解密)、正文压缩(或还原)也是表示层的任务。 7) 应用层:该层直接面向用户,是OSI中的最高层。它的主要任务是为用户提供应用的接口,即提供不同计算机间的文件传送、访问与管理,电子邮件的内容处理,不同计算机通过网络交互访问的虚拟终端功能等。 2. (功能及特点)TCP/IP 1) 网络接口层:这是TCP/IP协议的最低一层,包括有多种逻辑链路控制和媒体访问协议。网络接口层的功能是接收IP数据报并通过特定的网络进行传输,或从网络上接收物理帧,抽取出IP数据报并转交给网际层。 2) 网际网层(IP层):该层包括以下协议:IP(网际协议)、ICMP(Internet Control Message Protocol,因特网控制报文协议)、ARP(Address Resolution Protocol,地址解析协议)、RARP(Reverse Address Resolution Protocol,反向地址解析协议)。该层负责相同或不同网络中计算机之间的通信,主要处理数据报和路由。在IP层中,ARP协议用于将IP地址转换成物理地址,RARP协议用于将物理地址转换成IP地址,ICMP协议用于报告差错和传送控制信息。IP协议在TCP/IP协议组中处于核心地位。 3) 传输层:该层提供TCP(传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)两个协议,它们都建立在IP协议的基础上,其中TCP提供可靠的面向连接服务,UDP提供简单的无连接服务。传输层提供端到端,即应用程序之间的通信,主要功能是数据格式化、数据确认和丢失重传等。

软件工程师笔试题目

软件工程师笔试题目 (考试时间:60分钟,满分100分) 1、请简要描述TCP/IP参考模型和OSI参考模型。(10分) 2、简述如下物联网设备Wi-FI、Bluetooth、ZigBee、RFID、NB-IoT的各自特点。(10分) 3、编程实现如下运算:1!+ 2!+ 3!+ ……+ 17! + 18! + 19! + 20!。(15分) 4、假设有个字符数组A,有10个元素,请对这10个元素进行从小到大排列。(10分)

5、假定x=9999,求下面函数的返回值(10分) int func(x) { int countx = 0; while(x) { countx ++; x = x&(x-1); } return countx; } 6、对整型数组a[10]输入10个元素,然后用指针方式依次输出各元素值。(15分) 7、在SQL server上创建名为XuGuang的数据库,然后创建WCM730Q的列表,第一列MAC address为主键,第二列为VID_PID,第三列为BT_FW,第四列为Staff_No. (10分) 8、linux基础命令填空(10分) (1)获取Kernel版本信息的linux命令是____________ (2)实现一个新建文件夹功能的linux命令是____________ (3)用来查看和配置网络接口(网卡)的linux命令是____________ (4)把文件从A路径拷贝到B路径的linux命令是____________ (5)使用vim对文档完成修改后,实现保存退出的功能的命令是____________ 9、请用英文写作,描述下个人基本信息、兴趣爱好、专业技能、职业规划等(10分)(请背面作答)

java高级软件工程师面试题

java高级软件工程师面试题 招聘java高级工程师,职位描述如下,有兴趣的加394504340交流,打扰了,谢谢! 职位名称:java高级开发工程师(急) 职位描述:互联网产品的开发和维护。 职位要求:1. 熟悉JAVA、J2EE体系结构,熟练掌握Spring、Struts、Hibernate、ibatis 的开发技术。 2. 熟悉MySql等数据库开发,熟练掌握SQL语句,有较好的数据库设计能力。 3. 熟练掌握HTML、javascript、ajax等web开发技术,熟悉http协议。 4. 熟悉SVN、Maven、Junit等工具。 5. 具有良好的学习能力、沟通能力,乐于承担工作压力。 6. 有大型门户或社区网站开发经验者优先。 职位所在城市:杭州 职位所在行业:高科技 -------------------------========================================================= 1.说一下struts中常用的对象 2.怎样整合apatche和tomcat 3.说一下在linx系统中搭建服务器 4.简述一下sql server 建模 5.请写一个程序,把一个10进制转换成16进制 6.表student 列id name age WA(本科以上,大专,高中,初中以下) 毕业学校ID,学校信息表 问:统计出文化学历本科以上,大专,高中,初中以下,每个年龄各有多少人(一条SQL语句) 7.有两位少年从隧道的一端向另一端行走.当他们走过隧道的五分之二时,发现隧道外面迎来一辆火车.火车很快就要进入隧道.两位少年向来时隧道跑去.两位少年都是每小时10公里.两位在千钧一发跑出了隧道.假设火车速度恒定,并且两位少年都在瞬间达到最大速度,请问火车的速度 8.请写出常用的oracle语句及说明,存储过程的语句及说明 ---------------------------------------------------------------------------------------------------------------------------------

软件工程师笔试面试题

C语言: (1)什么是预编译,何时需要预编译: 答案: 1、总是使用不经常改动的大型代码体。 2、程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在这种 情况下,可以将所有包含文件预编译为一个预编译头。 预编译又称为预处理,是做些代码文本的替换工作。处理#开头的指令吗,比如拷贝#include包含的文件代码,#define宏定义的替换,条件编译等,就是为编译做的预备工作的阶段,主要处理#开始的预编译指令,预编译指令指示了在程序正式编译前就由编译器进行的操作,可以放在程序中的任何位置。c编译系统在对程序进行通常的编译之前,先进行预处理。c提供的预处理功能主要有以下三种:1)宏定义2)文件包含3)条件编译。 (2)char* const p, char const* p,const char*p 上述三个有什么区别? 答案: char * const p; //常量指针,p 的值不可以修改 char const * p;//指向常量的指针,指向的常量值不可以改 const char *p;//和char const *p等价 (3)char str1[] = "abc"; char str2[] = "abc"; const char str3[] = "abc"; const char str4[] = "abc"; const char *str5 = "abc"; const char *str6 = "abc"; char *str7 = "abc"; char *str8 = "abc"; cout < <( str1 == str2 ) < < endl; cout < < ( str3 == str4 ) < < endl; cout < < ( str5 == str6 ) < < endl; cout < < ( str7 == str8 ) < < endl; 结果是:0 0 1 1 str1,str2,str3,str4 是数组变量,它们有各自的内存空间;而str5,str6,str7,str8 是指针,它们指向相同的常量区域。 (4)以下代码中的两个sizeof 用法有问题吗? void UpperCase( char str[] ) // 将str 中的小写字母转换成大写字母 { for( size_t i=0;i

软件开发工程师招聘试题

专业技术资料 附录一 附录一【软件开发工程师招聘试题一】 考试时间:60分钟姓名:______成绩:______ 一、单选题(共9题,每题2分) 1.对象b 最早在以下哪个选项前被垃圾回收?() public class Test5 { static String f(){ String a="hello"; String b="bye"; String c=b+"!"; //lineA String d=b; b=a; //lineB d=a; //lineC return c; //lineD } public static void main(String[] args) { String msg=f(); System.out.println(msg); } } A.lineA B.lineB C.lineC D.lineD 2.2.运行下列代码,结果如何?() class Example { int milesPerGallon; int index; Example(){} Example(int mpg){ milesPerGallon=mpg;

index=0; } public static void main(String[] args) { int index; Example e = new Example(25); if(args.length>0){ if(args[index].equals("Hiway")){ https://www.doczj.com/doc/6e5082563.html,esPerGallon=2; } System.out.println("mpg:"+https://www.doczj.com/doc/6e5082563.html,esPerGallon); } } } 这段代码通过编译,并且如果命令行输入”Hiway”则显示”mpg:50” ,如果输入不是”Hiway”则显示”mpg:25”; 这段代码通过编译,并且如果命令行输入”Hiway”则显示”mpg:50” ,如果输入不是”Hiway”则抛出ArrayIndexOutputBoundsException异常。 这段代码不能通过编译,因为自动变量index没有被初始化。 这段代码不能通过编译,因为milesPerGallon没有被初始化。 见例子Example.java 3.3.当编译如下代码时,会显示什么?() int i=1; switch(i){ case 0: System.out.println("zero"); case 1: System.out.println("one"); case 2: System.out.println("two"); default: System.out.println("default"); } One B. one,default C. one,two,default D.default 见例子:Test3.java 4.4.当编译运行如下代码时会发生什么现象?() public class MyClass { public static void main(String arguments[] ) { amethod(arguments); } public void amethod(String []arguments){

软件工程师职位说明书

软件工程师 直接下属间接下属晋升方向轮转岗位

记住,永远不要对父母说这十句话! 1.好了,好了,知道,真啰嗦!(可怜天下父母心,父母的“啰嗦”其实是一种幸福。) 2.有事吗,没事?那挂了啊。(父母打电话,也许只想说说话,我们能否明白他们的用意,不要匆忙挂了电话!) 3.说了你也不懂,别问了!(他们只是想和我们说说话。) 4.跟你说了多少次不要你做,做又做不好。(一些他们已经力不能及的事,我们因为关心而制止,但不要这样让他们觉得自己很无用。) 5.你们那一套,早就过时了。(父母的建议,也许不能起到作用,可我们是否能换一种回应的方式?) 6.叫你别收拾我的房间,你看,东西找都找不到!(自己的房间还是自己收拾好,不收拾,也不要拂了老人的好意。) 7.我要吃什么我知道,别夹了!(盼着我们回家的父母总想把所有关心融在特意做的菜里,我们默默领情就好。) 8.说了别吃这些剩菜了,怎么老不听啊!(他们一辈子的节约习惯,很难改,让他们每次尽量少做点菜就好。) 9.我自己有分寸,不要老说了,烦不烦。(他们只是担心你吃亏。) 10.这些东西说了不要了,堆在这里做什么啊!(人老了都会念旧……) 当你还在襁褓时,她便天天抱着你,哄你入睡;当你到少年时代,她便天天念叨着你,夜夜帮你捻着棉被;当你终于离开家,远行他方,她便天天牵挂着你。 有时候,我们总是在抱怨母亲的唠叨、念叨,总是在心烦她那些说了无数遍的关心话语。都说儿女是父母前辈子欠下的债,这句话不假。让我们感恩于心,让我们感恩父母那些点滴的关怀。 如果有一天,你发现母亲煮的菜太咸太难吃,如果有一天,你发现父母经常忘记关电器; 如果有一天,你发现父亲的花草树木已渐荒废,如果有一天,你发现家中的地板衣柜经常沾满灰尘; 如果有一天,你发现父母不再爱吃青脆的蔬果,如果有一天,你发现父母爱吃煮得烂烂的菜; 如果有一天,你发现吃饭时间他们老是咳个不停,千万别误以为他们感冒或着凉(那是吞咽神经老化的现象); 如果有一天,你发觉他们不再爱出门……也许是因为身体一天不如一天……

软件工程师常见面试题及答案.doc

软件工程师常见面试题及答案 需求调查: 全面了解您的系统概况、应用领域、软件开发周期、软件开发环境、开发组织、时间安排、功能需求、性能需求、质量需求及测试要求等根据系统概况进行项目所需的人员、时间和工作量估计及项目报价。 制定初步的项目计划: 在与您充分共同和协商的基础上制定我们的测试计划。 测试准备: 组织测试团队、培训、建立测试和管理环境等。 测试设计: 按照测试要求进行每个测试项的测试设计,包括测试用例的设计及测试脚本的开发等。 测试实施: 按照测试计划进行实施测试。 测试评估: 根据测试的结果,出具测试评估报告。 2、根据你的经验说说你对软件测试/质量保证的理解? 软件质量保证与测试是根据软件开发阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入数据和预期的输出结果),并利用这些测试用例去运行程序,以发现错误的过程。它是对应用程序的各个方面进行测试以检查其功能、语言有效性及外观排布.。 3、(1) 你对SQA的职责和工作活动(如软件度量)的理解: SQA就是独立于软件开发的项目组,通过对软件开发过程的监控,来保证软件的开发流程按照指定的CMM规程(如果有相应的CMM规程),对于不符合项及时提出建议和改进方案,必要是可以要高层经理汇报以求问题的解决。通过这样的途径来预防缺陷的引入,从而减少后期软件的维护成本。SQA主要的工作活动包括制定SQA工作计划,参与阶段产物的评审,进行过程质量、功能配置及物理配置的审计等;对项目开发过程中产生的数据进行度量等等;

(2) 说说你对软件配置管理的理解: 项目在开发的过程中要用相应的配置管理工具对配置项(包括各个阶段的产物)进行变更控制,配置管理的使用取决于项目规模和复杂性能及风险的水平。软件的规模越大,配置管理就显得越重要。还有在配置管理中,有一个很重要的概念,那就是基线,是在一定阶段各个配置项的组合,一个基线就提供了一个正式的标准,随后的工作便基于此标准,并且只有经过授权后才能变更这个标准。配置管理工具主要有CC,VSS,CVS等,偶只用过CVS,对其它的不熟悉 (3) 怎样写测试计划和测试用例: 简单点,测试计划里应有详细的测试策略(测试方法等),合理详尽的资源安排等,至于测试用例,那是依赖于需求(包括功能与非功能需求)是否细化到功能点,是否可测试等。 (4) 说说主流的软件工程思想(如CMM,CMMI,RUP,XP,PSP,TSP等)的大致情况以及对它们的理解: CMM:SW Capability Maturity Model 软件能力成熟度模型,其作用是用于软件过程的改进、评估及软件能力的评鉴CMMI:Capability Maturity Model Integration 能力成熟度模型集成CMMI融入了大部分最新的软件管理实践,同时弥补了SW-CMM模型中的缺陷 RUP:rational unified process 是软件工程化过程。 XP:extreme program,即极限编程的意思,适用于小型团队的软件开发,想上面第三个问题就可以结合原型法采用这样的开发流程。要明白测试对于xp开发的重要性,强调测试(重点是单元测试)先行的理念。编程可以明显提高代码的质量,持续集成对于快速定位问题很有好处。 PSP ,TSP 分别是个体软件过程(Personal Software Process),群组软件过程(Team Software Process)大家都知道,CMM只是告诉你怎么做但并没有告诉你如何做,所以PSP/TSP就是告诉你企

软件工程师应聘人员笔试题

试卷 姓名:日期: 1.填空: (1)面向对象的语言具有________性、_________性、________性。 (2)能用foreach遍历访问的对象需要实现________________接口或声明________________ 方法的类型。 (3)列举https://www.doczj.com/doc/6e5082563.html,中的五个主要对象_______________、_____________、_______________、 _______________、_________________。 (3) 并简述https://www.doczj.com/doc/6e5082563.html,中的五个主要对象各自的功能,列举各功能之间的工作关系: 1:2:3:4:5:关系: 2.选择题: (1)下面那一个不能作为C#中类修饰符?( ) A) new B) public、private C)protected、internal D) override E)abstract、sealed (2).NET 框架中,File对象的OpenText方法,将返回一个:() A)StreamReader对象 B)StreamWriter对象 C)Stream对象 D)File对象 (3)下面那一个不是C#中方法的参数的类型( ) A)值类型B)引用型C)输出型D)数组型E)代理型 (4)接口可以包含一个和多个成员,下面哪个选项不能包含在接口中 A)方法、属性B)索引指示器C) 事件D)常量、变量 (5)接口不能通过()来实现 A)类B)结构C)方法 (6)net依赖以下哪项技术实现跨语言互用性?( ) A.clr B.cts C.cls D.ctt (7)开发C#程序的集成开发环境是_________。 A、Visual https://www.doczj.com/doc/6e5082563.html, B、IDE C、FRAM D、Common Language Runtime (8) 以下叙述正确的是:(多选) A. 接口中可以有虚方法。 B. 一个类可以实现多个接口。 C. 接口不能被实例化。 D. 接口中可以包含已实现的方法。 (9) 从数据库读取记录,你可能用到的方法有:(多选) A. ExecuteNonQuery B. ExecuteScalar C. Fill D. ExecuteReader (10)从层次结构来看,.NET Framework包含以下三个主要部分_____。(多选) A、公共语言运行库(CLR) B、Web应用程序(https://www.doczj.com/doc/6e5082563.html,) C、统一编程类(.NET Framework 类库) D、Microsoft 基础类 E、Windows 基础类 3. ASP。NET与ASP相比,主要有哪些进步? https://www.doczj.com/doc/6e5082563.html,的错误处理机制是什么?

相关主题
文本预览
相关文档 最新文档