Dev-Ops for beginners

Sri Harsha Kantipudi
4 min readJun 9, 2020

When Looking at recent IT trends DeV-Ops emerged as an absolute winner. This is my first article on medium and I am going to discuss stages in DeV-Ops with my small experience

What is DevOps

DevOps is the combination of two words Dev-Ops.

Dev- Development

Ops- Operations

DeV-Ops allows a single team to handle the entire life-cycle, from development, testing, deployment, and operations.

Let’s make it clear that DevOps is not a technology, tool, or any innovative framework.

Development and operations teams work separately from each other. In this article, I am going to discuss different stages in the devolvement phase and on upcoming articles. I will deal with the operation stage

Development (Dev) Phase:

Plan:

This is the first stage in DevOp's life cycle which covers everything that happens before developers start writing code, and it’s where a Project manager gets requirements from stakeholders and they will create design documents, metrics, and road-map to guide future development.

DeV-Ops will use Agile Methodology which provides a variety of tools that help track the project progress, issues using a ticket management system

Popular Tools: MS-Excel, Powerpoint

Code:

Once the planning stage finishes the development team will get work in the form of Sprints (JIRA). For good coding practices and to reduce Build Failures. we will be assigned with standard design documents which will help enforce consistent code-styling

Now software developers will develop the code and then pushed to a version control system (Git). Every-time a new code is pushed, a different version is created on the version control system, it keeps track of all the different versions that have been pushed so far.

Popular Tools: JIRA, GIT

Git tool is a version control system tool that is used to develop the source code by developers and sent to the Git repository and we have to edit the code in the repository.

Build:

Once a developer finishes their task, they will commit their code to a shared repository

Now code review package will be created and now Another developer (From internal and external) will review the code changes by taking design documents as a reference and they will approve the pull-request if everything was correct. This is a manual review of identifying issues early.

Once code review approved the pull request triggers then Jenkins (CI) will test and compile your code if everything is fine it will deploy the code to production else it will tell you that build failed and you will fix the bug/error. With Jenkins, you can schedule your test that needs to get executed and it will run on an event, time [nightly, every 2 hours, every week, every month, etc.

Finally, it will be forwarded to the QA team for Regression testing. If the build fails, or any of the tests fail, the pull-request fails, and the developer is notified to resolve the issue.

Popular Tools: Jenkins, Maven, Style-cop

Jenkins uses MSBuild, Maven, or Ant as its build tool for continuous integration. You can use Maven without Jenkins if you choose not to do CI.

Test:

Here, Git will be automatically deployed to some servers for continuous testing. After that, a series of manual and automated tests are performed. Manual testing will be done on the application by people as per customer requirements and it will highlight if there is an issue that should be addressed before deploying into production servers.

At the same time, automated testing will be performed against the application by running the Autotests (AT) which was created by testing team using Python or Perl or VB

It will check performance with respect to customer infrastructure (for example How the application was running at windows 32 bit and 64 bit) and test the performance of the application and checks the performance of the application. After code passes all the test cases, then it is pushed to the Production Server.

Popular Tools: Selenium, TestNG, JUnit

This is the stage where the developed software is continuously tested on the server for bugs. If the piece of code passes all the test cases, then it is pushed to the Production Server

Conclusion:

In this document, I discussed the basics of DevOps. It includes the phases, the roles & finally, the lifecycle and usage of the tools and skills for recruiters.

--

--