Download presentation
Presentation is loading. Please wait.
Published byTracy Anthony Modified over 9 years ago
1
Revision Control Practices in Software Engineering Surekha, Kotiyala Madhuri, Komuravelly Suchitra, Yerramalla
2
Overview Introduction Design and Implementation
Managing Revision Control Experimentation Conclusion Future work References
3
Introduction Revision control system How are Revisions obtained?
Software revisions are obtained when more than one person works on a single module and creates multiple versions of that particular module. RCS: The revision control system is a software implementation, which automatically changes to the main code. This operates only on single file.
4
Introduction contd... Need of RCS
Existing revision control systems perform the merge operation. Revision control software is mainly used by software developers for maintaining documentation and configuration of files. Proved correctness and certainty.
5
Design and Implementation
A programmer or a developer works on parent version creating an independent version. Types of designs are: Operating on Plain Text Operating on Language related structured representation. Semistuctured representation
6
Design and Implementation Contd..
Operating on Plain Text Hierarchically structured information is used. The program includes class, subclass, blocks, procedures and functions. Figure 1. Hierarchically structured program[4].
7
Design and Implementation
The program or a document is always tracked for modifications like merging, removing, editing, and adding. Figure 2. Hierarchical program representation[4].
8
Design and Implementation Contd..
Operating on Language related structured representation. Two way merge algorithm for source code that exploit the tree structure of modern programming language grammar. The source code is transformed in an intermediate XML representation and the merge operation is conducted on the transformed merge operation. Independent from programming language. Parsing tree, Unique ID’s to all nodes.
9
Design and Implementation Contd..
Figure 3.Merging tree structure of source code [3].
10
Design and Implementation Contd..
Semistructured Representation Figure 4.Unstructured Conflicts [1].
11
Design and Implementation Contd..
Minimize the number of conflicts that require manual intervention. Knows about structural elements like language constructs Software artifacts as trees. Two parts: Generic Engine: Knows how to identify and resolve conflicts. Grammar is guide. Small abstract Specification: for each artifact language.(structured and language specific information). Figure 5.Representation of Revisions of STACK example[1].
12
Managing Revision Control
Distributed Version Management Darcs is a distributed version management. This version is used for implementing a “diff” algorithm, Two programming languages are been compared that is C++ and Haskell. Haskell provided better results.
13
Managing Revision Control
Orthogonal Version Management It is a task by managing variants and revision trees of single documents. which are orthogonal to each other and we can identify them in a three - dimensional views such as Variant, Revision and Component. We can merge the components implemented in different platforms. The orthogonal organization allows a simple and clear management. Figure 6. Project’s revision trees [5].
14
Experimentation Image Versioning System
They found a version number using the image appeared on the screen and try to configure to the new version. This was mainly used for such departments which are needs to create the configuration from the scratch After implementing this concept of versioning system, burden of the machine be easily identified using the registry key. Computers can easily upgraded by updating patch levels in the repository. Using these virtual machines, any conflicts occurred by changing documents can be fixed easily. Before critical update they have required patches for every particular version.
15
Experimentation Git hub:
Git, Open source distributed version control system and maintains versions of a document with modified dates and content. Git hub is a popular version control system and provides communication among users. Users can create private or public repositories. Changes are made to cloned copies. Allow users to retrieve the deleted documents. Git hub is an effective way compare different versions.
16
Conclusion With the evaluation of different Revision Control Systems
Track and control the changes in the software. Identify the modified content and also who changed it. Syntax trees, orthogonal and distributed version controls helps in maintaining different versions of text and code documents efficiently. Maintains Patches and updates in the software.
17
Future work More applications need to develop with providing good user friendly environment. Maintainability can be achieved if the projects are developed using Revision control applications. Experiments are going on to move the repositories to the cloud for centralized access. Amazon Ec2, Skydrive ,etc.,
18
References Proceeding s & Proceedings:
Apel, S., Liebig, J., Brandl, B., Lengauer, C., Kastner, C., Semi structured Merge: Re thinking merge in revision control systems, ESEC/FSE ’11 Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on foundations of software engineering , New York, NY, USA, 2011, Pages Gowtham, S., Revision Control System (RCS) in computational sciences and engineering curriculum, XSEDE ’14 Proceedings of the 2014 Annual conference on Extreme Science and Engineering Discovery Environment, New York, NY, USA, 2014, Article No. 76. Hayase, Y., Matsushita, M., Inoue, K., Revision control system using delta script of syntax tree, SCM ’05 Proceeding of the 12th international workshop on software configuration management, New York, NY, USA, 2006, Pages Magnusson, B., Asklund, U., Minor, S., Fine-grained revision control for collaborative software development, SIGSOFT ’93 Proceedings of the 1st ACM SIGSOFT symposium on foundations of software engineering, New York , NY USA, 1993, Pages Reicheberger, C., Orthogonal version management, SCM ’89 Proceedings of the 2nd international workshop on software configuration management, New York, NY, USA, 1989, Pages 137 – 140. Roundy, D., Darcs: Distributed Version Management in Haskell, Haskell ’05 Proceedings of the 2005 ACM SIGPLAN workshop on Haskell, New York, NY, USA, 2005, Pages 1-4. Sprague, R., Revision Control Practices Applied to Computer Configurations, SIGUCCS ’05 Proceedings of the 33rd annual ACM SIGUCCS conference on User Services, New York, NY, USA, 2005, Pages Books: Sommerville,I., Software Engineering, 8th Limited ed. Edinburg Gate, England: Pearson Education
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.