Pair programming is denoted as two programmers sit together to complete cooperatively the code editing and testing tasks on the same computer. One of them acts as a driver role and the other as a navigator role. Meanwhile, these two programmers exchange their roles regularly. Pair programming has become an important practice mode of the agile methods, which was widely payed close attention and studied in the field of software development. Distributed pair programming means the pair programmers in different regions carry out remote collaboration and develop software together through the network.This thesis firstly analyzes the concept, development, advantages, disadvantages and research status of the pair programming and distributed pair programming and then discusses the characteristics, design and implementation of the mainstream distributed pair programming system. The thesis lays special stress on systematically analyzing a current mainstream distributed pair programming system, XPairtise,which thoroughly is studied on its logical structure, design framework and main functions. Besides, the thesis analyzes the ActiveMQ and XML database technology that are adopted to implement the communication between the server and client, and reconstructs the logical architecture of the communication subsystem by using reverse engineering.Then, by using the fitting analysis method the thesis researches the relationship between communication times and code generation lines, and the one between role exchange times and the number of the lines of code generation on the basis of pair programming, and collected some data through the pair experiments. An intervention model (which influences the effect of the partners) is constructed and corresponding parameters are achieved by the above relationships.Finally, on the basis of understanding XPairtise system’s design principle and implementation technology, the secondary development of the XPairtise is carried out.According to the intervention mechanism, we design and implement an intervention subsystem based on the XPairtise. This subsystem realizes the automatic data collection. And according to the intervention model, it can realize the automatic intervention, which greatly improves the efficiency of pair programming. |