Modelagem e prototipação de um repositório extensível para componentes de software - Schiroky, Alex Marracci (2002)
Várias ferramentas de desenvolvimento utilizam mecanismos para centralizar/gerenciar código compartilhado entre diferentes desenvolvedores ou equipes de desenvolvimento. Estes repositórios geralmente deixam muito a desejar em relação aos serviços que oferecem, não só aos desenvolvedores, mas também aos usuários de sistemas já desenvolvidos, que desejam ter atualizações e correções constantes em seus aplicativos. Surge então a necessidade de disponibilizar esses recursos em um ambiente de trabalho realmente cooperado. Este trabalho propõe a modelagem de um repositório de componentes de software, formado por uma área de armazenamento centralizada comum aos desenvolvedores, e com capacidade de gerenciar componentes e agregar serviços extras, administrando seu ciclo de vida de modo integrado. Para tal, várias tecnologias baseadas em Java foram integradas, tais como as seguintes API's: Enterprise Java Beans (EJB), Java Naming and Directory Interface (JNDI), Remote Method Invocation (RMI), Java Messaging Service (JMS), Java Transaction (JTA), Java Transaction Service (JTS) e Java Database Connection (JDBC).Para que o modelo aqui proposto possua um nível de funcionalidade adequado, são fornecidos vários serviços pelo repositório, atendendo assim às expectativas tanto de desenvolvedores, como dos usuários finais. Dentre outros, são providos os seguintes serviços: Serviço de Descrição, Serviço de Histórico, Serviço de Controle de Versões, Serviço de Teste OO, Serviço de Padrões de Projeto e Serviço de Invalidação de Componentes.