软件工程常识

2023-01-05 综合 86阅读 投稿:狂想曲

1.软件工程师必备知识

软件工程师考试(高级)大纲 一、考试说明 1.考试要求: (1)理解软件工程管理的概念和任务; (2)理解软件生存期过程; (3)理解软件工程标准; (4)掌握需求分析、测试、维护基本技术; (5)掌握软件度量、软件配置管理方法; (6)理解软件复用概念; (7)理解软件质量保证的手段; (s)理解软件项目对人员的需求; (9)理解软件知识产权的基本知识。

2.通过本级水平考试的合格人员具有从事软件系统分析与工程系统分析员、工程管理员的实际工作能力和业务水平。 3.本级水平考试范围包括三个模块,即模块1、模块2和模块3。

题型为单项选择题十多项选择题十综合题。每个模块考试时间为90分钟。

二、考试范围 模块1:软件工程技术 1.1软件生存期过程 1.1.1软件工程过程和软件生存期 1.1.2软件生存期模型 1.1.3国际标准:ISO/IECI2207信息技术一软件生存期过程 1.2软件需求分析 1.2.1需求分析的任务 1.2.2需求分析过程 1.2.3需求的类型。 1.2.4需求分析的原则 1.2.5需求分析人员和用户的责任 1.2.6需求文档 1.2.7需求说明技术的选择 1.3软件复用技术 1.3.1软件复用的概念 1.3.2软件开发过程 1.3.3构件技术 1.3.4分层式体系结构 1.3.5实施软件复用开发单位的组织结构 1.4软件测试技术 1.4.1软件测试的基本概念 1.4.2测试用例设计 ●白盒测试 ●黑盒测试 1.4.3性能测试 1.4.4软件测试策略 1.4.5软件测试工具 1.5软件维护 1.5.1软件维护的概念 1.5.2软件维护活动 1.5.3软件维护的实施 1.5.4软件可维护性 1.5.5软件再工程 1.6软件工具与软件开发环境 1.6.1软件开发工具的分类、作用和功能 1.6.2软件开发环境的概念 模块2:软件质量管理与软件质量保证 2.1软件质量 2.1.1什么是软件质量 2.1.2软件可靠性 2.1.3软件质量问题的根源 2.1.4软件产品质量与软件过程质量 2.2软件质量保证 2.2.1软件质量保证的概念 2.2.2软件质量保证体系 2.2.3质量保证的实施 2.2.4软件质量设计 2.2.5软件容错技术 2.3软件工程标准与软件文档 2.3.1什么是软件工程标准 2.3.2软件工程标准化的意义 2.3.3软件工程标准的制订与推行 2.3.4软件工程标准的层次 2,3.5软件工程国家标准 2.4ISO9000国际标准 2.4.1质量管理、质量认证与质量审核 2.4.2ISO9000标准概要 2.4.3ISO9000族标准构成 2.4.4质量体系 2.4.5ISO9001的主要内容 2.4.6ISO9000_3实施指南概要 2.5软件过程能力评估CMM 2.5.1软件过程评估的意义 2.5.2软件过程能力成熟度分级及其关键过程域 2.5.3软件过程评估的国际标准 2.6软件度量 2.6.1软件度量的概念 2.6.2功能点方法计算软件的大小 2.6.3程序环路复杂度计算 2.6.4Halstead程序工作量计算 2.6.5程序风格度量 2.7软件配置管理 2.7.1什么是软件配置管理 2.7.2配置管理计划的制订 2.7.3变更管理 2.7.4版本管理和发行管理 模块3:软件工程管理 3.1软件工程管理和软件项目管理 3.1.1软件工程管理的任务与意义 3.1.2软件工程管理的范围 3.1.3软件文档管理 3.1.4软件成本估算 3.1.5软件风险分析 3.1.6软件项目进度计划与监控 3.2软件人员管理 3.2.1软件开发组织结构 3.2.2软件人员能力成熟度模型 3.2.3软件工程师道德和职业活动规范 3.3软件知识产权保护 3.3.1什么是知识产权 3.3.2计算机软件著作权 3.3.3计算机软件著作权登记管理 3.3.4计算机软件著作权侵权与法律保护 3.3.5计算机软件的商业秘密与反不正当竞争=================================高级软件工程师哪些必须精通2007年09月26日 星期三 下午 05:31程序员的七种武器 信息技术的发展时间虽然不长,但其爆炸式的发展速度使信息技术迅速覆盖社会和人类生活的各个角落。

