Технологии разработки программного обеспечения

Купить съемная тонировка в краснодаре на сайте http://tonirovka-ug.ru. |

Связность объектов - часть 4


Склеенные лексемы не требуют связывания всех секций данных, поэтому данная метрика определяет более слабый тип связности. Слабая связность по данным вычисляется по формуле:

,

где G(CSA(C)) — объединение склеенных лексем каждого из методов класса. Класс без склеенных лексем не имеет слабой связности по данным. Наиболее точной метрикой связности между секциями данных является клейкость данных (Data Adhesiveness). Клейкость данных определяется как отношение суммы из количеств секций, содержащих каждую склеенную лексему, к произведению количества лексем данных в классе на количество секций данных. Метрика вычисляется по формуле:

.

Приведем пример. Применим метрики к классу, профиль секций которого показан в табл. 14.2.

 

Таблица 14.2. Профиль секций данных для класса Stack

array top size

Класс Stack

 

class Stack {int *array, top, size;

 

public:

 

Stack (int s) {

2 2

size=s;

2 2

array=new int [size];

 2

top=0;}

 

int IsEmpty () {

 2

return top==0};

 

int Size (){

 2

return size};

 

intVtop(){

3 3

return array [top-1]; }

 

void Push (int item) {

2                2                 2

if (top= =size)

 

printf ("Empty stack. \n");

 

else

3                3                 3

array [top++]=item;}

 

int Pop () {

 1

if (IsEmpty ())

 

printf ("Full stack. \n");

 

else

 1

--top;}

 

};

Очевидно, что CSA(Stack) включает три секции с 19 лексемами, имеет 5 сильно склеенных лексем и 12 склеенных лексем.

Расчеты по рассмотренным метрикам дают следующие значения:

SDC(CSA(Stack)) = 5/19 = 0,26

WDC(CSA(Stack)) = 12/19 = 0,63

DA(CSA(Stack)) =(7*2 + 5*3)/(19*3) = 0,51

 

Метрики связности по методам

Д. Биемен и Б. Кенг предложили метрики связности класса, которые основаны на прямых и косвенных соединениях между парами методов [15]. Если существуют общие экземплярные переменные (одна или несколько), используемые в паре методов, то говорят, что эти методы соединены прямо.


Начало  Назад  Вперед



Книжный магазин