(defun cocomo-defaults () (append (kloc-defaults) (a-defaults) (b-defaults) (defect-removal-defaults) (em-defaults) (sf-defaults))) ;; all "defaults" function must return a list of dotted pairs ;; (otherwise the "append" in cocomo-defaults won't work) (defun kloc-defaults () `((kloc . ,(make-num :min 2 :max 2000)))) (defun a-defaults () `((a . ,(make-one-a :line (point-to-line 2 1 10 0.6))))) (defun b-defaults () `((b . ,(make-one-b :num (make-num :min 0 :max 1))))) (defun defect-removal-defaults () `((aa . ,(make-dr :range (make-r16) :rout (make-rdr) :dout (make-ddr) :cout (make-codr))) (etat . ,(make-dr :range (make-r16) :rout (make-rdr) :dout (make-ddr) :cout (make-codr))) (pr . ,(make-dr :range (make-r16) :rout (make-rdr) :dout (make-ddr) :cout (make-codr))))) (defun sf-defaults () `((flex . ,(make-sf :range (make-r25) :effort (make-sfs) :rsf (make-rsf) :dsf (make-dsf) :csf (make-csf))) (pmat . ,(make-sf :range (make-r15) :effort (make-sfs) :rsf (make-rsf) :dsf (make-dsf) :csf (make-csf))) (prec . ,(make-sf :range (make-r15) :effort (make-sfs) :rsf (make-rsf) :dsf (make-dsf) :csf (make-csf))) (resl . ,(make-sf :range (make-r15) :effort (make-sfs) :rsf (make-rsf) :dsf (make-dsf) :csf (make-csf))) (team . ,(make-sf :range (make-r15) :effort (make-sfs) :rsf (make-rsf) :dsf (make-dsf) :csf (make-csf))))) (defun em-defaults() `((acap . ,(make-em :range (make-r15) :effort (make-em-) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (aexp . ,(make-em :range (make-r15) :effort (make-em-) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (cplx . ,(make-em :range (make-r16) :effort (make-em+) :rin (make-rin+) :din (make-din+) :cin (make-cin+))) (data . ,(make-em :range (make-r25) :effort (make-em+) :rin (make-rin+) :din (make-din+) :cin (make-cin+))) (docu . ,(make-em :range (make-r15) :effort (make-em+) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (ltex . ,(make-em :range (make-r15) :effort (make-em-) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (pcap . ,(make-em :range (make-r15) :effort (make-em-) :rin (make-rin+) :din (make-din-) :cin (make-cin-))) (pcon . ,(make-em :range (make-r15) :effort (make-em-) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (plex . ,(make-em :range (make-r15) :effort (make-em-) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (pvol . ,(make-em :range (make-r25) :effort (make-em+) :rin (make-rin+) :din (make-din+) :cin (make-cin+))) (rely . ,(make-em :range (make-r15) :effort (make-em+) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (ruse . ,(make-em :range (make-r26) :effort (make-em+) :rin (make-rin+) :din (make-din+) :cin (make-cin+))) (sced . ,(make-em :range (make-r15) :effort (make-em-) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (site . ,(make-em :range (make-r16) :effort (make-em-) :rin (make-rin-) :din (make-din-) :cin (make-cin-))) (stor . ,(make-em :range (make-r36) :effort (make-em+) :rin (make-rin+) :din (make-din+) :cin (make-cin+))) (time . ,(make-em :range (make-r36) :effort (make-em+) :rin (make-rin+) :din (make-din+) :cin (make-cin+))) (tool . ,(make-em :range (make-r15) :effort (make-em-) :rin (make-rin-) :din (make-din-) :cin (make-cin-)))))