简答题
软件工程的定义
(1)将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护,即将工程化方法应用于软件;
(2)在(1)中所述方法的研究
解释导致 software crisis 本质原因、表现,述说克服软件危机的方法
The major cause of the software crisis is that the machines have become several orders of magnitude more powerful! To put it quite bluntly: as long as there were no machines, programming was no problem at all; when we had a few weak computers, programming became a mild problem, and now we have gigantic computers, programming has become an equally gigantic problem.
— Edsger Dijkstra, The Humble Programmer (EWD340), Communications of the ACM
本质原因:
计算能力的提高超过了程序员有效利用这些能力的能力。在过去的几十年中,开发了各种过程和方法,以改进软件质量管理,如过程编程和面向对象编程。然而,大型、复杂、不明确、涉及不熟悉方面的软件项目仍然容易受到大型、未预料到的问题的影响。