Introduction to
DevOps & Build
Tools
Software Development
Lifecycle (SDLC)
Waterfall Model
Waterfall model is a process where the development
process of a new phase begins only after completion
of the previous phase
Waterfall model
Difficulty in this approach
Here development phase takes a longer duration
of time
By the time product is released to the market
customer requirement is changed.
As a result, customer might lose interest in the
product due to its extended development or a
shift in his requirement.
Introduction to Agile
Methodology
Agile model breaks product development work
into small iterations to minimize the amount of
up-front required for planning and design.
Agile model solves the problem of waterfall model
by -Releasing a product in iterations not at one go
Accepting changes in requirements at different
iterations
Agile approach
Difficulty in this approach
Lack of collaboration between Developers and
Operations team slowed down the development
process and product release
It does not automate the steps followed in
iterations
The Clumsy Manual
Approach to Project Setup
• Manually downloading dependencies
• Managing JAR files in lib folder
• Setting up libraries in IDE
• Running tests manually
Problems with the Manual
Approach
• Time-consuming
• Error-prone
• Hard to manage dependencies
• Not scalable for teams
The Transition from Agile
to DevOps
• Agile improved development speed
• DevOps enhances deployment & operations
• Key DevOps practices: CI/CD, Automation, Faster
Releases
DevOps Model
It quickly, easily, repeatedly and safely moves the
software from Developers infrastructure to
production infrastructure
DevOps solves drawbacks of both Waterfall and
Agile process*
It Improves collaboration and productivity by:
Automating infrastructure
Automating workflows
Continuously monitors application
performance
DevOps Model
DevOps is a strategy which bridges the gap
between the Developers and Operations teams
and helps to deliver good quality software on
time.
Why Do We Need Build
Tools?
• Automatic dependency management
• Simplified project configuration ([Link],
[Link])
• Easy build & testing
• Ensures project consistency