Author's Accepted Manuscript

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 31

Author's Accepted Manuscript

A Hybrid Fuzzy Quality Function Deployment


Framework using Cognitive Network Process
and Aggregative Grading Clustering: An Ap-
plication to Cloud Software Product Develop-
ment
Kevin Kam Fung Yuen

www.elsevier.com/locate/neucom

PII: S0925-2312(14)00533-5
DOI: http://dx.doi.org/10.1016/j.neucom.2014.03.045
Reference: NEUCOM14134

To appear in: Neurocomputing

Cite this article as: Kevin Kam Fung Yuen, A Hybrid Fuzzy Quality Function
Deployment Framework using Cognitive Network Process and Aggregative
Grading Clustering: An Application to Cloud Software Product Development,
Neurocomputing, http://dx.doi.org/10.1016/j.neucom.2014.03.045

This is a PDF file of an unedited manuscript that has been accepted for
publication. As a service to our customers we are providing this early version of
the manuscript. The manuscript will undergo copyediting, typesetting, and
review of the resulting galley proof before it is published in its final citable form.
Please note that during the production process errors may be discovered which
could affect the content, and all legal disclaimers that apply to the journal
pertain.
A Hybrid Fuzzy Quality Function Deployment Framework using Cognitive Network Process
and Aggregative Grading Clustering: An Application to Cloud Software Product Development

Kevin Kam Fung Yuen


Department of Computer Science and Software Engineering,
Xi’an Jiaotong-Liverpool University, Suzhou, China.
Phone: +86 (0)512 88161517
Email: kevinkf.yuen@gmail.com
          kevin.yuen@xjtlu.edu.cn

Abstract
Quality function deployment (QFD) is an essential decision tool for product development in various
domains. QFD enables the cross-functional team to translate the customer requirements into
engineering characteristics during product development. Whilst there are some limitations for criteria
evaluation and analysis in QFD, this study proposes a hybrid framework of Fuzzy Cognitive
Network Process, Aggregative Grading Clustering, and Quality Function Deployment
(F-CNP-AGC-QFD) for the criteria evaluation and analysis in QFD. The fuzzy number applied to
the QFD, i.e. FQFD, enables rating flexibility for the expert judgement to handle uncertainty. The
Fuzzy Cognitive Network Process (FCNP) is used to enhance the criteria weights/priorities
evaluation. The Fuzzy Aggregative Grading Clustering (FAGC) classifies the weights/priorities as
ordinal grades. The proposed hybrid QFD approach applied to the cloud software product
development is demonstrated to show the validity and applicability.

Keywords: Quality function deployment; fuzzy clustering; fuzzy decision making; software
development; new product development.

1. Introduction
When designing a new product or improving a current product, the product development team should
work closely with the customers. Quality Function Deployment (QFD) is the popular tool to
incorporate the customer requirements to the final products in the product development life cycle.
The concept of QFD was firstly introduced in Japan in late 1960s, rapidly spread to the US in the
1980s [1-3] , and the vast applications and literatures of the QFD are evolving in various domains.

Since customer requirements elicitation is the essential initial process in software development life
cycle, QFD could be the useful tool for the software requirement engineering. A number of related
studies using QFD for the software development are identified. [4] combined QFD and ISO standard


 
for software quality measurement. [5] described some ideas about software quality function
deployment (SQFD). [6] utilized QFD for object-oriented software design. [7] described QFD as a
framework for managing software requirements from the experiences of telecommunications project
at Ericsson radio systems. [8] applied QFD for the rapid user-focused software development. [9]
leveraged QFD to design architectures that fully support requirements. [10] combined QFD and
CMMI for the Business-oriented software process improvement. [11] combined QFD and Artificial
Neural Network (ANN) for developing web service systems. [12] presented a fuzzy QFD for
enterprise software selection. [13] applied the fuzzy regression to software quality function
deployment for setting target levels. However, it seems that a lack of study presents applying QFD to
cloud application development. This research demonstrates how the proposed hybrid QFD is applied
to application development of Software as a Service (SaaS) for an online order system in a textile
company.

To enhance QFD due to its functional limitations of assessment and analysis, various hybrid QFD
approaches have been proposed. Fuzzy theory, Analytic Hierarchy/Network Process (AHP/ANP),
or/and clustering are the useful methods enhancing QFD. [12-27] utilized fuzzy linguistic variables
to QFD applications. The linguistic terms in fuzzy number enable rating flexibility for the expert
judgement to handle uncertainty. [28-31] integrated AHP/ANP to QFD. [32, 33] integrated fuzzy
AHP/ANP using Extent Analysis Method [34] into QFD. [35] used fuzzy data compression and
clustering methods for market segmentation in new product development process. [36] integrated
fuzzy analytic network process (FANP) and fuzzy k-means clustering into QFD, but description of
the fuzzy k-means clustering lacks details.

Analytic Hierarchy Process (AHP) [37] and Analytic Network Process (ANP) [38] based on the
pairwise comparison method typically are useful for rating interface and assessment. The fuzzy AHP
(FAHP) extents the fuzzy number for the judgment scales of pairwise comparisons in AHP. Extent
Analysis Method [34], the most popular FAHP approach, has been progressively applied in various
areas. However, Wang et al [39] and Yuen [40] recently showed the incorrectness of the EAM and
proposed their better FAHPs respectively.

The core idea of AHP relies on the paired ratio scale aij = wi w j . Yuen [41-45] indicated that the

basic numerical definition of the paired ratio scale not always appropriately represents the human
perception or cognition of paired difference. The inappropriate definition of paired ratio scale for
AHP follows the inappropriate FAHP, as the FAHP applies fuzzy number, instead of the crisp number
in the AHP, to the paired ratio scale to compare two different objects. Yuen [41, 43-45] proposed the
Primitive Cognitive Network Process (PCNP) using paired interval (or differential) scale to replace
AHP’s paired ratio scale potentially producing misapplications. The Fuzzy Cognitive Network


 
Process
P (FCN
NP) [42, 44]] is the exten
nsion of PCN
NP by applyying fuzzy nuumber to thee cognitive rating
r
scale,
s pairwise opposite matrix,
m cognnitive priorittization operrator and graanular aggreggation.

The
T rest of this
t article is
i organized as follows. Section 2 presents
p the concept of Fuzzy Cognnitive
Network
N Pro
ocess (FCNP P) with littlle modificatiions for thee rating asseessment in FQFD.
F Secttion 3
proposes
p thee novel Fuzzzy Aggregaative Gradinng Clustering g (FAGC) m method for evaluation rresult
analysis
a in FQFD.
F Sectiion 4 proposes the hybrrid FQFD framework
fr combining FCNP and FA AGC.
Section
S 5 deemonstrates the applicaability of thee proposed hybrid methhod. Sectionn 6 discussees the
o establisheed methods and merits of the propposed methoods. Section 7 concludees the
limitations of
notion
n of thee proposed method.
m

2.
2 Fuzzy Cognitive Netw work Process
The
T proposed Fuzzy Coggnitive Netw work Processs (FCNP) with some minor modifications of [422, 44]
is used for thhe FQFD. Thhe Triangulaar Fuzzy Nuumber (TFN)) is used to represent
r thee verbal lingguistic
scales.
s The details
d of FC
CNP are as beelow.

