软件工程师招聘考试(精选8篇)
1.软件工程师招聘考试 篇一
公职考试知名品牌
2013年德州银行科技部软件工程师招聘
一、岗位职责
根据信息科技建设工作需要,按照信息系统需求分析,结合软件开发工具,进行系统概要设计和详细设计;进行程序编码、技术测试工作;完成业务确认测试和信息系统上线工作;负责信息系统上线后的跟踪处理和升级工作。
二、招聘条件
1、全日制普通高校本科(含)以上学历,计算机及相关专业;
2、有强烈的责任心和合规意识,执行力强,有良好的团队精神和沟通能力;3、2年以上软件开发工作经验,从事过数据库开发工作,具有扎实的数据结构、算法基础;
4、熟悉UNIX或WINDOWS开发环境和工具,熟练掌握C、C++、JAVA等某一种或几种开发语言,精通SQL语言,能熟练编写SQL脚本;
5、年龄28周岁以下;
6、有银行业务系统开发经验者优先。
三、报名方式
应聘人员请登陆德州银行网站下载《德州银行应聘登记表》,并如实填写(请添加电子版近期免冠照)。另附如下材料:
1、身份证;
2、毕业证和学位证或相关证明材料;
3、相关资格证书;
4、一张彩色正面生活近照。
请将上述资料通过电子邮件以附件形式发送至邮箱dzbkj2013@163.com,邮件主题、应聘登记表名称请按如下样式填写:“姓名+学历+毕业院校+专业+年龄”。报名截止时间为2014年1月17日下午5点。咨询电话:0534-2291689 传真:0534-2291686
四、其他事项
经审查符合条件者,将通过电话或电子邮件方式另行通知考试时间,请保证提交的联系方式(电子邮箱、手机、固定电话等)正确无误,并保持通讯畅通。应聘人员对个人填报信息的真实性负责,如与事实不符,我行有权取消其录用资格。
附件:德州银行应聘登记表
2013年10月16日
公职考试知名品牌
凡写明来源“山东中公教育网(sd.offcn.com)”(山东公务员考试网,山东公务员招考网)的文字等所有资料,转载,请注明来源!
2.软件工程师招聘考试 篇二
K公司在4月10日谈成一单外包服务项目, 项目人数10人, 客户按月给付这10人工资, 周期6个月, 于4月25日开工, 研发人员要求有丰富的汽车音响嵌入式开发经验和日语三级以上水平。K公司现有从事嵌入式开发的员工除4名能抽调出来其余均在别的项目中。除去新聘员工入职手续办理及项目开工前的初步调研等共计1周时间外, K公司只有1周时间来招聘到6名符合要求的技术人才。
若不能按时完成招聘目标将导致项目无法开工而丢失此客户, 时间紧、要求高。人力资源部第一时间在各招聘网站上公布招聘信息, 请两家猎头公司推荐, 在单位内网上欢迎内部员工推荐。因恰逢近期无计算机专业人才招聘会、高校应届生招聘会的对象不符合要求而未采取现场招聘, 因纸媒版面费太高也未考虑。通过招聘网站收到23份简历, 符合要求的11份;猎头公司推荐4人, 其中两人在半年前通过网上应聘的方式来过K公司面试, 笔试未合格;另一人已通过招聘网站投递了简历、无需猎头公司提供信息;最终K公司同意约见猎头公司推荐的余下1人。K公司对上述12人进行了面试。第一轮笔试, 11人中7人通过笔试。第二轮面试, 面试过程:面试者介绍工作经历, 技术部就以往工作经验进行技术提问、了解以往换工作的原因;技术部提问后人力资源部就其个人职业发展的想法、公司对员工的要求及待遇简单的沟通。面试中有2人达不到本岗位技术要求, 1人觉得K公司待遇达不到个人预期拒绝入职, 仅有4名员工成功录用。由于招聘员工的心态急切, 公司满足了4为聘用者的薪资要求, 比行业内同等职位薪资高出20%-35%。余下2个未招满的名额, 因时间有限, 从无工作经验但开发语言基础知识掌握扎实日语优秀有发展潜力的简历中, 筛选2名慢慢培养, 薪酬与公司引进应届毕业生的起薪相同。
录用员工的名单刚敲定, 在办理入职手续时却出现了问题。录用者贾某养老保险断缴1年不能正常缴纳保险, 员工声称家中困难无法一下补齐保险费及滞纳金、要求只开工资不需要单位为他缴纳保险。雇佣员工不缴纳相应的保险公积金违反法规也存在用工风险, 为使项目顺利开工公司妥协先为其垫付欠缴的保险费用并分十次从其工资里按月扣除。录用者丁某因K公司待遇高跳槽, 但其原单位未同意他的离职请求不予办理离职手续, K公司无法进行用工备案, 该员工请求先加入项目中, 争取在一个月内处理好个人人事关系问题, 公司勉强同意。尽管招聘任务完成了, 但事后证明, 这种紧急或临时招聘有很多不稳定因素。客户反映贾某不能胜任该项目, K公司很为难, 若立即辞退贾某, 公司为其垫付的保险费无法收回, 若坚持让贾某工作十个月将费用还清后再辞退、会影响K公司在客户那的形象。由于招聘时只考虑应聘者的技术能力, 对应聘者的个性、忠诚度、个人预期和职业规划都没有详细了解, 为离职率增高埋下了伏笔, 且随着员工的离职可能导致技术流失、核心技术外漏等。如, 善某在入职前9年间共更换过5家单位, 人力资源部以忠诚度低为由建议不录用, 技术部在善某口头答复愿意长期留下来工作后, 只考虑其有9年工作经验可带领经验少的员工进行研发, 便决定录用并委以重任, 善某因某大型外资企业的高薪聘请离开K公司并将项目组内全部技术材料带走。对于K公司之类的多数中小技术企业, 当技术部从技术角度和人力资源部从人力资源管理角度不一致时, 通常其他方面为技术因素让步, 这对公司的人力资源管理和持续性发展有不良影响。公司高薪急聘技术人员, 使同等职位级别的老员工因薪酬的不公心存不悦, 促使老员工积极性下降、也使得个别老员工认为跳槽可以快速提升薪水, 进一步促进离职率攀升。
K公司招聘比例中70%以上为紧急招聘, 根据人力资源规划进行招聘的很少。中小企业资金不充裕、尽管有企业发展计划但业务开发与承揽都带有很多的不确定性, 若按照发展计划提前储备员工, 一旦项目没谈成员工开支与安置可能出现问题;若项目签订了招聘新人手就势必变成临时招聘, 招聘时间紧任务重。这些招聘中的现象困扰着中小技术企业人力资源潜力的长足发展。
解决这种招聘中的尴尬局面, 仅关注招聘本身是不够的。只有提高企业业务承揽及营销能力, 企业自身逐渐变强才能有能力对员工招聘进行长期规划, 减少临时招聘, 降低企业只顾眼前利益忽视长期发展的可能性。中小企业在薪酬待遇和声誉都无法和大公司抗衡的局面下, 在工作氛围上、人性化上要多下功夫, 力争提高企业忠诚度。加强功能部门领导和一线主管人力资源管理相关知识的培训, 对普通技术员工增加职业规划和心理方面的培训。只有多方面探索, 才可提高中小技术企业的招聘效果。
参考文献
[1]王娟.企业人才招聘有效性评价研究[D].燕山大学, 2013.
[2]李丽.员工招聘管理现代化的研究[D].首都经济贸易大学, 2005.
3.软件工程师招聘考试 篇三
第一部分 选择题
单选题。
1. Java中,关于char类型叙述错误的是(C)
A.占2字节
B.可以存储一个英文字母
C.不能存储一个汉字
D.其对应的封装类是Character
2.下列代码中,将引起编译错误的行是(B)
1)public class Exercise{
2)public static void main(String args[]){
3)float f=0.0;
4)f+=1.0;
5)}
6)}
A.第2行
B.第3行
C.第4行
D.第6行
3.下面程序运行后的结果是什么?(A)
Public class Test{
Static Boolean foo(char c){
System.out.print(c);
Return true;
}
Public static void main(String[] argv){
Int i=0;
For(foo(„A‟);foo(„B‟)&&(i<2);foo(„C‟)){
i++;
foo(„D‟);
}
}
}
A.ABDCBDCB
B.ABCDABCD
C.Compilation fails.D.An exception is thrown at runtime.4.下面正确的是(A)
A.在java中类只允许单一继承
B.在java中一个类只允许实现一个借口
C.在java中类不能同时继承一个类和实现一个借口
D.在java中一个接口只能继承一个接口
5.下列叙述中,错误的是(B)
A.File类能够存储文件
B.File类能够读写文件
C.File能够建立文件
D.File类能够获取文件目录信息
6.下列关于java多线程并发控制机制的叙述中,错误的是(B)
A.java中对共享数据操作的并发控制是采用加锁技术
B.线程之间的交互,提倡采用suspend()/resume()方法
C.共享数据的访问权限都必须定义为private
D.java中没有提供检测与避免死锁的专门机制,但应用程序员可以采用某些策略防止
死锁的发生
7.Jsp页面中哪句有错?(A)
A.<>
B.<%!request.isUserInRole(“manager”)%>
C.<%=request.getRemoteHost()%>
D.<% out.println(“Hello.”);%>
8.关于Servlet的描述正确的是?(B)
A.Servlet在init方法可以处理application的配置参数
B.每次请求会依次调用servlet的init,service,destroy方法
C.在Servlet中定义的类的实例变量可以被多次请求共享使用
D.用户可以创建Servlet的实例
9.下面说法正确的是
A.客户端可以直接使用实体Bean
B.会话Bean,消息Bean都是同步的C.无状态会话Bean更容易在集群环境布署
D.状态会话Bean不可以被重用
10.下面说法错误的是
A.SQLException的getErrorCode返回的是厂商相关错代码
B.使用一个Connection可以创建多个Statement
C.当Statement关闭时,相关连的ResultSet也会被关闭
D.JNDI可以用于访问网络目录和文件
多选题
1.执行下列代码后,那个结论是正确的?(B)
String[]s=new String[10];
A.s[10]为 “ “;
B.s[9]为null;
C.s[0]为 未定义;
D.s.length 为10
2.下列那个方法是对方法public void add(int a){}合理的重载?(B,C,D)
A.public int add(int a);
B.public void add(long a);
C.public void add(int a,int b)
D.public void add(float a)
3.下面继承A 的类中的方法定义哪两个是正确的?(A,C)
Class A {
Protected int method1(int a, int b){return 0;}}
A.public int method1(int a,int b){return 0;}
B.private int method1(int a,int b){return 0;}
C.public short method1(int a ,long b){return 0;}
D.static protrcted int method1(int a, int b){return 0;}
4.下面方法运行后,在控制台上那些将会被显示?(B,C,D)
Publicvoid example(){
Try{
Unsafe(0;
System.out.println(“Test 1”);
}catch(SafeException e){
System.out.println(“Test 2”);
}Finally{
System.out.println(“Test 3”);
}
System.out.println(“Test 4”);
}
A.Test 1
B.Test 2
C.Test 3
D.Test 4
简答题
1. 调试一个数据库操作的程序时,后台报告 IoException: The Network Adapter could not
establish the connection 错误,如何解决?
这个异常的出现一般与数据库和你的PC的设置有关这种异常的出现大致上有下面几种:1。IP错误。在设置URL时错误,例如:jdbc:oracle:thin:@192.168.0.36:1521:sharp
数据库服务器不正确:ping 服务器IP是否正确。不正确,将URL更改为正确
端口号错误:一般不会错误。进行一下操作:在DOS上键入sqlplus,检查oracle是否开启 一却正常,2。防火墙如果机器上安装有放火墙,可能是服务器端口号屏蔽而造的。关闭防火墙后,尝试重新连接。3。数据库监听未启动 修改PC上注册表中的ImagePath值。
2.数据库表结构如下;
学生(学号,名称)
科目(科目号,科目名称,科目学分)
得分(学号,科目号,得分)
编写SQL语句,查询学分之和大于20,且科目平均得分大于4.2的学生名单。
Select * from 学生 where 学号 in(select 学号 from 科目 join 得分 on 科目.科目号=得分.科目号 group by 学号 having avg(得分)>20 and sum(科目学分)>20)
编程题
1.费波那其数列,1,1,2,3,5……编写程序求第十项(不能用递归)
public class Test {
public static void main(String args[]){
int n=10;
int a=1, b=1, temp;
int sum=2;
for(int i=3;i<=n;i++){
temp=a+b;a=b;b=temp;
sum=sum+temp;
}
2.用数据结构描述图,比设计方法判断图是否连通。
3.设计一个排序接口,并编写接口实现。将对象数组(Object[]array)进行升序排序,对相间的大小比较策略可以定制扩展。(例如,对于人员,可以使用相同排序算法,不同的比较策略方便的实现按体重、身高或年龄等属性排序)。
4.软件工程师招聘考试 篇四
1、熟悉DSP系统架构及编程原理;
2、精通汇编和C语言编程,熟悉DSP软件开发流程;
3、熟悉嵌入式系统调试方法;
4、有语音信号编解码经验者优先;
5、勇于承担责任,良好的沟通能力和团队合作精神;
6、较好的英文阅读能力。福利待遇
1、购买各项社会保险;
2、带薪年休假及各种国家规定的法定假日;
3、为优秀员工办理招工、调干;
4、体检;
5、每月一次的员工生日PART;
6、定期培训与学习;
7、富有挑战性的职业发展空间和平台;
8、尊重、开心快乐的工作氛围;
9、富有竞争力的薪资福利;
5.软件工程考试总结 篇五
3.软件测试包括哪些步骤?说明这些步骤的测试对象是什么?答:(1)单元测试,测试对象单元模块(2)集成测试,测试对象为组装后的程序模块(3)确认测试,测试对象为可运行的目标软件系统
4.需求分析与软件设计二个阶段任务的主要区别是什么? 答:需求分析定义软件的用户需求,即定义待开发软件能做什么软件设计定义软件的实现细节以满足用户需求,即研究如何实现软件 5.说明软件测试和调试的目的有何区别?
答:测试的目的是判断和发现软件是否有错误 调试的目的是定位软件错误并纠正错误。
7、白盒法:该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。白盒法也不可能进行穷举测试。
8、黑盒法:该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依照需求规格说明书,检查程序是否满足功能要求。因此,黑盒测试又称为功能测试或数据驱动测试
9、面向对象设计:是把分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。或者说,面向对象设计就是用面向对象观点建立求解域模型的过程。
10、结构化设计:面向数据流的设计是以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构,因此又称结构化设计(SD)。
11、结构化分析:是根据分解与抽象的原则,按照系统中数据处理的流程,用数据图来建立系统的功能模型,从而完成需求分析工作
结构化方法是一种传统的软件开发方法,它是由结构化分析、结构化设计和结构化程序设计三部分有机组合而成的。它的基本思想:把一个复杂问题的求解过程分阶段进行,而且这种分解是自顶向下,逐层分解,使得每个阶段处理的问题都控制在人们容易理解和处理的范围内。
结构化分析方法(Structured Method,结构化方法)是强调开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构是指系统内各个组成要素之间的相互联系、相互作用的框架。结构化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。针对软件生存周期各个不同的阶段,它有结构化分析(SA)、结构化设计(SD)和结构化程序设计(SP)等方法。
结构化分析方法是面向____数据流___进行需求分析的方法。结构化分析方法使用____数据字典______与____加工说明___来描述。
13、系统流程图:是描述物理系统的传统工具,它用图形符号来表示系统中的各个元素,例如人工处理、数据处理、数据库、文件、设备等。它表达了系统中各个元素之间的信息流动的情况。4.软件生存周期
软件生存周期是指软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程,一般包括计划、分析、设计、实现、测试、集成、交付、维护等阶段。
2、采用黑盒技术设计测试用例有哪几种方法?这些方法各有什么特点? ㈠等价类划分。等价类划分是将输入数据域按有效的或无效的(也称合理的或不合理的)划分成若干个等价类,测试每个等价类的代表值就等于对该类其它值的测试。㈡边界值分析。该方法是将测试边界情况作为重点目标,选取正好等于,刚刚大于或刚刚小于边界值的情况,根据这些情况选择测试用例。㈢错误推测。错误推测法没有确定的步骤,凭检验进行。它的基本思想是列出程序中可能发生错误的情况,根据这些情况选择测试用例
3,Gantt图是历史悠久,应用广泛的制定进度的计划的工具。形象的描绘任务分解情况,以及每个子任务的开始时间和结束时间,具有直观简明,容易掌握,容易绘制的优点。缺点1不能显式描绘各项作业依赖关系2进度的关键部分不明确,难于确定哪些是主攻和主控3有潜力的部分不明确,造成浪费。工程网络 0分软件危机定义和产生的因有哪些?
当软件开发技术的进步不能跟上硬件技术的进步,未能满足发展的要求,致软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。
1)软件日益复杂和庞大(2)软件开发管理困难和复杂(3)软件开发技术落后(4)生产方式落后(5)开发工具落后(6)软件开发费用不断增加
1、可行性研究的任务是什么? 首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,把他们清楚地列举出来。然后,分析员进行简要的需求分析,抽象出该项目的逻辑结构,建立逻辑模型。从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的主要解决方法,对每种解决方法都要研究它的可行性,可从以下三个方面分析研究每种解决方法的可行性。㈠技术可行性:对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。㈡经济可行性:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。㈢社会可行性:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。
2、需求分析的任务是什么?
需求分析的任务是确定待开发的软件系统“做什么”。具体任务包括确定软件系统的功能需求、性能需求和运行环境约束,编制软件需求规格说明书、软件系统的验收测试准则和初步的用户手册。
需求分析是指,开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。
3、概要设计的定义和基本任务是什么?
进入了设计阶段,要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现软件的需求,并将设计的结果反应在“设计规格说明书”文档中,所以软件设计是一个把软件需求转换为软件表示的过程,最初这种表示只是描述了软件的总的体系结构,称为软件的概要设计或结构设计。①采用某种设计方法,将一个复杂的系统按功能划分成模块。②确定每个模块的功能。③确定模块之间的调用关系。④确定模块之间的接口,即模块之间传递的信息。⑤评价模块结构的质量。⑵数据结构及数据库设计,汉数据结构的设计及数据库的设计。⑶编写概要设计文档。主要有:概要设计说明书;数据库设计说明书;用户手册;修订测试计划。⑷评审
4、详细设计的基本任务是什么?有哪几种描述方法? 详细设计是软件设计的第二阶段,其基本任务有:为每个模块进行详细的算法设计;为模块内的数据结构进行设计;对数据库进行物理设计,即确定数据库的物理结构;其它设计,根据软件系统类型,还可能要进行代码设计、输入/输出格式设计、人机对话设计;编写详细设计说明书;评审。详细描述处理过程常用三种工具:图形、表格和语言。如结构化程序流程图、盒图和问题分析图。IPO图也是详细设计的主要工具之一。表格工具如判定表可作为详细设计中描述逻辑条件复杂的算法。过程设计语言(PDL)是一种用于描述模块算法设计和处理细节的语言工具。
能力成熟度模型(CMM)用于评价软件机构的软件过程能力成熟度德模型 文档:程序开发使用和维护所常用的图文资料
2衡量模块独立性的两个定性的标准是内聚和耦合。耦合是指对一个软件结构内不同模块彼此之间互相依赖的紧密程度。内聚标志一个模块内各元素彼此的紧密1简述两种不同集成测试的比较:自顶向下测试法主要,优点是不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能在早期发现上层模块的接口的错误,自顶向下的缺点是需要存根程序,可能遇到与此相联系的测试困难,底层关键模块中的错误发现的较晚,而且用这种方法不能展开人力。自底向下正好相反。
影响维护的因素:可理解性,可测试性,可修改性,可移植性,重用性
总体设计的九个阶段:1设想供选择的方案,2选择合适的方案,3推荐最佳方案,4功能分解,5设计软件结构 6设计数据库,7制定测试计划,8书写文档,9审查和复查
软件工程:是指导计算机软件开发和维护的工程学科,采用工程概念,原理,技术和方法来开发和维护软件,吧经过实践考验而证明的管理技术和当前能够得到的最好的技术方法结合起来。要素是方法,工具,过程 系统流程图是描绘物理系统的传统工具,他的基本思想是用图形符号以黑盒子形式描绘组成系统的每个部件。表达的是数据在系统各部件的流动情况,而不是对数据进行加工处理的控制过程。
3个子模型和5个层次:静态结构(对象模型)交互次序(动态模型)数据变换(功能模型)主题层,类和对象层,结构层,属性层,服务层
结构化方法有结构化分析、结构化设计、结构化程序设计构成,它是一种面向数据流的开发方法。
结构化设计对数据流有两种分析方法,他们是变换分析设计和事务分析设计。质量保证是有计划的和系统性的活动,它对部件或产品满足确定的技术需求提供足够的信心。
软件质量保证措施(SQA)基于非执行的测试(复审和评审)基于执行的测试(软件测试)和程序正确性证明
数据字典的内容:数据流,数据流分量,数据存储,数据处理
数据流图的内容:数据流,数据存储,数据处理,数据的原点和终点。
数据流图(DFD)是一种图形化技术,他描绘信息流和数据从输入移动到输出的过程中经受的变换。
可行性研究中,数据流图,系统流程图,数据字典
需求分析:访谈,实体联系图,状态转换图,层次方框图,Warnier图,IPO图 总体设计:层次图和HIPO图,结构图
详细设计:过程设计中有程序流程图,盒图,PAD图,判定表,判定树,过程设计语言。面向数据结构的设计方法:Jackson图程序复杂度的定量MaCabe方法和Halstead方法
设计人机界面的过程中4个问题,系统响应时间,用户帮助设施,出错信息处理和命令交互
耦合:尽量使用数据耦合少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合
内聚:偶然内聚,逻辑内聚时间内聚,中内聚有过程内聚通信内聚,高内聚,功能内聚,顺序内聚
模块化就是把程序划分为独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集起来构成一个整体,可以完成指定的功能满足用户的需求 状态转换图通过描绘系统状态及引起系统状态转换的事件,来表示系统的行为
5.软件配置管理,简称SCM,它用于整个软件工程过程。其主要目标是:标识变更;控制变更;确保变更正确地实现;报告有关变更。SCM是一组管理整个软件生存期各阶段中变更的活动。
Jackson的画法:
1定输入和输出数据结构
2分析确定在输入和输出数据结构中有对应关系的数据单元,最高层输入和输出相对应等有其他。
3从数据结构图导出程序结构图
4列出所有的操作和条件,并把它们分配到程序结构图的适当位置。5最后用伪码表示程序处理过程 盒图的特点:
1功能域明确,可以从盒图上一眼看出来 2不可能任意转移控制
3很容易确定局部和全程数据的作用域
4很容易表现嵌套关系,也可以表示模块的层次结构。PAD图:
1使用表示结构化控制结构的PAD符号结构所设计出来的程序必然是结构化程序。
2PAD图所描绘的程序结构非常清晰
3PAD图表现程序逻辑,易读,易懂,易记 4,容易将PAD图转换成高级语言源程序
6.软件工程师招聘考试 篇六
1 ASP语言及相关技术简介
ASP是Microsoft开发的动态网页语言,基本含义就是动态服务器网页,即Active Server Pages。在Windows的操作系统环境中,它和OS自带的IIS(信息服务器)配合使用,IIS是ASP程序的运行环境,将所编写的ASP程序进行解释、编译,并负责将编译结果传递给客户端浏览器,另外,在学校这种以教育为主的环境中,采取ASP+IIS的模式,因为其基于Windows平台,方便配置,使用户容易理解。网络考试系统都基于B/S结构,该结构又称Brower/Server或浏览器/服务器模式,客户机上只要安装一个浏览器(Browser),如网景公司的Netscape Navigator或为微软Internet Explorer,服务器安装Oracle、Sybase、Informix或SQL Server等数据库。浏览器通过Web Server同数据库进行数据交互。
2 考试系统的框架和流程
完整的考试系统应包含以下几个模块:系统管理模块,该模块主要授予系统管理员用于系统授权,系统异常处理等;考生考试管理模块,该模块主要用于学生登录系统答题,提交答案离开,成绩查询等;教师管理模块,主要用于教师进行题库维护,试卷管理,试卷分析等。具体框架如图1所示。
图1中所表现的考试系统是其基本框架,实际应用中,在考试模块中还可以考虑添加在线学习交流模块,教师管理模块中还可以增加试题管理模块等,系统管理模块可以增加新闻管理,系统维护,备份等模块。
网上考试系统的流程主要是学生考试流程,过程如图2所示。
图2考试流程以上流程是考试系统的核心流程,只要能够有效的维护应用安全试题库,保证试题随机抽取的科学性,那么考试系统的设计就在于成绩管理设计,考试管理设计,登录设计和其他后台设计。考试完成提交试卷之后,系统标记学生考试的相关信息,如提交试卷时间,考试科目,考试时间等。
3 考试系统的实现
3.1 服务器环境的配置
环境配置首先需要安装IIS,通过开始菜单进入控制面板界面。点击“添加/删除Windows组件”按钮,根据“Windows组件向导”对话框,按照提示即可完成安装。IIS安装启动后就要进行必要的配置,这样可以使服务器在最优的环境下工作。选择启动“Internet服务器管理”窗口,在“默认Web站点”上单击鼠标右键,“属性”选项即可进行对服务器的设置,如Web站点标识、连接、日志记录等。在“默认站点”上点击鼠标右键,选择“新建虚拟目录…”,将应用程序导入到虚拟目录中,完成对服务器的配置,即可在浏览器中操作网上考试系统。
ASP是通过一组统称为ADO的对象模块来访问数据库,只要该数据库具有对应的ODBC或OLE DB驱动程序,ADO对象就能加以访问,ASP配置后台数据通常情况下有两种形式,一种形式是用ODBC的形式,另外一种形式是直接采用SQL server文件的对路径来实现读取数据库的功能,其具体实现代码如下:
3.2 学生登录窗口设计
考试系统的使用对象是学生,教师,系统维护人员,三种角色的登录窗口相同,系统授权给角色是已经定义好的,因此不同角色的人员登录到系统后会有不同的系统授权。用户登录窗口是本系统的起始模块,学生和管理员/教师在相同的窗口登录,学生登录的账号是学生号,教师登录的账号是教师编号。学生进入系统以后,可以修改自己的密码,但是账号不可以更改。学生登录系统的密码不能为空,否则将无法进入系统,另外可以限制学生登录系统的次数,如不能超过3次,或者限制学生登录系统的时间,如超过服务器时间15分钟将不能登录。这些限制的目的在于严格考场纪律,保持考试的公平性。
用相关语言定义考生登录系统得密码验证过程if(document.all.userid.value=""){alert"(学生号不能为空!");
doeument.all.userid.foeus();//将光标置于学生号处,提示学生输入else if(document.all.pwd.value==""){alert“(密码不能为空!")doeument.all.Pwd.focus();//将光标置于密码处,提示学生输入}else//如果学生号和密码不为空,就需要判断密码是否正确passwd=trim(request"(passwd"));p_userid=trim(request"(userid"));select passwd from pub_employee where userid=p_userid//pub_employee为学生表,记录学生的学生好和相关密码if p_passwd<>passwd{alert"(密码不对!");doeument.all.Pwd.focus();//将光标置于密码处,}}
4 结束语
运用ASP进行的考评系统软件设计是源于教育考试模式改革的需求来进行的。该系统由前台和后台两个子系统构成,前台系统实现了在线考试、动态查询、用户注册、登录等功能模块。后台系统由管理员负责维护和管理数据库的用户信息和考试信息,保证数据库中数据的一致性。该系统采用当前比较流行的ASP等技术构建,基于B/S的三层应用结构实现了考试的前台页面和数据存储层的分离,使系统更加健壮和灵活。通过这样一个系统实现了考试的信息化管理,提高了教学的效率。
参考文献
[1]张华.ASP项目开发实践[M].北京:中国铁道出版社,2006.
7.高级软件工程考试题目 篇七
1.你如何理解时下热门的各种“软件定义”? 答:①从软件开发者角度定义,软件=程序+文档,而程序又是由算法和数据组成,算法提供了解决问题的方法。软件开发文档是软件开发使用和维护过程中的必备资料。它能提高软件开发的效率,保证软件的质量,而且在软件的使用过程中有指导,帮助,解惑的作用,尤其在维护工作中,文档是不可或缺的资料。
②根据软件的分类来定义,软件大体可以分为系统软件和应用软件两大类。系统软件是电脑的基础软件,例如windows,ms-dos:应用软件是指具有具体功能的软件,并且是在系统软件上运行的,例如:EXE文件COM文件,windows是起基础作用的软件,一台电脑如果没有系统软件,那么应用软件是没有办法装台这台电脑上的。应用软件是指具有具体功能的软件,并且是在系统软件上运行的,例如:财务软件,办公软件,广告设计软件,各种游戏等等。
③从用户角度看,软件就是硬件的附庸,软件是单独的产品,软件是许可证,软件是服务。
2.计算机学科中的12个基本概念,在软件工程学科中都有怎样的作用和意义?针对3-4个概念举例说明?
答:计算机学科中的12个基本概念为:绑定、大问题的复杂性、概念和形式模型、一致性和完备性、效率、演化、抽象层次、空间有序、时间有序、重用、安全性、折衷和结论。
大问题的复杂性:随着问题规模的增长,复杂性呈非线性增加的效应。这是区分和选择各种方法的重要因素。以此来度量不同的数据规模、问题空间和程序规模。假如我们编写的程序只是处理全班近百人的成绩排序,选择一个最简单的排序算法就可以了。但如果我们编写的程序负责处理全省几十万考生的高考成绩排序,就必须认真选择一个排序算法,因为随着数据量的增大,一个不好的算法的执行时间可能是按指数级增长的,从而使你最终无法忍受等待该算法的输出结果。
一致性和完备性:在计算机中一致性和完备性概念的具体体现包括诸如正确性、健壮性、可靠性这类相关的概念。一致性包括用作形式说明的一组公理的一致性、观察到的事实与理论的一致性、一种语言或接口设计的内部一致性等。正确性可看作部件或系统的行为对声称的设计说明的一致性。一致性就是要始终保证数据的正确性 比如你去银行转钱你转1000但卡里只有300执行事务时查询到你金额不足就会返回拒绝执行而不是把你卡里的300转走,依然保持你卡里之前的金额300这就是一致性.恢复到事务的初始状态.完备性包括给出的一组公理使其能获得预期行为的充分性、软件和硬件系统功能的充分性、以及系统处于出错和非预期情况下保持正常行为的能力。完整性 是指主键上的值不能为空.比如关系R(学生号,学生姓名,成绩)学生号为主键那它就不能为空否则违反规则。重用:在新的情况或环境下,特定的技术、概念或系统成份可被再次使用的能力。例如,可移植性、软件库和硬件部件的重用,促进软件成份重用的技术,以及促进可重用软件模块开发的语言抽象等。软件重用的对象除源代码外,还包括规格说明、系统设计、测试用例等,软件生命周期中越前端的重用意义越重大。现有的许多努力都是面向源代码一级的重用,例如程序的模块化、封装与信息隐藏、数据抽象、继承、异常处理等机制,包括当前热门的CORBA、DCOM等利用构件组装软件系统的技术。
第二章 面向服务的软件工程
1.对于面向价值服务的心得体会
“价值”是服务化软件系统区别于传统软件的重要特征。一个服务系统的好坏取决于该系统能否
向供需双方提供期望的价值。服务是供需双方之间通过协同生产进行价值创造与风险分担的过程,各种有形或无形的价值则是服务系统的输出。在构建系统过程中应将价值作为最终目标,围绕价值进行服务系统设计和优化。在服务模型中应对价值进行准确的刻画,并将价值与各种功能要素联系起来,帮助分析期望的价值是否可被功能要素所支持并实现为了保证服务系统能够向供需双方充分提供各自所需的价值,服务工程应充分感知“服务价值”。价值知觉的定义是在服务全生命周期中去感知、描述、转换、实现期望的服务价值,并对其进行评价和优化。不同阶段的价值知觉内容不同:
服务模式创新机制
明确各个服务参与者的价值期望、各参与者之间的价值交换关系、每一项价值的度量、各项价值期望间的相互依赖。
服务建模
在服务模型中完整、正确地设计和描述所期望的服务价值、价值与服务功能要素间的映射关系、功能要素对价值的实现支持程度。
服务系统实现
通过选择和组合恰当的服务构件来实现服务系统,需说明所选择的服务构件向外提供的期望服务价值及其可实现程度。
服务系统运行
对实际运行的系统进行监控和评价,发现实际交付的价值与期望价值之间的差距,并找出差距原因,进而对服务系统进行改进。
服务价值理论
采用数学方法来刻画服务价值及其之间相互依赖关系,形成服务价值理论。它包括:(1)服务价值的分类、描述与度量;(2)服务价值依赖理论;(3)多层次服务价值模型及建模方法;(4)服务价值与服务模型的映射;(5)价值知觉的服务选取与组合;(6)面向价值的服务分析;(7)面向价值的服务优化;等等。
第三章复杂系统的软件工程
请尝试回答下这些软件工程中的挑战性问题: ①软件是测出来的还是用出来的?
②如何建立一种软件生产的激励机制和良好的产业生态环境? ③什么样的软件不会被盗版?
④如何通过软件演化来满足用户快速变化的需求? ⑤复杂网络可以怎样刻画软件系统?
答:①软件是用出来的。软件是为了解决现实中的问题,而设计出一款产品供有需求的用户使用。
②建立软件生产的激励机制可以根据软件设计人员的贡献给予相应奖励,同时在设计团队之间引入竞争机制;建立软件的产业生态环境,需要与政府合作,通过促进政策、教育和维权等方式,建立更加健康的软件产业生态环境。积极应对各种新挑战、资产管理促进技术创新、打击盗版多管齐下,营造一个良好的知识产权环境,为软件产业健康发展提供更好的保障。
③我认为为了社会公益,无偿提供服务的软件不会被盗版。
④随时捕获用户的需求,更新软件功能,并且要根据社会环境预测用户需求,研发新技术,不断设计更新软件功能;处理之外也可以将不同功能的软件进行集成组合获取更加复杂的功能,这样可以应对用户快速变化的需求,同时也减少了更新软件的周期。
⑤软件系统中的每一个软件相当于复杂网络中的一个节点,而软件之间的相连关系可以用复杂网络中的边来表示。这样软件系统可以构建成一个复杂网络,然后就可以用复杂网络中的方法来对软件系统进行分析,如基于复杂网络的软件复杂性度量研究,基于加权软件网络缺陷传播分析的面向对象软件结构质量度量,通过研究网络节点度可以发现软件的依赖程度。
第四章群体软件工程
2.在开源网站sourceforge.net上选择一个开源项目进行分析和介绍。答:以该网站上的一款软件VCL media player为例。该软件完全免费可以播放video and DVDs以及网络视频,在线直播等,比如IPV6协议下的高清在线视频;该软件是简单,快速和强大的媒体播放器。支持很多种格式媒体:文件、光盘、网络摄像头、设备和流。VLC媒体播放器是一个免费和开源媒体播放器和多媒体框架VideoLAN写的项目。VLC是一种便携式多媒体播放器,编码器,横幅支持多种音频、视频编解码器和文件格式以及dvd,vcd,和各种流媒体协议。它能够通过网络进行转码流和多媒体文件并将它们保存到各种格式。默认分配的VLC包括大量的免费的解码和编码库,避免需要寻找/校准专有插件。VLC是基于分组的多媒体播放器,可以播放视频内容的一些损坏,不完整,或未完成的视频。例如,文件还是下载通过点对点(P2P)网络。
特点:1.简单,强大的和快速的
2.支持文件,光盘(DVD、CD、VCD、蓝光),网络摄像头和溪流
8.软件工程 期末考试 名词解释 篇八
软件生命周期各阶段的基本任务:问题定义;可行性研究;需求分析;总体设计;详细设计;编码和单元测试;综合测试;软件维护
软件过程定义:软件过程是为了获得高质量软件所需要完成的一系列任务的框架,他规定了完成各项任务的工作步骤
生命周期:它规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,也称过程模型
生命周期/过程模型:瀑布模型;快速原型模型;增量模型;螺旋模型
可行性研究过程步骤:1复查系统规模和目标;2研究目前正在使用的系统;3导出新系统的高层逻辑模型;4进一步定义问题;5导出和评价供选择的解法;6推荐行动方针;7草拟开发计划;8书写文档提交审查 系统流程图定义:它是概括地描绘物理系统的传统工具
数据流图DFD定义:它是一种图形化技术,他描绘信息流和数据从输入移动到输出地过程中所经受的变换 符号:数据流图有4种基本符号:正方形表示数据原点或终点;圆角矩形或圆形代表变换数据和处理;开口矩形代表数据存储;箭头表示数据流,即特定数据的流动方向
典型总体设计过程的9个步骤:1设想供选择的方案;2选取合理的方案;3推荐最佳方案;4功能分解;5设计软件结构;6设计数据库;7制定测试计划;8书写文档(系统说明;用户手册;测试计划;详细实现计划;数据库设计结果);9审查和复审
模块独立程度的定性标准度量:1耦合:对一个软件结构内不同模块之间互联程度的度量;2内聚:它标志一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然拓展
结构程序设计经典定义:如果一个程序的代码块仅仅通过顺序,选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的人机界面设计,设计指南:1一般交互指南;2信息显示指南;3数据输入指南
程序流程图:又称程序框图,优点:对控制流程的描绘很直观,便于初学者掌握;缺点:1程序流程图本质上不是逐步求精的好工具,他透使程序员过早地考虑程序的控制流程而不去考虑程序的全局结构;2程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计精神随意转移控制;3程序流程图不易表示数据结构
盒图:又称S-N图,特点:1功能域明确,可以从盒图上一眼就看出来;2不可能任意转移控制;3很容易确定局部和全程数据的作用域;4很容易表现嵌套关系,也可以表示模块的层次结构
Jackson图:1顺序结构:数据由一个或多个数据元素组成,每个元素按确定次序出现一次;2选择结构:数据包含两个或多个数据元素,每次使用这个数据时按一定条件从这些数据元素中选择一个;3重复结构:重复结构的数据,根据使用时的条件由一个数据元素出现零次或多次构成Jackson图的优点:1便于表示层次结构,而且是对结构进行自顶向下分解的有力工具;2形象直观可读性好;3技能表示数据结构也能表示程序结构
计算环形复杂度的方法:1流程图中的区域数等于环形复杂度;2流程G的环形复杂度V(G)=E-N+2,其中E是流程图中边的条数,N是结点数;3流程G的环形复杂度V(G)=P+1,其中P是流程图中判定结点的数目
程序编码的风格应遵循的规则:1程序内部文档;2数据说明;3语句构造;4输入输出;5效率
软件测试的目标(定义):1测试是为了发现程序中的错误而执行的过程;2好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;3成功的测试是发现了至今为止尚未发现的错误的测试
测试的目标:暴露程序中的错误
软件测试的准则:1所有测试都应该能追述到用户需求;2应该远在测试开始之前就制定出测试计划;3把
Pareto原理应用到软件测试中;4应该从小规模测试开始,并逐步进行大规模测试;5穷举测试是不可能的;6为了达到最佳测试效果,应从独立的第三方从事测试工作
测试方法:1白盒测试即结构测试;2黑盒测试即功能测试
测试步骤(先后顺序):1模块测试;2子系统测试;3系统测试;4验收测试;5平行测试
软件维护的定义:在软件应经交付使用之后,为了改正错误或满足新需要而修改软件的过程
软件的可维护性定义:维护人员理解,改正,改动或改进这个软件的难易程度
决定软件可维护的5个因素:1可理解性;2可测试性;3可修改性;4可移植性;5可重用性
面向对象方法学的优点:1与人类习惯的思维方式一致;2稳定性好;3可重用性好;4轻易开发大型软件产品
启发规则:1设计结果应该清晰易懂;2一般到特殊结构的深度适当;3设计简单的类;4使用简单的协议;5使用简单的服务;6把设计变动减成至最小
软件重用:也叫再用或复用,是指同一事物不做修改或稍加改动就多次重复使用
软件重用的三个层次:1知识重用;2方法和标准重用;3软件成分重用
软件维护的特点:1结构化维护和非结构化维护差别巨大;2维护代价高昂;3维护的问题很多
需求分析任务:确定对系统的综合要求;分析系统的数据要求;导出系统的逻辑模型;修正系统的开发计划
验证软件需求:一致性;完整性;现实性;有效性
黑盒测试力图发现下述类型错误:功能不正确或遗漏了功能;界面错误;数据结构错误或外部数据库访问错误;性能错误;初始化和终止错误
黑盒测试满足标准的测试用例集:所设计出的测试用例能减少为达到合理测试所需要设计的测试用例的总数;所设计出的测试用例能告诉我们能否存在某些类型的错误,而不仅仅指出与特定测试相关的错误是否存在1在软件开发过程中要产生大量的信息,要进行大量的修改,软件配置管理能协调软件开发,并使混乱减到最低程度。
2规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件具有容错功能的软件。
3McCall提出的软件质量模型包括11个软件质量特性。
4软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
5为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。
6程序设计语言的心理特性主要表现在歧义性、简洁性、传统性、局部性和顺序性。
7软件结构是以模块为基础而组成的一种控制层次结构。
8在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、判定树。
9结构化语言是介于自然语言和形式语言之间的一种半形式语言。
10若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P= F/(1+(n*i))
11软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)。0101
12高级语言:独立于机器,面向过程或面向(对象)0101
13软件项目管理的范围主要集中于3个P上,即:People人员、Problem问题和(过程)。0201 14人机界面的风格第一代界面是命令和(询问)方式。1202
15由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的(副作用)。1504
16在公式V(G)= E – N + 2中:E为程序图G中边的总数; N 为程序图中结点的总数。V(G)又称为图G的环形(复杂度)0204。
17任何一个基于计算机系统都可以用输入-处理-输出(IPO)图来描述,它将系统转成一个信息变换模型
18为提高可交互性一般对所有可能造成损害的用户操作动作,应坚持要求用户(确认),例如,提问“你确实要删除„?”。1204
19文档是一种数据媒体和其上所记录的(数据)。0101
20文档(document)—一种数据媒体和其上所记录的(数据)。0101
21机器语言、汇编语言:依赖于机器,面向(机器)0101
22软件有效性(efficiency),指软件系统的时间和(空间)效率。0103
23软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。0103
24软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。0103
25为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。0402
一个软件的深度是指其控制的(层数)。0801
26以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终可运行的代码的过程叫(编码)过程。1301
27软件维护是软件生命周期的(最后)一个阶段。1501
28软件的可互操作性,是指多个软件元素相互(通信)并协同完成任务的能力。0201
29第三代语言也称为(高级)语言。1301
30软件测试是软件投入运行(前),对软件需求分析、设计、实现的强有力的最终审查。1401
31黑盒测试主要是测试软件是否满足(功能)需求。1402
32(调试)的目的是确定错误的位置和引起错误的原因,并加以改正。因此,又称为排错或纠错。1404 33软件工程由方法、工具和(过程)三部分组成,称软件工程的三要素。0101
34软件可追踪性(traceability),是指根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行(逆向)追踪的能力。0103
35瀑布模型是由W.Royce于1970年提出来的。又称为软件(生存周期)模型。0104
36程序设计语言的(可维护)性通常指这种语言编写的程序被理解,被修改及调整和改进的难易程度。1302 37软件工程由方法、(工具)和过程三部分组成,称软件工程的三要素。0101
38软件可理解性,指系统具有清晰的结构,能直接反映问题的(需求)。0103
39在实体-关系图简称E-R图中,数据对象实体用长方形、关系用(菱形)、属性用椭圆表示。0502
40建立数据流模型要遵循的原则包括:每个加工至少应有一个输入数据流以反映被处理数据的来源和一个(输出)数据流来反映加工的结果。0503
41从工程管理的角度软件设计可分为概要设计和(详细)设计两大步骤。0801
42通过向用户提供视觉和听觉上反馈,保持用户与界面间的双向通信,是提高界面可(交互)性的措施之一 43程序设计语言的可靠性是指程序设计语言本身不出错或对错误的(纠正)能力。1302
44对发现错误较多的程序模块,应进行(重点)测试。1401
45测试用例中,不仅要选择合理的输入数据,还要选择(不合理)的输入数据。
46软件工程由(方法)、工具和过程三部分组成,称软件工程的三要素。0103
47基于计算机系统的软件要素中的软部件由程序、数据和(文档)组成。0301
48数据流图就是用来刻画数据流和转换的信息系统建模技术。它用简单的图形记号分别表示数据流、转换、(数据源)以及外部实体。0501
49被继承的类我们称之为基类(父类),在基类的基础上新建立的类我们称之为派生类子类。0701
50流程图也称为程序框图是最常用的一种表示法,它有顺序、分支和(循环)三个基本控制构件。0802 51机器语言和汇编语言,也称为(低级)语言。1301
52软件测试是执行程序发现并排除程序中潜伏的(错误)的过程。1401
53动态测试有两种测试方法:黑盒测试和(白盒)测试。1401
【软件工程师招聘考试】推荐阅读:
软件工程师考试大纲09-16
软件工程考试复习资料10-20
高级软件工程师07-30
软件工程师年度总结07-29
软件测试工程师试卷09-16
软件工程师自我鉴定10-20
软件开发工程师培训11-17
软件工程师英文面试自我介绍06-20
Java软件工程师职位要求06-26
软件工程师职业规划书08-10