Abstract:
As a result of increased competition and customer expectations many companies such as Google and Facebook have embraced rapid development. In rapid development methodologies such as scrum, several releases are launched before the final delivery of the product. Each particular time period is called Sprint. When the developer or the tester needs to revert to a particular version, they find it difficult to do so. This research provides a proposed framework with the aim of analyzing the different versions and finding the difference between them in terms of classes, functions and variables. This framework designed this framework using the Abstract Syntax Tree Analysis to analyze the versions, then compare and extract a report to help the developer determine the required version. The results show that thea proposed framework takes a times less than one hundredth and four tenthMillisecondto compare two files and find the difference between them, and less than 5870 Millisecondto compare two versions. The framework performance is evaluated by comparisonwith tools (JAPICC, CodeCompre). The performance evaluation was conducted using three small projects (as a case study). When comparing two files, the results showed that the CodeCompre is better than the framework. The CodeCompre compares the entire file, compared to the framework, which compares only the names of functions and variables. The main conclusion is that the framework showed good results in finding the difference between versions in terms of classes, functions and variables compared to the JAPICC tool. The contribution and importance of this study is that the framework can be used by companies that adopt Scrum methodology to compare versions.