\documentclass[11pt,twoside]{article}\makeatletter

\IfFileExists{xcolor.sty}%
  {\RequirePackage{xcolor}}%
  {\RequirePackage{color}}
\usepackage{colortbl}
\usepackage{wrapfig}
\usepackage{ifxetex}
\ifxetex
  \usepackage{fontspec}
  \usepackage{xunicode}
  \catcode`⃥=\active \def⃥{\textbackslash}
  \catcode`❴=\active \def❴{\{}
  \catcode`❵=\active \def❵{\}}
  \def\textJapanese{\fontspec{Noto Sans CJK JP}}
  \def\textChinese{\fontspec{Noto Sans CJK SC}}
  \def\textKorean{\fontspec{Noto Sans CJK KR}}
  \setmonofont{DejaVu Sans Mono}
  
\else
  \IfFileExists{utf8x.def}%
   {\usepackage[utf8x]{inputenc}
      \PrerenderUnicode{–}
    }%
   {\usepackage[utf8]{inputenc}}
  \usepackage[english]{babel}
  \usepackage[T1]{fontenc}
  \usepackage{float}
  \usepackage[]{ucs}
  \uc@dclc{8421}{default}{\textbackslash }
  \uc@dclc{10100}{default}{\{}
  \uc@dclc{10101}{default}{\}}
  \uc@dclc{8491}{default}{\AA{}}
  \uc@dclc{8239}{default}{\,}
  \uc@dclc{20154}{default}{ }
  \uc@dclc{10148}{default}{>}
  \def\textschwa{\rotatebox{-90}{e}}
  \def\textJapanese{}
  \def\textChinese{}
  \IfFileExists{tipa.sty}{\usepackage{tipa}}{}
\fi
\def\exampleFont{\ttfamily\small}
\DeclareTextSymbol{\textpi}{OML}{25}
\usepackage{relsize}
\RequirePackage{array}
\def\@testpach{\@chclass
 \ifnum \@lastchclass=6 \@ne \@chnum \@ne \else
  \ifnum \@lastchclass=7 5 \else
   \ifnum \@lastchclass=8 \tw@ \else
    \ifnum \@lastchclass=9 \thr@@
   \else \z@
   \ifnum \@lastchclass = 10 \else
   \edef\@nextchar{\expandafter\string\@nextchar}%
   \@chnum
   \if \@nextchar c\z@ \else
    \if \@nextchar l\@ne \else
     \if \@nextchar r\tw@ \else
   \z@ \@chclass
   \if\@nextchar |\@ne \else
    \if \@nextchar !6 \else
     \if \@nextchar @7 \else
      \if \@nextchar (8 \else
       \if \@nextchar )9 \else
  10
  \@chnum
  \if \@nextchar m\thr@@\else
   \if \@nextchar p4 \else
    \if \@nextchar b5 \else
   \z@ \@chclass \z@ \@preamerr \z@ \fi \fi \fi \fi
   \fi \fi  \fi  \fi  \fi  \fi  \fi \fi \fi \fi \fi \fi}
\gdef\arraybackslash{\let\\=\@arraycr}
\def\@textsubscript#1{{\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\def\abbr{}
\def\corr{}
\def\expan{}
\def\gap{}
\def\orig{}
\def\reg{}
\def\ref{}
\def\sic{}
\def\persName{}\def\name{}
\def\placeName{}
\def\orgName{}
\def\textcal#1{{\fontspec{Lucida Calligraphy}#1}}
\def\textgothic#1{{\fontspec{Lucida Blackletter}#1}}
\def\textlarge#1{{\large #1}}
\def\textoverbar#1{\ensuremath{\overline{#1}}}
\def\textquoted#1{‘#1’}
\def\textsmall#1{{\small #1}}
\def\textsubscript#1{\@textsubscript{\selectfont#1}}
\def\textxi{\ensuremath{\xi}}
\def\titlem{\itshape}
\newenvironment{biblfree}{}{\ifvmode\par\fi }
\newenvironment{bibl}{}{}
\newenvironment{byline}{\vskip6pt\itshape\fontsize{16pt}{18pt}\selectfont}{\par }
\newenvironment{citbibl}{}{\ifvmode\par\fi }
\newenvironment{docAuthor}{\ifvmode\vskip4pt\fontsize{16pt}{18pt}\selectfont\fi\itshape}{\ifvmode\par\fi }
\newenvironment{docDate}{}{\ifvmode\par\fi }
\newenvironment{docImprint}{\vskip 6pt}{\ifvmode\par\fi }
\newenvironment{docTitle}{\vskip6pt\bfseries\fontsize{22pt}{25pt}\selectfont}{\par }
\newenvironment{msHead}{\vskip 6pt}{\par}
\newenvironment{msItem}{\vskip 6pt}{\par}
\newenvironment{rubric}{}{}
\newenvironment{titlePart}{}{\par }

\newcolumntype{L}[1]{){\raggedright\arraybackslash}p{#1}}
\newcolumntype{C}[1]{){\centering\arraybackslash}p{#1}}
\newcolumntype{R}[1]{){\raggedleft\arraybackslash}p{#1}}
\newcolumntype{P}[1]{){\arraybackslash}p{#1}}
\newcolumntype{B}[1]{){\arraybackslash}b{#1}}
\newcolumntype{M}[1]{){\arraybackslash}m{#1}}
\definecolor{label}{gray}{0.75}
\def\unusedattribute#1{\sout{\textcolor{label}{#1}}}
\DeclareRobustCommand*{\xref}{\hyper@normalise\xref@}
\def\xref@#1#2{\hyper@linkurl{#2}{#1}}
\begingroup
\catcode`\_=\active
\gdef_#1{\ensuremath{\sb{\mathrm{#1}}}}
\endgroup
\mathcode`\_=\string"8000
\catcode`\_=12\relax

\usepackage[a4paper,twoside,lmargin=1in,rmargin=1in,tmargin=1in,bmargin=1in,marginparwidth=0.75in]{geometry}
\usepackage{framed}

\definecolor{shadecolor}{gray}{0.95}
\usepackage{longtable}
\usepackage[normalem]{ulem}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{marginnote}

\renewcommand{\@cite}[1]{#1}


\renewcommand*{\marginfont}{\itshape\footnotesize}

\def\Gin@extensions{.pdf,.png,.jpg,.mps,.tif}

  \pagestyle{fancy}

\usepackage[pdftitle={A Review of Metrics for Object-Oriented Design},
 pdfauthor={}]{hyperref}
\hyperbaseurl{}

	 \paperwidth210mm
	 \paperheight297mm
              
\def\@pnumwidth{1.55em}
\def\@tocrmarg {2.55em}
\def\@dotsep{4.5}
\setcounter{tocdepth}{3}
\clubpenalty=8000
\emergencystretch 3em
\hbadness=4000
\hyphenpenalty=400
\pretolerance=750
\tolerance=2000
\vbadness=4000
\widowpenalty=10000

\renewcommand\section{\@startsection {section}{1}{\z@}%
     {-1.75ex \@plus -0.5ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large\bfseries}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
     {-1.75ex\@plus -0.5ex \@minus- .2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
     {-1.5ex\@plus -0.35ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\large}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
     {-1ex \@plus-0.35ex \@minus -0.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\normalsize}}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
     {1.5ex \@plus1ex \@minus .2ex}%
     {-1em}%
     {\reset@font\normalsize\bfseries}}


\def\l@section#1#2{\addpenalty{\@secpenalty} \addvspace{1.0em plus 1pt}
 \@tempdima 1.5em \begingroup
 \parindent \z@ \rightskip \@pnumwidth 
 \parfillskip -\@pnumwidth 
 \bfseries \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}\par
 \endgroup}
