软件工程专业简介 软件工程的定义 定义1:软件工程是为了经济地获得能够在实际机器上高效运行的可靠软件而建立和使用的一系列好的工程化原则。【Bauer 1972】 定义2:软件工程是以工程的形式应用计算机科学和数学原理,从而经济有效地解决软件问题。【CMU/SEI-90-TR-003】 定义3:软件工程是将系统性的、规范化的、可度量的方法应用于软件的开发、运行和维护。【IEEE 1990】 软件工程学科的特点 软件工程作为一门工程学科,建立在计算机科学和数学的基础上,其重点在于软件的分析与评价、规格说明、设计与演化,另外还涉及管理与质量、创新、标准、个人技能、团队协作和专业实践等。 与计算机科学的关系 软件工程建立在计算机科学基础上。在软件工程中,需要运用计算机科学的研究成果指导软件开发,计算机科学的理论、方法、原理和技术在软件工程中得到应用。 软件工程与计算机科学是不同的学科。软件工程是一门工程学科,涉及传统工程学科的知识领域。软件工程需要传统工程的基本理论、方法和技术来指导生产软件产品。 计算机科学 软件工程 是一门科学,研究信息和计算的理论基础,以及在计算机系统应用中的具体实现技术 涉及到相关的数学和计算理论,包括描述和变换信息的算法、有效地自动化等。 知识领域:计算理论、算法和数据结构、编程方法和语言、计算机组成和体系结构、通信和网络、安全、数据库、计算机图形、科是一门工程学科,它要求以系统化、可控制和有效的工程化方法创建高质量的软件。 涉及到相关的质量、规划、经济、知识、应用等方面的原理和方法。 知识领域:软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具和学计算、人工智能、人机交互等。 方法、软件质量等。 涉及数学、计算学科。 涉及计算机科学、管理、工程等学科。 与工程科学的关系 软件工程与传统意义上的工程学科还有所不同,主要体现在以下几个方面。 软件工程 传统工程 基础是计算机科学 数学基础是离散数学 研究的对象是抽象和逻辑实体 软件没有制造过程 软件维护是一个持续开发的过程或改进的过程 基础是自然科学 数学基础是连续数学 研究的对象是具体的物理对象 大多有生产、构造过程 有比较明确的完成结点 软件不能被用尽 可以被用尽 这就意味着一些传统工程方法在软件工程中并不一定完全适用,软件工程还需要在其基础上发展。 软件工程是一个跨学科的专业,它建立在计算机科学基础上,具有工程学科特点。软件工程所涉及的知识领域是很宽泛的,包括数学、计算、管理、工程等。所以,在软件工程教育中需要强调数学基础和计算机科学专业基础的建立,也需要强调工程领域的知识和技术的掌握,缺一不可。 软件工程师的理想素质 1. 决策能力,需要进行一系列的决策和评价,能通过分析和权衡成本和利益,做出适当的选择; 2. 定量分析能力,需要进行各种度量,通过经验和实验获取数据,进行估算和定量分析; 3. 团队协作能力,采用规范的过程进行创造性设计,并能作为团队的成员进行有效工作; 4. 多重角色的承担,研究、分析、构造、实现、测试、维护,设计、开发、生产、实施、管理,销售、咨询、培训、服务等; 5. 工具运用能力,需要选择各类工具并将工具系统地应用到过程中; 6. 社会交流能力,需要专业团体之间的交流与沟通,不断地开发和确认工程原则、标准,并进行实践; 7. 成果的重用能力,需要设计、编码、过程等的可重复和重用性。 软件工程专业学生的基本要求 1. 掌握软件工程的知识,技能和作为软件工程师所要了解的专业问题; 2. 能够独立或作为团队成员开发和提交高质量的软件产品; 3. .能解决项目中的问题,寻找解决方案,并综合考虑成本,实践,知识,现有系统和组织关系等因素; 4. 用软件工程方法在一个或多个应用领域设计适当的解决方案,涉及道德,社会,法律和经济相关的问题; 5. 理解现有的问题识别和分析,软件设计,开发,实现,验证和文档编写的理论,方法和技术,并能够应用。 6. 理解和正确评价在一个典型的软件开发环境谈判,有效工作习惯,领导能力和良好客户沟通能力的重要性。 7. 学习新的模型和技术。 典型的软件工程应用领域 软件工程已运用到政府、银行和金融、教育、交通、娱乐、医疗、农业和法律等方面,其应用系统包括: 以网络为中心的系统 信息系统和数据处理 金融和电子商务系统 生物医学系统 多媒体、游戏和娱乐系统 嵌入式和实时系统 容错和免疫系统 其它 本文来源:https://www.wddqw.com/doc/8ca837126c175f0e7cd1372d.html