Formal methods application: An empirical tale of software development

被引:36
作者
Sobel, AEK
Clarkson, MR
机构
[1] Miami Univ, Comp Sci & Syst Anal Dept, Oxford, OH 45056 USA
[2] Cornell Univ, Dept Comp Sci, Ithaca, NY 14853 USA
基金
美国国家科学基金会;
关键词
formal methods; software specifications; software engineering curriculum;
D O I
10.1109/32.991322
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The development of an elevator scheduling system by undergraduate students is presented. The development was performed by 20 teams of undergraduate students, divided into two groups. One group produced specifications by employing a formal method that involves only first-order logic. The other group used no formal analysis. The solutions of the groups are compared using the metrics of code correctness, conciseness, and complexity. Particular attention is paid to a subset of the formal methods group which provided a full verification of their implementation. Their results are compared to other published formal solutions. The formal methods group's solutions are found to be far more correct than the nonformal solutions.
引用
收藏
页码:308 / 320
页数:13
相关论文
共 18 条
[1]  
*ACM, 1998, P 29 SIGCSE TECHN S
[2]  
BOOCH G, 1998, UNIFIED MODELING
[3]  
BOOCH G, 1994, OBJECT ORIENTED ANAL
[4]   10-COMMANDMENTS OF FORMAL METHODS [J].
BOWEN, JP ;
HINCHEY, MG .
COMPUTER, 1995, 28 (04) :56-63
[5]  
Campbell D.T., 1963, Experimental and quasi-experimental designs for research
[6]  
Christensen LB, 1977, EXPT METHODOLOGY
[7]  
COHEN E, 1990, PROGRAMMING 1990S
[8]  
Dijkstra E. W, 1976, A Discipline of Programming
[9]  
DIJKSTRA EW, 1990, PREDICATE CALCULUS P
[10]   7 MYTHS OF FORMAL METHODS [J].
HALL, A .
IEEE SOFTWARE, 1990, 7 (05) :11-19