\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
\def\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
\def\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
\@ifundefined{c@section}{\newcounter{section}}{}
\@ifundefined{c@chapter}{\newcounter{chapter}}{}
\newif\if@mainmatter 
\@mainmattertrue
\def\chaptername{Chapter}
\def\frontmatter{%
  \pagenumbering{roman}
  \def\thechapter{\@roman\c@chapter}
  \def\theHchapter{\roman{chapter}}
  \def\thesection{\@roman\c@section}
  \def\theHsection{\roman{section}}
  \def\@chapapp{}%
}
\def\mainmatter{%
  \cleardoublepage
  \def\thechapter{\@arabic\c@chapter}
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \pagenumbering{arabic}
  \setcounter{secnumdepth}{6}
  \def\@chapapp{\chaptername}%
  \def\theHchapter{\arabic{chapter}}
  \def\thesection{\@arabic\c@section}
  \def\theHsection{\arabic{section}}
}
\def\backmatter{%
  \cleardoublepage
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \setcounter{secnumdepth}{2}
  \def\@chapapp{\appendixname}%
  \def\thechapter{\@Alph\c@chapter}
  \def\theHchapter{\Alph{chapter}}
  \appendix
}
\newenvironment{bibitemlist}[1]{%
   \list{\@biblabel{\@arabic\c@enumiv}}%
       {\settowidth\labelwidth{\@biblabel{#1}}%
        \leftmargin\labelwidth
        \advance\leftmargin\labelsep
        \@openbib@code
        \usecounter{enumiv}%
        \let\p@enumiv\@empty
        \renewcommand\theenumiv{\@arabic\c@enumiv}%
	}%
  \sloppy
  \clubpenalty4000
  \@clubpenalty \clubpenalty
  \widowpenalty4000%
  \sfcode`\.\@m}%
  {\def\@noitemerr
    {\@latex@warning{Empty `bibitemlist' environment}}%
    \endlist}

\def\tableofcontents{\section*{\contentsname}\@starttoc{toc}}
\parskip0pt
\parindent1em
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\newenvironment{reflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemsep}{0pt}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\itshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{sansreflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\itemsep}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\upshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{specHead}[2]%
 {\vspace{20pt}\hrule\vspace{10pt}%
  \phantomsection\label{#1}\markright{#2}%

  \pdfbookmark[2]{#2}{#1}%
  \hspace{-0.75in}{\bfseries\fontsize{16pt}{18pt}\selectfont#2}%
  }{}
      \def\TheFullDate{2020 2020-01-15 (revised: 1 Year 2020 15 January 2020)}
\def\TheID{\makeatother }
\def\TheDate{2020 2020-01-15}
\title{A Review of Metrics for Object-Oriented Design}
\author{}\makeatletter 
\makeatletter
\newcommand*{\cleartoleftpage}{%
  \clearpage
    \if@twoside
    \ifodd\c@page
      \hbox{}\newpage
      \if@twocolumn
        \hbox{}\newpage
      \fi
    \fi
  \fi
}
\makeatother
\makeatletter
\thispagestyle{empty}
\markright{\@title}\markboth{\@title}{\@author}
\renewcommand\small{\@setfontsize\small{9pt}{11pt}\abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus2\p@
\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
\def\@listi{\leftmargin\leftmargini
               \topsep 2\p@ plus1\p@ minus1\p@
               \parsep 2\p@ plus\p@ minus\p@
               \itemsep 1pt}
}
\makeatother
\fvset{frame=single,numberblanklines=false,xleftmargin=5mm,xrightmargin=5mm}
\fancyhf{} 
\setlength{\headheight}{14pt}
\fancyhead[LE]{\bfseries\leftmark} 
\fancyhead[RO]{\bfseries\rightmark} 
\fancyfoot[RO]{}
\fancyfoot[CO]{\thepage}
\fancyfoot[LO]{\TheID}
\fancyfoot[LE]{}
\fancyfoot[CE]{\thepage}
\fancyfoot[RE]{\TheID}
\hypersetup{citebordercolor=0.75 0.75 0.75,linkbordercolor=0.75 0.75 0.75,urlbordercolor=0.75 0.75 0.75,bookmarksnumbered=true}
\fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrulewidth}{0pt}}

\date{}
\usepackage{authblk}

\providecommand{\keywords}[1]
{
\footnotesize
  \textbf{\textit{Index terms---}} #1
}

\usepackage{graphicx,xcolor}
\definecolor{GJBlue}{HTML}{273B81}
\definecolor{GJLightBlue}{HTML}{0A9DD9}
\definecolor{GJMediumGrey}{HTML}{6D6E70}
\definecolor{GJLightGrey}{HTML}{929497} 

\renewenvironment{abstract}{%
   \setlength{\parindent}{0pt}\raggedright
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
   \textcolor{GJBlue}{\large\bfseries\abstractname\space}
}{%   
   \vskip8pt
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
}

\usepackage[absolute,overlay]{textpos}

\makeatother 
      \usepackage{lineno}
      \linenumbers
      
\begin{document}

             \author[1]{Neyole  Misiko}

             \affil[1]{  UMMA University}

\renewcommand\Authands{ and }

\date{\small \em Received: 14 December 2019 Accepted: 2 January 2020 Published: 15 January 2020}

\maketitle


\begin{abstract}
        


The ever-evolving body of empirical results do confirmation on the theoretical perspective the validity of OOD metrics whose validity is determined by them demonstrating that [1] they measure what they purport to measure. Quite often OOD metrics have been used as indicators of both the internal and external behaviors in the software development process. Software metrics especially for Object Oriented Systems literature often describe complex models with the focus to help predict various properties of software products and processes by measuring other properties. Usually designers are met with challenges to work with these measures especially when and how to use them. The very process of collecting these measurements leads to a better organization of the software process and a better understanding of what designers do as long as they confine to measurements that are meaningful. To this end therefore, the initiation of these metrics during the initial software development process is important. This paper elicits an understanding of the OOD metrics used in OOS development.

\end{abstract}


\keywords{MOOD, OOD, metrics, software quality.}

\begin{textblock*}{18cm}(1cm,1cm) % {block width} (coords) 
\textcolor{GJBlue}{\LARGE Global Journals \LaTeX\ JournalKaleidoscope\texttrademark}
\end{textblock*}

\begin{textblock*}{18cm}(1.4cm,1.5cm) % {block width} (coords) 
\textcolor{GJBlue}{\footnotesize \\ Artificial Intelligence formulated this projection for compatibility purposes from the original article published at Global Journals. However, this technology is currently in beta. \emph{Therefore, kindly ignore odd layouts, missed formulae, text, tables, or figures.}}
\end{textblock*}


\let\tabcellsep& 	 	 		 
\section[{Introduction}]{Introduction}\par
oftware metrics plays a key role in good software engineering. Measurement is used to assess situations, track progress and evaluate effectives of software products. But there exists a huge challenge in the measurement process due to lack of coordinated, comprehensive framework for understanding and using measurement \hyperref[b1]{[2]}. Object-oriented approach to software development requires some specific set of metrics \hyperref[b2]{[3]}. Various object-oriented measurements are used to evaluate and predict the quality of software products \hyperref[b3]{[4]}, where the empirical results are used to supports the theoretical validity of the Object-Oriented Software Product metrics \hyperref[b4]{[5]}. The validity of these metrics needs to facilitate the accuracy that the metric measure what they purport to measure. 
\section[{II. Software Engineering Metrics and Quality}]{II. Software Engineering Metrics and Quality}\par
According to Edward V. Berard \hyperref[b5]{[6]} Metrics are units of measurement that refer to a set of specific measurements taken on a particular item or process. For software engineering metrics are units of measurement used to characterize software engineering products, processes and the people, hence assessing quality. Ahmad S et.al \hyperref[b6]{[7]} indicated that Software metrics are measures that facilitate software developers and software analyst to preview into the efficiency of the software process and projects that are conducted using Author: UMMA University. e-mail: jneyole434@gmail.com the process as framework. These metrics measures different aspects of software complexity hence play an important role in analysing and improving software quality \hyperref[b7]{[8]}.\par
Mahfuzul Huda et.al \hyperref[b8]{[9]} argued that the quality of any object-oriented design is critical as it has a great influence on the overall quality of finally delivered software product. Further he asserts that Software quality is still a vague terminology since it has different meaning to different people, the way one measure quality depends on the viewpoint he/she takes \hyperref[b9]{[10]}. Acceptable object-oriented design properties and associated metrics are helpful when utilized in the early stage of software development process, since the metrics determination is an important phase in testability estimation process \hyperref[b10]{[11]}.\par
Quality in the use of Object-Oriented Software Engineering metrics are available when the final product is in use in real conditions. Here the internal quality determines the external quality, while the external quality determines quality in use \hyperref[b11]{[12]}. According to the GE model for describing software quality, presented by  {\ref McCall et al. (1977)}, software quality is organized around three main types of quality characteristic:factors which describe the external view of the software, as viewed by the users, criteria which describe the internal view of the software, as seen by the developer and the metrics which control and are defined and used to provide a scale and method for measurement.\par
With the help of software metric software designers are able to deeper understand the software product in an effective way as they use diverse measurements of computer software in development. Thus, though software metric we are able to measure some property of software's including their components considering that software quality metrics to be subset of software metrics they are helpful \hyperref[b6]{[7]}. To this end, with the aid of OOD metric therefore, software professionals can then use object oriented metric suite to predict and enhance the maintainability of software with least error and best precision in an object-oriented paradigm \hyperref[b12]{[13]}. 
\section[{III.}]{III.} 
\section[{Issues in Software Engineering Metrics}]{Issues in Software Engineering Metrics}\par
Berard E argued that if used properly, software engineering metrics enables us among others to qualitatively and quantitatively define success and failure by establishing the degree of success or failure and identify and quantify improvement \hyperref[b5]{[6]}. The objective of the ISO/IEC 9126 standards is to address the human limitations that canadversely affect the final software engineering development project. Some of the issues addressed include the change of focus after the start of a project. The standards provide clarity through agreeing on the project priorities and converting the compliance to measurable output values that can be validated against schema with total zero interventions, the standards therefore facilitate a common understanding of software engineering project's objectives and goals \hyperref[b13]{[14]} These ISO/IEC 9126 standard further classified into four main parts: -the quality model, external metrics, internal metrics and quality in use metrics. However, the use of these design metrics is limited in practice due to the difficulty of measuring and using a large number of metrics.\par
Fenton and Neil \hyperref[b14]{[15]} journal indicated that the major problem is in using such metrics in isolation. They argued that it was possible to provide a genuine improved management decision support system based on suchsimplistic metrics, but only by adopting a less isolationist approach. Much as software metrics play an important role in developing high quality software as well as to improve the developer's productivity \hyperref[b15]{[16]} there comes the problem of identifying the right metrics to be used at a given stage of the OOD process.\par
Emphasis of introducing the metrics during the intimal software development is vital. OO designs are highly involved, often ill-defined, complex and iterative process. Their needs and specifications get more refined only as the design process moves toward its final stages. This therefore calls for effective metric tools that will help the designer make better-informed decisions with proven efficient knowledge representation schemes.\par
IV. 
\section[{Object-Oriented Design Metrics}]{Object-Oriented Design Metrics}\par
Aggarwal et.al (2013) indicated that metrics for OO design entails measurements that are applied to the class and design characteristics \hyperref[b16]{[17]}, as they aim achieve quality in software process and product, This OO metrics measurement tools have yet to achieve the needed degree of maturity \hyperref[b17]{[18]} they therefore need standardization \hyperref[b18]{[19]}. Chidamber et.al \hyperref[b19]{[20]} indicated that while metrics for the traditional functional decomposition and data analysis design approach measure the design structure and data structure independently, the objectoriented metrics need to focus on the combination of both the function and data as an integrated object. Despite the metric being traditional or new, it should be able effective to measure at least one or mere OOSD attributes of a software engineering product \hyperref[b20]{[21]}.\par
There exist various metrics for object Oriented designs otherwise called MOOD (Metrics for Object Oriented Designs). According to F.B. Abreu et al \hyperref[b22]{[22]} metrics for Object Oriented Designs define the structural models of a software engineering design where they facilitate measurements of OO paradigms such as encapsulation, inheritance, polymorphism and message passing. These metrics are usually expressed to measure where the numerator defines the actual use of a feature for a design namely the method and attributes. The attributes represent the status of object in the system while method is used to maintain or modify the several kinds of status of the object \hyperref[b23]{[23]}.\par
Sahar et.al \hyperref[b24]{[24]} stated that the most important measures that need to be considered in any software product is in the design quality. He established that design phase takes only 5-10 \% of the total effort but a large part up to 80\% of total effort goes into correcting bad design decisions \hyperref[b25]{[25]}. The MOOD metrics include: -Method Hiding Factor (MHF), the Attribute Hiding Factor (AHF), the Method Inheritance Factor (MIF), the Coupling Factor (COF), the Attribute Inheritance Factor (AIF) and the Polymorphism Factor (PF) \hyperref[b16]{[17]}. Each MOOD metric is associated with basic structural mechanisms of the object-oriented paradigm \hyperref[b26]{[26]}. The MOOD metric set enables expression of some recommendations for designers \hyperref[b27]{[27]}.\par
Malhotra et.al \hyperref[b29]{[28]} indicated that design of a system plays an essential role in ascertaining the system's reaction to incoming changes, and wellchosen OO design metrics can function as an indicator of changeability. Gupta \& Saxena \hyperref[b30]{[29]} stated thatthe prediction of software defect is possible on the basis of historical data accumulated during implementation of similar or same software projects or it can be developed using design metrics collected during design phase of software development.\par
Chidamber and Kemerer \hyperref[b31]{[30]} theoretical presentation on OO design metrics for software development life cycle are based upon OOD measurement theories that are used by OO software developers. The key requirements of metric measurements by Chidamber and Kemerer \hyperref[b19]{[20]} focused on improving the quality of software with the help of a new metrics suite that consists of six design level metrics named WMC, DIT, NOC, CBO, RFC and LCOM \hyperref[b30]{[29]}. According to Shyam Chidamber and Chris Kemerer \hyperref[b32]{[31]} on the role of metrics for OOD indicated that the important components of process improvement is the ability to measure the process. Their paper provided the appreciation of development and empirical validation of sets of theoretically-grounded metrics of OO designs.\par
V. 
\section[{Oodmetrics for Analysis}]{Oodmetrics for Analysis}\par
Object Oriented Software Engineering product code is analyzed through object-oriented metrics, two suites of metrics are used, the Chidamber-Kemerer (CK) \hyperref[b19]{[20]} and MOOD  {\ref [1] [32]} suites. Many of the OOD software's usually fail due to poor quality especially when the estimation of software quality is not prioritized during the software development. Mago et.al \hyperref[b34]{[33]} indicated that design metrics play an important role in helping developers to appreciate design aspects of software especially to the improvement of software quality. Thus, through the analysis of the OOD metric data one can forecast the quality of the object-oriented system. Boehm et.al \hyperref[b35]{[34]} stated that to produce highquality Object-Oriented applications a strong emphasis on design aspects is highly necessary. To this end therefore OOD software metrics among other metrics should make it possible for software engineers to measure and predict software processes, necessary resources for a project and products relevant for a software development effort. Software quality for OOD is the degree to which OO software possesses required combinations of attributes such as reliability, maintainability, efficiency, portability, usability and reusability.\par
Object oriented design are intended to capture the fundamental structure of an object-oriented program. The, set of components which can evaluate, represent and implement an object-oriented design include attributes, methods, objects/ classes, relationships and class hierarchies and must be addressed during the whole process of OOSD process. Measuring software quality in the early stages of software development is the key to develop high quality software \hyperref[b34]{[33]}. During the OOD process analysis of model captures the logical information about the system, while the design model adds details to support efficient information access. This is important; however, the optimizing process must also be considered so as to make the implementation more efficient.\par
Despite this, design optimization should not be extreme since the ease of implementation, maintainability, and extensibility need to be considered. Often a perfectly optimized design is usually more efficient but less readable and reusable. Designers must strike a balance between the two. Factor to be considered in the analysis include: -addition of redundant associations \hyperref[b36]{[35]}, omission of non-usable associations \hyperref[b37]{[36]}, optimization of algorithms \hyperref[b38]{[37]} and storage of derived attributes to avoid re-computation of complex expressions. 
\section[{VI.}]{VI.} 
\section[{Internal Metrics}]{Internal Metrics}\par
Internal events are those that pass from one object to another object within a system. Dubey et.al \hyperref[b39]{[38]} stated that metrics provide insight necessary to create and design model through the test. It also provides a quantative way to access the quality of internal attributes of the product, thereby it enables the software engineer to access quality before the product is build \hyperref[b40]{[39]}. OOD metrics are thus crucial source of information through which a software developer takes a decision for design good software. For instance, through the Reliability metrics, the quality of internal product can be measured by the number of bugs in the software and by the duration of software metrics crash. The Class Method Complexity (CMC) metric defined as the summation of the internal structural complexity of all local methods is a theoretical basis and viewpoints. The metrics greatly affect the effort required to design, implement, test and maintain a class \hyperref[b41]{[40]}. 
\section[{VII.}]{VII.} 
\section[{External Metrics}]{External Metrics}\par
Punia et.al \hyperref[b41]{[40]} indicated that the external metrics are used to examine and reuse of an OO system. External events are those events that pass from a user of the system to the objects within the system. For example, mouse click or key?press by the user are external events. For instance, the MPC (Message Pass Coupling) metric addresses the external methods which are the number of send statements defined in a particular OOS class. When a message invokes numerous methods as a response, the class becomes more complicated and more testing and debugging is required \hyperref[b42]{[41]}.\par
Bidve and Khare \hyperref[b43]{[42]} indicated that coupling in software has been associated with the maintainability and is used as predictors of external software quality attributes such as fault-proneness, impact analysis, ripple effects of changes, changeability. Shaik et.al \hyperref[b44]{[43]} stated that external validation involves empirically demonstrating that the product metric is associated with some important external metric. Shaik et.al further states that high cognitive complexity leads to a component exhibiting undesirable external qualities, such as increased fault proneness and reduced maintainability. Accordingly, object-oriented product metrics that affect cognitive complexity will be related with fault-proneness. From the above, the underlying assumption is that such measures can be used as objective measure to predict various external quality aspects of the code or design artifacts \hyperref[b45]{[44]}. 
\section[{VIII.}]{VIII.} 
\section[{Conclusion}]{Conclusion}\par
Dubey et.al \hyperref[b39]{[38]} indicated that the popularity of object-oriented design metrics is essential in software engineering for measuring the software complexity, estimating size, quality and project efforts. Objectoriented metrics assures to provide OOD that are reliable, maintainable and reusable software products. The initiation of various OOD metrics during the software initial development process in vital as this will enable designers eliminate bugs and limitations making the software product be of good quality. Increasingly, object-oriented design measurements are being used to evaluate and predict the quality of software \hyperref[b3]{[4]} through prediction SE are able to improve the software product performance as well as enhance more user requirements during and after the OOS design.		 		\backmatter  			  				\begin{bibitemlist}{1}
\bibitem[Rosenberg and Hyatt]{b20}\label{b20} 	 		\textit{},  		 			L H Rosenberg 		,  		 			L E Hyatt 		.  	 	 		\textit{Software Quality Metrics for Object-Oriented Environments}  		 	 
\bibitem[Greenbelt ()]{b21}\label{b21} 	 		\textit{},  		 			Greenbelt 		.  		1995. Goddard Space Flight Center.  	 
\bibitem[Lisboa ()]{b28}\label{b28} 	 		\textit{},  		 			Portugal Lisboa 		.  		1995.  	 
\bibitem[Dubey et al. ()]{b39}\label{b39} 	 		\textit{},  		 			S K Dubey 		,  		 			A Sharma 		,  		 			A Rana 		.  	 	 		\textit{Comparison Study and Review on Object-Oriented Metrics}  		2012. 12  (7)  p. .  	 	 (Global Journal of Computer Science and Technology) 
\bibitem[Wikipedia (2017)]{b11}\label{b11} 	 		\textit{},  		 			Wikipedia 		.  		 ISO/IEC 9126.  		 \url{https://en.wikipedia.org/wiki/ISO/IEC\textunderscore 9126}  		5 th April 2017. 2017. Wikimedia Foundation, Inc.  	 	 (Access ed 16th July) 
\bibitem[Sheikh et al. ()]{b6}\label{b6} 	 		‘A Comparative Study of Software Quality Model’.  		 			F A Sheikh 		,  		 			R B Mohd 		,  		 			H Mohd 		.  	 	 		\textit{International Journal of Science, Engineering and Technology Research (IJSETR)}  		2013. 2  (1)  p. .  	 
\bibitem[Chidamber and Kemerer ()]{b19}\label{b19} 	 		‘A Metrics Suite for Object Oriented Design’.  		 			S R Chidamber 		,  		 			C F Kemerer 		.  	 	 		\textit{IEEE Transactions onSoftware Engineering}  		1994.  (20)  p. .  	 
\bibitem[Chidamberand and Kemerer ()]{b32}\label{b32} 	 		‘A Metrics Suite for Object-Oriented Design’.  		 			S C Chidamberand 		,  		 			Kemerer 		.  	 	 		\textit{IEEE Transactions on Software Engineering}  		1994. p. .  	 
\bibitem[Punia et al. ()]{b41}\label{b41} 	 		‘A Review of Software Quality Metrics for Object-Oriented Design’.  		 			S K Punia 		,  		 			P Kumar 		,  		 			A Gupta 		.  	 	 		\textit{International Journal of Advanced Research in Computer Science and Software Engineering}  		2016. 6  (8)  p. .  	 
\bibitem[Aggarwal et al. ()]{b16}\label{b16} 	 		‘An Analytical Study of Object-Oriented Metrics (ASurvey)’.  		 			M Aggarwal 		,  		 			V K Verma 		,  		 			H V Mishra 		.  	 	 		\textit{International Journal of Engineering Trends and Technology (IJETT)}  		2013. 6  (2)  p. .  	 
\bibitem[Kout et al. ()]{b10}\label{b10} 	 		\textit{An empirical analysis of a testability model for object-oriented programs},  		 			A Kout 		,  		 			F Toure 		,  		 			M Badri 		.  		2011. ACM, Inc. 4.  	 
\bibitem[Harrison et al. ()]{b3}\label{b3} 	 		‘An Evaluation of the MOOD Set of Object-Oriented Software Metrics’.  		 			R Harrison 		,  		 			S J Counsell 		,  		 			R V Nithi 		.  	 	 		\textit{IEEE Transactions on Software Engineering}  		1998. 24 p. .  	 
\bibitem[Rodriguez and Harrison ()]{b2}\label{b2} 	 		\textit{An Overview ofObject-Oriented Design Metrics},  		 			D Rodriguez 		,  		 			R Harrison 		.  		2001. United Kingdom.  		 			The University of Reading UK 		 	 
\bibitem[Mago and Kaur ()]{b34}\label{b34} 	 		‘Analysis of Quality of the Design of the Object-Oriented Software using Fuzzy Logic’.  		 			J Mago 		,  		 			P Kaur 		.  	 	 		\textit{International Conference on Recent Advances and Future Trends in Information Technology},  				2012. p. .  	 
\bibitem[Manik and Gurdev ()]{b7}\label{b7} 	 		‘Analysis of Static and Dynamic Metrics for Productivity and Time Complexity’.  		 			S Manik 		,  		 			S Gurdev 		.  	 	 		\textit{IJCA}  		2011. 30  (1) .  	 
\bibitem[Ruchika and Anuradha ()]{b12}\label{b12} 	 		‘Application of Group Method of Data Handling model for software maintainability prediction using object-oriented systems’.  		 			M Ruchika 		,  		 			C Anuradha 		.  	 	 		\textit{International Journal of System Assurance Engineering and Management}  		2014. 5  (2)  p. .  	 
\bibitem[Basili et al. ()]{b23}\label{b23} 	 		‘Avalidation of object-oriented Metrics as Quality Indicators’.  		 			V L V L Basili 		,  		 			L Briand 		,  		 			W L Melo 		.  	 	 		\textit{IEEE Transaction Software Engineering}  		1996. 22  (10)  p. .  	 
\bibitem[Berard ()]{b5}\label{b5} 	 		 			E V Berard 		.  		\textit{Metrics for Object-Oriented Software Engineering},  				 (USA)  		1998. The Object Agency, Inc.  	 
\bibitem[Bansal ()]{b15}\label{b15} 	 		‘Critical Analysis of Object-Oriented Metrics in Software Development’.  		 			M Bansal 		,  		 			CP 		.  	 	 		\textit{Advanced Computing \& Communication Technologies (ACCT)},  				2014. p. .  	 
\bibitem[Abreu ()]{b22}\label{b22} 	 		‘Design metrics for OO software system’.  		 			B F Abreu 		.  	 	 		\textit{inECOOP'95, Quantitative Methods Workshop},  				1995.  	 
\bibitem[Abreu]{b27}\label{b27} 	 		\textit{Design Quality Metrics for Object-Oriented Software Systems},  		 			F B Abreu 		.  		ERCIM News. p. 1000029.  	 
\bibitem[Abreu and Melo ()]{b33}\label{b33} 	 		‘Evaluating the Impact of OO Design on Software Quality’.  		 			F B Abreu 		,  		 			W Melo 		.  	 	 		\textit{Third International Software Metrics Symposium},  				 (Berlin)  		1996.  	 
\bibitem[Fenton and Bieman ()]{b1}\label{b1} 	 		 			N Fenton 		,  		 			J Bieman 		.  		\textit{Software Metrics: ARigorous and Practical Approach, Third Edition},  				 (Colorado USA)  		2014. CRC Press-Tayler \& Francis Group.  	 
\bibitem[Zuse ()]{b18}\label{b18} 	 		‘Foundations of Object-oriented Software Measures’.  		 			H Zuse 		.  	 	 		\textit{3rd International Symposium onSoftware Metrics: From Measurement to Empirical Results (METRICS '96},  				 (Washington, DC USA)  		1996. IEEE Computer Society.  	 
\bibitem[Shaik et al. ()]{b44}\label{b44} 	 		‘Investigate the Result of Object-Oriented Design Software Metrics on Fault-Proneness in Object Oriented Systems: A Case Study’.  		 			A Shaik 		,  		 			N Satyanarayana 		,  		 			M Huzaifa 		,  		 			N Shaik 		,  		 			M Z Naveed 		,  		 			S Rao 		,  		 			C K Reddy 		.  	 	 		\textit{Journal of Emerging Trends in Computing and Information Sciences}  		2011. 2  (4)  p. .  	 
\bibitem[Malhotra and Khanna ()]{b29}\label{b29} 	 		‘Investigation ofrelationship between object-oriented metrics and change proneness’.  		 			R Malhotra 		,  		 			. M Khanna 		.  	 	 		\textit{Int. J. Mach. Learn. \& Cyber}  		2012. 10  (4)  p. .  	 
\bibitem[Scalet ()]{b13}\label{b13} 	 		‘ISO/IEC 9126 and 14598 integration aspects’.  		 			Scalet 		.  	 	 		\textit{The Second World Congress on Software Quality},  				 (Yokohama, Japan)  		2000.  	 
\bibitem[Marinescu ()]{b25}\label{b25} 	 		‘Measurement and Quality in Object oriented design’.  		 			R Marinescu 		.  	 	 		\textit{Proceedings 21st IEEE International Conference on Software Maintenance},  				 (21st IEEE International Conference on Software MaintenanceUSA)  		2005.  	 
\bibitem[Mahfuzul ()]{b9}\label{b9} 	 		‘Measuring Testability of Object-Oriented Design: A Systematic Review’.  		 			H Mahfuzul 		,  		 			AY D S 		,  		 			KM 		.  	 	 		\textit{International Journal of Scientific Engineering and Technology (IJSET)}  		2014. 3  (10)  p. .  	 
\bibitem[Jubair and Khaireddin ()]{b26}\label{b26} 	 		\textit{metrics for object-oriented design (MOOD) to assess java programs},  		 			JA 		,  		 			-J Jubair 		,  		 			M S Khaireddin 		.  		2001. Jordan.  		 			University of Jordan 		 	 
\bibitem[Shaik et al. ()]{b40}\label{b40} 	 		‘Metrics for object-oriented design software system: A Survey’.  		 			A C Shaik 		,  		 			B Reddy 		,  		 			M Prakashine 		,  		 			K Deepti 		.  	 	 		\textit{Journal of emerging trend in engineer and applied science (JETEAS)},  				2010. p. .  	 
\bibitem[Sahar and Hany ()]{b24}\label{b24} 	 		‘Object oriented design metrics and tools a survey’.  		 			R R Sahar 		,  		 			A H Hany 		.  	 	 		\textit{IEEE}  		2010. p. .  	 
\bibitem[Desai (2013)]{b45}\label{b45} 	 		\textit{Object Oriented Design Metrics, Frameworks and Quality Models},  		 			C G Desai 		.  		 \url{http://www.bioinfopublication.org/jouarchive.php?opt=\&jouid=BIJ0000002}  		27 November 2013. August 2017.  	 
\bibitem[Gandhi and Bhatia ()]{b38}\label{b38} 	 		‘Optimization of Object-Oriented Design using Coupling Metrics’.  		 			P Gandhi 		,  		 			P K Bhatia 		.  	 	 		\textit{International Journal of Computer Applications}  		2011. 27  (10)  p. .  	 
\bibitem[Rashidi ()]{b37}\label{b37} 	 		\textit{Properties of Relationships among objects in Object-Oriented Software Design},  		 			Z Rashidi 		.  		2015. Tehran, Iran.  		 			AmirKabir University of Technology 		 	 
\bibitem[Boehm et al. ()]{b35}\label{b35} 	 		‘Quantitative Evaluation of Software Quality’.  		 			B W Boehm 		,  		 			J R Brown 		,  		 			M L Lipow 		.  	 	 		\textit{IEEE -Proceedings of the 2nd International Conference on Software Engineering},  				 (San Francisco, California, United States)  		1976.  	 
\bibitem[Biggerstaff and Richter ()]{b42}\label{b42} 	 		‘Reusability Framework Assessment, and Directions’.  		 			T Biggerstaff 		,  		 			C Richter 		.  	 	 		\textit{IEEE Software}  		1987. p. .  	 
\bibitem[Bidve and Khare ()]{b43}\label{b43} 	 		‘Simplified Coupling Metrics for Object-Oriented Software’.  		 			V S Bidve 		,  		 			A Khare 		.  	 	 		\textit{International Journal of Computer Science and Information Technologies (IJCSIT)}  		2012. 3  (2)  p. .  	 
\bibitem[Gupta and Saxena ()]{b30}\label{b30} 	 		‘Software bug prediction using object-oriented metrics’.  		 			D L Gupta 		,  		 			K Saxena 		.  	 	 		\textit{Sadhana-Indian Academy of Sciences}  		2016. 42  (5)  p. .  	 
\bibitem[Fenton and Neil ()]{b14}\label{b14} 	 		‘Software metrics: successes, failures and new directions’.  		 			N Fenton 		,  		 			M Neil 		.  	 	 		\textit{Journal of Systems and Software}  		1999. 47  (2-3)  p. .  	 
\bibitem[Mahfuzul ()]{b8}\label{b8} 	 		‘Testability Quantification Framework of Object-Oriented Software: A New Perspective’.  		 			H Mahfuzul 		,  		 			AY D S 		,  		 			KM H 		.  	 	 		\textit{International Journal of Advanced Research in Computer and Communication Engineering}  		2015. 4  (1)  p. 289302.  	 
\bibitem[Abreu ()]{b0}\label{b0} 	 		‘The MOOD Metrics Set’.  		 			F B Abreu 		.  	 	 		\textit{ECOOP'95 Workshop on Metrics},  				1995.  	 
\bibitem[Chidamber and Kemerer ()]{b31}\label{b31} 	 		‘Towards a metric suite for object-oriented design’.  		 			S R Chidamber 		,  		 			C F Kemerer 		.  	 	 		\textit{OOPSLA'91 Conference Proceedings on Objectoriented Programming Systems, Languages, and Applications},  				 (New York, USA)  		1991. ACM.  	 
\bibitem[Génova et al. ()]{b36}\label{b36} 	 		‘UML Associations: A Structural and Contextual View’.  		 			G Génova 		,  		 			J Llorens 		,  		 			J M Fuentes 		.  	 	 		\textit{Journal of Object Technology-ETH Zurich}  		2004. 3  (7)  p. .  	 
\bibitem[Glasberg et al. (2000)]{b4}\label{b4} 	 		‘Validating Object-Oriented Design Metrics on a Commercial Java Application’.  		 			D Glasberg 		,  		 			K E Emam 		,  		 			W Melo 		,  		 			Madhavji 		.  	 	 		\textit{National Research Council}  		01 September 2000. 44146.  	 
\bibitem[Zuse ()]{b17}\label{b17} 	 		 			H Zuse 		.  		\textit{Software Complexity Measures and Methods},  				 (Berline)  		1991. Walter de Gruyter.  	 
\end{bibitemlist}
 			 		 	 
\end{document}
