1、软件工程专业简介
软件工程是研究大规模软件开发方法、工具和管理的一门工程科学,其特点是按工程化的原则和方法来组织和规范软件开发过程,软件工程技术则主要研究与软件开发各个工作流程相关的、先进实用的软件开发方法、技术和工具;软件工程技术专业面向国民经济电子信息化建设和发展的需要,培养具有扎实的软件理论和知识基础,对整个软件过程有整体了解、掌握软件工程领域的前沿技术,具有国际竞争能力,能从事大型软件项目系统分析、设计、编程、测试和软件项目管理等工作的复合型、实用型的高层次软件工程技术人才;主要涵盖软件工程学科和计算机学科的基本理论、基础知识、基本技能的研究,软件的分析与开发,计算机应用系统、计算机网络系统的设计与开发等专业内容。
2、软件工程专业就业方向
本专业学生毕业后可在计算机软件专业公司﹑信息咨询公司﹑以及金融等其它独资、合资企业工作。
从事行业:
毕业后主要在新能源、计算机软件、互联网等行业工作,大致如下:
1 新能源
2 计算机软件
3 互联网/电子商务
4 电子技术/半导体/集成电路
5 计算机服务(系统、数据服务、维修)
从事岗位:
毕业后主要从事软件工程师、项目经理、软件开发工程师等工作,大致如下:
1 软件工程师
2 项目经理
3 软件开发工程师
4 测试工程师
5 java开发工程师
工作城市:
毕业后,北京、上海、深圳等城市就业机会比较多,大致如下:
1 北京
2 上海
3 深圳
4 广州
5 杭州
6 武汉
7 成都
8 南京
3、软件工程专业就业前景
中国的软件行业规模不是很大,有些软件企业在软件制作上,也只是采用了一些软件工程的思想,距离大规模的工业化大生产比较还是有一定的差距;原因有管理体制的问题,市场问题,政策问题,也有软件工程理论不全面和不完善的问题。
所以软件工程的研究和应用,以及中国软件行业的进一步发展,都需要一定的既有软件工程的理论基础和研究能力,又有一定的实践经验的软件工程科学技术人员来推动。软件工程的前途是光明的。
软件服务外包属于智力人才密集型现代服务业。大量著名外包企业落户宁波。主要就业去向包括软件外包与服务企业、信息产品与服务企业,担任程序员、软件测试员、项目经理等工作岗位。
在学习、工作、生活中,大家都写过作文吧,作文可分为小学作文、中学作文、大学作文(论文)。那么,怎么去写作文呢?下面是我整理的我想做软件工程师小学作文,供大家参考借鉴,希望可以帮助到有需要的朋友。
曾经的我有过许许多多的理想,比如:上学前班前,我想当一名医生;后来学了围棋,我又想当一名围棋大师;再后来我又想当警察了,爸爸批评我说:“常立志不如立长志,你要有专一的理想才行。”于是,我现在最大的理想就是长大以后能做一名软件工程师,专门开发游戏软件,因为我觉得编写软件特别有意思。
我对编程的兴趣是来自于两节课外编程班。那是一年前的一天,我爸爸说要带我去试听一下编程课,第一节课是给我们一个编好的程序,让我们试着修改里面的数据,我完成的非常好;然后第二节课就让我们开始自己编游戏了。
上完课,我觉得很好玩,就缠着爸爸给我报名,爸爸说要问问妈妈的意见,但是我妈不同意,于是就出现了以下一段对话:
“妈,给我报名吧,我保证不影响学习。”
“不行,你想学编程等上了大学再学也不晚。”
“妈,不是说兴趣爱好要从小培养吗。”
“不行,你一开电脑就想玩游戏,谁知道你在干啥。”
“妈……”“我说不行就是不行!”
就这样,我被我妈无情地拒绝了。
后来,我妈看我是真的喜欢编程,就答应我如果我期末考试总分考285分以上,就给我报一年的编程课,于是我非常努力地学习,期末终于得了286分,最后我如愿以偿地去了编程班学习。
我最终的目标是考上清华大学的计算机系,继续学习我心爱的编程,要实现这个梦想,我现在要更加努力地学习,为以后打好基础,
我一定能实现我的梦想,做一名软件工程师!
理想是深埋在心底的信仰,因为有了理想,才会有前进的`动力,才会有奋斗的目标。古人说过人无远虑,必有近忧说得正是从小就要树立理想,才能努力跨过当下的困难。
我的理想是当一名——软件工程师。
随着时代的变化,时间的变迁,现在人们的生活方式已经逐渐步入了信息化、科技化的时代,越来越多的软件步入我们的生活。比如:微信、QQ、支付宝、淘宝......无一不为人们提供着便捷与实惠.
我常常思索着......
2036年的某月某日, 我已成为全球知名的软件公司总裁。我的总公司在杭州,公司大厦有36层高,达116米, 是杭州最高的大厦之一. 我的总裁办公室在最高层,我坐在办公室内,室内的一切都具有现代化产物.。我抬手在桌一旁的按钮座按下蓝色按钮,马上就有一个机器人缓缓驶来:主人,有需要吩咐的吗?帮我来一杯咖啡。我挥挥手说道。好的,主人.机器人立刻驶去这一层吧台。主人,请慢用。机器人体内被我植入一块芯片, 芯片内富含多种软件与功能:语言识别,人物辨别,图像识别系统......此技术已广泛运用于人们的日常生活中,大大的为人们提供便利。在桌前向上虚空一拉,即升起了全息虚拟影像投影技术,上面全都是我发明的软件......
每每看到人们手机中的一款款软件,我都不禁想:要是这当中有我设计的一款软件就好了!他们为人们造福,提供便利,这也更加坚定了我的理想。
软件工程师,设计软件,这几个字眼看似简单去实非易事。程序编写,需要极其庞大的运算能力与破译能力。程序编写,一旦一步解错,则全盘皆错,可所谓是步步惊心. 当然其中不可缺少的还有逻辑思维能力,如果没有一定的逻辑思维能力,就会为一些繁琐的步骤而苦恼。
所以,我现在应当学好数学,学会独立思考,为今后的编写打好扎实的基础。凡成大事者,必从小事做起。我牢记这句话,努力学习,希望将来有一天能实现自己的理想!
自己的人生自己掌握!路是自己出走来的,我要飞向那片属于我的天空!
论文摘要:软件是一种特殊的产品,随着其规模和复杂性的提高、使用范围的扩大,需要从技术和管理两方面对软件的开发过程进行控制。从软件工程这门学科和技术出现的背景出发,回顾了软件工程在近40年来理论、方法和实践中的成果。最后结合Internet技术和平台的挑战,初步讨论了软件工程需要面对的新挑战。
论文关键词:软件危机;构件;体系结构;软件项目管理;中间件
1软件工程的出现
1.1软件危机
20世纪中期,计算机刚被从军用领域转向民用领域使用,那时编写程序的工作被视同为艺术家的创作。当时的计算机硬件非常昂贵,编程人员追求的是如何在有限的处理器能力和存储器空间约束下,编写出执行速度快、体积小的程序。程序中充满了各种各样让人迷惑的技巧。这时的软件生产非常依赖于开发人员的聪明才智。
到了20世纪60年代,计算机的应用范围得到较大扩展,对软件系统的需求和软件自身的复杂度急剧上升,传统的开发方法无法适应用户在质量、效率等方面对软件的需求。这就是所谓的“软件危机”。
为解决这个问题,1968年NATO会议上首次提出“软件工程”(SotfwraeEngineeirng)的概念,提出把软件开发从“艺术”和“个体行为”向“工程”和“群体协同工作”转化。其基本思想是应用计算机科学理论和技术以及工程管理原则和方法,按照预算和进度,实现满用户要求的软件产品的定义、开发、发布和维护的工程。从此也诞生了一门新的学科——软件工程。
迄今为之,为了达到最初设定的目标,软件工程界已经提出了一系列的理论、方法、语言和工具,解决了软件开发过程中的若干问题。但是,由于软件固有的复杂性、易变性和不可见性,软件开发周期长、代价高和质量低的问题依然存在。IEEE在2002年发表的报告指出,即使是IT产业最发达的美国,在2001年美国本土公司开发的软件产品中平均每1000行代码中有0.37个错误,对于美国之外的其他国家,这个比例更高。
1.2软件与其他产品的差异
软件是一种特殊的产品,人们通常看到的是它的载体,而真正具有意义的是载体上的计算机或信息。
软件既不同于通常的精神产品,也不同于常见的物质产品。作家的作品是一种精神产品,它没有使用价值却可以供人阅读欣赏。若把软件也看成是一种作品,却发现其价值在于供人们使用,无人喜欢读它的源代码。
软件也与传统的工业产品不同。工业产品在设计好之后,主要的成本是原材料成本、生产过程的开销等,但生产任何软件的主要成本是设计、实现软件时的成本,以及软件投入使用后的维护成本,在生产线上制造软件的成本非常低。用户购买某种商品后,就拥有了该商品的所有权和使用权。可是用户买来的软件却只拥有它的有限“使用权”。工业产品会随着使用而磨损、报废,但软件在使用过程不会有任何磨损,在相同的硬件条件下用户1年前使用的软件和5年后使用该软件无任何差别。传统的工业产品在车间里生产,生产过程可见、可触摸,也容易衡量生产过程中的消耗和进展。可是软件的开发过程在人的大脑里,很难度量其进度。
所谓的“软件工程”就是要这种过程“可视化”、“定量化”,把看不见的思维活动变成看得见的“文档”或者其他看得见的东西。
2软件工程方法和技术
30多年来,软件工程的研究和实践取得了长足的进展,尽管目前离彻底解决“软件危机”还有相当的差距(对是否能彻底解决目前也存在争议),但软件工程的方法对软件产业的发展还是起到了很大的推动作用。从20世纪60年代以来,陆续出现了结构化程序设计技术、计算机辅助软件工程(CASE)、面向对象语言和方法、软件过程及软件过程改善研究等一系列成果,并应用到实践中。目前软件工程中主要使用的方法和技术可以分成技术和管理两类。
2.1技术的角度
主要包括:软件开发范型、软件设计方法。软件开发范型关注软件工程的方向,即如何才是正确的编写满足需求的软件;软件设计方法关注软件工程的“途径”,即研究怎样完成从高层概念模型到低层概念模型的映射。
软件工程理论在实践中应用时重点放在软件复用上。参考目前成熟的工业产品的开发模式,软件复用可以在软件开发中避免重复劳动,它以已有的成果为基础,充分利用过去开发应用系统中积累的知识和经验,将开发的重点集中于新应用的特有构成成分上。通过使用软件复用技术,开发应用系统时可以充分利用已有的开发成果,消除软件生命周期中的许多重复劳动,提高软件开发的效率。同时,复用高质量的已有成果,可以避免重新开发时引入的错误,从而提高软件质量。
实现软件复用的关键技术包括软件构件技术(softwarecomponenttechnology)、领域工程(domainen—gineering)、软件体系结构(softwarearchitecture)等。
软件构件是指应用系统中可以明确辨识的构成成分,可复用构件是指具有相对独立功能和可复用价值的构件。目前,构件的概念即包括源代码,也包括需求、需求规约、系统和软件的体系结构、文档、测试计划、测试用例和数据以及其他对开发活动有用的信息,这些信息都可以称为可复用软件构件。软件构件技术是支持软件复用的核心技术,其主要研究内容包括:如何有目的的进行构件生产和从已有系统中挖掘提取构件;构件的本质特征及构件间的关系是什么样的;如何描述构件;如何对构件进行分类、组织及检索等。
研究实践表明,由于某个特定领域需要的软件具有相似的需求,因此软件复用在特定领域内更容易获得成功,由此出现了领域工程。领域工程是为一组相似或相近系统的应用工程建立基本能力和必备基础的过程,它涵盖了建立可复用软件构件的所有活动。包括美国卡内基?梅隆大学软件工程研究所(CMU/SEI)在内的许多研究机构已经提出了一些领域分析方法。
如果软件复用仅停留在代码阶段,开发人员得到的好处是有限的。软件体系结构技术使软件复用从代码复用发展到设计复用和过程复用。在建筑工程领域人们用体系结构表达建筑的整体结构,软件工程研究中引人体系结构这个术语,其核心内容是软件系统的结构,它包括如下一些实体:构件、构件之间的交互关系、限制、构件和连接件构成的拓扑结构、设计原则与指导方针。
2.2工程管理的角度
参考其他成熟工程领域中的做法,软件工程也研究管理学理论在软件工程中的应用。软件项目管理方法抛弃了以前个人的作坊式开发方式,根据管理科学的理论,结合软件产品开发的实际,保证工程化系统开发方法的顺利实施。为了使软件项目能够按照预定的成本、进度、质量顺利完成,软件管理方法对成本、人员、进度、质量、风险、文档等进行分析管理和控制。进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,其开发风险也越小。软件项目管理已经是公认的软件开发企业的核心竞争力之一。
根据在前面提到的软件与其他产品的区别,软件项目管理具有一些与其他项目管理不同的特性软件项目管理中遵循着一些原则,例如:软件项目中需要平衡需求、资源、工期、质量这四个要素之间的关系;大规模的项目要拆分成几个小项目,从而减小项目的管理风险,并且使目标具体明确;依靠一套规范的过程来实时控制项目进度,并确保项目经理能够及时发现问题、解决问题,保证项目具有很高的可见度;针对不同项目的特点,制订不同的项目管理的方针政策;合理控制项目组的规模控制原则;有效的积累知识,做到人员的专业化培养。
目前在软件项目管理方面有国际标准化组织专门为软件行业定制的ISO9003标准,它给出了衡量软件质量的准则;美国卡内基?梅隆大学软件工程研究所提出的CMM(CapabilityMaturityModel,能力成熟度模型)则提供了一整套较为完善的软件研发项目管理的方法。
3软件工程的新发展
20世纪末开始流行的Internet给人们提供了一种全球范围的信息基础设施,形成了一个资源丰富的计算平台,未来如何在Internet平台上进一步整合资源,形成巨型的、高效的、可信的虚拟环境,使所有资源能够高效、可信地为所有用户服务,成为软件技术的研究热点。
Internet平台具有一些传统软件平台不具备的特征:分布性、节点的高度自治性、开放性、异构性、不可预测性、连接环境的多样性等。这对软件工程的发展提出了新的问题。软件工程需要新的理论、方法和技术和平台来应对这个问题。目前投入很大精力研究的中间件技术就是这方面的典型代表。
综上所述,Internet及其上应用的快速发展与普及,使计算机软件所面临的环境开始从静态封闭逐步走向开放、动态和多变。软件系统为了适应这样一种发展趋势,将会逐步呈现出柔性、多目标、连续反应式的网构软件系统的形态。面对这种新型的软件形态,传统的软件理论、方法、技术和平台面临了一系列挑战。从宏观上看,这种挑战为我们研究软件理论、方法和技术提供了难得的机遇,使我们有可能建立一套适合于Internet开放、动态和多变环境的新型软件理论、方法和技术体系。从微观的角度来看,Internet的发展将使系统软件和支撑平台的研究重点开始从操作系统等转向新型中间件平台,而网构软件的理论、方法和技术的突破必将导致在建立新型中间件平台创新技术方面的突破。
在未来很长一段时间内,就现在的社会形式来说,绝大多数人的“业余”时间,都会通过网络度过,那么玩游戏是最主要的一个方面。
因此来说,学游戏方面的软件工程是很有前途的。
当然你得拿定主意,然后下功夫,不要“三天打鱼两天晒网”。那是绝对不行的。有了那个意向,就要为了自己的理想努力,要坚持,不要太在意别人说这什么什么不行什么什么不好,要有自己的主见。这个社会,任何行业都能出人投地,运气当然要,但最主要的还是靠自己努力的争取。
软件工程学的内容
软件工程学的主要内容是软件开发技术和软件工程管理.
软件开发技术包含软件工程方法学、软件工具和软件开发环境;软件工程管理学包含软件工程经济学和软件管理学。
编辑本段软件工程基本原理
著名软件工程专家综合有关专家和学者的意见并总结了多年来开发软件的经验,于1983年在一篇论文中提出了软件工程的七条基本原理。Boehm
(1)用分阶段的生存周期计划进行严格的管理。
(2)坚持进行阶段评审。
(3)实行严格的产品控制。
(4)采用现代程序设计技术。
(5)软件工程结果应能清楚地审查。
(6)开发小组的人员应该少而精。
(7)承认不断改进软件工程实践的必要性。
指出,遵循前六条基本原理,能够实现软件的工程化生产;按照第七条原理,不仅要积极主动地采纳新的软件技术,而且要注意不断总结经验。
软件工程(SoftWare Engineering)的框架可概括为:目标、过程和原则。
(1)软件工程目标:生产具有正确性、可用性以及开销合宜的产品。正确性指软件产品达到预期功能的程度。可用性指软件基本结构、实现及文档为用户可用的程度。开销合宜是指软件开发、运行的整个开销满足用户要求的程度。这些目标的实现不论在理论上还是在实践中均存在很多待解决的问题,它们形成了对过程、过程模型及工程方法选取的约束。
(2)软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。维护活动包括使用过程中的扩充、修改与完善。伴随以上过程,还有管理过程、支持过程、培训过程等。
(3)软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则
来自百度百科
友情链接: |
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有 如有不愿意被转载的情况,请通知我们删除已转载的信息。 联系方式:电子邮件:1053406363@qq.com 豫ICP备2023024751号-1 |