Managing Group Project Efficiency

31 Jan 2017

Configuration Management? What’s that?

Configuration management is something that everyone who works with others should know. It allows groups of people working on a program to do work efficiently. If people were to work on a project without a way to keep track of everything being done, it would take many times longer to accomplish tasks. Especially if they just emailed code being worked on back and forth. Any small change in the system could cause the whole program to break, let it be a different machine or different program running the code. If it works fine on one machine but not another, then there is a configuration management problem.

Sounds kinda complicated

Configuration management includes storing, tracking, and updating any changes made by any user. There is a problem if someone has two copies of a program where one works and one doesn’t. If the person works on the non-working program, they would be wasting their time. The person has to make sure changes made to one program is made to the other to ensure everything works the way it is supposed to. Another big problem is if two people are working on the same program and update the same program the same time, one person’s changes will not implemented. This could be fixed if they both had a copy of the program and update it without updating the original one. That way, everyone can see what changes were made in each program and “merge” the programs together so what needs to be there will be there.

Configuration management was a problem

I have run into said problem before in ICS 111 (Intro to Computer Science I) on the final project, which was my first group project. Each person was in charge of a part for the program and some parts only worked if someone else’s part was done. With that, part of the added on program did not work because the original part was changed and the person did not get the most recent updates to that part. We had multiple versions of the same program so we had to keep track of which program was the one that was most up to date and working. If we had learned configuration management before then, we would not have had the problem and would have been able to work more efficiently.

Git(Hub)

I think that Git may have been more popular because of GitHub. GitHub was launched about three years after the launch of Git. GitHub is a version control repository hosting site that allows users to do many things to repositories. Some of which include cloning, forking, and pulling among many other features. GitHub made using Git a lot easier, which in turn boosted its popularity. GitHub is a big help to configuration management with all its functionality. One can push any changes to the cloud and pull it back onto their systems with ease. It tracks all changes made to a file and when the changes were made so if you ever need to look at an older version, you can just get it from there. All in all, Git and GitHub may have very well made each other more popular due to how well they work with each other.