合聚咖

合聚咖

什么是软件工程

admin

软件工程是一门指导计算机软件开发和维护的工程学科。它运用工程的概念、原理、技术和方法来开发与维护软件,将经过时间验证的管理技术和当前最优的技术方法相结合,形成了软件工程的独特体系。

软件工程框架由目标、过程和原则三大要素构成。首先,软件工程的目标在于生产具有正确性、可用性以及开销合宜的产品。正确性指的是软件产品达到预期功能的程度;可用性则是指软件的基本结构、实现及文档为用户可用的程度;而开销合宜则是指软件开发、运行的整个开销满足用户要求的程度。这些目标的实现,在理论与实践上均存在诸多挑战,它们对过程、过程模型及工程方法的选取构成了约束。

软件工程过程涉及生产一个最终能满足需求且达到工程目标的软件产品所需的步骤。这一过程包括开发过程、运作过程和维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析,前者获取需求定义,又称软件需求规约;后者则生成功能规约。设计活动涵盖概要设计和详细设计,前者建立整个软件系统结构,包括子系统、模块及相关层次的说明、每一模块的接口定义;后者则产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动将设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,确保最终产品满足用户要求。维护活动则包括使用过程中的扩充、修改与完善。

此外,软件工程还遵循一系列原则,这些原则围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的准则。它们确保了软件开发的效率、质量和可控性,是软件工程实践中的基石。