Configuration management attempts to track all elements of a system. By keeping track of these elements errors can be found and solutions are possible. We learned about three cases of common configuration problems that I have personally run into during my time at the University of Hawaii.
Double Maintenance is when multiple copies of the same file exists and any updates have to be done on both files. Shared data is allowing more than one developer to access the same files. Simultaneous updating can create a problem when two developers update at the same time. Luckily, version control is a way to combat these common issues.
Version Control is a case of configuration management where there are multiple versions of a software system. Version control supports:
Github solves these issues using a revision control system. Although, Github is used mainly for software engineering it seems, I would use Github for all projects. I used Github in a previous class, but we were not taught how to take advantage of configuration management or the different revision control systems Github had. Github keeps the master file on your page and you can pull that version to your local computer to work on the system without messing up all the work you have done. If you decide to go a different, route Github allows you to go back to your original copy without having to start completely from scratch. I would definitely use Github for other projects, not just software engineering projects. There is a huge advantage to allowing multiple users to keep a “master” copy on their local computer and make their changes without editing the master. This saves a lot of time and added security, so you know no one will make edits to your work. Configuration management allows projects to get done faster and you can feel confident you are submitting the best version of your work.