Zvýšení softwarový design, kvalita je klíčovou výzvou pro výzkum v objektově orientovaného softwaru vývoj systému. Soudržnost je jedním z klíčových aspektů, který pomáhá hodnotit kvalitu a modularitu softwarového systému na úrovni návrhu. Pomáhá vytvářet softwarové komponenty, které jsou přímo opakovaně použitelné pro průmysl kvůli jejich menší závislosti na jiných součástech. V tomto článku je navržena nová metrika soudržnosti pro objektově orientovaný software, pojmenovaná jako usage Pattern Based soudržnost (Upbc), která je vypočtena na úrovni modulu. Tento článek nejprve považuje třídu za modul a následně je skupina tříd (tj. balíček) považována za modul s cílem zlepšit celkovou soudržnost. Tato metrika využívá časté vzory použití (FUP) extrahované z různých interakcí funkcí členů k zachycení soudržnosti modulu. Dále se naměřená hodnota soudržnosti používá k provádění shlukování modulů za účelem zvýšení soudržnosti a snížení vazby mezi moduly současně. Shlukování se provádí pomocí nově navrženého shlukovacího algoritmu s názvem FUPClust (časté využití Pattern based Clustering) založeného na FUP interakcích mezi moduly. Navrhovaný přístup je aplikován na dva Java softwarové systémy a získané výsledky ukazují významné zlepšení soudržnosti softwarového systému.