程序员们是这场信息化浪潮的见证者之一,更是其中的主要参与者,这是时代赋予每个程序员的机会和责任。 信息技术的更新速度是惊人的,程序员的职业生涯则是一个要求不断学习的过程,永远不能固步自封。

本人在工作期间曾看见过很多程序员只要有闲暇时间就浏览一些没有太大作用的网页,在网上聊天,打游戏,浪费了大量的时间,十分不可取。而另外一种情况是,IT技术的日新月异使很多程序员眼花缭乱,什么都想学,却又不知从何学起,今天看看这个,明天学学那个,贪多不熟。

虽然IT技术发展迅速,但很多技术都是有规律可循,一些基本的概念、原理和方法还很通用,可以举一反三。本人根据自己的体会和经验,向那些刚刚踏入IT行业的新程序员们或正在迷茫的程序员们推荐程序员必须掌握的七种武器,有了这七种武器,虽不敢说笑傲江湖,但将自己立于不败之地还是可以的。

第一种武器:开发工具 至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是我重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C++编写。而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而本人对SUN公司的“网络即计算机”的概念相当欣赏,并相信JAVA即其相关的技术集JAVA One会成为未来的主流开发工具之一。

其次,如果能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,C++ Builder,则更好,。

2.软件工程专业要学习什么知识

培养目标:软件工程专业培养面向国民经济信息化建设和发展的需要,培养具有扎实的计算机应用理论和知识基础,掌握软件工程领域的前沿技术和软件开发方法,具备较强的软件项目的系统分析、设计、开发和测试能力,能够按工程化的原则和方法从事软件项目开发和管理的高级工程技术人才。

主要课程:离散数学、面向对象程序设计、数据结构、数据库原理、操作系统、计算机网络、软件工程、软件过程与管理、软件测试技术、软件质量管理、软件项目管理等。

毕业去向:软件工程专业毕业生主要在信息产业和国民经济部门从事信息系统研究、分析、设计、开发和测试以及软件工程项目的组织和管理工作,也可考取计算机科学与技术专业的硕士研究生。

软件工程专业是今后的热门,就业前景非常好!目前软件工程9个专业的内容和就业情况如下:

1 可视化编程

掌握程序设计方法及可视化技术,精通一种可视化平台及其软件开发技术。获取Delphi程序员系列、Java初级或VB开发能手认证。

就业方向:企业、政府、社区、各类学校等可视化编程程序员。

2 WEB应用程序设计

具有美工基础和网页动画设计能力,掌握交互式网页程序的设计技术,能进行网站建设和维护。获取Macromedia多媒体互动设计师或Delphi初级程序员或Delphi快速网络开发工程师认证。

就业方向:企业、政府、社区、各类学校等WEB应用程序员。

3 软件测试掌握软件测试的基本原理、方法和组织管理,精通软件测试工具。获取ATA软件测试工程师或Delphi初级程序员或Java初级程序员认证。

就业方向:企业、政府、社区、各类学校等软件测试员。

4 数据库管理

能应用关系范式进行数据库设计,精通SQL语言,胜任数据库服务器管理与应用工作。获取Oracle数据库管理或SQL Server数据库应用或Windows XP应用认证。

就业方向:企业、政府、社区、各类学校等部门的中、大型数据库管理员。

5 图形图像制作

精通国际上流行的图形/图像制作工具(如CorelDraw、Photoshop、Pagemaker等)。获取平面设计师相关的认证。

就业方向:广告制作公司、建筑设计公司、包装装璜设计公司、居室装修公司、出版印刷公司。

6 网络构建技术

熟悉网络结构和组网方式,掌握建网方法,能利用工具分析和排除常见网络故障。获取Cisco路由配置或华为网络工程或AMP应用工程师认证。

就业方向:企业、政府、社区、各类学校等网络构建工程师。

7 网络系统管理

掌握网络系统管理的基本知识与应用技能,能进行网络系统的安全设置。获取Window2000 Server或TurboLinux TLCE或Cisco路由配置专家认证。

就业方向:企业、政府、社区、各类学校等网络系统管理员。

8 多媒体制作

具有多媒体程序设计与多媒体制作策划的能力。基本掌握面向对象程序设计与建模、造型设计、场景设计、分镜头原理等技能。获取多媒体设计师相关的认证。

就业方向:多媒体设计与制作公司、动画美术制作出版公司、广告制作公司。

9 计算机办公应用

精通办公自动化应用与管理,熟悉服务器的安装、管理和维护,基于应用服务器的相关服务和软件系统,具备对服务器的网络安全设置、邮件、网页发布、FTP、OA、BBS等系统的应用和维护能力。就业方向:企业、政府、社区、各类学校等系统管理

