Para compartilhar as partes de um modelo com vários usuários ou para simplesmente reduzir o tamanho de um único modelo, é possível separar um modelo em blocos individuais, geralmente conhecidos como fragmentos. Fragmentos ajudam você a gerenciar um modelo usando seções menores, mais gerenciáveis. Eles também oferecem benefícios de desempenho porque são carregados apenas on demand quando o conteúdo é necessário; isto é particularmente útil ao carregar grandes modelos. É muito comum para equipes de desenvolvimento de software trabalharem paralelamente, compartilhando e controlando fragmentos em um sistema de gerenciamento de configuração como o IBM Rational ClearCase.
Quando você importa um modelo Rose que referencia subunidades, você tem várias opções a considerar: pode optar por ter subunidades como pacotes (CAT) e pacotes de componentes (SUB) importados como modelos separados, ou pode optar por ter todo o conteúdo da subunidade importado como fragmento dentro do modelo importado. Você também pode ter uma abordagem mista, importando algumas subunidades como modelos e outras como fragmentos.
Por exemplo, quando você cria um fragmento de um pacote em um modelo existente, seu conteúdo é movido do arquivo de modelo e armazenado no novo arquivo (um arquivo EFX). O novo arquivo contém as seguintes informações:
O arquivo original não retém mais o conteúdo do pacote. Em vez disso, o arquivo de modelo original só referencia o fragmento.