% THIS IS SIGPROC-SP.TEX - VERSION 3.1
% WORKS WITH V3.2SP OF ACM_PROC_ARTICLE-SP.CLS
% APRIL 2009
%
% It is an example file showing how to use the 'acm_proc_article-sp.cls' V3.2SP
% LaTeX2e document class file for Conference Proceedings submissions.
% ----------------------------------------------------------------------------------------------------------------
% This .tex file (and associated .cls V3.2SP) *DOES NOT* produce:
%       1) The Permission Statement
%       2) The Conference (location) Info information
%       3) The Copyright Line with ACM data
%       4) Page numbering
% ---------------------------------------------------------------------------------------------------------------
% It is an example which *does* use the .bib file (from which the .bbl file
% is produced).
% REMEMBER HOWEVER: After having produced the .bbl file,
% and prior to final submission,
% you need to 'insert'  your .bbl file into your source .tex file so as to provide
% ONE 'self-contained' source file.
%
% Questions regarding SIGS should be sent to
% Adrienne Griscti ---> griscti@acm.org
%
% Questions/suggestions regarding the guidelines, .tex and .cls files, etc. to
% Gerald Murray ---> murray@hq.acm.org
%
% For tracking purposes - this is V3.1SP - APRIL 2009

\documentclass{sig-alternate}
\usepackage{alltt,url,cite}
\usepackage{algpseudocode}
\usepackage{algorithm}
\usepackage{colortbl}
\usepackage{times}
\usepackage{multirow}
\usepackage{rotating}

