软件工程分为那些 软件工程分为几个阶段 - 电脑 - 【龙岩电脑网】_龙岩电脑维修_龙岩笔记本电脑维修_监控安装_市区上门维修
公司动态

软件工程分为那些 软件工程分为几个阶段

摘要:为什么要进行软件工程标准化,软件工程标准可以分为几个级别 软件工程 (Software Engineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到...

发布日期:2020-08-12

软件工程分为那些

为什么要进行软件工程标准化,软件工程标准可以分为几个级别

软件工程 (Software Engineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。

它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面。

在现代社会中,软件应用于多个方面。

典型的软件比如有电子邮件,嵌入式系统,人机界面,办公套件,操作系统,编译器,数据库,游戏等。

同时,各个行业几乎都有计算机软件的应用,比如工业,农业,银行,航空,政府部门等。

这些应用促进了经济和社会的发展,使得人们的工作更加高效,同时提高了生活质量。

一、见习程序员(AP:assistant programmer) 1、计算机相关专业毕业;英语通过国家四级。

2、具有较强的学习能力,可以编写代码,达到公司的工作要求。

二、程序员(P:programmer) 基本要求: 1、本科学历,半年以上工作经验;英语通过国家四级。

2、达到工作承担要求;具有一定的沟通能力和工作责任心。

技术能力要求: 1、负责编写代码,掌握一种主流语言/开发工具,一种主流操作系统,一种主流数据库。

2、了解和掌握开发作业(PD设计、编码和测试等)的规范和技巧。

3、所编写的代码质量较好。

4、能够按照要求编写文档,文档结构条理清晰,内容详实准确。

5、具有独立理解所担当模块的业务理解能力和问题阐述能力。

6、能阅读**文技术文档。

三、高级程序员(SP:senior programmer) 基本要求: 1、获得程序员资格1年以上;或满足程序员级别标准,2年以上相关行业工作经验。

2、完成年度工作量指标;具有较强的沟通能力和责任心。

3、所承担的项目满意度达到满意以上。

技术能力要求: 1、精通一种主流语言及对应的开发工具;精通数据结构。

2、具有较好的业务理解能力和技术调查能力。

3、编写高质量代码并具有代码审查能力。

4、具有详细设计能力。

5、熟悉系统测试工具,对系统问题具有改善的能力。

6、能够带领2个以上员工开展工作,成功领导过3个以上不少于5人月的项目/模块的团队项目。

7、**语达到*级水平或者具有同等水平,能够阅读*文资料,按照要求编写*语技术文档。

8、了解质量管理体系和项目管理知识。

四、软件工程师(SE:software engineer) 基本要求: 1、获得高级程序员资格2年以上;或满足高级程序员级别标准,4年以上相关行业工作经验。

2、完成年度工作量指标;具有较强的客户沟通能力。

3、担当过一个20人月以上的项目或累计超过60人月项目的技术负责工作。

4、所负责的项目客户满意度达到满意以上。

技术能力要求: 1、精通并熟练运用2种以上的开发工具,至少一种数据库知识,至少一种操作系统知识。

2、能够很快完成新项目的技术调查工作,能够完成复杂算法的设计,能够设计可重用的和柔韧的软件结构。

3、具有系统设计能力及系统提案能力。

4、对系统或项目的技术框架有深入的认识和较丰富的经验。

5、具有某一领域的行业知识。

6、具有项目领导能力。

7、*语达到*级水平或者具有同等水平,能够阅读、编写*语技术文档,具有简单的口语沟通能力。

8、掌握质量管理体系和项目管理知识。

五、资深软件工程师(SSE:senior software engineer) 基本要求: 1、获得软件工程师资格2年以上;或满足软件工程师级别标准,6年以上相关行业工作经验。

2、完成年度工作量指标;具有较强的客户沟通能力。

3、担当过一个50人月以上的项目或累计超过100人月项目的技术负责工作。

4、带领的项目客户满意度满意以上。

5、完成年度培训工作。

技术能力要求: 1、精通并熟练运用2种以上的开发工具,至少一种数据库知识,至少一种操作系统知识。

2、具有整体系统设计能力及系统提案能力。

3、具有较强的技术筹划能力、技术指导能力和处理疑难问题的能力。

4、深入了解某一领域的行业知识。

5、具有大型项目领导能力。

6、*语达到*级并相当于*级水平,熟练会话和编写*语技术文档。

7、熟练掌握质量管理体系和项目管理知识,并能够推进软件开发过程改进。

六、主任软件工程师(CSE:chief software engineer) 基本要求: 1、获得资深软件工程师资格2年以上;或满足资深软件工程师级别标准,8年以上相关行业工作经验。

2、5年项目负责人以上经验,累计超过120人月的技术负责人工作。

3、带领的项目客户满意度满意以上。

4、完成年度培训工作。

5、具有很强的沟通能力,问题判断与解决能力,创新能力。

技术能力要求: 1、精通至少一种主流编程语言。

掌握至少一种数据库或至少一种中间件。

熟练掌握至少一种操作系统。

2、熟练掌握软件需求分析/大型项目的策划。

3、熟练掌握软件的系统设计。

4、熟悉软件的高级项目管理和质量控制,具有分析和规避重大质量问 题的能力。

5、精通至少一种部门项目相关的业务知识。

6、*语达到*级水平或相当于*级的水平,熟练会话和编写*语技术文档。

职称管理工作和相关标准将随着公司的发展而不断调整完善

如何成为一名软件工程师?软件工程师分为哪几种?

软件工程师是一个认证考试,具体地说是从事软件职业的人员的一种职业能力的认证,通过它说明具备了工程师的资格。

软件工程师是从事软件开发相关工作的人员的统称。

它是一个广义的概念,包括软件设计人员、软件架构人员、软件工程管理人员、程序员等一系列岗位,工作内容都与软件开发生产相关。

软件工程师的技术要求是比较全面的,除了最基础的编程语言(C语言/C++/JAVA等)、数据库技术(SQL/ORACLE/DB2等)等,还有诸多如JAVA SCRIPT、AJAX、HIBERNATE、SPRING等前沿技术。

此外,关于网络工程和软件测试的其他技术也要有所涉猎。

软件工程师分为哪几类

一般分为这些吧:高级软件工程师 软件工程师 应用系统工程师 系统架构师/分析师 系统集成工程师 系统工程师 软件测试工程师 ERP技术顾问 ERP应用顾问 数据库系统工程师系统分析师 ·软件设计师 ·数据库工程师 ·网络工程师 ·程序员 ·网络管理员 ·软件评测师 ·多媒体应用设计师 java软件工程师·信息系统监理师 ·信息系统项目管理师 ·电子商务技术员 ·电子商务设计师 ·信息处理技术员 ·信息系统运行管理员 ·信息系统管理工程师 ·嵌入式系统设计师 嵌入式软件工程师...

软件工程有哪些具体的分支啊?

Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。

IEEE:软件工程是开发、运行、维护和修复软件的系统方法。

Fritz Bauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。

一~软件工程分为1.移动互联网方向 2.服务外包方向 ?麻烦您解释一下...

一般分为以下几个专业:计算机科学与技术;计算机应用;计算机网络;软件工程;计算机信息管理;差不多就这些了,有的好的学校可能还分得更细一些,大体都差不多;你所说的计算机软件一般都在软件工程这个专业,而且这个专业以后读研也有专业的学位证书!

计算机专业分为那几种?

面向对象与结构化方法的比较研究 xxx (xxxxxxxxxx) 摘要:随着计算机的硬件及通讯技术的发展,计算环境发生了深刻的变化。

计算环境的变迁和不断增长的软件需求对程序设计方法学提出了一个又一个的挑战,程序设计方 法学也在挑战中前进。

首先回顾软件工程程序设计方法的发展历史,指出结构化和面向对象是软件工程程序设计方法中的2个核心思想,分析、探讨了结构化程序设 计方法与面向对象的方法的区别,并就如何在实践中正确应用给出了一些建议。

关键字:程序设计方法; 面向对象; 结构化1引言:随着计算机硬件及通讯技术的发展,计算机环境发生了深刻的变化,计算机环境的变迁和不断增长的软件需求对程序设计方法提出了一个有一个挑战,程序设计方法也在挑战中前进。

计算机发展经历了3个主要阶段:大型主机,客户/服务器以及网络计算。

与此相对应,软件工程的设计方法的发展可分为4代。

1.1第一代面向过程的程序设计方法 面向软件系统的信息流程图,采用面向过程的程序设计语言或面向进程的程序设计语言,实现软件设计流程图所描述的信息处理过程的功能,称为面向过程的程序设计方法或面向进程的程序设计方法。

这种方法适用于设计小规模专业软件包,软件的通用性、重用性和扩展性差。

1.2 第二代面向模块的程序设计方法 结构上将软件系统划分为若干功能模块或实体,分别采用模块化程序设计语言,如:pascal 编程实现,再由各模块联结,组合成相应结构的软件系统,称为面向模块的程序设计方法或模块化程序设计方法,也称为面向实体的程序设计方法。

这种方法适用于设计模块化、结构化程序,可提高软件系统的模块化和结构化水平,设计和组装较大规模的软件系统,有助于提高软件的通用性、重用性和扩展性。

1.3 第三代面向对象的程序设计方法 所谓对象是指具有一定结构、属性和功能的实体,采用对象和对象类,以及对象之间的相互通信的消息,描述客观世界中的各种事物及其相互关系,建立面向对象和消息的具有层次结构的世界模型。

面向对象的程序设计方法基于上述面向对象世界模型。

采用面向对象的程序设计语言,如c++、smalltalk 等编程实现。

这种方法具有通用性,适用于广泛应用领域的大规模软件系统设计。

有助于提高软件的重用性、扩展性和移植性,提高编程效率和程序自动化水平。

1.4 第四代面向智体的程序设计方法 面向智体的程序设计方法是面向对象的程序设计方法的发展。

在程序设计方法的发展演变历程中,结构化和面向对象思想是最核心的思想方法。

结构思想体现了人们抽象思维和复杂问题分解的基本原则与要求,而面向对象则反映了客观世界由对象组成这一本质特点。

2 软件工程程序设计方法的出发点 从程序结构来看,每个子问题形成整个程序结构的一个构件,这个构件称为一个模块。

程序的算法结构,就是一个由模块连接成的层次结构。

在软件工程中,把这种设计方法归结为软件工程设计方法学。

该方法学的基本表述为:自顶向下,逐步求精,模块化层次结构设计。

程序设计方法的本质是问题的抽象与分解,各种程序设计方法的区别在于其分解的因子不一样,处理数据对象及相关操作的方法不一样,也就是出发点不一样。

3 结构化程序设计方法 结构化程序设计方法包含以下内容。

3.1 结构化技术 结构化技术包括结构化分析(S A )、结构化设计(SD )、结构化程序设计(SP )3 方面内容,对应于软件开发时期的分析、设计和编码阶段。

3.2 结构化分析 结构化分析是70 年代中期由DeMarco 和Yourdon等倡导的一种基于功能分解的分析方法,即使用数据流程图、决策表、决策树等工具,来建立一种符合用户需求的结构化说明书。

3.3 结构化设计 结构化设计是一种面向数据流的设计方法,也就是采用最佳的可能方法设计系统的各个组成部分以及各成分之间的内部联系的技术,目的在于提出满足系统需求的最佳软件的结构,完成软件层次图或软件结构图。

4 面向对象的方法 面向对象技术:面向对象技术包括面向对象分析(O O A )、面向对象设计(O O D )及面向对象程序设计(O O P )3 部分内容。

O O P 是在结构化程序设计的基础上,于8 0 年代初涌现的一种程序设计方法,但其真正显示力量和被产业界所重视还是最近几年的事。

封装是整个O O P 方法的基础,主要用于在数据段外围构造保护层,以限制外界变化的影响,所有的数据访问都由保护层内的过程间接处理。

应用程序员不必再按照将程序设计语言逐句拼装的方式来构造整个软件,只需组合、重用由系统程序员开发、可供他人用来装配的软件集成块即可。

例如,Visual Basic(VB)是一种面向对象的程序设计语言,与传统DOS 下的Basic 或Quick Basic 最大的差别在于它运用了面向对象的概念。

V B 建立了一个事件驱动的环境,供用户直接调用。

程序设计人员只要专心数据的运算处理,其余诸如W i n d o w s 应用程序下所见的滚动条、按钮、下拉式菜单和对话框等,都已经有对象供用户进行调用,而且每个对象又都有许多事件、属性和方法,供用户填入适当值或程序码,从而形成一个应用程序。

5 结构化程序设计方法与面向对象的程序...