浅谈软件工程
作为《软件工程》课程的第一次作业,让我来简单谈谈对于软件工程这个概念的理解。
现代软件与我们在编程课上写过的独立程序有本质区别,它们规模很大、功能繁多,是无法由一个人独立完成的。如果将软件开发任务随意划分给不同人员,而缺乏合适的组织与管理手段,显而易见的会产生很多问题,如软件开发进度无法保持一致、后期的维护难度上升等,这对于开发工作是灾难性的。
就像生活中的其他工程一样,软件也应当有这样的一套成体系的组织与管理方法,那就是软件工程。根据IEEE的定义,软件工程的核心特征是系统化、规范化、可量化,通过工程化的方法来组织软件开发。例如在需求分析时用状态图、时序图等对关注的要素进行提炼以明确需求,在代码开发时重用一部分代码以提高效率,以及将软件分为多个子系统、模块化的进行开发等。通过软件工程可以提高团队协作开发效果,避免“作坊式”的开发。
在当今的人工智能时代,我们更多会使用AI进行代码的编写,这时候我们事实上起到的是项目管理者的身份,如果能够加以运用软件工程的知识,可以提升AI写项目的效率。因此,人工智能时代中,软件工程的重要性事实上是不降反升的。

浙公网安备 33010602011771号