What are the stages of the traditional software development process?
What makes the traditional process error-prone?
List the major ways in which errors creep into well-intentioned software developments, from your experience.
What characteristics would make an application software specification truly precise?
Why is this difficult to do in practice?
Define "robust software."
Define "trustworthy software."
How is robustness an intrinsic quality while trustworthiness is an extrinsic one?