A time to market approach by DevOps
Software development and its underlying tools have progressed greatly in recent years, thanks to brilliant minds offering innovative solutions to long-standing problems.
We now live in an age where software is an essential component of daily life. Many daily activities, whether at work or elsewhere, rely on software or multiple pieces of software.
Any software with a large user base must be functional at all times, and updates or new features must be implemented with minimal interruptions to service.
This is a thriving landscape, but also a challenging one. One area of development that has lagged behind other advances is Version Control Systems (VCS).
While developers may already be familiar with VCS, those outside the software development space need not worry – we’ll catch you up.
In basic terms, a VCS is a software tool used to manage ongoing work and changes to the source code of a program, often on an ongoing basis. However, there are crucial differences between old and new VCS standards. Essentially, old VCS standards can no longer keep pace with the needs of modern dev teams and software, and transitioning from one system to another (referred to as VCS migration) is no easy task.
Thankfully, Vinay Singh, Ph.D., has researched and proposed a novel VCS migration model based on extensive research and over fifteen years of experience in the software industry. This model makes it much easier for teams to execute VCS migrations.
Vinay is a software and IT expert with 21 published research papers and 2 books. He is very active in the international software and IT community, serving as a keynote speaker for two conferences, reviewing research papers, and earning numerous citations from notable industry colleagues.
Vinay was recently invited to be a guest editor for a special issue of iTDAF (IETI Transactions on Data Analysis and Forecasting) focused on data analytics in modern Version Control Systems. He was also asked to become a member of the international editorial board of the International Journal of Scientific Research in Science, Engineering, and Technology, a peer-reviewed and refereed international scientific research journal.
We were able to speak with Vinay about his novel VCS migration model, dive into its major benefits, and discuss reactions to the model thus far.
The importance of VCS migration
Explaining the importance of VCS migration, in general, is especially important for laypeople without experience in software development and IT who might be wondering what all the excitement is about.
We’ve already covered why VCS is so important for ongoing development, but why is VCS migration such a big deal?
Here’s how Vinay described the foundations of VCS and the need for VCS migration.
“The asset of any IT industry is the software code. The benefit of the Version Control System is that it facilitates a platform for several project teams to save their day-to-day progress on code in a progressive style. It means the state of the software code is kept and updated in the form of a version. The changes may include new functions, features, or bug fixes.”
At a basic level, that’s an effective system. Various teams can work on the code, making changes as needed, and the teams can track those changes over time.
Unfortunately, more traditional version control systems are based around centralized architecture and, in turn, do not support modern approaches or many modern features.
“Old version control systems do not have a proper branching and merging strategy, which leads to severe merge-conflict issues, which wastes time since multiple project teams have to resolve that issue. This negatively impacts business loss, delays in product delivery, and even the reputation of the IT industry as a whole.”
These outmoded version control systems are at odds with the expectation that the IT industry be able to build stable, fast, and reliable products.
“In contrast, modern version control systems are fast, secure, distributed, and support non-linear commit sequences. Hence, the IT industry needs to migrate from the old VCSs like CVS and SVN to modern distributed version control systems like GIT.”
Ok, so there’s a clear need to advance, switching to new VCSs, but the challenge there is that, at least so far, no VCS migration model (a kind of guide or process for switching from one VCS to another) covers all the aspects of migration in a global solution.
This is where we finally come to Vinay’s migration model, which has a large number of advantages for teams ready to make the switch.
Vinay’s VCS migration model
Through a great deal of hands-on experience, Vinay has learned the ins and outs of specific VCSs, including SVN and GIT.
Based on his knowledge, he was invited to explore VCS migration, basically as a proof of concept at that point.
“It was a special kind of migration project which not only required knowledge of heterogeneous version control systems but also entailed research to identify the gaps of the pre-migration, mid-migration, and post-migration phases. The final expectation was to build a VCS migration model by using DevOps and automation skills.”
So how did it go? Well, we might have spoiled it for you already with mentions of Vinay’s success, but the positive results of this initial research were really just the beginning.
“I received positive feedback from IT leaders and customers. During seminars and meetings, I got to know its impact on the IT industry, the business world, and society. Then I decided to dive deep into considering this VCS migration as my research topic and take this migration to the next level through research, DevOps, and automation skills.”
Dive deep he did, and Vinay was able to improve his migration model through research and a lot of hard work, leading to a whole swathe of benefits for businesses needing to migrate.
The benefits of effective VCS migration and Vinay’s migration model, in particular, are numerous.
For one, this migration facilitates better collaboration between several different stakeholders and project teams. It also contributes toward a more stable and reliable business product and allows for the delivery of the end product with the Time to Market factor in mind.
In addition, “it helps to enhance the security of the software code, considered an asset in the IT industry, and it enables the ‘offline commit-offline build’ approach. It also facilitates a distributed approach rather than a centralized one. It helps the system migrate to the modern VCS, which can be easily accommodated in cloud environments like AWS, Google, and Microsoft cloud environments. Lastly, modern migrated VCS can be easily integrated with modern DevOps standards and modern software technologies like microservices, Jenkins, Kubernetes, AppDynamics, and Splunk.”
Vinay has called this an “inspirational VCS migration model,” one that can offer a stepping stone toward proposals of global solutions.
“It has opened dimensions for the researchers and DevOps engineers to think beyond single version control system boundaries and take this model as a global solution for all sorts of VCS and continue to develop this research to the next level.”
For the moment, Vinay’s next step in this process is to incorporate cryptography into his migration model.
But in the meantime, the model has been a clear success in the research community.
A smash hit
Thus far, Vinay’s VCS migration model has been a rousing success. An initial proposal received feedback along the way and was improved over time.
Vinay presented this migration model by authoring multiple research papers. These papers outlined the model itself and addressed migration issues, mitigating risk, the enhanced security it offers, and how it could be integrated with DevOps (a methodology in IT and software development that helps to streamline and shorten the timeline of systems development).
Vinay’s research papers on the model were published in highly reputable journals, including Bentham’s Science Publishers, CMC-COMPUTERS MATERIALS & CONTINUA, and PalArch’s Journal of Archaeology of Egypt/Egyptology.
“My research paper ‘A Detailed study of security patterns in DevOps and Version Control System’ was presented at the 7th International Conference on Production and Industrial Engineering and awarded as the best research paper.”
As a direct result of these papers, Vinay was asked to be a keynote speaker at the International Conference on Advancement in Interdisciplinary Research in July of 2020, as well as for a workshop hosted by Graphic Era University in March of this year.
Further, Vinay has been invited to judge and review research work from research scholars at several conferences, such as ICAIR-2020, ICAIR-2021, ICMLDE-2022, SV-TDFS 2022, ICASCML 2023, and ICSGRC 2023.
“I have also received future reviewer requests from CTAS 2024 conferences as well. For my research contribution, I was invited to receive the “Aishwarya Memorial Research Scholar Award” after the recommendation of the executive council of SERF, India.”
To top it all off, Vinay’s research has also generated intellectual property, which has been filed with the Patent Office, labeled “Version Control System for and Method for Migration of Data from SVN Server to GIT Server.”
Even after all these accomplishments, Vinay continues to explore VCS and VCS migration.
“This VCS Migration Model is mature and provides a holistic solution to all VCS. It meets contemporary industry requirements and resolves several migration issues, but the journey has not ended here. I am moving to take my research to the next level by exploring some options for the effective utilization of cryptography in VCS migration for high security.”