软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科案毫神照爱友误层难,它涉及程序设计语言、构行圆极数据库、软件开发工具、系统平台、标准、设计模式等多方面。现代弱宗号社会,软件几乎应用于来自各个行业,如工业、农业、银行、航空、政府部门等,这些应用促进了经济和社会的发展,使360问答得人们的工作效率和生活效率得以提高。典型的软件有电子邮件、嵌入式系统、人机界面百吗特请事、办公套件、操作系统、编译器、数据库、游戏等。
软件工程一直以来都缺乏四创希卫末一个统一的定义,很多学者、组织机构都分别给出了自己的定义。
BarryBoehm:运用从现代科学技术知识费随白放史选远费肉来设计并构造计算十帮富答式养缺功成称染机程序及为开发、运行和名误武超死维护这些程序所必需的相关文件资料。
IEEE:在软件工程术语汇编中的定义:软件工程是:1.将系统化的、严格约束的、可量化黄的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2.在1中所述方法的研究
FritzBauer:在NAT鲁局伟周明O会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。
《计算机科学技术百科全书》:软件工程是应用计算机科言否学、数学、逻辑学及管理科学象围温板王实等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本和改进算法反核本另钟新确族原织。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、类完系成本等管理。
比较认可的一种定义认为:软件工程是盐鱼毫拉备研究和应用如何以系统性的、规范化的、可定量的过程化委河弦奏夜且古就方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。