Saturday, November 18, 2023

MS Azure -Part 2

 Read Part 1 

https://dotnetbyudayrajakonda.blogspot.com/2023/11/introduction-to-azure-dev-ops.html#more

Before Going to Dev Ops, let us go through the History.

What is Software Development.

Software development refers to a set of computer science activities dedicated to the process of creating, designing, deploying and supporting software.











In any language we develop we , need to follow these steps that is Requirements, Design, Implementation, Testing(Verification), Maintance 


To follow the above steps earlier we use to go with WaterFall Model











Once we are done with the requirements ,then only we used to go with the Design Phase

Once Design Phase is done, then only we used to develop the code.

Once Development is Completed, then only we used to go for Testing.

Once Testing  is Completed, then only we used to go for Maintance.

Finally Deliver the Product.


So success rate of the Water Fall Model was only 14%

Drawbacks:

When delivering the product to the Client, Client was not happy . So lot of time and money spent got wasted.

So, to over come with this then people started with Agile Model

This is a sprint based process, Which will be of only two weeks. 



















The Agile model is a type of incremental model where software is developed in a rapid incremental cycle. The most notable feature of the Agile model is the establishment of the project scope, requirements, number, and duration of iteration at the beginning of the development process.


WaterFall vs Agile


All the project development phases such as designing, development, testing, etc., are completed once in the Waterfall model while as part of the Agile methodology, they follow an iterative development approach. Consequentially, phases like planning, development, prototyping, etc., have the flexibility to appear multiple times during the entire SDLC.


If you want to use the Waterfall model for software development, then you have to confirm all the development requirements before the start as changing the requirements is not an option once the project development starts. The Agile methodology, on the other hand, is quite flexible, and allows for changes to be made in the project development requirements irrespective of the set plans.


One of the major differences between Agile and Waterfall development methodologies is their unique approaches towards quality and testing. In the Waterfall model, the “testing” phase comes after the “build” phase, but in the Agile methodology, testing is typically performed along with programming or at least in the same iteration as programming.


Imagine : You are the developer, You have developed an application, and which need to be deployed in the deployment server. 

















The above image says that you have developed the code, with the help of all the software's libraries .















Now, the above images says that the developer has develop the code and he has check in the code in the git repro, and he has informed the Dev Ops team saying that my code is been checked in the git repro, and asking him to deploy into Prod/QA/UAT/DEV Server

Now, the dev ops started seeing some bugs in the code, so he has informed the developer saying that code is not working. so Developer answered saying that it is working fine in my system. Now there was a communication gap between these two teams. (Dev Ops  & Dev). 

Note: The thing here is dev was using the latest version and dev ops is using the older version. So that is the reason it was not working with the dev ops team.

















Now , every time this was causing problem, and lot of time was getting wasted. Some what the problems with software's, libraries.

In Big MNC, to install software we need lot of mail approval from higher end to installed that particular software.


To overcome this kind of situations Docker came into picture.
























No comments:

Post a Comment

Thank you for visiting my blog

Kubernetes

Prerequisites We assume anyone who wants to understand Kubernetes should have an understating of how the Docker works, how the Docker images...