2019年/02月/08日

首页回退

软件工程课程应该像什么?

原文

software engineering becomes just a course trying to cover whatever methods and tools the industry needs. This is something that universities cannot, in principle, teach very well.

软件工程是一门试图涵盖行业所需方法和工具的课程。从原则上讲,这是大学无法很好地教授的

In computer science, the halting problem is a fundamental piece of knowledge, because it captures the limits of what can theoretically be done. Are there similar fundamental limitations in software engineering? Given that software engineering is an essentially human discipline, the answer will not be mathematical. There are not many similar principles,

计算机科学中,停机问题是一个基础问题,它捕获了理论的限制,那么在软件工程领域有相似的限制吗?鉴于软件工程本质上是一门人类学科,答案将不是数学的。没有很多相似的原理,但是有一些原理:

没有银弹
Another interesting problem is where does the complexity of software systems come from
certain systems, such as an effective missile defense can be impossible to build

Good software engineering relies on broad interdisciplinary understanding and I think it’s not a surprise that interesting ideas about how software should be built borrow ideas not just from engineering,but also from urban planning, architecture, or even gardening:

优秀的软件工程依赖于广泛的跨学科理解,我认为关于如何构建软件的有趣想法不仅是从工程学,也从城市规划,建筑,园艺学中借鉴想法