3.软件工程师必备知识

软件工程师考试(高级)大纲 一、考试说明 1.考试要求: (1)理解软件工程管理的概念和任务; (2)理解软件生存期过程; (3)理解软件工程标准; (4)掌握需求分析、测试、维护基本技术; (5)掌握软件度量、软件配置管理方法; (6)理解软件复用概念; (7)理解软件质量保证的手段; (s)理解软件项目对人员的需求; (9)理解软件知识产权的基本知识。

2.通过本级水平考试的合格人员具有从事软件系统分析与工程系统分析员、工程管理员的实际工作能力和业务水平。 3.本级水平考试范围包括三个模块,即模块1、模块2和模块3。

题型为单项选择题十多项选择题十综合题。每个模块考试时间为90分钟。

二、考试范围 模块1:软件工程技术 1.1软件生存期过程 1.1.1软件工程过程和软件生存期 1.1.2软件生存期模型 1.1.3国际标准:ISO/IECI2207信息技术一软件生存期过程 1.2软件需求分析 1.2.1需求分析的任务 1.2.2需求分析过程 1.2.3需求的类型。 1.2.4需求分析的原则 1.2.5需求分析人员和用户的责任 1.2.6需求文档 1.2.7需求说明技术的选择 1.3软件复用技术 1.3.1软件复用的概念 1.3.2软件开发过程 1.3.3构件技术 1.3.4分层式体系结构 1.3.5实施软件复用开发单位的组织结构 1.4软件测试技术 1.4.1软件测试的基本概念 1.4.2测试用例设计 ●白盒测试 ●黑盒测试 1.4.3性能测试 1.4.4软件测试策略 1.4.5软件测试工具 1.5软件维护 1.5.1软件维护的概念 1.5.2软件维护活动 1.5.3软件维护的实施 1.5.4软件可维护性 1.5.5软件再工程 1.6软件工具与软件开发环境 1.6.1软件开发工具的分类、作用和功能 1.6.2软件开发环境的概念 模块2:软件质量管理与软件质量保证 2.1软件质量 2.1.1什么是软件质量 2.1.2软件可靠性 2.1.3软件质量问题的根源 2.1.4软件产品质量与软件过程质量 2.2软件质量保证 2.2.1软件质量保证的概念 2.2.2软件质量保证体系 2.2.3质量保证的实施 2.2.4软件质量设计 2.2.5软件容错技术 2.3软件工程标准与软件文档 2.3.1什么是软件工程标准 2.3.2软件工程标准化的意义 2.3.3软件工程标准的制订与推行 2.3.4软件工程标准的层次 2,3.5软件工程国家标准 2.4ISO9000国际标准 2.4.1质量管理、质量认证与质量审核 2.4.2ISO9000标准概要 2.4.3ISO9000族标准构成 2.4.4质量体系 2.4.5ISO9001的主要内容 2.4.6ISO9000_3实施指南概要 2.5软件过程能力评估CMM 2.5.1软件过程评估的意义 2.5.2软件过程能力成熟度分级及其关键过程域 2.5.3软件过程评估的国际标准 2.6软件度量 2.6.1软件度量的概念 2.6.2功能点方法计算软件的大小 2.6.3程序环路复杂度计算 2.6.4Halstead程序工作量计算 2.6.5程序风格度量 2.7软件配置管理 2.7.1什么是软件配置管理 2.7.2配置管理计划的制订 2.7.3变更管理 2.7.4版本管理和发行管理 模块3:软件工程管理 3.1软件工程管理和软件项目管理 3.1.1软件工程管理的任务与意义 3.1.2软件工程管理的范围 3.1.3软件文档管理 3.1.4软件成本估算 3.1.5软件风险分析 3.1.6软件项目进度计划与监控 3.2软件人员管理 3.2.1软件开发组织结构 3.2.2软件人员能力成熟度模型 3.2.3软件工程师道德和职业活动规范 3.3软件知识产权保护 3.3.1什么是知识产权 3.3.2计算机软件著作权 3.3.3计算机软件著作权登记管理 3.3.4计算机软件著作权侵权与法律保护 3.3.5计算机软件的商业秘密与反不正当竞争================================= 高级软件工程师哪些必须精通2007年09月26日 星期三 下午 05:31程序员的七种武器 信息技术的发展时间虽然不长,但其爆炸式的发展速度使信息技术迅速覆盖社会和人类生活的各个角落。