\newcommand{\boxplot}[5]{
\begin{picture}(100, 7)
\put(#1, 2){\line(0, 1){4}}
\put(#1, 4){\line(1, 0){#2}}
\put(#3, 4){\circle*{3}}
\put(#3, 4){\line(1, 0){#4}}
\put(#5, 2){\line(0, 1){4}}
\put(50, 3){\line(0, 1){4}}
\end{picture}
}


\newcommand{\bd}{\begin{description}}
\newcommand{\ed}{\end{description}}
\newcommand{\bi}{\begin{smallitem}}
\newcommand{\ei}{\end{smallitem}}
\newcommand{\be}{\begin{smallenum}}
\newcommand{\ee}{\end{smallenum}}
\newcommand{\tion}[1]{\S\ref{tion:#1}}
\newcommand{\eq}[1]{Equation~\ref{eq:#1}}
\newcommand{\fig}[1]{Figure~\ref{fig:#1}}
\newenvironment{smallitem}
 {\setlength{\topsep}{0pt}
  \setlength{\partopsep}{0pt}
  \setlength{\parskip}{0pt}
  \begin{itemize}
   \setlength{\leftmargin}{.2in}
  \setlength{\parsep}{0pt}
  \setlength{\parskip}{0pt}
  \setlength{\itemsep}{0pt}}
 {\end{itemize}}
\newenvironment{smallenum}
 {\setlength{\topsep}{0pt}
  \setlength{\partopsep}{0pt}
  \setlength{\parskip}{0pt}
  \begin{enumerate}
  \setlength{\leftmargin}{.2in}
  \setlength{\parsep}{0pt}
  \setlength{\parskip}{0pt}
  \setlength{\itemsep}{0pt}}
 {\end{enumerate}}
\DeclareMathAlphabet{\mathscr}{OT1}{pzc}%
                                 {m}{it}

\newcommand{\W}{$\mathscr{W}$}
\conferenceinfo{PROMISE}{'10  Timisoara, Romania} 

\newfloat{program}{thp}{lop}
\floatname{program}{Program}

\begin{document}

\title{Algorithms for Software Quality Optimization}

\numberofauthors{3}
\author{
% You can go ahead and credit any number of authors here,
% e.g. one 'row of three' or two rows (consisting of one row of three
% and a second row of one, two or three).
%
% The command \alignauthor (no curly braces needed) should
% precede each author name, affiliation/snail-mail address and
% e-mail address. Additionally, tag each line of
% affiliation/address with \affaddr, and tag the
% e-mail address with \email.
%
\alignauthor
Adam Brady\\
       \affaddr{Lane Department of CS\&EE}\\
       \affaddr{West Virginia University, USA}\\
       \email{adam.m.brady@gmail.com}
\alignauthor
Jacky Keung\\
       \affaddr{NICTA}\\
       \affaddr{University of NSW}\\
       \affaddr{Sydney, Australia}\\
       \email{Jacky.Keung@nicta.com.au}
\alignauthor
Tim Menzies\\
       \affaddr{Lane Department of CS\&EE}\\
       \affaddr{West Virginia University, USA,}\\
       \email{tim@menzies.us}
}

\date{28 May 2010}

\maketitle
\begin{abstract}

\input{0-abstract.tex}

\end{abstract}

\category{D.2.9}{Software Engineering}{Management}[Software quality assurance]
\category{D.2.9}{Software Engineering}{Management}[Time Estimation]
\category{I.2.6}{Artificial Intelligence}{Learning}[Analogies]

\keywords{Effort Estimation, Analogy, Optimization, Parametric modeling, Software Quality, COCOMO, Case Based Reasoning}
\newpage

\section{Introduction}

\input{1-intro.tex}

\section{Background}

\input{2-background.tex}

\section{Quality Optimization}

\input{3-csl-explanation.tex}

\section{Methodology}

\input{4-certification.tex}

\section{Results}

\input{5-results.tex}

\section{Discussion}

\input{6-discussion.tex}

\section{Conclusion}

\input{7-conclusion.tex}

\section*{Acknowledgments}
This work was partially funded by the United Stated National Science Foundation (CCF-1017263). 
\bibliographystyle{abbrv}
\bibliography{refs}  

\appendix
This appendix lists the minimum and maximum $m$ values used
for \eq{lineem} and \eq{linesf}.
In the following, $m_\alpha$ and $m_\beta$ denote COCOMO's linear and exponential
influences on effort/cost, and 
$m_\gamma$ and $m_\delta$ denote COQUALMO's linear and exponential influences on number of
defects.


Their are two sets of  effort/cost multipliers:
\be
\item
The {\em positive effort EM} features, with slopes $m^+_\alpha$, that are proportional to effort/cost. 
These features are:
cplx,
data,
docu,
pvol,
rely,
ruse,
stor, and
time.
\item
The
{\em negative effort EM} features, with slopes $m^-_{\alpha}$,
are inversely proportional to effort/cost.
These features are 
acap,
apex,
ltex,
pcap,
pcon,
plex,
sced,
site, and
tool.
\ee
Their $m$ ranges, as  seen in 161 projects~\cite{boehm00a}, are:
\begin{equation}
\footnotesize
\left(0.073 \le m^+_\alpha \le 0.21\right) \wedge
\left(-0.178 \le m^-_\alpha \le -0.078\right)
\end{equation}
In the same sample of projects,
the COCOMO effort/cost scale factors (prec, flex, resl, team, pmat) have
the range: 
\begin{equation}\footnotesize
-1.56 \le m_\beta \le -1.014
\end{equation}
Similarly, there are two sets of defect multipliers and scale factors:
\be
\item The {\em positive defect} features have slopes $m^+_\gamma$ and are proportional
to estimated defects.  These features are
flex,
data,
ruse,
cplx,
time,
stor, and 
pvol.
\item The {\em negative defect} features, with slopes $m^-_\gamma$, that are inversely proportional
to the estimated defects. These features are 
acap,
pcap,
pcon,
apex,
plex,
ltex,
tool,
site,
sced,
 prec,
resl,
team,
pmat,
rely, and
docu.
\ee
COQUALMO divides into three models describing how defects change in requirements, design,
and coding.
These  tunings options have the range:
\begin{equation}\label{eq:coq}\small
\begin{array}{c}
requirements\left\{
\begin{array}{c}
0 \le m^+_\gamma \le 0.112\\
-0.183 \le m^-_\gamma \le -0.035
\end{array}
\right. \\
~\\
design \left\{
\begin{array}{c}
0 \le m^+_\gamma \le 0.14\\
-0.208 \le m^-_\gamma \le -0.048
\end{array}
\right. \\
~\\
coding \left\{
\begin{array}{c}
0 \le m^+_\gamma \le  0.14\\
-0.19 \le m^-_\gamma \le -0.053
\end{array}
\right.
\end{array}
\end{equation}
The tuning options for  the  defect removal features are:
\begin{equation}\label{eq:linedefrem}\small
\begin{array}{rl}
\forall x \in \{1..6\} &SF_i=m_\delta(x - 1)\\
requirements: 	& 0.08 	\le m_\delta \le 0.14 \\
design: 		& 0.1 	\le m_\delta \le 0.156 \\
coding: 		& 0.11 	\le m_\delta \le 0.176 \\
\end{array}
\end{equation}
where  $m_\delta$ denotes the effect of  $i$ on  defect removal.




\balancecolumns

\end{document}
