Large software systems have many stakeholders. What will its users want? Can we describe user requirements, accurately and succinctly? Large software systems are very complex. Can we describe the design of a complex software system, accurately and succinctly? Can we be sure that a complex system will do what it is designed to do, and that it will not do anything unintended? In this course you will learn some incomplete answers to these difficult questions. I will also attempt to teach you how to “learn how to learn” the technical skills you will need in the future – as a competent computer professional. |