程序员们是这场信息化浪潮的见证者之一,更是其中的主要参与者,这是时代赋予每个程序员的机会和责任。 信息技术的更新速度是惊人的,程序员的职业生涯则是一个要求不断学习的过程,永远不能固步自封。

本人在工作期间曾看见过很多程序员只要有闲暇时间就浏览一些没有太大作用的网页,在网上聊天,打游戏,浪费了大量的时间,十分不可取。而另外一种情况是,IT技术的日新月异使很多程序员眼花缭乱,什么都想学,却又不知从何学起,今天看看这个,明天学学那个,贪多不熟。

虽然IT技术发展迅速,但很多技术都是有规律可循,一些基本的概念、原理和方法还很通用,可以举一反三。本人根据自己的体会和经验,向那些刚刚踏入IT行业的新程序员们或正在迷茫的程序员们推荐程序员必须掌握的七种武器,有了这七种武器,虽不敢说笑傲江湖,但将自己立于不败之地还是可以的。

第一种武器:开发工具 至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是我重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C++编写。而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而本人对SUN公司的“网络即计算机”的概念相当欣赏,并相信JAVA即其相关的技术集JAVA One会成为未来的主流开发工具之一。

其次,如果能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,C++ Builder,则更好,。

4.成为软件工程师需要掌握哪些知识

首先C语言你得会,然后是数据结构,然后你学C++,VC++最好也学了(C++跟VC++有些不同),然后再学XML,数据库你学My SQL、SQL Server,Oracle有条件的话就学。

接下来有两个方向,一个是微软方向的,一个是JAVA方向的,看你自己想选哪个方向。 如果选微软方向你就学C#、.NET、网页三剑客(flash、Dreamweaver、Fireworks),其中网页三剑客是做界面用的。

如果你选JAVA方向就学JAVA,Unix操作系统,Linux操作系统。最后这些学完了你就学个软件工程,然后再进行实际项目的开发练习。

这样应该就可以了。 再补充点:网络方面的内容也很重要,你最好多找找网络方面的书看看,毕竟你是想成为优秀的软件工程师么~多掌握点知识总是有好处的。

还有就是你英文水平最好是良好,最好就是能看英文原版的专业书籍。当然不能也没关系,我是说尽量达到这个水平。

最重要的还是实践,能不能做出项目来是考核你的很重要的标准。 最后祝你早日成为一名优秀的软件工程师。

5.软件工程师 需要了解什么知识

一、考试说明

1.考试要求:

(1) 掌握数据表示、算术和逻辑运算;

(2) 掌握相关的应用数学、离散数学的基础知识;

(3) 掌握计算机体系结构以及各主要部件的性能和基本工作原理;

(4) 掌握操作系统、程序设计语言的基础知识,了解编译程序的基本知识;

(5) 熟练掌握常用数据结构和常用算法;

(6) 熟悉数据库、网络和多媒体的基础知识;

(7) 掌握C程序设计语言,以及C++、Java、Visual、Basic、Visual C++中的一种程序设计语言;

(8) 熟悉软件工程、软件过程改进和软件开发项目管理的基础知识;

(9) 熟悉掌握软件设计的方法和技术;

(10) 掌握常用信息技术标准、安全性,以及有关法律、法规的基本知识;

(11) 了解信息化、计算机应用的基础知识;

(12) 正确阅读和理解计算机领域的英文资料。2.通过本考试的合格人员能根据软件开发项目管理和软件工程的要求,按照系统总体设计规格说明书进行软件设计,编写程序设计规格说明书等相应的文档,组织和指导程序员编写、调试程序,并对软件进行优化和集成测试,开发出符合系统总体设计要求的高质量软件;具有工程的实际工作能力和业务水平 追问: 谢谢! 我更想知道的是:实际生活中软件工程师需要的能力。很多人(包括我)认为:现在证书只是供参考的。当然,完全达到考试大纲要求是相当不容易的…… 回答: 在现代社会中,软件应用于多个方面。典型的软件比如有电子邮件,嵌入式系统,人机界面,办公套件,操作系统,编译器,数据库,游戏等。同时,各个行业几乎都有计算机软件的应用,比如工业,农业,银行,航空,政府部门等。这些应用促进了经济和社会的发展,使得人们的工作更加高效,同时提高了生活质量。

6.软件工程师需要具备哪些知识

