What is DevOps? - DevOps explanation by WebGentle | Explained Dev
Summary
TLDRThis tutorial introduces the fundamental concepts of Azure DevOps, a complete guide for both beginners and experienced users. It defines DevOps as a collaborative culture between development and operations teams, emphasizing its significance in the software development lifecycle. The video covers the basics of DevOps, its benefits like faster deployment, quality assurance, and enhanced collaboration, and highlights the importance of learning DevOps for various roles in the software development process. It also touches on the automation tools available to facilitate DevOps practices, ensuring a secure and efficient workflow.
Takeaways
- đ The tutorial is a comprehensive guide to Azure DevOps, suitable for both beginners and experienced users.
- đïž DevOps is not a tool or methodology, but a culture and practice that bridges the gap between development and operations teams.
- đ€ The need for DevOps arises from the challenges in integrating development and operations processes in software development.
- đĄ Benefits of learning DevOps include understanding the complete software development lifecycle and improving collaboration across teams.
- đšâđŒ Everyone involved in software development, from developers and testers to product owners and operations teams, should learn DevOps.
- đ DevOps enables fast delivery by automating the process from code commit to deployment, enhancing speed and efficiency.
- đ Quality is maintained through automated testing and deployment processes, ensuring that only high-quality code is pushed to production.
- đ Rollbacks are made easy with DevOps, allowing teams to quickly revert to previous versions if needed.
- đ€ Collaboration is a key aspect of DevOps, with all teams working together to build a great product.
- đ DevOps brings more agility to development by treating every commit as a potential final delivery, aligning with Agile principles.
- đĄïž Security is a major concern in DevOps, and tools like Azure DevOps offer robust security features to ensure the safety of the development process.
Q & A
What is the main focus of this tutorial?
-The main focus of this tutorial is to provide a comprehensive understanding of Azure DevOps, covering everything from scratch, whether you are a beginner or an experienced user.
What is the agenda for the first part of the tutorial?
-The agenda for the first part includes understanding what DevOps is in general, its need, who should learn DevOps, and the benefits of learning DevOps.
How does the software development life cycle typically work?
-The software development life cycle typically involves planning, coding, building the code, testing, deploying on the server, performing operations, and monitoring the server.
What is the difference between working in a startup and a big organization in terms of software development?
-In a startup or small team, the same team handles planning, development, and deployment. In contrast, in a big organization, different teams handle planning, development, and operations, each with specific roles.
What is the role of the business team or product owner in the software development process?
-The business team or product owner is responsible for working with the client and focusing on the planning part of the product.
What is the significance of Agile in bridging the gap between teams?
-Agile helps in filling the gap between the business team or product owner and the development team, ensuring they work together towards the success of a product.
What is DevOps and how does it relate to the development and operations teams?
-DevOps is a culture or practice that brings together the development and operations teams to work collaboratively, filling the gap between them and ensuring the quality of the product throughout the software development life cycle.
Why is DevOps considered a culture or practice rather than just a tool or process?
-DevOps is considered a culture or practice because it emphasizes the collaboration and communication between development and operations teams, rather than being a specific tool or process.
What are some of the benefits of learning DevOps?
-Benefits of learning DevOps include fast delivery of code, reduced time for testing and deployment, easy rollback of releases, improved quality of code, enhanced collaboration, increased agility, ease of use, no maintenance cost, reliability, and security.
Who should learn DevOps according to the tutorial?
-Everyone involved in software development, including developers, testers, product owners, scrum masters, operations team members, individual developers, freelancers, management, and clients, should learn DevOps.
Outlines
đ Introduction to Azure DevOps Tutorial
The tutorial begins with a warm welcome and an introduction to Azure DevOps. It promises a comprehensive guide for both beginners and experienced users. The first part focuses on explaining DevOps in general, covering its importance, the need for it, and the benefits of learning it. The video outlines the software development life cycle, the roles of different teams in small and large organizations, and the evolution from the waterfall model to Agile and then to DevOps. DevOps bridges the gap between development and operations teams, promoting collaboration and efficiency.
đ How DevOps Enhances Collaboration and Quality
This section discusses the common challenges in software development, such as environment-related issues that developers often encounter. DevOps addresses these by ensuring that development and operations teams work together, focusing on maintaining the environment and product quality. The tutorial emphasizes the importance of automated tools in DevOps, which help automate processes and ensure continuous integration and delivery. The aim is to streamline development, testing, and deployment, making the entire process more efficient and reliable.
đ„ Who Should Learn DevOps
The tutorial identifies the various professionals who should learn DevOps, including developers, testers, product owners, scrum masters, operations team members, individual developers, freelancers, management, and clients. It highlights the benefits for each group, such as improved processes, faster development and deployment, and better management and monitoring of projects. DevOps is technology-agnostic and beneficial for anyone involved in software development, regardless of their specific role or the technology they use.
đ Benefits of DevOps
This section outlines the numerous benefits of adopting DevOps, including fast delivery, reduced time due to automation, easy rollback of features, improved quality through automated testing, enhanced collaboration among teams, increased agility, ease of use, no maintenance costs, reliability, and security. The tutorial emphasizes that Azure DevOps, which will be used throughout the tutorial, offers a secure environment. It concludes by encouraging viewers to like the video, share feedback, subscribe to the channel, and enjoy their day.
Mindmap
Keywords
đĄAzure DevOps
đĄDevOps
đĄSoftware Development Life Cycle
đĄAgile
đĄAutomation
đĄDeployment
đĄRollback
đĄQuality Assurance
đĄCollaboration
đĄSecurity
đĄClient
Highlights
Introduction to Azure DevOps, a complete tutorial for beginners and experienced users.
Explaining the general concept of DevOps before diving into Azure DevOps specifics.
Agenda of the video covering what DevOps is, its necessity, target audience, and benefits.
Basic life cycle of software development from planning to monitoring.
Role distribution in small teams versus larger organizations with distinct teams for planning, development, and operations.
The impact of Agile in bridging gaps between business and development teams.
Definition of DevOps as a culture where development and operations teams collaborate.
DevOps is not a tool or process but a cultural practice to ensure product quality and environment consistency.
DevOps fills the gap between development and operations, similar to how Agile improved collaboration between business and development.
Market availability of various tools to automate DevOps processes.
DevOps enables automated life cycle management on each code commit.
Who should learn DevOps, including developers, testers, product owners, and operations team members.
DevOps is technology-agnostic and beneficial for individual developers and freelancers.
Importance of DevOps for management teams to understand development processes and progress.
Clients benefit from understanding DevOps to get clear insights into product development.
Benefits of DevOps including fast delivery, reduced time for testing and deployment, easy rollback, improved quality, and enhanced collaboration.
DevOps promotes more agility by treating every commit as a potential final delivery.
Ease of use, no maintenance cost, reliability, and security are highlighted as key advantages of DevOps.
Encouragement for viewers to like, comment, share, and subscribe for more content on Azure DevOps.
Transcripts
Hi There, Welcome to this new tutorial.
In this tutorial we will learn all about Azure DevOps,
so basically this is going to be a complete tutorial of the Azure DevOps.
and everything we will learn from scratch.
so, If you are completely beginner to Azure DevOps or you are experienced to Azure DevOps.
then you can watch the tutorial and you will learn lots of things
I will say most of the things of the Azure DevOps through this tutorial.
This is the first part of this tutorial
and in this part we will learn- What is DevOps in general?
We will not talk about Azure DevOps.
I will simply talk about- What is DevOps?
Let's start, First of all let's have a look-
What is the agenda of this video?
In this video we will learn- What is DevOps ?
What is the need of DevOps ?
Who should learn DevOps?
What are the benefits of learning DevOps?
These few important questions we are going to cover in this video
before DevOps let's have a look on how software development works?
So basically I will be discussing a basic life
cycle of the software development.
In the starting of everything you have to a make a plan.
once your plan is ready you have to write the code,
once you are done with the code
then you have build your code
so that you can give it to the testing team.
Then the testing team will test the product.
after that it will be deployed on the server .
Once the code is deployed on the server
there are the some operations which needs to be perform.
The last one is monitor.
someone from the team has to monitor.
what exactly is happening on the server?
Does it need the scale up or the scale down
or do need to increase the server capacity etc.
all these things we need to monitor on server.
so, if you are working in startup company.
or you have a very small premises or you have very
few number of peoples in your team.
Then all these things are done by the same team.
The same team will work on the plan,
the development the also on the deployment.
But if you are working in a big organization
or even if you are working in a small organization
and still your organization follows some process.
Then things are little bit differ.
How? all these steps are done by different teams.
So, first he have the plan for the planning
of the any project we have a different team.
We can say this team comes under
business team or the product owner.
The product owner sits with the client
and he work on planning part of the product.
Then we have the development team,
development team includes developers and the testers.
They code build and test the product
and then at the last we have the operations team.
The main work of the operations team is the deployed
the code on the server, monitor it and operate it.
So, right now we can say that we have three teams
working on a particular product development .
Earlier when we were working in the waterfall model
then all these teams were working independently.
When agile came in to picture the gap in between these two teams were filled.
or business team or PO and the development team were working
together on the success of a product.
Now we have one more team it is operations team.
Still there was a gap in between these two teams.
The development team and the operations team.
Now let's understand, what is DevOps?
DevOps is something where the developments
and the operations work together.
So, we have the Dev from the development
and Ops from the operations .
Hence we have a new word which is DevOps.
So, from this slide you will understand that DevOps is something
related to the development team and the operations team.
And there is a plus symbol in between them.it means they will work together.
Basically DevOps fills the gap in between the development and the operations.
Just like Agile did to the business team the PO and the development team.
same thing is done by the DevOps for the development and the operation .
Let's have a look on few points of , What is DevOps?
DevOps is a culture or practice. Okay,
This is very important to understand.
"DevOps is culture or practice".
Which fills the gap between development team and operations team.
If you are thinking DevOps is a tool, a process or methodology.
Or any technique then this is not true. DevOps is basically a culture.
It is a practice. both the team works together in entire software development
life cycle to ensure the quality of the product.
ability of the product to work in different environments.
Let me tell you a very general statement from the development team.
So, what happens when a particular developer develop something.
and he gives it to tester for the testing.
and if something is not working in that environment.
then there is a general excuse or we can say general
statement for the development team.
that this is working fine on my system.
I do not know, what is happening on the other environment ?
It means there is some problem related to the environment.
and this gap is filled by the DevOps.
DevOps environment both the teams work together.
and they focus on the environment.
the quality of the product and there are different
aspects that we will learn in the later part of this video.
or in this tutorial all these points are taken care
by the DevOps. lots of tools are available in market.
to automate this process, to work in the DevOps.
there are multiple tools are available in the market.
you can choose anyone of them.as per your requirement.
all tools have their on configuration ,
their on price , some of them are free, some of them are paid.
but all of them have a feature to automate your process.
ultimately all these things happen in a automatic way.
DevOps help us to run the life cycle on each commit.
or particular interval by using automate process .
What is the meaning of this line?
if you talk about the overview of the software development life cycle.
what happens initial we plan, we develop and we deploy .
but if I say all these process
will happen on each commit you made to your code.
so, whenever you are working on a git repository
or any other code repository and you commit your code
and you simply push it. all the steps happens there automatically.
so whenever you push the code it will build automatically,
it will test automatically, it will deploy automatically
and other operations which are available there
all those operations will happen automatically.
so, basically we are taking care of each commit
of the software development to ensure the quality
and other aspects of the product that was all about the introduction
to DevOps now the question is- Who should learn DevOps?
this is very important question
Who should learn DevOps?
each person who is working in a software development team
Developer, tester, product owner, scrum master etc.
all the members who are working in the development
team needs to learn DevOps
I am not mentioning any technology.
so, if you are working on any technology
then you should learn DevOps
DevOps is irrespective of your technology
if you are working with .net or java
or php or angular or any other technology
which is available in the market
then DevOps is for you
operations team obviously the operations team
all the members from the operations team
who are responsible for the deployment, the management,
the monitoring all those things, all the persons from the operations team
must learn about the DevOps
Individual developers- if you are not working in a team
and you are individual contributor on a particular project.
Still you need to learn about the DevOps.
because it is going to improve your process.
your speed of development,
your speed of deployment,
all these things it is going to improve a lot
Freelancers - so if you are a freelancer
and you need to manage your code
so , sometimes what happens you write your code into your system.
and because of some reasons that system got crash
then what will happen?
you will lose all your code, all your planning
everything will be lost
what will happen if you will manage
all these things on a particular server
then everything will be available to you
every time whenever you will access
that server from any kind of machine
Management- the management team is must also
learn about the DevOps because what is exactly
is the development team is doing
they can get a clear picture by looking at few graphs
and the details of the work which is going on
hence management team should also learn DevOps.
The Client- if you are the client of a product
and some team is working on your product
then you must learn about the DevOps.
because you can get a clear picture
of what is going on in the development
you can see the progress with the help of
multiple type of graphs. with the help of deployment
how many bugs are there? how many stories are there?
etc. these points are taken care by the DevOps.
so, if you are a client, he must learn about the DevOps.
and the last everyone who is related to the development
of something in any way.
if you are developing something and you have any connection
to that development then you must learn about the DevOps
Let see what are the benefits of DevOps?
fast delivery- deploying code from Dev machine to server is very fast
so, basically developer has to commit the code
he has to push into the particular repository
and all the process of deploying in the code
will be automatically. so, it is very fast deploy
on the particular server
Reduce time- lots of things (Like testing, deployment, rollback) are happening automatically.
obviously, in the beginning, you have to make some setups
we have to write some code
but once you are done with all those things
and everything will happen automatically
like the testing , the deployment all you have to
all you have to do is you have to focus
on the development you have to push your code
and rest will be taken care by the DevOps.
Rollback- any release which you think should
not go to end user(because of any reason,)
you can roll it back easily.
so, what happens you have push the code and
which has the feature that you do not
want to expose to the customer
simply you can roll it back very easily
if you talk about the another scenario
sometimes a wrong feature it checked in
and that is deploy on the server
still in this scenario also you can roll back your code very easily
Quality- with lots of automatic tools we can get check
the quality of code before deploying it on server
so, there are several steps you can apply the manual testing
or the automatic testing all these steps can be
taken care by the DevOps and you can
ensure that the quality work is going on the server
if there is some problem then you will
get to know that this is a problem
you can fix it and again
you can push your code and you can again run the
entire process to make the successful deployment
Collaboration- all teams works together to build a great product.
so, whether you are coming from the management
background or you are coming from the development team
or you are coming from the operation team
all the teams work together in order to build a great product.
More Agility- every commit is treated as final delivery.
so, if you talk about the Agile process
in the Agile what happen?
we have to work in the sprints
and at the last of the sprint
you have to gave something valuable product
to the customer and what is meaning of the valuable
it should be well developed , it should be well tested.
well deployed all the things
should be there in that code
now if you break it down into very small
part and we say that all these steps will be taken
care whenever you will make single commit
that's why we say more agility
means it brings more agility to the development
Easy to use - DevOps is very easy to use
you can learn it very fast it is very simple to use
No maintenance- there is no maintenance cost
if you are working with the DevOps
Reliable - you can trust on the DevOps
that you will always get the quality of product
and the quality services from the DevOps.
Secure- security is something which is the main concern
we can say DevOps is completely secure
but it depends on the tools which you are using
for the DevOps . since in this entire tutorial
we will work on the Azure DevOps
we can say that Azure DevOps is 100% secure.
there is a guarantee of the security
there is no doubt in the security of the process
of everything.
and there are lots of benefits of the DevOps
which we will learn whenever we will work on the DevOps.
Don't forget to hit like button of the video
tell me your feedback in the comment section
share this video and subscribe to the channel thank you for watching have a great day.
Voir Plus de Vidéos Connexes
#1 What is DevOps ,Agile and CICD
ISTQB FOUNDATION 4.0 | Tutorial 57 | Tool Support for Testing | Test Tools | ISTQB Tutorials
Reality of 3 Crore DevOps Package | Future Roles in DevOps & AI | DevOps Pe Charcha (Hindi)
ISTQB FOUNDATION 4.0 | Tutorial 11 | TDD, BDD, ATDD | DevOps and Testing | CTFL | TM SQUARE
Software Development Life Cycle: Explained
Overview of Atlassian Open DevOps
5.0 / 5 (0 votes)