= 5. In a normal situation, each task executes its 
service according to its primary path. Once, for 
some reason, service N becomes unavailable. In this 
case, the service switching occurs. Service N will be 
switched to its alternative which is service E, which 
depends on service G. Task1’s degree of coupling 
has now increased from 8 to 13 as discussed earlier. 
Task2, at the same time, has increased its overall 
degree of coupling from 5 to 16 due to the switching 
across tasks. Since both Task1 and Task2 belong to 
 
the same system, the total degree of coupling of this 
system has increased from 8+5 = 13 to 13+16 = 29. 
The increased degree of coupling of a system 
implies that it becomes more vulnerable. 
3.3  Determining the System True 
Degree of Coupling 
In the two sections above, we discussed about the 
couplings within and across tasks. When a task 
within the system needs to switch from a primary 
service to the alternative services, the degree of 
coupling usually increases. That is because when we 
design software, we usually select the best path, i.e. 
the path that has the lowest overall degree of 
coupling, to be our primary path, and some other 
path with higher degree of coupling to be an 
alternative one. Therefore, once a service switching 
occurs, the degree of coupling usually increases. 
Since the degree of coupling can be used for 
software quality measurement, considering only the 
degree of coupling of the primary path may no 
longer be accurate because it is not guaranteed that 
the primary path will always be available, i.e. a 
service switching occurs and the degree of coupling 
will change. On the other hand, considering only 
alternative path is equally unfair. Thus, the system 
designer should take account for the degrees of 
coupling in both primary and all alternative paths. 
Equations (2) - (4) suggest the proper degree of 
coupling of a system using the probability as the 
weight. 
 
∑
  
(2)
= 
 
 
(3)
= 
∑
 
(4)
 
,where  
 is the degree of coupling of the system, 
 is the direct coupling of 
 within 
the system, 
is the probability that the primary path 
will be used in task p, 
 is the total dependency along the primary 
path, 
 is the total degree of coupling along the 
alternative path, 
  is the probability that the alternative 
path will be used in task p, 
  is the total dependency along the 
alternative path x. 
 
For a simplest case, a system consists of two 
separated tasks; say T
a
 and T
b
, each of which relies 
on its main service path. Suppose the degrees of 
coupling primary paths of T
a
 and T
b
 are 8 and 11, 
respectively. An alternative path is provided for each 
main task, such that the alternative path of T
a
 has 14 
degree of coupling, which the one for T
b
 has 17 
degree of coupling. The probability that the main 
service path in T
a
 to become unavailable is 5%, and 
10% for T
b
. Then the overall degree of coupling of 
this system will be calculated as shown below. Then 
 =  0.95, 
 =  0.90, 
 =  0.05, 
 
= 0.10, 
 =  8, 
 =  11, 
 = 14, and 
 = 17. 
 
  
 =  
 
    =  (0.95)(8) + (0.05)(14)
 
  = 8.3 
 
  
 =  
 
  = (0.90)(11) + (0.1)(17) 
  = 11.6 
 
Thus,  
 =  
 
    =  8.3 + 11.6  
  = 19.9 
 
From above example, we consider the degree of 
coupling from both primary and alternative paths. 
4 CONCLUSIONS 
This study proposes a technique that can be used to 
determine the quality of software systems through 
the overall degree of couplings, particularly for non-
disruptive systems. The system continuity can be 
achieved by providing alternative service paths to 
critical ones, so that the system may switch the 
execution to the alternative services once the main 
services become unavailable. 
It is quite natural that the degree of couplings of 
the alternative path is higher than the main path 
The Determination of Service Couplings for Non-disruptive Systems
213