2. AWT及Swing图形程序设计、流、网络程序设计、对象序列化、Applet、多线程程序设计、Java应用国际化基础; 3. Java桌面系统项目开发; 4. Java编程基础提高课程:反射机制、设计模式(I)、正则表达式,Java SE5.0新特性等; 5. 基于Oracle的数据库开发及管理、数据库设计、标准SQL、PL/SQL编程; 6. JDBC、JSP2.0、Servlet2.4、JavaBean编程;Tomcat服务器使用、Jbuilder及Eclipse 等集成开发环境; 7. Linux操作系统中的Java程序开发、Linux系统管理; 8. Java Web编程提高课程:JDBC进阶、高效分页处理、过滤器使用技巧、Struts中动态表单验证、DispatchForm等;高级部分 1. MVC设计模式、Struts架构核心工作机制、国际化、验证框架、Struts Taglib、ORM基础、基于Hibernate的企业级应用; 2. JavaME手机游戏设计、界面程序设计、数据库程序设计、手机短信、多媒体短信(彩信)开发; 3 .JavaEE核心技术、XML、Web Service、异构系统整合、分布式应用开发、WebLogic和JBoss等应用服务器; 4 .CMM、UML与系统建模和设计、Rational Rose、软件工程和软件过程模型、版本控制及设计模式; 6. Java 企业级应用开发提高课程:Hibernate使用技巧、设计模式(II)、Spring编程入门、提高Java EE应用的性能; .NET程序设计 .NET架构、.NET桌面和Web程序设计、.NET与JavaEE平台应用的整合;职业素质IT职业规划、沟通技巧、团队合作、专业技术规范、面试技巧等职业技能培训。

完成以上培训课程后,通过考核就可以获得培训机构颁发的合格证书。 现在比较吃香的是JAVA,特别是J2EE,未来3G出来后,手机编程将成为热点,J2EE当然就会很吃香了。

关于证书的权威性,建议你要去知名的培训机构去,最好是像SUN这类国际大公司有关认证所指定的培训机构,这样权威性高些。 一般来讲,软件公司是非常喜欢通过了软件工程师的人员,学历对他们来说并不重要,而重要的是能力。

7.软件工程师需要具备哪些知识

初级部分:

1. Java 面向对象程序设计、Java API使用、数据结构及算法基础、Java高级类特性、异常处理;

2. AWT及Swing图形程序设计、流、网络程序设计、对象序列化、Applet、多线程程序设计、Java应用国际化基础;

3. Java桌面系统项目开发;

4. Java编程基础提高课程:反射机制、设计模式(I)、正则表达式,Java SE5.0新特性等;

5. 基于Oracle的数据库开发及管理、数据库设计、标准SQL、PL/SQL编程;

6. JDBC、JSP2.0、Servlet2.4、JavaBean编程;Tomcat服务器使用、Jbuilder及Eclipse 等集成开发环境;

7. Linux操作系统中的Java程序开发、Linux系统管理;

8. Java Web编程提高课程:JDBC进阶、高效分页处理、过滤器使用技巧、Struts中动态表单验证、DispatchForm等;

高级部分

1. MVC设计模式、Struts架构核心工作机制、国际化、验证框架、Struts Taglib、ORM基础、基于Hibernate的企业级应用;

2. JavaME手机游戏设计、界面程序设计、数据库程序设计、手机短信、多媒体短信(彩信)开发;

3 .JavaEE核心技术、XML、Web Service、异构系统整合、分布式应用开发、WebLogic和JBoss等应用服务器;

4 .CMM、UML与系统建模和设计、Rational Rose、软件工程和软件过程模型、版本控制及设计模式;

6. Java 企业级应用开发提高课程:Hibernate使用技巧、设计模式(II)、Spring编程入门、提高Java EE应用的性能;

.NET程序设计

.NET架构、.NET桌面和Web程序设计、.NET与JavaEE平台应用的整合;

职业素质

IT职业规划、沟通技巧、团队合作、专业技术规范、面试技巧等职业技能培训。

完成以上培训课程后,通过考核就可以获得培训机构颁发的合格证书。

现在比较吃香的是JAVA,特别是J2EE,未来3G出来后,手机编程将成为热点,J2EE当然就会很吃香了。

关于证书的权威性,建议你要去知名的培训机构去,最好是像SUN这类国际大公司有关认证所指定的培训机构,这样权威性高些。

一般来讲,软件公司是非常喜欢通过了软件工程师的人员,学历对他们来说并不重要,而重要的是能力。如果你的能力够强,在一个好的公司的话,这个月薪我想应该是可以拿到的。

软件工程常识

声明:沿途百知所有(内容)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系我们将尽快删除