ORION: Uma Abordagem para Seleção de Políticas de Controle de Concorrência
Autores
6211 |
2830,230,898
|
|
6212 |
2830,230,898
|
|
6213 |
2830,230,898
|
Informações:
Publicações do PESC
Atualmente, o número de desenvolvedores envolvidos em um projeto de desenvolvimento de software vem aumentando cada vez mais, devido à necessidade de entregar aos clientes sistemas mais complexos, com maior qualidade e em um tempo mais custo. Dessa forma, para que o processo de desenvolvimento de software ocorra de forma organizada, é preciso prover mecanismos de controle de concorrência sobre os artefatos do projeto. Esses mecanismos são implementados por meio de políticas de controle de concorrência adotadas nos sistemas de controle de versão, que podem permitir (política otimista) ou inibir (política pessimista) o paralelismo no desenvolvimento.
Este trabalho de pesquisa apresenta a abordagem Orion, que faz uma análise do histórico de modificações do projeto e seleciona a política de controle de concorrência mais indicada para cada elemento, além de identificar elementos críticos que devam sofrer algum tipo de reestruturação. Essa seleção tem o intuito de minimizar as situações de conflitos, e, consequentemente, aumentar a produtividade da equipe de desenvolvimento. Um protótipo foi desenvolvido para viabilizar a aplicação da abordagem proposta. Além disso, foram realizados dois estudos preliminares para avaliar a abordagem Orion.
Currently, the number of developers involved in a software development project is increasing because of the need to deliver to customers systems with higher complexity and quality and to reduce time-to-market. In order to have the software development process-taking place in an organized way, we just provide mechanisms to control competition over the artifacts of the project. These mechanisms are implemented by concurrency control policies used in version control systems, which may allow (optimistic policy) or inhibit (pessimistic policy) parallel development.
This work presents the Orion approach, which analyzes the historical changes of a project and selects the most appropriate concurrency control policy for each element. In addition, it identifies critica1 elements that must receive some kind of refactoring. This selection aims to minimize conflict situations, and thus improve the productivity of the development team. A prototype was built to enable the application of the proposed approach and two studies were performed as a preliminary evaluation.