2.1.
2 Fuzzy Cognitive
C Asssessment Process
P
In
I the Fuzzyy Cognitivee Assessmennt Process, the survey is conducteed. An exam mple of a suurvey
question
q usinng in Section
n 5 is presennted in Figuure 1. A list of
o the Fuzzyy Pairwise Opposite
O Maatrices
(FPOMs)
( is formed accoording to thee rating scorres in the quuestionnaire completed by
b the raterss. The
Fuzzy
F Accorrdance Indexx (FAI) checkks the validiity of each FPOM.

Figure
F 1. Exaample of a survey questiion using paairwise compparisons

The fuzzyy pairwise opposite


o maatrix (FPOM M) is propoosed to interrpret the inndividual utilities
(weights
( or priorities)
p of the candiddates. Fuzzy triangular number
n is chhosen as fuzzzy set due to its

popularity
p inn fuzzy appliications. Lett an ideal fuzzzy utility seet be V = {v1 ,…, vn } , where
w the utillity in

 
fuzzy triangular number has the form vi = ( vil , viπ , viu ) , and the comparison score in fuzzy number is

bij ≅ vi − v j . The ideal FPOM is B = ⎡⎣vi − v j ⎤⎦ , whilst A subjective judgmental FPOM using fuzzy

paired interval scale is B = ⎡⎣bij ⎤⎦ . B is determined by B as follows:

⎡ v1 − v1 v1 − v2 … v1 − vn ⎤ ⎡ b11 b12 … b1n ⎤


⎢v − v v − v … v − v ⎥ ⎢ ⎥
⎡ ⎤ ⎢ n⎥ ⎢b21 b22 … b2 n ⎥ ⎡ ⎤
B = bij = 2 1 2 2 2
≅ ⎥ = ⎣bij ⎦ = B (1)
⎣⎢ ⎦⎥ ⎢ ⎥ ⎢
⎢ ⎥ ⎢ ⎥
⎣vn − v1 vn − v2 vn − vn ⎦ ⎢b b
⎣ n1 n 2 bnn ⎦

bij = ( bijl , bijπ , biju ) = −b ji = ( −buji , −bπji , −blji ) , and for i, j = 1,… , n and i ≠ j . If i = j , then

bij = vi − v j = ( 0, 0, 0 ) . Thus the above matrix has the form.

⎡( 0, 0, 0 ) v1 − v2 … v1 − vn ⎤
⎢ ⎥
v −v ( 0, 0, 0 ) … v2 − vn ⎥
B=⎢ 2 1
⎢ ⎥
⎢ ⎥
⎢⎣ vn − v1 vn − v2 ( 0, 0, 0 ) ⎥⎦


( 0, 0, 0 ) (b l
12 , b12π , b12u ) … (b
l
1n , b1πn , b1un ) ⎤

⎢( −bu , −bπ , −bl ) ( 0, 0, 0 ) … (b
l
, b π
, b 2n )
u

≅ ⎢ 12 12 12 2n 2n
⎥=B (2)
⎢ ⎥
⎢ ⎥
⎣⎢( −b1n , −b1n , −b1n ) ( −b , −b2πn , −b2l n ) ( 0, 0, 0 ) ⎦⎥
u π l u
2n

Table 1. Rating scale schema for FCNP


Fuzzy Paired
Scale Notations
Interval Scale
Equally 0 (0,0,0)
Slightly 1 ( 0, κ8 , 28κ )
Moderately 2 ( κ8 , 28κ , 38κ )
Fairly 3 ( 28κ , 38κ , 48κ )
Highly 4 ( 38κ , 48κ , 58κ )
Strongly 5 ( 48κ , 58κ , 68κ )
Significantly 6 ( 58κ , 68κ , 78κ )
Outstandingly 7 ( 68κ , 78κ , 88κ )
Absolutely 8 ( 78κ , 88κ , κ )

 
The indices i and j are local indices subject to their attached variable symbol. Usually, bij ∈ B is

given during the rating process of the expert using the rating scale schema shown in Table 1. The
crisp normal utility κ is used to determine a vector of scales in fuzzy triangular number.

The expert only fills an fuzzy upper triangular matrix, and the lower triangular matrix is given by
the opposite of the upper triangular matrix. The complete comparisons for a FPOM need
n( n −1)
2 , n ≥ 2 , ratings. B is validated by the Fuzzy Accordance Index AI or FAI is of the below

form:
1 1 1
AI = ( AI l
) × ( AI ) × ( AI )
4 π 2 u 4 , where

⎛⎛ 1
(

)
2
1 n n l l ⎞
AI l = 2 ∑∑ ij
δ , δ ij = Mean ⎜ ⎜ l Bi + ( B j ) − bij ⎟ ⎟ , ∀i, ∀j ∈ (1,…, n ) ,
l l l T

n i =1 j =1 ⎜⎝ κ ⎠ ⎟⎠

⎛ 1
(

)
2

δ ijπ , δ ijπ = Mean ⎜ ⎜⎛ π Biπ + ( Bπj ) − bijπ ⎟⎞ ⎟ , ∀i, ∀j ∈ (1,…, n) ,


n n
1
∑∑
T
AI π =
n2 ⎜⎝ κ ⎠ ⎟⎠
i =1 j =1 ⎝

⎛⎛ 1
(

)
2
1 n n u π ⎞
AI u = 2 ∑∑ ij
δ , δ u
= Mean ⎜
⎜ ⎜ B u
+ ( B )
u T
− bij ⎟ ⎟
⎠ ⎟⎠
, ∀i, ∀j ∈ (1,…, n) ; (3)
⎝⎝ κ
ij π i j
n i =1 j =1

κ = (κ l , κ π , κ u ) is the fuzzy normal utility. By default,

( )
κ = (κ l , κ π , κ u ) = Max ( X ℵπ ) − δ , Max ( X ℵπ ) , Max ( X ℵπ ) + δ , and δ is the average of the modal

values of two adjacent atomic terms, and X ℵπ is the set of the modal values from X ℵ .

AI , such that AI ≥ 0 , is the normalized weighted geometric mean of ( AI , AI


l π
, AI u ) . If

AI = 0 , then B is perfectly accordant; If 0 < AI ≤ 0.1 , B is satisfactory; If AI > 0.1 , B is

unsatisfactory .


 
2.2. Fuzzy Cognitive Prioritization Process
In the Fuzzy Cognitive Prioritization Process, the fuzzy priority/utility/weight/importance (subject to
how decision maker calls it) vectors are derived from the FPOMs by a Fuzzy Cognitive Prioritization
Operator (FCPO). Regarding cognitive prioritization in crisp number, two methods are suggested in
[41, 43, 44]: Primitive Least Squares (PLS) (or Row Average plus the normal Utility (RAU)) and
Least Penalty Squares (LPS). The development of the fuzzy cognitive prioritization operators is
extension of the above two operators with fuzzy triangular number.

The vector of fuzzy individual utilities in V = {v1 ,…, vn } , vi = ( vil , viπ , viu ) can be derived by

the Fuzzy Primitive Least Squares (FPLS) optimization model which is of the form:
⎡( b l − v l + v l ) 2 + ⎤
Min Δ = ∑ i =1 ∑ j =i +1
n n
⎢ ij i j

⎢ π u 2⎥
⎣⎢( bij − vi + v j ) + ( bij − vi + v j ) ⎦⎥
π π 2 u u

∑ v = nκ l
n l
s.t. i =1 i

∑ vπ = nκ π
n
i =1 i

∑ v = nκ u
n u
i =1 i
(4)

n = {vi } is a cardinal number of the fuzzy utility vector, (b , bl


ij
π
ij , biju ) ∈ B is a fuzzy entry of B ,

nκ = ( nκ l , nκ π , nκ u ) is the fuzzy population utility, and κ = (κ l , κ π , κ u ) is the fuzzy normal

utility. The solution of the closed form of FPLS is the Fuzzy Row Average plus the normal Utility
(FRAU) [42, 44] of the below form:

(
FRAU B, κ = )
⎡ ⎛ ⎛1⎛ i n ⎞⎞ ⎞ ⎤
⎢ ⎜ vil = ⎜⎜ ⎜ ∑ biju + ∑ bijl ⎟ ⎟⎟ + κ l ⎟ ⎥
⎢ ⎜ ⎝ n ⎝ j =1 j =i +1 ⎠⎠ ⎟ ⎥
⎢ ⎜ ⎟ ⎥
⎢ l π u ⎜ ⎛1 n π ⎞ π ⎟ ⎥
⎢( vi , vi , vi ) | ⎜ vi = ⎜ ∑ bij ⎟ + κ , ∀i ∈ {1,… , n }⎥
π
⎟ (5)
⎢ ⎜ ⎝ n j =1 ⎠ ⎟ ⎥
⎢ ⎜ ⎛1⎛ i n ⎞⎞ ⎟ ⎥
⎢ ⎜ viu = ⎜ ⎜ ∑ bijl + ∑ biju ⎟ ⎟ + κ u ⎟ ⎥
⎢⎣ ⎜ ⎜ n j =1 ⎟ ⎟
⎝ ⎝ ⎝ j = i +1 ⎠ ⎠ ⎠ ⎦⎥

Regarding some fuzzy decision problems, the fuzzy priority vector (or fuzzy normalized weight

vector) is denoted by W = {w1 ,…, wi ,…, wn } , where wi = ( wil , wiπ , wiu ) , and the summation of the

 
modal values, wiπ , of W is equal to one, i.e. ∑ wiπ = 1 . Thus W is said to be a fuzzy
n
i =1

normalized priority vector (or a fuzzy priority vector in short). In order to use the proposed utility
weighting vector, the fuzzy individual utility set from the FPOM is rescaled (or normalized) as a
fuzzy normalized priority vector by the rescale function, or the normalization function, as below.
⎧ wi = ( wil , wiπ , wiu ) : ⎫
⎪ ⎪
W =⎨ ⎛ vil viπ viu ⎞ ⎬
⎪( wi , wi , wi ) = ⎜ π , π , π ⎟ , ∀i ∈ {1,… , n}⎪
l π u

⎩ ⎝ nκ nκ nκ ⎠ ⎭

,in which ∑ viπ = nκ π and κ π = Max ( X ℵ ) (6)


i∈{1,…, n}

The above normalization method is recommended for the comparisons with some objects in a single
level hierarchy. However, if more objects are compared, the average value of normalized
priorities/weights of the objects becomes smaller. If the criteria have the hierarchy of two levels or
more, the priority values become smaller as a decimal value times a decimal value in aggregation.
Therefore, if it is this complex case, the final priority of the lowest level criterion could be
normalized after a multiplication chain through different levels. For example, the final rescaled

weight, w 'ij , of the two level criteria can be calculated in the below function.

iΩ , i = 1,… , n; j = 1,… , {vij }


vi vij
w 'ij = (7)
∑∑ v v
i j
i ij

Ω is a rescale factor. If the results derived from (5) are higher than 1, the multiplication chain
through hierarchical criteria may yield the large number results. For criteria of two level, (7) can be
used.

2.3. Fuzzy Information Fusion

A fuzzy decision matrix (Table 2) contains a matrix of fuzzy individual utilities {( v


l
kj }
, vkjπ , vkju )

with respect to a vector of alternatives T = {Tk ,… , Tk ,… , Tm } and a vector of criteria

C = {c1 ,… , c j ,… , cn } associated with a vector of weights V = ( v1 ,… , v j ,… , vn ) . A fuzzy individual

utility (v l
kj , vkjπ , vkju ) is a triangular fuzzy number for individual utility of an alternative Tk ,

k = 1,… , m with respect to a criterion C j , j = 1,… , n . A normalized fuzzy triangular weight


 
v j = ( v lj , vπj , v uj ) is assigned to a criterion C j , j = 1,… , n . A fuzzy aggregated utility VTk is

aggregated by an aggregation operator Agg ( i ) . Fuzzy arithmetic mean (FAM) of below form is

chosen as default aggregation operator since it is used by most decision models due to its
computational efficiency and comprehensive simplicity.

⎧ ⎛ l 1 m l l ⎞⎫
⎪ ⎜ vTk = ∑ vkj v j ⎟ ⎪
⎪ ⎜ n j =1 ⎟⎪
⎪⎪ ⎜ ⎟ ⎪⎪
( )
n
1
VTk = ⎨ vTl k , vTπk , vTuk : ⎜ vTπk = ∑ vkjπ vπj ⎟ ⎬ , k = 1, …, m . (8)
⎪ ⎜ n j =1 ⎟⎪
⎪ ⎜ 1 m ⎟⎪
⎪ ⎜ vTu = ∑ vkju vuj ⎟ ⎪
⎜ k n j =1 ⎟
⎩⎪ ⎝ ⎠ ⎭⎪

Table 2: A fuzzy decision matrix with fuzzy aggregated utilities


C1 Cj Cn
Fuzzy aggregated
Alternatives
( v1l , v1π , v1u ) ( vlj , vπj , vuj ) ( vnl , vnπ , vnu ) utilities

T1 (v l
11 , v11π , v11u ) (vl
1j , v1πj , v1uj ) (v l
1n , v1πn , v1un ) (v l
T1 , vTπ1 , vTu1 )

Tk (vl
k1 , vkπ1 , vku1 ) (v l
kj , vkjπ , vkju ) (v l
kn
π
, vkn , vknu ) (v l
Tk , vTπk , vTuk )

Tm (vl
n1 , vnπ1 , vnu1 ) (v l
nj , vnjπ , vnju ) (vl
mn
π
, vmn u
, vmn ) (v
l
Tm , vTπm , vTum )

A fuzzy utility (v , v l π
, v u ) can be normalized as a fuzzy relative utility (w , w
L π
, wu ) using

∑ wπ = 1 . Although such normalized values have to be used in FAHP,


n
Equation (6) such that j =1

FCNP does not always use such normalized values for the fuzzy individual utility set. For one thing,
the normalized utility is a special case of absolute utility. For the other, if the number of
alternatives/criteria increases, the average utility of each alternative/criterion decreases, and finally
the aggregation results of the alternatives are very close and lead to difficulty in justifying the
dominate advantage of the best alternative. If the number of alternatives or criteria is not high (for
example, less than six), normalization can be used.


 
3. Fuzzy Aggregative Grading Clustering.
The proposed Fuzzy Aggregative Grading Clustering (FAGC) method, which revises the classical
K-Means clustering, is typically used in FQFD to efficiently cluster the data into ordinal grades, such
as low, medium, and high, for the customer requirements, as well as technical specifications. The
k-means clustering method [46], one of the popular clustering methods, is widely used to group the
data. However, this classical method often produces the local optimal clusters subject to the settings
of initial center values, and cannot adopt the fuzzy data. Inappropriate choices of initial centers yield
poor results by k-means. In addition, the factor weights are not considered. Fuzzy c-means [47]
cannot deal with fuzzy data, although it has the name “fuzzy”, and in fact it is still a probabilistic
method. The proposed FAGC offsets the above shortages to grade the fuzzy weighted data. The
details of the proposed FAGC are presented as below.

Step 1: Obtaining input parameters (G , X ,W )


The input includes three parameters: a grading cluster number G, a fuzzy data matrix X , and a fuzzy
weight vector W . The grading cluster number G is the number of ordered clusters such that the
ranking of current cluster is lower than the one of the next cluster. This means the cluster with higher
index number has higher grade. The data matrix has m data sets of n variables, i.e.

{x ij : i = 1,… , M ; j = 1,… , N ;} . Each variable is associated with the fuzzy weight w j , and w j ∈W .

A data set xi is a vector of a row data assigning to each variable, i.e. xi = { xij : j = 1,… , N } , and

there is/are m row(s) of data set(s), i.e. i = 1,… , M . Subject to the data nature, X or/and W may

be normalized for the next step.

Step 2: Aggregating X and W

A represented value α i for a row data set xi is derived by an aggregation function. The native and

efficient aggregation method is the fuzzy weighted average (or fuzzy weighted fuzzy arithmetic
mean) shown as below.
n
α i = ∑ w j xij , i = 1,…, M , xij ∈ X , and w j ∈W (9)
j =1

In FQFD, the aggregative value is used to summarize the values of multiple variables. Such
aggregative value represents a weighted data set. The decision maker usually uses this summarized
represented value for making decision. Thus it is more effective and efficient to cluster this
aggregated values than to cluster all variables values, typically are used in k-means method.


 
Step 3: Initializing fuzzy grading centers

To form a set of initial ordered grading centers for a set of aggregated values , i.e. c (0) = {ck(0) } , the

fuzzy minimum x −j and the fuzzy maximum x +j are firstly searched by the below forms.

α − = Min ({αi : i = 1,…, M }) (10)

α + = Max ({αi : i = 1,…, M } ) (11)

To compare the quantity of a fuzzy number, centroid defuzzification can be used. For a fuzzy

triangular number (FTN), the centroid defuzzification of α i is computed in the below form.

α 'i =
1
3
( l (α i ) + π (α i ) + u (α i ) ) (12)

l ( ⋅) , π ( ⋅) , and u ( ⋅) return the upper, modal, and lower values of FTN respectively. Equations (10)

and (11) have the below forms respectively.

α − = αi , where i − = arg min ({α 'i : i = 1,…, M } ) .


− (13)

α + = αi , where i + = arg max ({α 'i : i = 1,…, M } ) .


+ (14)

Since α + ≥ α − , the fuzzy interval between adjacent centers, i.e. p , can be computed as the below
form:
α + −α −
p= (15)
2G

The fuzzy initial center c (0) equally classifies the data. The superscript, (r), indicates the update
state of the fuzzy center, and r=0, i.e. (0), means the initial state. A fuzzy initial center vector can be
calculated with the below form.

{
c (0) = ck(0) = α − + p (1 + 2 ( k − 1) ) : k = 1,… , G } (16)

Step 4: Computing fuzzy distance matrix

The fuzzy distance matrix D ( r ) = d ik( r ) { } is used to measure each distance between each α i and

each fuzzy cluster center ck(0) representing a grade center. The fuzzy distance measurement dik( r ) is

10 
 
computed as the below function.

dik( r ) = (x −c )
i
(r ) 2
k , k = 1,…, G; i = 1,…, M . (17)

Step 5: Indexing and assigning aggregative values to clusters

On the basis of each row in the fuzzy distance matrix D ( r ) , each α i is assigned to the fuzzy cluster

U k( r ) of the center ck( r ) by the below function.

({ })
U k(*r ) = U k(*r ) ∪ {α i } such that k * = arg min dik( r ) : k = 1,… , G , ∀i ∈ {1,… , M } (18)

({ })
k * = arg min d ik( r ) : k = 1,… , G , k * ∈ {1,… , G} returns the index k of the cluster in which α i

belongs to, on the basis of the least fuzzy distance dik( r ) from α i to ck( r ) . There are G clusters, i.e.

U k( r ) , k = 1,…, G .

To measure least fuzzy distance, centroid defuzzification of dik( r ) for α i is applied. As the FTN is

used, centroid defuzzification of FTN is computed by the below form.

d '(ikr ) =
1
3
( ( ) ( ) ( ))
l dik( r ) + π dik( r ) + u dik( r ) (19)

(18) can be substituted by (19) to have the below form.

( )
U k(*r ) = U k(*r ) ∪ {α i } such that k * = arg min {d '(ikr ) : k = 1,… , G} , ∀i ∈ {1,… , M } (20)

Step 6: Updating fuzzy grading centers


The fuzzy grading centers are recalculated on the basis of the average value of the members in a
cluster

(
ck( r ) = mean U k( r ) , k = 1,…, G) (21)

Explicitly,
U k( r )
1
c(r )
k = (r )
Uk
∑α i*
, where α i* ∈ U k( r ) , k = 1,…, G (22)
i* =1

U k( r ) returns the number of members in U k( r ) .

11 
 
Step 7: Iteration and Stop
Iteration repeats steps 3 to 5 until the fuzzy grading centers in the current state has no change from

the ones in previous state, e.g. ck( r ) ≡ ck( r −1) . The checking function is presented as below.

Max ({(c (r )
k − ck( r −1) )
2
}) = 0 (23)

The above form also implies that d ik( r ) ≡ d ik( r −1) , and U k( r ) ≡ U k( r −1) .

Step 8: Return {U k( r ) }

4. Combining FCNP and FAGC to FQFD


The proposed hybrid F-CNP-AGC-QFD approach comprises three major methods: Fuzzy Quality
Functional Deployment, Fuzzy Cognitive Network Process, and Fuzzy Aggregative Grading
Clustering. FCNP and FAGC are presented in previous sections. The basic structure of FQFD is
House of Quality (HOQ) in fuzzy number. According to [48] , “the foundation of the house of quality
is the belief that products should be designed to reflect customers’ desires and tastes-so marketing
people, design engineers and manufacturing staff must work closely together from the time a product
is first conceived”, and “the house of quality if a kind of conceptual map that provides the means for
inter-functional planning and communications”. Fuzzy number enables rating flexibility for the
expert judgement to handle uncertainty. The basic elements of HOQ include the customer
requirements (WHATs), technical specifications (HOWs), a WHATs-HOWs matrix, and related
analysis results. Figure 1 shows eight steps to build HOQ in F-CNP-AGC-QFD framework. The
details for each step are presented as follows.

12 
 
Figure 2: Stteps to Buildd House of Q
Quality in F-CNP-AGC-Q
QFD framew
work

Step
S 1: Custtomer requiirements (W
WHATs) eliccitation
Understandin
U ng customerr requiremennts and captturing the reequirements as measuraable units arre the
complex
c andd essential taask for the profitable
p prooducts. High
h quality prooducts would have num merous
tangible
t and intangible customer
c requirements, which are a set of WH HATs to be satisfied.
s It is
i the
good
g practicce to exploree the requireements and group them into meaninngful hierarcchical categgories,
and
a to keep the minimaal level(s) of o the hierarrchy. For thhe purpose oof illustratioon, two leveels of
criteria,
c whicch usually saatisfy many scenarios, arre presentedd. For the maathematical notations,
n a set of

customer
c req { }
quirements, β , has the leevel 1 criteriia such that βi , i = 1,…, βi , and a level 1 critterion

β i has levell 2 criteria such


s that βij , i = 1,… , {βi } , j = 1,… , {βij } . Thhe hierarchiccal categoriees can

form
f a tree structure, whhich can be used
u by FCN
NP in Step 3.

Step
S 2: Techhnical speciffications (H
HOWs) identtification
After
A the cusstomer requiirements aree identified, tthe product developmennt team exploores the techhnical
product
p speccifications, a set of HOOWs to satissfy customeer requiremeents, and maakes them as a the
measurable
m u
units. A pro
oduct normaally has manny technical specificatioons grouped into hierarcchical
categories.
c T simplify the
To t illustratioon of the prooposed ideass, two levelss of criteria usually
u satissfying
many
m scenarrios are demoonstrated. Foor the matheematical notaations, a set of technical specificatioons, y ,

h the levell 1 criteria suuch that yi , i = 1,… , { yi } , and each


has h level 1 critterion yi has
h level 2 crriteria

such
s that yiji , i = 1,… , { yi } , j = 1,… , { yij } . Thhe importancce/weights of
o technical specificatioons is

13 
 
measured in Step 6.

Step 3: Customer requirement priorities analysis

As customer requirements, {β }
ij , are explored, the Fuzzy Cognitive Prioritization Process (FCNP)

is used to evaluate and determine the weights, utilities, priorities, or importance for the customer

requirements {β } . To achieve {β } , a series of the matrices of the fuzzy pairwise comparisons, i.e.
ij ij

B ’s, are derived by conducting the surveys from the customers. The details of FCNP are shown in
Section 2.

Step 4: Customer requirements grading


After the customer requirements priorities are yielded, the priorities could be grouped into different
ordinal grades, such as fair, high, and top, especially when the amount of requirements is large. Such
grading facilitates efficient management of the customer requirements. The development team could
prioritize the customer requirements to be fulfilled due to the limited resource. The Fuzzy
Aggregated Grading Clustering (FAGC), which is presented in Section 3, is used to handle this task.

Step 5: WHATS-HOWS Inter-relationships assessment


As customer requirements and technical specifications are explored, the engineers assess how much
the current technical specifications can be related to implementation of customer requirements by
direct rating scores in fuzzy triangular number. A WHATs-HOWs matrix comprising the WHATs as

rows and the HOWs as columns, i.e. H = hij { } where i = 1,… , y and j = 1,… , β , presents what

extent the HOW technical specifications satisfy WHAT customer requirements. The scale schema is
presented in Table 3.
 
Table 3: Scale schema for a WHATS-HOWS matrix
Notation Fuzzy Triangular Number Label Descriptions
0 ( 0, 0, 0 ) no
1 ( 0,1, 2 ) weak
Extent of functions in a technical
2 (1, 2,3) some
specification which is or will be used to
3 ( 2, 3, 4 ) moderate
satisfy the customer requirements.
4 ( 3, 4, 5 ) high
5 ( 4, 5,5 ) strong
 
 
 
14 
 
Step 6: Technical specification weights analysis
After  the WHATs-HOWs matrix and customer requirements priorities are evaluated, the technical
specification weights can be calculated. The technical specification weights reflect relative
significance of the technical specifications meeting the customer requirements. The computation is
calculated by the below form.
φ j = ∑ ϕi hij ,    j = 1,…, φ  
i

where  ϕ = ∪ β ij ,    and  φ = ∪ yij   (24) 


i, j i, j

φ j is the technical specification weight. Since the customer requirements and technical requirements

are defined as two levels in this demonstration, the union function ∪ is used to flatten the two
dimension sets into one dimension set without changing any members. The subscripts i and j are
local indices subject to their attached variable notation.

Step 7. Technical specifications grading


After the technical specification weights are yielded, the weights should be grouped into different
grades, such as high, strong and essential, especially when there are many specifications. Such
grading facilitates effective management of the technical development. The development team could
prioritize the technical specifications to be implemented due to the limited resource. Similarly, the
Fuzzy Aggregated Grading clustering, which is presented in section 3, is used to handle this task.

Step 8. Solution comparisons


The R&D team may have different ideas or solutions to develop a product. Concept selection could
be made in this part. Since the technical specification maybe difficult to be achieved in details, the
FCNP presented in section 2 can be used to compare the relative strength among various solutions. In
addition, the relative strength between the company solution and competitors’ solutions can be
compared in this step as well.

5. Application to Software Product Development


5.1 Background
The proposed F-CNP-GKMC-QFD is used for the general purpose of the product design in the
product development life cycle. To demonstrate the applicability of the approach, an application to
software product development using the proposed approach is demonstrated. A logistics IT solution
company provides consultancy and IT implementation services in supply chain industry. The
company exploits the advantages of cloud solutions, especially Software as a Service (SaaS), which
is scalable to be configured for the rapid application development (RAD).

15 
 
The company received a software development project of an online order system in a textile firm. To
successfully configure the current SaaS software components to deliver low cost and high quality
solution, understanding the customer requirements which are further translated to the software design
specifications is the early critical part in the Software Development Life Cycle (SDLC). Failure to
map the business requirements to software design ultimately leads to frequent change requests,
customer dissatisfaction, and project failure. Such changes could be much costly in the latter stage of
SDLC. How customer requirements can be fulfilled by functional specifications is the critical
success factor for a profitable software product. The proposed hybrid approach is the ideal approach
to support the multi-functional teams for this translation, as it includes capture of customer needs,
evaluation of current technical specifications, assessment of the inter-relationships of customer needs
and technical specifications, and recommendation of ideal solutions. The following demonstration
shows the applicability and validity of the proposed hybrid approach by presenting step-by-step
calculation details.

5.2. Steps for F-CNP-GKMC-QFD


Step 1: Customer requirements (WHATs) elicitation
The business analysts interview the customers and obtain the customer requirements summarized in
Figure 3. The requirements are structured as two levels. Level 1 includes functionally, usability,
efficiency, security and maintainability. Each level 1 criterion has several level 2 criteria, and there
are 25 level 2 criteria. Evaluating the priorities of the customer requirements and clustering the
requirements into different grades facilitate the development team to manage the customer
requirements effectively and efficiently.

16 
 
Figure
F 3. Customer requirements forr an online order system

Figure
F 4: Sysstem configuuration speciifications forr an online order system
m

17 
 
Step 2: Technical specifications (HOWs) identification
To achieve the rapid application development (RAD) for the clients, the software company has
developed the software components on the basis of the SaaS system architecture design, and can
configure the established components as the solutions to address various customer requirements. The
technical specifications are summarized in Figure 4. 19 level 2 criteria are selected and classified as
three categories (level 1 criteria) on the basis of SaaS system architecture design: presentation design
services, business design services, and data design services. It is essential for the development team
to assess how important for each level 2 criteria to address the customer requirements, and thus the
decisions for job scheduling and resource allocation can be made.

Steps 3 & 4: Customer requirement priorities analysis


As customer requirements are structured as two levels tree, FCNP can be used to assess and
determine the priorities of the customer requirements. Table 4 shows the rating scale schema for
FCNP. κ is set to be 8 to determine the vector of fuzzy paired interval scale shown in Table 1.
Whilst two objects are compared, forward comparison means that the priority (or utility) of the
former object is over the priority of the latter one, and backward comparison means otherwise. On
the basis of the scale schema defined in Table 4, Table 5 shows fuzzy comparison matrix, B0 , for
level 1 customer requirements, whilst Tables 6 & 7 show fuzzy comparison matrices, B1 ,… , B5 for
the level 2 ones. An example in Figure 1 shows the survey question to construct B3 . Table 8 shows
the customer requirement priorities and grades. The priorities are computed from Tables 5-7 by (5)
and (7), and Ω = 5 . According to the normalized priorities, the customer requirements are clustered

( { } )
into three ordinal grades by FAGC taking the arguments 3, β ij ,{(1,1,1)} . The initial fuzzy centers

reach the final fuzzy centers in 2 interactions only, and the assignments are shown in Table 9.

Table 4. Rating scale schema for FCNP


Forward comparison Backward comparison
Level of verbal scale Notation Fuzzy Paired Interval Scale Notation Fuzzy Paired Interval Scale
Equally 0 (0,0,0) 0 (0,0,0)
+ −
Slightly 1 (0,1,2) 1 (-2,-1,0)
+ −
Moderately 2 (1,2,3) 2 (-3,-2,-1)
+ −
Fairly 3 (2,3,4) 3 (-4,-3,-2)
Highly 4+ (3,4,5) 4− (-5,-4,-3)
Strongly 5+ (4,5,6) 5− (-6,-5,-4)
+ −
Significantly 6 (5,6,7) 6 (-7,-6,-5)
+ −
Outstandingly 7 (6,7,8) 7 (-8,-7,-6)
+ −
Absolutely 8 (7,8,8) 8 (-8,-8,-7)

18 
 
Table 5. Fuzzy comparison matrix B0 for level 1 customer requirements
B0 β1 β2 β3 β4 β5
β1 0 4+ 3 +
1− 5+
β2 4− 0 0 4− 2+
β3 3− 0 0 4− 4+
β4 1+ 4+ 4+ 0 6+
β5 5− 2− 4− 6− 0

AI =0.087

Table 6. Fuzzy comparison matrix B1 with respect to functionality β1


B1 β11 β12 β13 β14 β15 β16 β17 β18 β19 β110
β11 0 1 +
2 +
1 +
1 +
0 3 +
1 +
3 +
4+
β12 1− 0 2+ 1− 0 1− 2− 0 2+ 3+
β13 2− 2− 0 1− 1− 2− 1+ 1− 1+ 2+
β14 1− 1+ 1+ 0 0 1− 2+ 0 2+ 3+
β15 1− 0 1+ 0 0 1− 2+ 0 2+ 3+
β16 0 1+ 2+ 1+ 1+ 0 3+ 1+ 3+ 3+
β17 3− 2+ 1− 2− 2− 3− 0 2− 0 2+
β18 1− 0 1+ 0 0 1− 2+ 0 2+ 3+
β19 3− 2− 1− 2− 2− 3− 0 2− 0 1+
β110 4− 3− 2− 3− 3− 3− 2− 3− 1− 0

AI =0.098

Table 7: Fuzzy comparison matrices with respect to usability β 2 , efficiency β 3 , security β 4 , and maintainability β 5

B2 β 21 β 22 β 23 β 24 β 25 B3 β 31 β 32 β 33
β 21 0 2− 0 2+ 3+ β 31 0 2+ 5+
β 22 2+ 0 2+ 3+ 4+ β 32 2− 0 2+
β 23 0 2− 0 1+ 2+ β 33 5− 2− 0
β 24 2− 3− 1− 0 1+ AI =0
β 25 3 −
4 −
2 −
1 −
0

AI =0.056
B4 β 41 β 42 β 43 B5 β 51 β 52 β 53 β 54
β 41 0 2+ 2+ β 51 0 2− 0 1+
β 42 2− 0 0 β 52 2+ 0 2+ 1+
β 43 2− 0 0 β 53 0 2− 0 1+
AI =0 β 54 1− 1− 1− 0

AI =0.089

19 
 
Table 8: Customer requirement priorities and grades
Criterion and Priority Criterion and Priority Normalized Grades
Aggregated priority
(Level 1) (Level 2) Priority Fair High Top
β11 (8.8,10.6,12.4) (82.72,118.72,161.2) (4.897,7.029,9.543) T
β12 (7.7,9.2,10.7) (72.38,103.04,139.1) (4.285,6.1,8.235) T
β13 (7,8.5,10) (65.8,95.2,130) (3.896,5.636,7.696) H
β14 (8.6,9.7,10.8) (80.84,108.64,140.4) (4.786,6.432,8.312) T
β1 β15 (8.4,9.6,10.8) (78.96,107.52,140.4) (4.675,6.365,8.312) T
(9.4,11.2,13) β16 (9.5,10.5,11.5) (89.3,117.6,149.5) (5.287,6.962,8.851) T
β17 (7.5,8.1,8.7) (70.5,90.72,113.1) (4.174,5.371,6.696) H
β18 (8.8,9.6,10.4) (82.72,107.52,135.2) (4.897,6.365,8.004) T
β19 (7.2,7.6,8) (67.68,85.12,104) (4.007,5.039,6.157) H
β110 (6.5,6.6,6.7) (61.1,73.92,87.1) (3.617,4.376,5.157) H
β 21 (8,9.6,11.2) (52.8,74.88,100.8) (3.126,4.433,5.968) H
β 22 (9.8,11.2,12.6) (64.68,87.36,113.4) (3.829,5.172,6.714) H
β2
β 23 (8,9.2,10.4) (52.8,71.76,93.6) (3.126,4.248,5.541) H
(6.6,7.8,9)
β 24 (7.4,8,8.6) (48.84,62.4,77.4) (2.891,3.694,4.582) F
β 25 (6.8,7,7.2) (44.88,54.6,64.8) (2.657,3.232,3.836) F
β 31 (9.67,11.33,13) (69.6,95.2,124.8) (4.12,5.636,7.388) H
β3
β 32 (8,9,10) (57.6,75.6,96) (3.41,4.476,5.683) H
(7.2,8.4,9.6)
β 33 (6.33,6.67,7) (45.6,56,67.2) (2.7,3.315,3.978) F
β 41 (8.67,10.33,12) (98.8,124,151.2) (5.849,7.341,8.951) T
β4
β 42 (7.67,8.33,9) (87.4,100,113.4) (5.174,5.92,6.714) H
(11.4,12,12.6)
β 43 (7.67,8.33,9) (87.4,100,113.4) (5.174,5.92,6.714) H
β 51 (7.25,8.75,10.25) (39.15,49,59.45) (2.318,2.901,3.52) F
β5 β 52 (9,10.25,11.5) (48.6,57.4,66.7) (2.877,3.398,3.949) F
(5.4,5.6,5.8) β 53 (7.75,8.75,9.75) (41.85,49,56.55) (2.478,2.901,3.348) F
β 54 (8,8.25,8.5) (43.2,46.2,49.3) (2.558,2.735,2.919) F

Table 9: Grades, fuzzy centers and members


Grades Initial fuzzy center Final fuzzy center Members
Fair (2.906,3.503,4.023) (2.640,3.168,3.733) β 24 , β 25 , β 33 , β 51 , β 52 , β 53 , β 54
High (4.083,5.038,6.231) (3.969,5.112,6.402) β13 , β17 , β19 , β110 , β 21 , β 22 , β 23 , β 31 , β 32 , β 42 , β 43
Top (5.261,6.573,8.439) (4.954,6.656,8.601) β11 , β12 , β14 , β15 , β16 , β18 , β 41

20 
 
Step 5: WHATS-HOWS Inter-relationships assessment
The system analysts assess how much the current technical specifications can address the customer
requirements by direct rating scores in fuzzy triangular number shown in Table 3. There are 475
evaluation questions, since the experts need to evaluate 19 technical specifications with respect to 25
customer requirements. The assessment results are shown Table 10. Some studies proposed FAHP’s
19(19−1)
pairwise comparisons to evaluate the WHATS-HOWS matrix. There are 2 ⋅ 25 = 4275 ratings,

and workload of pairwise comparisons is very high. Thus direct rating method is recommended.

Table 10. WHATs-HOWs Relationship evaluation by system analysts


y11 y12 y13 y21 y22 y23 y24 y25 y26 y27 y28 y29 y210 y211 y212 y31 y32 y33 y34

β11 5 5 5 3 3 5 3 3 5 5 3 3 5 3 3 5 5 5 5
β12 5 5 5 5 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5
β13 5 5 5 5 4 2 5 3 5 5 4 5 5 5 3 4 4 4 4
β14 5 5 5 5 5 5 5 5 3 5 5 4 5 3 5 4 4 4 5
β15 5 5 5 5 5 3 2 5 5 5 3 5 5 3 5 5 5 5 5
β16 5 5 5 5 5 5 5 3 5 5 5 0 5 5 5 5 5 5 0
β17 1 1 1 3 3 0 2 3 2 5 4 2 5 5 2 2 4 2 0
β18 5 5 5 5 5 2 5 0 4 0 0 0 5 3 3 5 5 5 3
β19 5 5 5 5 5 3 5 2 2 5 0 0 5 5 4 5 5 5 5
β110 5 5 5 5 5 2 5 5 5 0 5 5 5 4 1 4 4 4 0
β 21 5 5 5 5 5 5 5 5 5 5 5 5 3 3 0 0 0 0 0
β 22 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 0 0 0 0
β 23 5 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
β 24 5 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
β 25 5 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
β 31 3 3 3 2 2 3 3 3 3 3 3 3 3 2 5 2 2 2 0
β 32 5 5 5 1 1 2 2 2 2 2 2 2 2 0 5 3 2 2 0
β 33 0 0 0 2 2 4 3 2 2 3 3 3 5 1 5 3 2 2 0
β 41 3 3 3 5 5 5 5 1 1 2 5 5 5 4 5 5 5 5 5
β 42 5 5 5 5 5 5 5 4 4 5 5 5 5 4 5 5 5 5 5
β 43 4 4 4 5 5 5 5 5 5 5 5 5 5 4 5 5 5 5 5
β 51 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 2 2 0 5
β 52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 2 2 0 5
β 53 3 3 3 2 2 3 3 3 3 5 4 4 2 3 5 2 2 0 5
β 54 0 0 0 0 0 0 0 0 0 0 0 0 5 5 5 5 3 5 5

21 
 
Steps 6 and 7: Technical specification weights analysis and grading
The technical specification weights are derived by Equation (24) taking the inputs of customer
requirement priorities in Table 8 and engineers’ WHATS-HOWS matrix in Table 10. The fuzzy
weights and grades are shown in Table 11. According to the fuzzy weights, the technical
specifications are clustered into three ordinal grades (high, strong, and essential) by FAGC taking the

input of ( 3, { y } ,{(1,1,1)}) . The initial fuzzy centers reach the final fuzzy centers in only 2 loops,
ij

and the assignments are shown in Table 12.

Table 11: Technical specification weights and grades


Fuzzy weights Normalized Fuzzy weight Grades
High Strong Essential
y11 (298.66,504.09,672.24) (0.37,0.62,0.83) E
y12 (298.66,504.09,672.24) (0.37,0.62,0.83) E
y13 (298.66,504.09,672.24) (0.37,0.62,0.83) E
y21 (261.85,445.69,599.39) (0.32,0.55,0.74) S
y22 (253.67,433.96,599.39) (0.31,0.53,0.74) S
y23 (224.11,391.34,550.34) (0.28,0.48,0.68) S
y24 (256.36,437.56,596.46) (0.32,0.54,0.74) S
y25 (193.31,351.28,520.07) (0.24,0.43,0.64) H
y26 (222.42,397.76,571.17) (0.27,0.49,0.7) S
y27 (246.05,416.89,555.67) (0.3,0.51,0.69) S
y28 (232.35,394.9,550.71) (0.29,0.49,0.68) S
y29 (211.31,361.29,501.38) (0.26,0.45,0.62) H
y210 (299.6,495.36,645.28) (0.37,0.61,0.8) E
y211 (225.42,394.47,578.08) (0.28,0.49,0.71) S
y212 (281.65,470.24,630.1) (0.35,0.58,0.78) E
y31 (252.29,428.45,591.17) (0.31,0.53,0.73) S
y32 (249.42,425.93,591.98) (0.31,0.53,0.73) S
y33 (238.51,402.26,549.06) (0.29,0.5,0.68) S
y34 (217.79,352.05,453.86) (0.27,0.43,0.56) H

Table 12. Fuzzy centers, grades and members for technical specification
Grades Initial Fuzzy center Final fuzzy center Members
High (0.26,0.464,0.604) (0.256,0.437,0.606) y25 , y29 , y34
Strong (0.304,0.527,0.694) (0.298,0.512,0.710) y21 , y22 , y23 , y24 , y26 , y27 , y28 , y211 , y31 , y32 , y33
Essential (0.348,0.59,0.784) (0.364,0.611,0.812) y11 , y12 , y13 , y210 , y212

22 
 
Step 8. Solution comparisons

To reduce the SDLC time, the company has developed various solution packages including various
components as the templates to startup project development. Three solution packages are screened
for further comparisons. FCNP is used to select the best configuration package for the work. Table 13
shows the fuzzy pairwise opposite matrices to evaluate 3 alternatives with respect to 19 criteria. The
prioritization results are shown in the columns T1 , T2 , and T3 in Table 14 by using (5) and (6). The
normalized fuzzy weights in Table 14 are taken from Table 11. The aggregated results are derived by
(8). Centroid defuzzification results using (12) taking the aggregated results determine the rank of
each alternative solution. The higher rank value means the higher preference, and thus T3 is
selected.

Table 13. Fuzzy pairwise opposite matrices to evaluate 3 alternatives with respect to 19 criteria
T1 T2 T3 T1 T2 T3 T1 T2 T3 T1 T2 T3
B11 (FAI=0) B12 (FAI=0) B13 (FAI=0.043) B21 (FAI=0)
+ − −
T1 0 8 4+ 0 8 4− 0 0 5 0 0 0
T2 8− 0 4− 8+ 0 4+ 0 0 4− 0 0 0
− + + − + +
T3 4 4 0 4 4 0 5 4 0 0 0 0
B22 (FAI=0) B23 (FAI=0) B24 (FAI=0) B25 (FAI=0.043)
T1 0 0 0 0 1− 2− 0 0 1− 0 0 2+
T2 0 0 0 1+ 0 1− 0 0 1− 0 0 1+
T3 0 0 0 2+ 1+ 0 1+ 1+ 0 2− 1− 0
B26 (FAI=0) B27 (FAI=0) B28 (FAI=0) B29 (FAI=0)
T1 0 1− 2− 0 2− 4− 0 2− 7− 0 5+ 0
− −
T2 1 +
0 1 −
2 +
0 1 −
2 +
0 6 5 0 5−
T3 2+ 1+ 0 4+ 1+ 0 7+ 6+ 0 0 5+ 0
B210 (FAI=0) B211 (FAI=0.043) B212 (FAI=0) B31 (FAI=0)
T1 0 0 0 0 0 4+ 0 0 8− 0 0 0
+ −
T2 0 0 0 0 0 3 0 0 7 0 0 0
− − + +
T3 0 0 0 4 3 0 8 7 0 0 0 0
B32 (FAI=0) B32 (FAI=0) B34 (FAI=0)
T1 0 0 0 0 1− 5− 0 1+ 7−
T2 0 0 0 1+ 0 3− 1− 0 8−
T3 0 0 0 5+ 3+ 0 7+ 8+ 0

23 
 
Table 14: Decision matrix, results and ranking for selecting the best solution
Normalized Fuzzy weight T1 T2 T3
y11 (0.37,0.62,0.83) (0.42,0.481,0.531) (0.148,0.185,0.235) (0.321,0.333,0.346)
y12 (0.37,0.62,0.83) (0.136,0.185,0.247) (0.432,0.481,0.519) (0.321,0.333,0.346)
y13 (0.37,0.62,0.83) (0.222,0.272,0.321) (0.235,0.284,0.333) (0.432,0.444,0.457)
y21 (0.32,0.55,0.74) (0.296,0.333,0.37) (0.296,0.333,0.37) (0.296,0.333,0.37)
y22 (0.31,0.53,0.74) (0.296,0.333,0.37) (0.296,0.333,0.37) (0.296,0.333,0.37)
y23 (0.28,0.48,0.68) (0.235,0.296,0.358) (0.296,0.333,0.37) (0.358,0.37,0.383)
y24 (0.32,0.54,0.74) (0.272,0.321,0.37) (0.272,0.321,0.37) (0.346,0.358,0.37)
y25 (0.24,0.43,0.64) (0.309,0.358,0.407) (0.296,0.346,0.395) (0.284,0.296,0.309)
y26 (0.27,0.49,0.7) (0.235,0.296,0.358) (0.296,0.333,0.37) (0.358,0.37,0.383)
y27 (0.3,0.51,0.69) (0.198,0.259,0.321) (0.309,0.346,0.383) (0.383,0.395,0.407)
y28 (0.29,0.49,0.68) (0.16,0.222,0.284) (0.247,0.284,0.321) (0.481,0.494,0.506)
y29 (0.26,0.45,0.62) (0.346,0.395,0.444) (0.173,0.21,0.247) (0.37,0.395,0.42)
y210 (0.37,0.61,0.8) (0.296,0.333,0.37) (0.296,0.333,0.37) (0.296,0.333,0.37)
y211 (0.28,0.49,0.71) (0.333,0.383,0.432) (0.321,0.37,0.42) (0.235,0.247,0.259)
y212 (0.35,0.58,0.78) (0.198,0.235,0.284) (0.198,0.247,0.296) (0.494,0.519,0.531)
y31 (0.31,0.53,0.73) (0.296,0.333,0.37) (0.296,0.333,0.37) (0.296,0.333,0.37)
y32 (0.31,0.53,0.73) (0.296,0.333,0.37) (0.296,0.333,0.37) (0.296,0.333,0.37)
y33 (0.29,0.5,0.68) (0.198,0.259,0.321) (0.272,0.309,0.346) (0.42,0.432,0.444)
y34 (0.27,0.43,0.56) (0.198,0.259,0.321) (0.198,0.222,0.259) (0.494,0.519,0.531)
Aggregated Result (1.52,3.10,4.93) (1.60,3.14,4.86) (2.09,3.77,5.41)
Centroid Defuzzification 3.18 3.2 3.76
Rank 1 2 3

6. Discussions
There are different shapes of HOS with some variances. This research presents a general shape
shown in Figure 2, initially for F-CNP-AGC-QFD framework. The correlations among either HOWs
or WHATs are not included in this study since it is still open to discuss [49, 50]. In addition, some
researchers might say normalization makes things worse by opening up the possibility of rank reversal
when one technical attribute is added or deleted [49]. Probably, the normalizing QFD relationship
matrix is regarded as a non-value-added step in the QFD matrices[49]. Thus normalization is not used
for the FQFD in the F-CNP-AGC-QFD framework.
Some applications proposed initial priorities for customer requirements using AHP, and used row
aggregation with WHATs-HOWs matrix and normalization to calculate the final customer
requirements. Such steps look redundant and very likely produce improper results. Since there is no
formal validation for this approach, such steps are purely based personal assumption. This research
24 
 
merely uses the cognitive pairwise comparisons to derive the customer weights without considering a
WHATs-HOWs matrix.

This research proposes Fuzzy Aggregative Grading Clustering (FAGC) to cluster the
multidimensional data. The multidimensional data are firstly aggregated into single dimension data
of high representation for the multidimensional data. Thus FAGC method clusters the single
dimension data. FAGC increases the computational efficiency, since less fuzzy centers or dimensions
are needed to be considered. The numerical results show that only two iterations are needed to
complete the clustering. In addition, the decision makers only refer to the vector of the most
represented centers for the ordinal grades rather than different vectors of centers with respect to
different variables.

The Fuzzy Cognitive Network Process is more appropriate than FAHP. Since FAHP uses paired ratio
scale, the value of better alternative will be overestimated, and the value of worse alternative will be
underestimated [41, 42]. The final priorities of AHP unlikely reflect the fact that the decision is
difficult to be made to select the best one from three alternatives, but reflect that using decision tool
may be redundant [41, 42]. In Table 14, the centroid defuzzification values with narrow range from
3.18 to 3.76 demonstrate that the decision is difficult to be made. Therefore FCNP should be the
appropriate tool for such dilemma situation. To provide more reliable judgement, scales of QFD and
FCNP could be further enhanced and applied by compound linguistic scale [51-53] .

10. Conclusions
This paper proposes the F-CNP-AGC-QFD, which is the hybrid framework combining Fuzzy
Quality Function Deployment (FQFD), Fuzzy Cognitive Network Process (FCNP) and Fuzzy
Aggregative Grading Clustering (FAGC). The hybrid framework includes eight steps: customer
requirements (WHATs) elicitation, technical specifications (HOWs) identification, customer
requirement priorities analysis, customer requirements grading, WHATs-HOWs Matrix assessment,
technical specifications weights analysis, technical specifications grading, and solution comparisons.
FCNP is used for customer requirement priorities analysis and solution comparisons. FAGC is used
for customer requirements grading and technical specifications grading. The Software-as-a-Service
(SaaS) application development is presented to show the applicability and usability of
F-CNP-AGC-QFD. In addition to demonstrated software product development, the proposed method
can be used as the framework for general new product development.

Acknowledgments
I am very grateful for the Editor in Chief, Professor Tom Heskes, and Special Issue Editor, Professor
Kit Yan Chan, and the anonymous referees for their time and efforts to improve and recommend this
work.
25 
 
References
[1]  Y.  Akao,  Quality  function  deployment:  integrating  customer  requirements  into  product  design 
(Productivity Press, 1990). 
[2] B. Prasad, Review of QFD and related deployment techniques, Journal of Manufacturing Systems, 
17 (1998) 221‐234. 
[3]  L.‐K.  Chan,  M.‐L.  Wu,  Quality  function  deployment:  A  literature  review,  European  Journal  of 
Operational Research, 143 (2002) 463‐497. 
[4]  I.  Erikkson,  F.  McFadden,  Quality  function  deployment:  a  tool  to  improve  software  quality, 
Information and Software Technology, 35 (1993) 491‐498. 
[5] S. Haag, M.K. Raja, L.L. Schkade, Quality function deployment usage in software development, 
Commun. ACM, 39 (1996) 41‐49. 
[6] M.I. Elboushi, J.S. Sherif, Object‐oriented software design utilizing Quality Function Deployment, 
Journal of Systems and Software, 38 (1997) 133‐143. 
[7]  J.  Karlsson,  Managing  software  requirements  using  quality  function  deployment,  Software 
Quality Journal, 6 (1997) 311‐326. 
[8]  G.  Herzwurm,  S.  Schockert,  W.  Mellis,  Joint  Requirements  Engineering:  Qfd  for  Rapid 
User‐Focused Software Development (Friedrick Vieweg & Son, 2000). 
[9]  M.  Erder,  P.  Pureur,  QFD  in  the  architecture  development  process,  IT  Professional,  5  (2003) 
44‐52. 
[10]  Y.  Sun,  X.  Liu,  Business‐oriented  software  process  improvement  based  on  CMMI  using  QFD, 
Information and Software Technology, 52 (2010) 79‐91. 
[11] Z. Lianzhang, X.F. Liu, Technical Target Setting in QFD for Web Service Systems Using an Artificial 
Neural Network, Services Computing, IEEE Transactions on, 3 (2010) 338‐352. 
[12]  C.G.  Şen,  H.  Baraçlı,  Fuzzy  quality  function  deployment  based  methodology  for  acquiring 
enterprise software selection requirements, Expert Systems with Applications, 37 (2010) 3415‐3426. 
[13] Z. Sener, E.E. Karsak, A fuzzy regression and optimization approach for setting target levels in 
software quality function deployment, Software Quality Journal, 18 (2010) 323‐339. 
[14]  C.  Liang‐Hsuan,  K.  Wen‐Chang,  Fuzzy  Nonlinear  Models  for  New  Product  Development  Using 
Four‐Phase Quality Function Deployment Processes, Systems, Man and Cybernetics, Part A: Systems 
and Humans, IEEE Transactions on, 41 (2011) 927‐945. 
[15]  C.  Liang‐Hsuan,  K.  Wen‐Chang,  T.  Chien‐Yao,  Fuzzy  Approaches  for  Constructing  House  of 
Quality in  QFD and Its Applications: A Group Decision‐Making  Method, Engineering  Management, 
IEEE Transactions on, 60 (2013) 77‐87. 
[16]  L.  Zhaoling,  G.  Qisheng,  Z.  Dongling,  Product  design  on  the  basis  of  fuzzy  quality  function 
deployment, Systems Engineering and Electronics, Journal of, 19 (2008) 1165‐1170. 
[17] J. Tang, R. Y.K. Fung, B. Xu, D. Wang, A new approach to quality function deployment planning 
with financial consideration, Computers & Operations Research, 29 (2002) 1447‐1463. 
 

26 
 
[18]  Y.Z.  Chen,  E.W.T.  Ngai,  A  fuzzy  QFD  program  modelling  approach  using  the  method  of 
imprecision, International Journal of Production Research, 46 (2008) 6823‐6840. 
[19]  H.‐T.  Liu,  The  extension  of  fuzzy  QFD:  From  product  planning  to  part  deployment,  Expert 
Systems with Applications, 36 (2009) 11131‐11144. 
[20]  E.  Bottani,  A.  Rizzi,  Strategic  management  of  logistics  service:  A  fuzzy  QFD  approach, 
International Journal of Production Economics, 103 (2006) 585‐599. 
[21]  X.X.  Shen,  K.C.  Tan,  M.  Xie,  The  implementation  of  quality  function  deployment  based  on 
linguistic data, Journal of Intelligent Manufacturing, 12 (2001) 65‐75. 
[22]  S.Y.  Sohn,  I.S.  Choi,  Fuzzy  QFD  for  supply  chain  management  with  reliability  consideration, 
Reliability Engineering & System Safety, 72 (2001) 327‐334. 
[23] M. Bevilacqua, F.E. Ciarapica, G. Giacchetta, A fuzzy‐QFD approach to supplier selection, Journal 
of Purchasing and Supply Management, 12 (2006) 14‐27. 
[24]  E.  Bottani,  A  fuzzy  QFD  approach  to  achieve  agility,  International  Journal  of  Production 
Economics, 119 (2009) 380‐391. 
[25] L.‐H. Chen, W.‐C. Ko, Fuzzy approaches to quality function deployment for new product design, 
Fuzzy Sets and Systems, 160 (2009) 2620‐2639. 
[26]  C.‐H.  Liu,  A  group  decision‐making  method  with  fuzzy  set  theory  and  genetic  algorithms  in 
quality function deployment, Qual Quant, 44 (2010) 1175‐1189. 
[27]  Z.  Yang,  Y.  Chen,  Fuzzy  soft  set‐based  approach  to  prioritizing  technical  attributes  in  quality 
function deployment, Neural Comput & Applic, 23 (2013) 2493‐2500. 
[28]  A.  Bhattacharya,  B.  Sarkar  *,  S.K.  Mukherjee,  Integrating  AHP  with  QFD  for  robot  selection 
under requirement perspective, International Journal of Production Research, 43 (2005) 3671‐3685. 
[29] P.T. Chuang, Combining the Analytic Hierarchy Process and Quality Function Deployment for a 
Location Decision from a Requirement Perspective, Int J Adv Manufa Technol, 18 (2001) 842‐849. 
[30] J. Dai, J. Blackhurst, A four‐phase AHP–QFD approach for supplier assessment: a sustainability 
perspective, International Journal of Production Research, 50 (2011) 5474‐5490. 
[31]  A.  Mayyas,  Q.  Shen,  A.  Mayyas,  M.  abdelhamid,  D.  Shan,  A. Qattawi,  M.  Omar, Using Quality 
Function  Deployment  and  Analytical  Hierarchy  Process  for  material  selection  of  Body‐In‐White, 
Materials & Design, 32 (2011) 2771‐2782. 
[32]  Z.  Güngör,  E.K.  Delice,  S.E.  Kesen,  New  product  design  using  FDMS  and  FANP  under  fuzzy 
environment, Appl Soft Comput, 11 (2011) 3347‐3356. 
[33]  C.K.  Kwong,  H.  Bai,  Determining  the  Importance  Weights  for  the  Customer  Requirements  in 
QFD Using a Fuzzy AHP with an Extent Analysis Approach, IIE Transactions, 35 (2003) 619‐626. 
[34]  D.‐Y.  Chang,  Applications  of  the  extent  analysis  method  on  fuzzy  AHP,  European  Journal  of 
Operational Research, 95 (1996) 649‐655. 
[35]  K.Y.  Chan,  C.K.  Kwong,  B.Q.  Hu,  Market  segmentation  and  ideal  point  identification  for  new 
product  design  using  fuzzy  data  compression  and  fuzzy clustering  methods, Appl Soft  Comput,  12 
(2012) 1371‐1378. 

27 
 
[36]  H.‐T.  Liu,  C.‐H.  Wang,  An  advanced  quality  function  deployment  model  using  fuzzy  analytic 
network process, Applied Mathematical Modelling, 34 (2010) 3333‐3351. 
[37]  T.L.  Saaty,  Analytic  Hierarchy  Process:  Planning,  Priority,  Setting,  Resource  Allocation, 
McGraw‐Hill, New York, (1980). 
[38]  T.L.  Saaty,  Theory  and  Applications  of  the  Analytic  Network  Process:  Decision  Making  with 
Benefits, Opportunities, Costs, and Risks, RWS Publications, (2005). 
[39] Y.‐M. Wang, Y. Luo, Z. Hua, On the extent analysis method for fuzzy AHP and its applications, 
European Journal of Operational Research, 186 (2008) 735‐747. 
[40]  K.K.F.  Yuen,  Membership  maximization  prioritization  methods  for  fuzzy  analytic  hierarchy 
process, Fuzzy Optimization and Decision Making, 11 (2012) 113‐133. 
[41] K.K.F. Yuen, The Primitive Cognitive Network Process in healthcare and medical decision making: 
Comparisons with the Analytic Hierarchy Process, Appl Soft Comput, 14, Part A (2014) 109‐119. 
[42]  K.K.F.  Yuen,  Fuzzy  Cognitive  Network  Process:  Comparison  with  Fuzzy  Analytic  Hierarchy 
Process  in  New  Product  Development  Strategy,  IEEE  Transactions  on  Fuzzy  Systems,  (2014) 
10.1109/TFUZZ.2013.2269150. 
[43]  K.K.F.  Yuen,  Pairwise  opposite  matrix  and  its  cognitive  prioritization  operators:  Comparisons 
with  pairwise  reciprocal  matrix  and  analytic  prioritization  operators,  Journal  of  the  Operational 
Research Society, 63 (2012) 322‐338. 
[44]  K.K.F.  Yuen,  Cognitive  network  process  with  fuzzy  soft  computing  technique  for  collective 
decision aiding, The Hong Kong Polytechnic University, Ph.D. thesis (2009). 
[45] K.K.F. Yuen, The primitive cognitive network process: Comparisons with the analytic hierarchy 
process, International Journal of Information Technology and Decision Making, 10 (2011) 659‐680. 
[46]  J.  MacQueen,  Some  methods  for  classification  and  analysis  of  multivariate  observations,   
Proceedings of the fifth Berkeley symposium on mathematical statistics and probability, (California, 
USA1967), pp. 14. 
[47]  J.C.  Dunn,  A  fuzzy  relative  of  the  ISODATA  process  and  its  use  in  detecting  compact 
well‐separated clusters, (1973). 
[48] J.R. Hauser, D. Clausing, The house of quality, Harvard Business Review, 66 (1988) 63‐73. 
[49]  H.  Raharjo,  On  normalizing  the  relationship  matrix  in  quality  function  deployment, 
International Journal of Quality and Reliability Management, 30 (2013) 647‐661. 
[50]  L.‐K.  Chan,  M.‐L.  Wu,  A  systematic  approach  to  quality  function  deployment  with  a  full 
illustrative example, Omega, 33 (2005) 119‐139. 
[51]  K.K.F.  Yuen,  Compound  Linguistic  Scale,  Appl  Soft  Comput,  (2014) 
10.1016/j.asoc.2014.1002.1012   
[52] K.K.F. Yuen, Combining compound linguistic ordinal scale and cognitive pairwise comparison in 
the  rectified  fuzzy  TOPSIS  method  for  group  decision  making,  Fuzzy  Optimization  and  Decision 
Making, (2013) 1‐26. 
 

28 
 
[53] K.K.F. Yu
uen, A Fuzzy Qualitative Evaluation SSystem: A multi‐granular aggregation approach using 
fuzzy compo
f ound linguistic variable, JJournal of In
ntelligent and
d Fuzzy Systeems, 24 (201
13) 61‐78. 
 

Graphiccal Abstract 

 
 
 
Higghlights

z Proposee a hybrid
d framewoork, F-CNP
P-AGC-QFD
D, for genneral produuct developpment
manageement.
z Proposee how Fuzzy y Cognitivee Network Process
P (FCN
NP) is usedd in Fuzzy Quality Funnction
Deploym ment (FQFD D).
z Proposee Fuzzy Agggregative Grrading Clusttering (FAGGC) to classiify the priorrities/weightss into
ordinal grades in FQ
QFD.
z Demonsstrate appliccability and validity off the hybridd method inn cloud softtware appliccation
developpment.

29 
 
Biography

Kevin Kam Fung Yuen received his BSc (Hons) in Enterprise Engineering
and E-business and his Ph.D. in Computational Intelligence and Operations
Research from the Hong Kong Polytechnic University in 2004 and 2009
respectively.
He is currently a Lecturer with the Department of Computer Science and 
Software Engineering, Xi’an Jiaotong‐Liverpool University, China. Previously 
he was an Assistant Professor with Faculty of Economics and Administrative 
Sciences, Zirve University, Gaziantep, Turkey. His research interests include 
computational intelligence, decisions analysis, information systems, algorithms, social network, and 
operations research.     
He has published more than 40 research articles in the journals, book chapters and conferences. 
The  sci/ssci  journals  include  IEEE  Transactions  on  Fuzzy  Systems,  Applied  Soft  Computing,  Expert 
Systems  with  Applications,  Journal  Of  Multiple‐Valued  Logic  And  Soft  Computing,  International 
Journal  of  Information  Technology  &  Decision  Making,  Fuzzy  Optimization  and  Decision  Making, 
Journal  of  the  Operational  Research  Society,  Journal  Of  Intelligent and  Fuzzy  Systems,  and  Iranian 
Journal of Fuzzy Systems. He has served as a guest editor of Neurocomputing. He is a member of 
organizing committee for many conferences. He has served as a reviewer for various journals and 
conferences, including more than 25 sci/ssci journals.   

30 
 

You might also like