In developing information technology, you want assurance that systems
are secure and reliable, but you cannot have assurance or security wit
hout correctness. We discuss methods used to achieve correctness, focu
sing on weaknesses and approaches that management might take to increa
se belief in correctness. Formal methods, simulation, testing, and pro
cess modeling are addressed in detail. Structured programming, life-cy
cle modeling like the spiral model, use of CASE tools, use of formal m
ethods, object-oriented design, reuse of existing code are also mentio
ned. Reliance on these methods involves some element of belief since n
o validated metrics on the effectiveness of these methods exist. Sugge
stions for using these methods as the basis for managerial decisions c
onclude the paper.