Reutilização é uma das abordagens mais usadas para melhorar a qualidade e reduzir o custo e tempo de desenvolvimento de software. Programação orientada a objetos (OO) é freqüentemente citada como um dos meios para se atingir reusabilidade de software, e frameworks orientados a objetos podem ser usados para promover reutilização tanto ao nível de implementação como ao nível arquitetural. Todavia, existem várias dificuldades associadas ao desenvolvimento e uso de frameworks OO. As mais importantes são a complexidade de projeto e a dificuldade de compreensão e reutilização de frameworks. Este artigo apresenta uma abordagem iterativa e incremental para o desenvolvimento de frameworks orientados a objetos. Esta abordagem cria uma família de frameworks OO com crescente grau de sofisticação, onde cada membro da família é por si só um framework completo e utilizável que contém mais funcionalidades que o anterior. A abordagem proposta é testada em um estudo de caso in-vitro onde uma família de três frameworks e três aplicações, uma para cada framework, são derivadas.