欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    软件工程师发展前景论文.doc

    • 资源ID:4097163       资源大小:75KB        全文页数:21页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件工程师发展前景论文.doc

    本科学年论文 论文题目: 软件工程师 学生姓名: XXX 学 号: XXXXX 专 业: 软件工程 班 级: 软件1202班 指导教师: XXX 完成日期: 2013 年 11 月 20 日目录一、概要1(一)定义1(二)工作内容1(三)能力要求1(四)前景11、发展前景12、未来前景1(五)企业用人主要特征2二、职位及要求2(一)程序开发员21、.NET方面的开发22、JAVA应用程序开发23、web、数据库方面的开发34、C#项目开发35、php项目开发3(二)数据库开发工程师31、介绍32、职业简介43、职业要求44、工作内容45、基本要求4(三)网站开发工程师51、介绍52、职业简介53、专业要求54、培养目标55、就业前景5(四)嵌入式软件工程师61、介绍62、职业要求63、发展前景64、职业发展7(五)系统分析员71、介绍72、基本素质73、工作职责84、工作内容85、要求86、发展前景9(六)软件测试工程师101、介绍102、分类103、角色定位104、工作职责10(七)UI设计师111、介绍112、职业概述113、工作内容124、职业要求125、工作流程126、职业发展14三、总结14参考文献15 软件工程师 摘要本篇论文写的是关于软件工程师的整体要求和应达到的基本素养,用人单位的要求以及在以后的发展前景。在软件行业发展,可以应聘的职位,对职位的介绍,要求,工作内容,工作者应达到的能力要求等。把职位大概分为了:各程序开发员、数据库开发工程师、网站开发工程师、嵌入式软件工程师、系统分析员、软件测试工程师、UI设计师等。关键字:软件工程师 软件工程师前景 软件工程就业职位software engineer AbstractThis paper is written on the software engineer's overall requirements and should meet the basic literacy requirements of employers as well as in the future development .In the software industry, you can apply for jobs on the job description, requirements, job content, the ability of workers should meet requirements.Roughly divided into the job: the application developer, database development engineers, site development engineers, embedded software engineers, systems analysts, software test engineers, UI designers.Keywords: Software Engineer Software Engineer Software Engineering jobs outlook一、概要(一)定义软件工程师是从事软件开发相关工作的人员的统称。(二)工作内容1、 指导程序员的工作;2、 参与软件工程系统的设计、开发、测试等过程;3 、协助工程管理人保证项目的质量;4 、负责工程中主要功能的代码实现;5 、解决工程中的关键问题和技术难题;6 、协调各个程序员的工作,并能与其它软件工程师协作工作。7、还要编写各种各样的软件说明书,如:需求说明书,概要说明书等考试科目(三)能力要求对于软件工程师,不太重视学历,但并不是对学历没有要求,重点关注项目的经验和学习知识的能力,能否利用软件工程专业知识来解决问题,根据岗位不同,对软件工程师的要求也有所不同。具体能力要根据岗位和自己的兴趣爱好选定自己的职业规划方向,一方面要详细了解软件工程师的要求,可以关注企业的招聘信息;一方面自己要贮备通用的知识技能,广泛阅读相关的计算机材料对自己以后的发展大有帮助。可以确定的是软件工程师的前途在未来的发展依然是不断升温的职业,比较需要有技术和良好前景的专业之一。(四)前景1、发展前景当今社会不论什么职业的都需要一个不断学习的环节,软件工程师也一样。虽然软件工程师的工作不同于程序员但是一个软件工程师其前身必定是一个优秀的程序员,软件的开发工具、开发技术在不断地发展。在校学生所能学到的东西很难跟得上发展的需要但是也不能说那些东西完全没有用,只有在完全理解了相应的基本技能之后你才能很轻松地掌握新的技能,软件技术都是一个循序渐进的过程。所以学好学校所能提供的专业课程是相当重要的。2、未来前景我国软件出口2010年规模达到215亿元,软件从业人员达到72万人,在中国十大IT职场人气职位中,软件工程师位列第一位,软件工程人才的就业前景十分乐观。毕业生主要在各大软件公司、企事业单位、高等院校、各大研究所、国防等重要部门从事软件设计、开发、应用与研究工作。有关数据显示,目前我国对软件人才的需求已达20万,并且以每年20%左右的速度增长,而高校计算机毕业生中的软件工程人才还很缺乏,尤其是高素质的软件工程人才的极度短缺。(五)企业用人主要特征1、外包开发行业快速发展,对“人才”在代码和文档方面的规范性、技能和工具的熟练程度要求越来越高;2、Java和.NET技术在市场上平分秋色,都有大量的岗位需求,同时值得庆幸的是二者在应用层面上的技术差异越来越少;3、软件开发企业对开发人员的基本技术素养强调得越来越多,例如:面向对象的程序设计思想和代码组织方法、HTML/CSS/JavaScript客户端技术;4 、为了保证质量和工期,企业中大量使用各种框架技术,要求开发人员至少熟悉一种框架技术;5、 CMS,MIS、OA、ERP、CRM、ZW系统集成、物流、进销存、电子政务、网站建设这一类B/S系统,成为软件工程师需求最大的业务领域。二、职位及要求(一)程序开发员1、.NET方面的开发1)熟悉.net开发体系,熟悉C# ASP .NET2)熟悉SQLServer,Oracle数据库开发3)以上要求至少3年开发经验。4)具有企业管理系统项目经验。5)了解企业ERP及财务管理软件(用友,金蝶)者优先。6)善于沟通,能独立撰写方案。为人诚实,善于学习,做事认真负责,积极主动, 具有敬业精神,有团队精神2、JAVA应用程序开发技能要求:熟练使用Struts2+Spring+Hibernate、掌握Jquery、掌握Java、熟悉 Oracle、掌握xml/webservice、掌握OOD、OOP、基本文档写作能力等。3、web、数据库方面的开发1)计算机或相关专业本科以上学历;2)有4年以上开发经验,有良好的代码编写习惯,熟悉软件开发规范;3)熟练掌握ASP,NET;等编程语言,熟悉.Net开发环境,理解.Net Framework,理解并能熟练使用Web Service、O/R mapping、Remoting、多线程等技术;4)热衷于互联网WEB开发,热衷于钻研最新的前沿技术,精通XML,Javascript,CSS,AJAX等WEB前端技术;5)熟练的技术文档编写能力,熟练使用Rose,Power Design,Visio等建模和设计软件,有一定的架构设计能力;6)精通SQL server数据库技术,了解数据库性能调优者优先.4、C#项目开发1)计算机专业本科以上学历,一年以上C#/ASP NET开发经验,熟练使用SQL数据库,有欧美项目开发经验者优先;2)大学英语四级以上,具有较强的听、说、读、写能力,尤其是听、说能力;3)工作认真细致,踏实肯干,具有较好的团队协作精神和沟通能力;良好的逻辑思维,能够承受一定的工作压力并可以按时完成工作且保证质量5、php项目开发1)使用PHP语言开发互联网应用程序;2)网站产品和网站功能模块的开发与维护;3)与页面设计师协调沟通,编写部分Java script和HTML;4)参与底层MVC框架的编写与维护。(二)数据库开发工程师1、介绍 数据库开发工程师是指设计、开发、维护管理大型数据库的专业人才。第一类是My SQL,以自由软件为主,以社团式开发为代表。版本选择4.0,侧重于在Linux平台(RedHat8.0)My SQL数据库短小精悍,速度比较快,它是自由软件产品,现在美国国家航天局的数据库系统就是My SQL。在很多中小型的ICP有着广泛的应用。第二类是SQL Server 2000,中小型企业数据库,界面友好,可操作性强,在数据库市场占有很大的份量,SQL Server 2000是企业产品的代表,定位数据库中低端市场。 第三类是Oracle9i,中大型企业数据库,跨平台,在数据库中高市场占有很大的份量,Oracle9i介绍主要是Windows 2000平台和Linux平台(RedHat8.0)。Oracle9i在金融、电信、银行有很多经典应用。2、职业简介数据库开发工程师是指设计、开发、维护管理大型数据库的专业人才。3、职业要求1)通信、电子工程、自动化、计算机其相关专业本科以上学历;2)数据库应用软件的分析、设计和开发经验 ;3)精通关系数据库原理,精通SQLSERVER,熟悉My SQL;4)熟练使用主流的数据库分析设计工具;能独立完成数据库系统设计,能根据具体应用设计数据库服务器;5)熟悉NET 架构和J2EE 架构, 熟悉ASP?NET 和ADO?NET;6)熟悉Browser/Server 模式应用开发,熟悉OOD/OOP 概念和XML 标准;7)熟悉数据仓库、OLAP 和数据挖掘;8)有良好的英语阅读能力,能够阅读英文测试资料;9)工作严谨细致,有责任心;勤奋踏实,善于思考问题;10)有时间观念,独立性强,具有团队合作精神。4、工作内容1)设计并优化数据库物理建设方案;2)制定数据库备份和恢复策略及工作流程与规范;3)在项目实施中,承担数据库的实施工作;4)针对数据库应用系统运行中出现的问题,提出解决方案;5)监督UNIX,Tandem,NT 等系统上数据库的安装运行过程;6)对空间数据库进行分析、设计并合理开发,实现有效管理;7)监督数据库的备份和恢复策略的执行;8)为应用开发、系统知识等提供技术咨询服务。5、基本要求1)掌握数据库技术的基本概念、原理、方法和技术;2)能够使用SQL语言实现数据库操作;3)具备数据库系统安装、配置及数据库管理与维护的基本技能;4)掌握数据库管理与维护的基本方法;5)掌握数据库性能优化的基本方法;6)了解数据库应用系统的生命周期及其设计、开发过程;7)熟悉常用的数据库管理和开发工具,具备用指定的工具管理和开发简单数据库应用系统的能力;8)了解数据库技术的最新发展。(三)网站开发工程师1、介绍网站开发工程师英文简称Web Development Engineer,是指懂得网页的设计、制作;网站后台的编程开发;数据库的管理;综合性网页规则,页面整体排版,图片美工及网站程序的优化和运用的人员。2、职业简介网站开发工程师英文简称Web Development Engineer。最起码应该掌握基本的网页制作工具,像三剑客(Dreamweaver, Fireworks, Flash)和Frontpage。另外还要深入理解HTML语言,动态网页技术像ASP、PHP等以及数据库知识了解并且能熟悉运用。3、专业要求1)网页设计软件PhotoshopDream weaverFireworksFlashHTML语言2)网站后台编程:ASP、PHP、.NET、JSP开发环境、常用控件;ASP、PHP、.NET、JSP编程、Web服务器控件、配置和优化ASP、PHP、.NET、JSP应用程序、调试和错误处理、ADO、连接和操作数据源、数据集、水晶报表的使用、Web服务创建和使用;留言系统、BBS论坛、电子商务系统。3)数据库管理:Access数据库的基本概念、结构、数据表的建立、数据表的基本维护、MYSQL、SQL Server基础、数据源的链接、SQL语言、集合函数、数据类型、存储过程。4)学习综合性网页设计规则、页面整体排版能力的处理、图片美工及 WEB 程序块的调入和美化、程序的调试和运用、网站综合训练 、动态网页创作模式。4、培养目标达到具备对常见网站的功能有较强的理解、开发能力,较强的数据库设计、开发能力,较好的运用ASP、php、.net JavaScript、CSS等技术,完整、独立地开发和维护中小型网站。5、就业前景网站开发工程师拥有很好的职业前景。设计良好的网站,是提升企业的品牌和企业的影响力。对网页制作及网站开发人员的需求量正急速增加,目前国内严重缺乏优秀的网站设计与开发人员。(四)嵌入式软件工程师1、介绍 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。嵌入式软件工程师就是编写嵌入式系统的工程师。2、职业要求应具备哪些能力最直接的方法,就是去根据各公司,招聘网站的嵌入式软件工程师的应聘要求来分析最常规的条件:1)最重要的是C语言编程,以及C+,这个与你读程,应用,开发项目,做系统移植息息相关;2)操作系统: LINUX,WINCE等,至少学习过一种,并且还需要对些基础知识有蛮多的了解;3)对ARM,FPGA,DSP等这些硬件比较了解。相关待遇IBM、微软、华为、Yahoo、联想、搜狐、亚信、花旗.2010'应届毕业生就业安置计划火热启动:先实训后上岗,转正年薪50000元。3、发展前景嵌入式领域较新,发展非常快,很多软硬件技术出现的时间都不太长(如ARM处理器、嵌入式操作系统、LINUX操作系统),大多数人没有条件接触或进入嵌入式行业,更谈不上能有机会接受专业人士的指导。因此,踏进这个行业的难度比较大,嵌入式人才稀缺,身价自然也水涨船高。权威部门统计,我国嵌入式人才缺口每年50万人左右。根据前程无忧网发布的调查报告,嵌入式软件开发是未来几年最热门和最受欢迎的职业之一,具有10年工作经验的高级嵌入式工程师年薪在30万元左右。即使是初级的嵌入式软件开发人员,平均月薪也达到了30005000元,中高级的嵌入式工程师月薪平均超过10000元。做软件实际上有高下之分,开发语言从机器语言、汇编到C、C+,再到红透半边天的Java、C#等,该学哪种呢?为什么有些开发者工资低,而有些开发者千金难求?为什么3年的Java高级程序员薪水仅仅8k-10k,而一个Linux底层C语言程序员两年经验就敢要10k的薪水?还是门槛,比如月薪15k的Linux嵌入式开发职位,门槛就有 Linux系统、Shell编程、Linux开发环境、C语言、ARM硬件平台、数据结构、Linux内核、驱动程序等,粗略数数就有8道关口,他需要非常熟悉整个的计算机体系,能做出实际的产品,而Java的开发者却仅仅是会使用名叫Java的语言工具,始终高高飘在众多层次之上,开发项目非常快,甚至可以不知道OSI模型,很可能自始至终都是软件蓝领。嵌入式开发本身也有高下之分,至少包含嵌入式应用程序工程师和底层的驱动内核工程师两种。前者同样是使用现成工具进行简单劳动,比如使用J2ME开发小游戏或者进行一些界面开发,而后者是根据芯片具体情况把操作系统(如Linux)移植到上面,同时编写必要的驱动程序,改写相应的内核代码。很显然后者是一个公司真正的技术核心。而技术核心的工资很可能是其他开发者的数倍。嵌入式开发突出强制和项目,学习不仅仅是学习几项技术,而是构建你的知识体系。比如学习嵌入式开发,就要从基础Linux,C语言,数据结构开始,到ARM,汇编,Linux内核、驱动等,更重要的是更多的项目练习,设计至少5个项目,多达10000行强制核心代码的编写可以让你真正获得知识。为进入外企或者出国做准备。未来的几年内,随着信息化,智能化,网络化的发展,嵌入式系统技术也将获得广阔的发展空间。美国著名未来学家尼葛洛庞帝99年1月访华时预言,45年后嵌入式智能(电脑) 工具将是PC和因特网之后最伟大的发明。我国著名嵌入式系统专家沈绪榜院士98年11月在武汉全国第11次微机学术交流会上发表的计算机的发展与技术一文中,对未来10年以嵌入式芯片为基础的计算机工业进行了科学的阐述和展望。1999年世界电子产品产值已超过12000亿美元,2000年达到13000亿美元,预计2005年,销售额将达18000亿美元。一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,日用范围也将日益广阔。对于企业专用解决方案,如物流管理、条码扫描、移动信息采集等,这种小型手持嵌入式系统将发挥巨大的作用。自动控制领域,不仅可以用于ATM机,自动售货机,工业控制等专用设备,和移动通讯设备结合、GPS、娱乐相结合,嵌入式系统同样可以发挥巨大的作用。4、职业发展从个人整体发展来说,如果想创业,做自已的产品,嵌入式软件开发可以开发出专利产品。另一个发展路径是:积累丰富开发经验的嵌入式软件开发工程师可以向嵌入式系统开发工程师发展,从而晋升为产品研发经理或IT项目经理。对测试理论和方法有一定了解的嵌入式软件开发工程师还可以转作嵌入式系统测试工程师,最终也可发展为IT项目经理。(五)系统分析员1、介绍系统分析员(system analyst)是 对大型、复杂的信息系统建设任务中,承担分析、设计和领导实施的领军人物。 要做好与客户之间的关系,同时对客户的需求要正确的理解,要选择合适的开发技术,同时做好与客户间沟通交流,学会说服对方。2、基本素质1)必须理解和明确系统建议、建设单位的经营管理目标及战略发展方向。2)要能与组织管理高层一起涉及确定信息系统建设的长期目标,并进行必要的分解。3)要在详细调查的基础上,正确判断组织内部现状和外部条件,进行可行性分析。4)能够根据现实条件确定组织信息系统开发策略。5)应具备选择适宜方法和工具并培训开发人员的能力。6)善于沟通,妥善协调决策者、开发人员与业务人员的观点,达成共识。7)了解信息技术发展,并能建立适合业务需求的技术模型。8)具备一定的行政管理能力,能够恰当调度人、财、物等要素,完成开发目标。3、工作职责1)学会对客户的沟通:要正确理解客户的需求同时要保证相互之间的沟通顺畅。2)对了解来的需求要能用笔正确的描述下来,并能很好的传叙给其他人。这时要学会用如ROSE 等的软件建模的工具。和power design等的数据库建模工具。和相关的UML,数据流程图及相关的内容的知识。3)不但要全面的了解客户的需求而且还要对需求进行未来的可能的改变要有相当多的了解。4)全面的了解客户的需求后,要选择合适的相关技术用于开发,这时要学习各种知识:a. 选择数据库:db2,info mix ,oracle ,sql server,my sql 的优缺点,可以从中选择最适合的数据库及理由。b. 设计数据库:要扎实在数据库的理论(数据库原理,数据库系统设计)及相关数据库设计经验,要尽量多的分析过去数据库设计,分析这么设计数据库的好处。这时可能要用到 power design等工具。c. 写需求说明文档和概要设计文档,同时要学会要分析相关需求说明文档的需要的内容的相关知识,如人员工时的计算方法, 一般会用 project 来分析相关的项目的内容。d. 选择合适的程序语言及相关的架构,一般主流的架构是 J2EE和.net的相应的优点及它们之间的结合,如采用soap xml进行相关的结合,或用java-com 桥 进行相关的功能的调用。和它们之间的相关语言优缺点e. 还要根据b/s,c/s 结构对开发的网络影响的相关内容采取选择。5). 学会说服对方,毕竟客户都不是个个是软件专家,他们的选择有时未必是正确的所以学会说服对方,是系统分析员必备的能力条件。4、工作内容1)参与用户需求调研、负责系统体系结构、功能、性能的分析和总体设计工作;2)负责项目的开发流程管理,进行项目的计划、管理、跟进工作;3)参与并指导开发工程师完成系统详细设计和开发工作,解决相应业务、技术难题;4)参与编制用户手册、协助客户的系统软件、硬件平台的安装实施工作;5)制定项目文档格式,编写项目管理规范要求的相关文档。5、要求1)基本功好的系统分析员都是从优秀的程序员中产生的,坚实的编程功底、丰富的经验是今后做系统分析的基础。没有对系统本身进行过透彻剖析过,很难领会到其中一些难以言述的精华。但并不等于好的程序员就能够成为好的系统分析员。合理的知识结构。语言能力、文字表达能力、技术的全面性等是对系统分析员的基本要求。比如说c/s和3 层开发,如果仅仅对Netscape公司的产品熟悉还不够,还需要了解比如微软等产品,并且要了解他们中产生历史,发展思路,技术优劣,以应付各种穷追猛打的提问。但更重要的是,这是你为应用定制技术要求的前提。2)思想全局观念是系统分析员必须具备的观念。如果系统分析员设计时太注重细节,往往会陷入在某个问题上纠缠不清的泥潭,系统分析员要有面向用户的思想。系统分析员应当有能力将自己扮演成用户,来了解要交付的项目看起来想什么样式,感觉想什么,从而了解用户的想法并挑选出合理部份去开发。从这个意义上说,系统分析员才能获得有意义的见解去引导他的开发组成员。系统分析员头脑中要对项目结局有一个清楚的认识,并保证项目不偏离方向。系统分析员要有根植于技术,高于技术思考问题的思想。纯粹的程序员通常对最终结果考虑的不是很多,当一种新的技术在市场上出现时,他们对能否按时交付的考虑就比较少,而强烈希望他们的计划能够建立在新的技术之上。因此,系统分析员的想法和行动要像一个用户,又要能够站在技术的高度,成为真正的用户、程序员之间的代言人。3)任务难度的预测能力系统分析员要具备快速的任务难度预测能力以及具备快速确定开发小组人员构成和任务划分的能力。昆虫自然会长出翅膀,而思想却需要长期的浸润。要做到这点,需要大量的思考、学习。设计远比编程重要。当今软件业的发展,各种开发工具的出现,编程已经不是什么问题,程序员的工作某种程度上讲是将别人现成的东西拼凑堆砌起来。系统分析员要清楚的认识到,现在大多数程序员没有学会怎么去整体的了解一个系统,有些甚至不了解编程(这不是说他们不会写代码)。可视化的开发工具加五花八门的控件,程序员可以偷点懒了,基于技术,跳出框架。基于现有技术结合用户需求思考问题,设计时跳出框架。4)关键获得信任。系统分析员最重要的素质是获得信任,这是成为优秀系统分析员的关键。成熟最为关键。成熟可以为整个项目组提供正确的支持,能够理解技术怎样才能解决用户的需求。准备工作:统一的各种文档模式,这其中包括今后软件变量、字段命名规则。6、发展前景与我国信息化建设的强烈需求相比,我国的系统分析员很少,而且信息化建设的形式发展要求系统分析员要不断的学习,不断的实践,不断的更新知识,不断的优化自己的知识结构,这一切都使得系统分析员成为稀有人才。好的系统分析员都是从优秀的程序员中产生的,坚实的编程功底,丰富的经验是做系统分析的基础。没有对系统本身进行过透彻剖析,很难领会到其中一些难以言述的精华。系统分析员是一个技术含量相对较高的职业,基于技术的发展可向软件设计师,系统工程师转型。(六)软件测试工程师1、介绍软件测试工程师(Software Testing Engineer)指理解产品的功能要求,并对其进行测试,检查软件有没有错误(Bug),决定软件是否具有稳定性(Robustness),写出相应的测试规范和测试用例的专门工作人员。简而言之,软件测试工程师在一家软件企业中担当的是“质量管理”角色,及时纠错及时更正,确保产品的正常运作。2、分类按其级别和职位的不同,可分为三类:高级软件测试工程师,熟练掌握软件测试与开发技术,且对所测试软件对口行业非常了解,能够对可能出现的问题进行分析评估;中级软件测试工程师,编写软件测试方案、测试文档,与项目组一起制定软件测试阶段的工作计划,能够在项目运行中合理利用测试工具完成测试任务;初级软件测试工程师,其工作通常都是按照软件测试方案和流程对产品进行功能测验,检察产品是否有缺陷。3、角色定位软件项目开发是个分工明确的系统工程,不同的人员扮演了不同的角色,包括部门经理、产品经理、项目经理、系统分析师、程序员、测试工程师、质量保证人员等。可见,软件测试工程师只是软件项目开发中的一个角色而已。测试工程师承担的任务角色决定工作内容和承担的任务。测试工程师的角色应该承担什么任务呢?这没有统一的答案。因为,这与软件公司的规模,软件项目管理制度,公司领导和项目经理的管理风格,以及具体软件项目自身的特点有很大关系。而且,测试工程师也有普通和高级之分。4、工作职责软件测试就是使用人工或自动手段,来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清 预期结果与实际结果之间的差别。开发工作的根本是尽量实现软件用户的需求,测试工作的根本是检验软件系统是否满足软件用户的需求。软件测试工程师简单的说是软件开发过程中的质量检测者和保障者,负责软件质量的把关工作。软件测试工程师具体工作有:1)、使用各种测试技术和方法来测试和发现软件中存在的软件缺陷。测试技术主要分为黑盒测试和白盒测试两大类。其中黑盒测试技术主要有等价类划分法、边界值法、因果图法、状态图法、测试大纲法以及各类典型的软件故障模型等;白盒测试的主要技术有语句覆盖、分支覆盖、判定覆盖、基本路径覆盖等;2)、测试工作需要贯穿整个软件开发生命周期。完整的软件测试工作包括单 元测试、集成测试、确认测试和系统测试工作。单元测试工作主要在编码阶段完成,由开发人员和软件测试工程师共同完成,其主要依据是详细测试。集成测试的主要工作测试软件模块之间的接口是否正确实现,基本依据是软件体系结构设计。确认测试和系统测试是在软件开发完成后,验证软件的功能与需求的一致性、验证软件在相应的硬件条件下的系统功能是否满足用户需求,其主要依据是用户需求。3)、测试人员将发现的缺陷编写成正式的缺陷报告,提交给开发人员进行缺陷的确认和修复。缺陷报告编写最主要的要求是保证缺陷的重现。要求测试人员具有很好的文字表达能力和语言组织能力。4)、测试人员需要分析软件质量。在测试完成后,测试人员需要根据测试结果来分析软件质量,包括缺陷率、缺陷分布、缺陷修复趋势等。给出软件各种质量特性包括有功能性、可靠性、易用性、安全性、时间与资源特性等的具体度量。最后给出一个软件是否可以发布或提交用户使用的结论。5)、测试过程中,为了更好地组织与实施测试工作,测试负责人需要制定测试计划,包括有测试资源、测试进度、测试策略、测试方法、测试工具、测试风险等。6)、测试人员为了更好更有效地进行测试,保证测试工作质量,需要在执行测试工作之前首先需要设计测试用例,形成测试用例报告。设计测试用例是保证测试质量的核心工作,很多测试技术都可以用指导设计用例。为了提高测试用例的设计效率,BTEST培训课程专门开设了高效设计测试用例一门课来讲授各种设计用例的技术与方法。7)、为了提高工作效率或提高测试水平,测试工作需要引进自动化测试工具,测试人员需要学会使用自动化测试工具,编写测试脚本,进行性能测试等。8)、测试负责人在测试工作中,还需要根据实际情况不断改进测试过程,提高测试水平,进行测试队伍的建设等。(七)UI设计师1、介绍UI设计师则指从事对软件的人机交互、操作逻辑、界面美观的整体设计工作的人。2、职业概述不单单从事美术绘画,更需要对软件使用者、使用环境、使用方式进行定位,并最终为软件用户服务。1UI设计师进行的是集科学性与艺术性于一身的设计,他们需要完成的,简单说来,正是一个不断为用户设计视觉效果使之满意的过程。设计从工作内容上来说分为3大类别,即研究工具,研究人与界面的关系,研究人。 与之相应, UI设计师的职能大体包括三方面:一是图形设计,即传统意义上的“美工”。当然,实际上他们承担的不是单纯意义上美术工人的工作,而是软件产品的产品“外形”设计。二是交互设计,主要在于设计软件的操作流程、树状结构、操作规范等。一个软件产品在编码之前需要做的就是交互设计,并且确立交互模型,交互规范。三是用户测试/研究,这里所谓的“测试”,其目标恰在于测试交互设计的合理性及图形设计的美观性,主要通过以目标用户问卷的形式衡量UI设计的合理性。如果没有这方面的测试研究,UI设计的好坏只能凭借设计师的经验或者领导的审美来评判,这样就会给企业带来极大的风险。3、工作内容负责软件界面的美术设计、创意工作和制作工作;根据各种相关软件的用户群,提出构思新颖、有高度吸引力的创意设计;对页面进行优化,使用户操作更趋于人性化;维护现有的应用产品;收集和分析用户对于GUI的需求。4、职业要求1)教育培训在学历和专业要求方面,一般要求大专及以上学历,根据上文提到的UI设计的三大具体分类,图形设计、交互设计和用户测试/研究的工作职能,分别对应的是美术设计的专业知识,软件工程师背景和相应的编程能力,以及社会学心理学等人文学科储备。当然,实际工作中,这几重职能也不是截然分开的。而今,这一涵盖诸多领域的职位,也越来越要求从业人员同时具备跨学科、综合性的理论素养和实操能力。2)工作经验一是要求从业人员精通Photo shop、Illustrator、Flash等图形软件,html、Dream weaver等网页制作工具,能够独立完成静态网页设计工作;熟练操作常用办公软件,且具备其它软件应用能力;熟悉html,CSS,java script,Ajax。二是对通用类软件或互联网应用产品的人机交互方面有自己的理解和认识。三是具备良好的审美能力、深厚的美术功底,有较强的平面设计和网页设计能力。四是具有敏锐的用户体验观察力,富有创新精神。此外,有人机交互设计的学习和工作经历者优先。5、工作流程总体上一个合格的UI设计师的基本工作流程分为需求阶段、分析设计阶段、调研验证阶段、方案改进阶段、用户验证反馈阶段五大基本流程。 1)需求阶段软件产品依然属于工业产品的范畴。依然离不开3W的考虑(Who、where、why)也就是使用者,使用环境,使用方式的需求分析。所以在设计一个软件产品之前我们应该明确什么人用(用户的年龄、性别、爱好、收入、教育程度等)。什么地方用(在办公室/家庭/厂房车间/公共场所)。如何用(鼠标键盘/ 遥控器/触摸屏)。上面的任何一个元素改变结果都会有相应的改变。除此之外在需求阶段同类性质的软件也是我们必须了解的。同类产品比我们提前问世,我们要比他作的更好才有存在的价值。那么单纯的从界面美学考虑说哪个好哪个不好是没有一个很客观的评价标准的。我们只能说哪个更合适,更合适于我们的最终用户的就是最好的。如何判定最合适于用户呢,后面我会介绍用户调研。2)分析设计阶段通过分析上面的需求,我们进入设计阶段。也就是方案形成阶段。我们设计出几套不同风格的界面用于被选。首先我们应该制作一个体现用户定位的词语坐标。例如我们为25岁左右的白领男性制作家居娱乐软件。对于这类用户我们分析得到的词汇有:品质,精美,高档,高雅,男性,时尚,cool,个性,亲和,放松等。分析这些词汇的时候我们会发现有些词是绝对必须体现的,例如:品质,精美,高档,时尚。但有些词是相互矛盾的,必须放弃一些,例如:亲和,放松与cool,个性与等。所以我们画出一个坐标,上面是我们必须用的品质,精美,高档,时尚。左边是贴近用户心理的词汇:亲和,放松,人性化。右边是体现用户外在形象的词汇:cool,个性,工业化。然后我们开始搜集相呼应的图片,放在坐标的不同点上。这样根据不同作标点的风格,我们设计出数套不同风格的案例。3)调研验证阶段几套风格必须保证在同等的设计制作水平上,不能明显看出差异,这样才能得到用户客观的反馈。测试阶段开始前我们应该对测试的具体细节进行清楚的分析描述。例如:数据收集方式:厅堂测试/模拟家居/办公室。测试时间:X年X月X日X日。测试区域:北京、广州、天津。测试对象:某软件界定使用用户。主要特征为:·对电脑的硬件配置以及相关的性能指标比较了解,电脑应用水平较高;·电脑使用经历一年以上;·家庭购买电脑时品牌和机型的主要决策者;·年龄:X-X岁;·年龄在X岁以上的被访者文化程度为大专及以上;·个人月收入X以上或家庭月收入X元及以上;·样品;·五套软件界面;·样本量:X个,实际完成X个。调研阶段需要从以下几个问题出发:·用户对各套方案的第一印象;·用户对各套方案的综合印象;·用户对各套方案的单独评价;·选出最喜欢的;·选出其次喜欢的;·对各方案的色彩,文字,图形等分别打分;·结论出来以后请所有用户说出最受欢迎方案的优缺点。所有这些都需要用图形表达出来,直观科学。5)方案改进阶段经过用户调研,我们得到目标用户最喜欢的方案。而且了解到用户为什么喜欢,还有什么遗憾等,这样我们就可以进行下一步修改了。这时候我们可以把精力投入到一个方案上(这里指不能换皮肤的应用软件或游戏的界面)将方案做到细致精美。6)用户验证阶段改正以后的方案,我们可以将他推向市场。但是设计并没有结束。我们还需要用户反馈,好的设计师应该在产品上市以后去站柜台。零距离接触最终用户,看看用户真正使用时的感想。为以后的升级版本积累经验资料。6、职业发展由于目前UI设计师在国内的发展尚处于起步阶段,整体上缺乏一个良好的学习与交流的资源环境,这一领域真正高水平的、能充分满足市场需要的UI设计师为数甚少;而IT行业日新月异的发展速度和人们日益提升的生活标准,也对从业人员提出了越来越高的要求,因此,UI设计师应该通过不断的学习实践,在诸多不同领域,尤其是在人才资源普遍缺乏的社会

    注意事项

    本文(软件工程师发展前景论文.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开