forøgelse af programdesignkvaliteten er en vigtig forskningsudfordring i objektorienteret programudviklingssystem. Samhørighed er et af nøglespekterne, der hjælper med at evaluere et programmelsystems kvalitet og modularitet på designniveau. Det hjælper med at skabe programmelkomponenter, der er direkte genanvendelige til branchen på grund af deres mindre afhængighed af andre komponenter. I dette papir foreslås en ny samhørighedsmåling for objektorienteret program, navngivet som Brugsmønsterbaseret samhørighed (UPBC), som beregnes på modulniveau. Dette papir betragter klasse som et modul oprindeligt og efterfølgende gruppe af klasser (dvs.en pakke) betragtes som et modul med det formål at forbedre den samlede samhørighed. Denne metric udnytter de hyppige brugsmønstre (FUP) ekstraheret fra forskellige medlemsfunktioner interaktioner for at fange modulets sammenhængskraft. Endvidere bruges den målte samhørighedsværdi til at udføre klyngedannelse af moduler for at øge samhørigheden og mindske koblingen mellem moduler samtidigt. Klyngningen udføres ved hjælp af en nyligt foreslået klyngealgoritme kaldet FUPClust (hyppig Brugsmønsterbaseret klyngedannelse) baseret på FUP-interaktioner mellem moduler. Den foreslåede fremgangsmåde anvendes på to Java-systemer, og de opnåede resultater viser en betydelig forbedring af programmelsystemets sammenhængskraft.