Software development is maturing from a Wild West environment to a bureaucratic nightmare. However, there are tips you can follow to keep your coders coding, control of the project and still meet your objectives with a minimal risk of failure. Here are five essential tips for successful devops implementation.
Don’t Go Big
The bigger the software development project, the harder it is to complete on schedule and test as thoroughly as it needs to be. Scope creep is worse when you’re building a big project, since they think you can add just one or four more little changes, not caring how it impacts testing or deployment. If you choose smaller and more frequent software changes, then you have the time to thoroughly test each software change and the ability to tell people that although you cannot add it now, you plan to do it in the next release you know is coming up.
Require Developers to Check In Daily
One of the worst problems that arises, whether during software development or document management, is the tendency of people to check out code or documentation, working on it for hours or days before checking it back in. If anyone else tries to work on it, they may be prevented from doing so by the data management software. Or they may be allowed to access it and begin working with what is already an obsolete version. The solution is requiring developers to check in their code to the trunk at least daily at the end of the day. You should also require those working on test notes, product documentation and test scripts to check in their work daily so that everyone starts each day working from the same, literal page.
Test, Test, Test
You should test your code thoroughly before rolling it out into production. However, the testing needs to be across many different environments, hardware configurations and browsers, where applicable. What works on a Linux box may bomb on an Apple PC. What works well on an iPhone may not run on a Samsung smartphone. Test everything across all the major pieces of hardware your customers use, and across all of the major operating systems they use. Where possible, run beta tests of the upcoming OS and run your software in it.
Have Developers Support Operations
It is essential to have development support operations. For example, when operations is deploying your new software to users’ computers or updating the desktop image in the cloud, have developers available in case there are problems. Don’t let developers work late nights and weekends but never not have one available during the work day when operations and tech support may come to them with questions that may actually be their purview.
Keep Environment and Software Development in Synch
You should build the code and environment at the same time so that everyone is working in the same environment and no one is confused by changes in the environment as they are trying to code. Have a common, controlled software development and production environment creation process. When you backup code and key files, backup the environment as well. Talk to a devops consulting firm if you don’t know how to implement this.
Successful devops can only be done properly through proper planning. If you manage to follow the tips in this article, devops implementation should be a breeze.