\begin{figure*} \begin{center} {\scriptsize \begin{tabular}{p{3cm}|r@{:~}l|c|c|} \multicolumn{3}{c}{~}&strategic?&\multicolumn{1}{|c}{tactical?}\\\cline{2-5} scale &prec & have we done this before?&\ding{51}&\\ factors &flex & development flexibility &&\ding{51}\\ (exponentially &resl & any risk resolution activities?&&\ding{51}\\ decrease &team & team cohesion&&\ding{51}\\ effort) &pmat & process maturity&\ding{51}&\\\hline upper &acap & analyst capability&\ding{51}&\\ (linearly &pcap & programmer capability&\ding{51}&\\ decrease &pcon & programmer continuity&\ding{51}&\\ effort) &aexp & analyst experience&\ding{51}&\\ &pexp & programmer experience&\ding{51}&\\ <ex & language and tool experience&\ding{51}&\\ &tool & tool use&&\ding{51}\\ &site & multiple site development&\ding{51}&\\ &sced & length of schedule &&\ding{51} \\\hline lower &rely & required reliability && \\ (linearly &data & secondary memory storage requirements&&\ding{51}\\ increase &cplx & program complexity&&\ding{51}\\ effort) &ruse & software reuse&&\ding{51}\\ &docu & documentation requirements&&\ding{51}\\ &time & runtime pressure&&\\ &stor & main memory requirements&&\ding{51}\\ &pvol & platform volatility &&\\\hline COQUALMO &auto& automated analysis&\ding{51}&\ding{51}\\ defect removal&execTest & execution-based testing tools&\ding{51}&\ding{51}\\ methods&peer& peer reviews&\ding{51}&\ding{51}\\\cline{2-5} \end{tabular}} \end{center} \caption{The variables of COCOMO, COQUALMO, and the THREAT model.}\label{fig:emsf2} \end{figure*} \efloatseparator \begin{figure*} \begin{center} \scriptsize \begin{minipage}{.45\linewidth}\begin{tabular}{c|lrr|lr} &\multicolumn{3}{c|}{float} &\multicolumn{2}{c}{fixed}\\\hline project&variable&low&high&variable&setting\\\hline &prec&1&2&data&3\\ OSP&flex&2&5&pvol&2\\ &resl&1&3&rely&5\\ &team&2&3&pcap&3\\ &pmat&1&4&plex&3\\ &stor&3&5&site&3\\ &ruse&2&4&&\\ &docu&2&4&&\\ &acap&2&3&&\\ &pcon&2&3&&\\ &apex&2&3&&\\ <ex&2&4&&\\ &tool&2&3&&\\ &sced&1&3&&\\ &cplx&5&6\\ &KSLOC&75&125\\ \hline &prec&3&5&flex&3\\ OSP2 &pmat&4&5&resl&4\\ &docu&3&4&team&3\\ <ex&2&5&time&3\\ &sced&2&4&stor&3\\ &KSLOC&75&125&data&4\\ &&&&pvol&3\\ &&&&ruse&4\\ &&&&rely&5\\ &&&&acap&4\\ &&&&pcap&3\\ &&&&pcon&3\\ &&&&apex&4\\ &&&&plex&4\\ &&&&tool&5\\ &&&&cplx&4\\ &&&&site&6 \end{tabular} \end{minipage}~~~~~~~~\begin{minipage}{.45\linewidth} \begin{tabular}{c|lrr|lr} &\multicolumn{3}{c|}{float} &\multicolumn{2}{c}{fixed}\\\hline project&variable&low&high&variable&setting\\\hline &rely&3&5&tool&2\\ &data&2&3&sced&3\\ flight&cplx&3&6&&\\ &time&3&4&&\\ &stor&3&4&&\\ &acap&3&5&&\\ &apex&2&5&&\\ &pcap&3&5&&\\ &plex&1&4&&\\ <ex&1&4&&\\ &pmat&2&3&&\\ &KSLOC&7&418&&\\ \hline &rely&1&4&tool&2\\ &data&2&3&sced&3\\ ground&cplx&1&4&&\\ &time&3&4&&\\ &stor&3&4&&\\ &acap&3&5&&\\ &apex&2&5&&\\ &pcap&3&5&&\\ &plex&1&4&&\\ <ex&1&4&&\\ &pmat&2&3&&\\ &KSLOC&11&392&&\\ \multicolumn{5}{c}{~}\\ \multicolumn{5}{c}{~}\\ \multicolumn{5}{c}{~}\\ \multicolumn{5}{c}{~}\\ \multicolumn{5}{c}{~}\\ \multicolumn{5}{c}{~}\\ \multicolumn{5}{c}{~}\\ \multicolumn{5}{c}{~}\\ \multicolumn{5}{c}{~} \end{tabular} \end{minipage} \end{center} \caption{Four case studies define a space of project options $P$.}\label{fig:cases} \end{figure*} \efloatseparator \begin{figure*} \begin{center} \footnotesize \begin{tabular}{c|c} increasing effort & decreasing effort\\\hline $0.073 \le m \le 0.21$&$ -0.178 \le m \le -0.078$ \end{tabular} ~\\ \fig{linear}a: tuning options in COCOMO ~\\ \begin{tabular}{l|c|c} phase & increasing defects & decreasing defects\\\hline requirements& $0 \le m \le 0.112$ & $-0.183 \le m \le -0.035$\\ design & $0 \le m \le 0.14$& $-0.208 \le m \le -0.048$\\ coding & $0 \le m\le 0.14$ & $-0.19 \le m \le -0.053$\\ \end{tabular} ~\\ \fig{linear}b: tuning options in COQUALMO effort multipliers ~\\ \begin{tabular}{l|c} phase & defect removal\\\hline requirements& $0.08 \le m \le 0.14$ \\ design & $0.1 \le m \le 0.156$ \\ coding & $0.11 \le m \le 0.176$ \\ \end{tabular} ~\\ \fig{linear}c: tuning options in COQUALMO scale factors \end{center} \caption{Linear relations in our models}\label{fig:linear} \end{figure*} \efloatseparator \begin{figure*} {\scriptsize \begin{center} \begin{tabular}{|p{0.8in}|c|c|c|c|c|}\cline{2-6} \multicolumn{1}{c|}{} &rely=&rely=&rely=&rely=&rely=\\ \multicolumn{1}{c|}{}& very & low &nominal & high & very\\ \multicolumn{1}{c|}{}& low& & & & high\\\hline sced= very low& 0 & 0 & 0 &1 &2\\\hline sced= low & 0 &0 & 0 & 0&1\\\hline sced= nominal& 0 & 0 & 0 &0 &0\\\hline sced= high& 0& 0 & 0 & 0 &0\\\hline sced= very high& 0 & 0 & 0 &0 &0\\\hline \end{tabular} \end{center} } \caption{An example risk table}\label{fig:madeg} \end{figure*} \efloatseparator \begin{figure*} [!h] \begin{center} \includegraphics[width=2.4in]{nasa93_300.pdf}\includegraphics[width=2.4in]{comparesReport_lc.pdf} \end{center} \caption{Results of applying LC numerous times to 90\% of the NASA93 data sets (available from \protect\url{http://promisedata.org/data}). Left-hand-side shows computed $(a,b)$ values. Right-hand-side shows MRE1s generated over the NASA93 data set for ten case studies (one study per line). }\label{fig:dan} \end{figure*} \efloatseparator \begin{figure*} [!h] \begin{center} \includegraphics[width=3.5in]{experiment.png} \end{center} \caption{Experimental design. ``LC'' denotes Boehm's 1981 regression procedure.} \label{fig:design} \end{figure*} \efloatseparator \begin{figure*} \begin{center} \includegraphics[width=2.4in]{comparesReport_lc.pdf}\includegraphics[width=2.4in]{comparesReport_star.pdf} \end{center} \caption{MRE2 results for \protect\fig{design}, for ten case studies (one study per line). The MRE1 results (left-hand-side) come from Figure 4. }\label{fig:mre2} \end{figure*} \efloatseparator \begin{figure*} {\scriptsize \begin{alltt} 1 {\bf function} run (AllRanges, ProjectConstraints) \{ 2 OutScore = -1 3 Prob = 0.95 4 Out = combine(AllRanges, ProjectConstraints) 5 Options = all Out choices with ranges low < high 6 {\bf while} Options \{ 7 X = any member of Options, picked at random 8 \{Low, High\} = low, high ranges of X 9 LowScore = score(X, Low) 10 HighScore = score(X, High) 11 {\bf if} LowScore < HighScore 12 {\bf then} Maybe = Low; MaybeScore = LowScore 13 {\bf else} Maybe = High; MaybeScore = HighScore 14 {\bf fi} 15 {\bf if} MaybeScore < OutScore {\bf or} Prob < rand() 16 {\bf then} delete all ranges of X except Maybe from Out 17 delete X from Options 18 OutScore = MaybeScore 19 {\bf fi} \} 20 {\bf return} backSelect(Out) \} 21 22 {\bf function} score(X, Value) \{ 23 Temp = copy(Out) ;; don't mess up the Out global 24 from Temp, remove all ranges of X except Value 25 run monte carlo on Temp for 100 simulations, scoring each run using Equation 3. 26 {\bf return} median score of the 100 \} \end{alltt} } \caption{Pseudocode for SEESAW.} \label{fig:MWF} \end{figure*} \efloatseparator