aumentar a qualidade do design de software é um desafio chave de pesquisa no sistema de desenvolvimento de software orientado a objetos. A coesão é um dos spect chave que ajuda a avaliar a qualidade e modularidade de um sistema de software ao nível do design. Ele ajuda a criar componentes de software que são diretamente reutilizáveis para a indústria por causa de sua menor dependência de outros componentes. Neste artigo, uma nova métrica de coesão para software orientado a objetos, chamada de Coesão baseada em Padrão de Uso (UPBC), é proposta que é computada ao nível do módulo. Este artigo considera a classe como um módulo inicialmente e subsequentemente um grupo de classes (ou seja, um pacote) é considerado como um módulo com o objetivo de melhorar a coesão global. Esta métrica utiliza os padrões de Uso freqüentes (FUP) extraídos de diferentes interações de funções membros para capturar a coesão do módulo. Além disso, o valor de coesão medido é utilizado para realizar o agrupamento de módulos, a fim de aumentar a coesão e diminuir o acoplamento entre módulos simultaneamente. O agrupamento é realizado usando um algoritmo de agrupamento recém-proposto chamado FUPClust (Clustering baseado no padrão de uso frequente) baseado em interações FUP entre módulos. A abordagem proposta é aplicada a dois sistemas de software Java e os resultados obtidos mostram uma melhoria significativa na coesão do sistema de software.