You are on page 1of 8

This method is used to provide the system level size estimation of the object-oriented

software. The class point method was given by Costagliola and Tortora (2005). This method
o o $1Z The complexity of a class is analysed
through determining the number of methods in a class, the number of attributes in a class and
the interaction of a class with other classes. This method can be used for ~ stimation during
requirement and design phase of software development life cycl~ The steps required for the
estimation of size are given as follows:
class diagram
1. Identification of classes .J,
classification and evaluation of estimation of
2. Detennination of complexity of classes
identification of --> complexity of ➔ the total
class classes unadjusted
3. Calculation of unadjusted class point class point
4. Calculation of technical complexity factor i
calculation technical
5. Calculation of class point of the id:- complexity
class point. factor estimation

class point calculation


Identification of Classes
In the class point rncthoc.!, four lypcs of classes arc identified. I"hc types of systm1
components arc given in Table 5.6. I
Table 5.6 Class type wit/, description
Class Type I Description Example (LMS)
Problem domain type I Represents real-world entities in Student, Book
,,- •(PDT) the Sapplication domain.
1
Human interface type \ Satisfies the need for visualizing LoginForm,
_,- '(HIT)
information and human-computer BookDetailF orm
I • •
: ,interaction.
Data management type Includes classes which incorporate Login
~ ~(DMT) pata storage and retrieval .
Task management type Includes classes which are BookDetailsControHcr,

-- --(TMT) responsible for tasks StudcntDtailsControl ler


1

Classifying Class Complexity


In the class point method, two mcasure~1' liI'.H1 anti l~P2 arc used_ In CP,, the initial estimate of
~ize is mad~ an~ :P2 prov~dc!:i detailed cslimatc of size. The followirf measures arc used in
the ealculatJonof CP I and C P1measures:
l . Number of external methods (NEAif): It rm:asurcs the size of class in tL:rn1s nf mL·thods.
It counts the number of public methods in a class.
~¥If: It measures the size of class m terms of methods
It counts the number of public methods in a class.
2 ~
It measures the interaction between system
components It counts the number of services requested by other classes.
3 •wtmbUtutt1Jl'2~. H It measures the complexity of a class. It counts the
number of data members in a class.
In the CP1measure NEM and NSR are used to classify complexity of a class. Table 5. 7 shows
the complexity for CP, measure.
Table 5. 7 Class complexity for CP

0 - 4NEM 5 - 8 NEM 2: 9 NEM


0-1 NSR Low Low Average
2-3 NSR Low Average lligh

~ 4NSR Average lligh High

Jn the CP 2 measure, NOA is also considered: thus, a detailed insight into the estimate of size
1s. obtamcd l abks 5.8 to 5.10 show the detai ls for classifying class compkxity fo r C P
ml!a urc on the basis of NEM , NSR and NOA.
Table ,.8 C/(1\ ., cm11plexitr fin· CP
0-2NSR 0-SNOA 6-9 NOA > IO NOA
0-4NEM Low Low Average
5-SNEM Low Average High
> 9NEM Average High I-Iigh
(a)

3-4 NSR 0-4NOA 5-SNOA >9NOA


0-3NEM Low Low Average
4-7NEM Low Average 1-ligh
> 8NEM Average High High
(b)

> SNSR 0-3NOA 4-7NOA >8NOA


0-2NEM Low Low Average
3-6NEM Low Average T-Tigh
~ 7NEM Average H igh Hi gh
(c)
Calculating Unadjusted Class Points
The total unadjusted class point (TUCP) is calculated by assigning complexity weights based
on the classifications made as given in Table 5.11.

I Table 5.11 Complexity weights for each class type

\I
Complexity Weight
Class Type Description
Low Average High

PDT Problem domain type 3 6 10


HIT Human interface type 4 7 12

DMT Data management type 5 8 13

TMT Task management type 4 6 9

After cJassifying the complexity leve l of classes, the TUCP is calculated as follows:

. \.rncP -
L.
±±
l=l)=l
w1i x x,~
::.J
\vherc w,,is complexity weightsj (j is low , average, high) assigned to class type i x 1s th~
number of classes or type i (i is type of class probkm domain , human 111terl~tcL' Jat,l
management and task management).
Calculating Technical Complexity Factor
The factors F,-F,s are the degree of influence (DI) as shown in Figure 5.5. Each DI IS rated on
the scale of 0-5 . DI is used to determine technical complexity factor (TCF). The TCF IS
determmed by the following mathematical formula:

rL TCP =0.55 +o.od:F,


I ,•• ~
7

0 l 2 3 4 5
~o influence Insignificant Moderate A,•enige Significant Strong

Description Description
10 Reusability
Ease of install ation

8 nlme update 17
9 ompiler processing 18 ultiple interfaces
Figure 5.5 Computing technical complexity factor.
Calculating Class Point and Effort
The final class point is calculated by multiplying total unadjusted class point values wlfh
technical factor. The procedure for calculating adjusted class point (9:) is given as:
lCP = TUCP X TCF )
Costagliola and Tortora (2005) used data from 40 systems developed in Java language m
order to predict the effort during two successive semesters of graduate courses of software
engmeering. They used ordinary least-square (OLS) regression analysis for deriving the effort
model. The effort is defined in terms of person hours for both CPI and CP2 measures as:

I Effort= 0.843 x CP 1 + 241 .85

. .. / Effort= 0.912 x CP2+ 239.75


1 v.o measures CP 1 and CV1 have been described. The CP I measure can be used m early
phases of software development and the CP2 measure can be used when the number of
annbutes 1s available.
In addition, the system requires
1. User adaptafiility is significant
2. Rapid prototyping has strong influence
3. Multiple interfaces are significant
4. Distributed functions are moderate

You might also like