Software Engineering Education,
B.-Z. Barta, S.L. Hung, and K.R. Cox (eds.),
IFIP Transactions A: Computer Science and Technology, vol. A-40,
Elsevier, Amsterdam, The Netherlands, pp. 189-197 (1993)
Two conflicting schools of thought have been dominating software
One school stresses on the popular software
development methodologies, but horror stories on poorly designed systems
are not uncommon.
The other school advocates formal methods, but most practitioners
regard them as impractical.
We recommend that we should bridge the gap between the formal and
informal by bringing theory to existing practice.
The formalism should be used as a working tool
behind popular software development methodologies.
Students should not be trained as craftsmen who consider software
development as an art and learn only from past mistakes.
Nor should they be trained as
mathematicians who are more comfortable with theory than applications.
Software engineers must be educated as real "engineers" who are
competent with industrial practices as well as the mathematical
foundation directly supporting them.
|1.||Part of this research was done at the Programming Research Group of the University of Oxford under an ACU Visiting Fellowship. The research is also supported in part by a grant of the Hong Kong Research Grants Council.|
Department of Computer Science,
The University of Hong Kong,
Pokfulam, Hong Kong.
|EVERY VISITOR COUNTS:|