BCS2224,BIT2226,CSE4143-
DEVOPS
Introduction to DevOps
Collin Atwiine
Copyright 2023 ©, ISBAT University, All rights reserved.
Learning Objectives
2
01 Understand SDLC
Recall the phases and classic models of the Software Development Life Cycle
02 Trace the evolution
Explain how Waterfall → Agile → DevOps addressed earlier limitations
03 Define DevOps
State what DevOps is and the culture, practices and tools it comprises
Map the lifecycle
04 Describe the continuous Plan → Code → Build → Test → Release → Deploy → Operate
→ Monitor loop
Compare & evaluate
05 Contrast traditional IT with DevOps and list key benefits and challenges
© ISBAT University – 2023 | Introduction to DevOps 2
© ISBAT UNIVERSITY – 2023 8/1/2026
SDLC briefly
3
The Software Development Life Cycle (SDLC) is a structured process used in
software engineering to plan, design, develop, test, and deploy software
applications
Below are the phases of SDLC
1. Planning: This initial phase involves defining the project's scope, goals, and
requirements, as well as identifying potential risks and resource allocation.
2. Analysis: During this phase, the project team analyzes the gathered
requirements to create a detailed plan for the software development process.
3. Design: This phase focuses on the architectural design of the software,
including database design, user interface (UI) design, and overall system
architecture.
© ISBAT UNIVERSITY – 2023 8/1/2026
SDLC briefly cont..
4
4. Development: This is where the actual coding and implementation of the
software takes place, based on the design specifications.
5. Testing: The software is thoroughly tested to identify and fix bugs, ensuring
it meets the defined requirements and functions as expected.
6. Deployment: Once testing is complete, the software is released to the
intended users, which may involve a staged rollout.
7. Maintenance: This ongoing phase involves addressing any issues, bugs, or
security vulnerabilities that arise after deployment, as well as implementing
updates and new features.
© ISBAT UNIVERSITY – 2023 8/1/2026
Software Development Life Cycle (SDLC)-summary
5
A structured process used to plan, design, develop, test, deploy and
maintain software applications.
1 2 3 4 5 6 7
Planning Analysis Design Development Testing Deployment Maintenance
Scope, Detailed Architecture Coding & Updates,
Find & fix Release to
goals, risks, requirement , UI, implementat fixes,
defects users
resources s & plan database ion support
© ISBAT University – 2023 | Introduction to DevOps 3
© ISBAT UNIVERSITY – 2023 8/1/2026
Different models of SDLC
6
1. Waterfall Model; Waterfall model is an example of a Sequential model. In this model, the
software development activity is divided into different phases and each phase consists of
series of tasks and has different objectives and output of one phase becomes the input of the
next phase. It is mandatory for a phase to be completed before the next phase starts.
2. Prototyping; The basic idea in Prototype model is that instead of freezing the requirements
before a design or coding can proceed, a throwaway prototype is built to understand the
requirements
3. Iterative Model; An iterative life cycle model does not attempt to start with a full
specification of requirements. Instead, development begins by specifying and implementing
just part of the software, which can then be reviewed in order to identify further requirements.
4. Relational unified process; This model divides the development process into four distinct
phases that each involve business modeling, analysis and design, implementation, testing, and
deployment. The four phases include Inception, Elaboration, Construction and Transition.
© ISBAT UNIVERSITY – 2023 8/1/2026
Models of SDLC cont..
7
5. Time boxing model; Development is done iteratively as in the iterative
enhancement model. Each iteration is done in a timebox of fixed duration. The
functionality to be developed is adjusted to fit the duration of the timebox.
Moreover, each timebox is divided into a sequence of fixed stages where each
stage performs a clearly defined task (analysis, implementation, and deploy)
that can be done independently.
6. Agile process; Software is developed in incremental, rapid cycles. This
results in small incremental releases with each release building on previous
functionality. The software development is divided into short cycles called
sprints. Agile emphasizes flexibility, adaptability, and customer feedback
throughout the development process.
© ISBAT UNIVERSITY – 2023 8/1/2026
Models of SDLC cont..
8
Scrum: This is a specific type of Agile methodology that emphasizes team
collaboration, a set of defined roles and responsibilities, and daily stand-up
meetings to promote progress and transparency.
Kanban: This is another type of Agile methodology that emphasizes visual
management and limiting work in progress to promote efficiency and reduce
waste.
Lean: This is a software development approach that emphasizes the
elimination of waste, the optimization of resources, and the continuous
improvement of processes.
7. Spiral; This is an iterative approach that combines elements of both
Waterfall and Agile methodologies. It emphasizes risk management and
frequent customer feedback to inform the development process.
8. DevOps
© ISBAT UNIVERSITY – 2023 8/1/2026
9
Classic SDLC Models
Waterfall
Sequential phases. Each phase must finish before the next begins. Simple but inflexible to
change.
Prototyping
Build a disposable prototype first to clarify requirements before full design and coding.
Iterative
Start with a partial system, then refine through repeated cycles of design → build → review.
Rational Unified Process (RUP)
Four phases: Inception → Elaboration → Construction → Transition. Emphasises risk
management and iterative development.
© ISBAT University – 2023 | Introduction to DevOps 4
© ISBAT UNIVERSITY – 2023 8/1/2026
10
Modern & Hybrid Models
Timeboxing
Fixed-duration iterations. Scope is adjusted to fit the timebox; each box has clear analysis →
implement → deploy stages.
Agile
Incremental, rapid cycles (sprints). Prioritises flexibility, working software, and continuous
customer feedback.
Scrum / Kanban / Lean
Scrum: roles, sprints, daily stand-ups. Kanban: visual boards + WIP limits. Lean: eliminate waste and
optimise flow.
Spiral
Combines Waterfall structure with iterative risk analysis. Strong emphasis on risk management and
stakeholder feedback.
DevOps
Extends Agile by uniting Development and Operations. Continuous integration, delivery,
monitoring and feedback loops.
© ISBAT University – 2023 | Introduction to DevOps 5
© ISBAT UNIVERSITY – 2023 8/1/2026
History of DevOps
11
A more recent methodology known as the Agile approach—an iterative approach to project
management and development—was established in response to the waterfall model's shortcomings
and complexity. It helps teams develop software more quickly, more effectively, and with fewer
rollbacks. This approach produces work in manageable but consistent chunks. Since the various
stages are constantly examined, the developers have an innate ability to swiftly alter their strategy.
Nevertheless, the agile methodology had its own drawbacks and wasn't the best available. Due to
resource planning limitations and documentation errors brought on by the project's various phases,
the output was fragmented and had no end in sight, making measurement challenging.
In 2009, Patrick Debois formally named and developed a revolutionary methodology known as
DevOps. With more and more companies incorporating DevOps into their operating systems,
Debois is now recognized as one of the founding pioneers of the field and has grown in importance
over time as one of its gurus.
© ISBAT UNIVERSITY – 2023 8/1/2026
12
© ISBAT UNIVERSITY – 2023 8/1/2026
What is DevOps
13
DevOps is essentially an abbreviation of two words-
development and operations; is a methodology to manage and
monitor the complete lifecycle of application development and
deployment by enabling a single team.
It focuses on collaboration, automation, and continuous feedback
across key phases i.e. planning, coding, building, testing,
releasing, deploying, operating, and monitoring executed in a
continuous loop.
© ISBAT UNIVERSITY – 2023 8/1/2026
Phases of DevOps Lifecycle
14
© ISBAT UNIVERSITY – 2023 8/1/2026
Phases of DevOps Lifecycle
15
1. Plan: This phase focuses on understanding the business needs and gathering
feedback from end-users. Teams create a plan that aligns the project with
business goals and ensures the right results are delivered.
2. Code: In this phase, developers write the actual code for the software. Tools
like Git help manage the code, making sure that the code is well-organized
and free from security issues or bad coding practices.
3. Build: Once the code is written, it is submitted to a central system using
tools like Jenkins. This step ensures the code is compiled, and all components
are integrated together smoothly.
4. Test: The software is then tested to ensure it works properly. This includes
different types of tests like security, performance, and user acceptance. Tools
like JUnit and Selenium are used to automate these tests and verify the
software’s integrity.
© ISBAT UNIVERSITY – 2023 8/1/2026
Cont..
16
5. Release: After testing, the software is ready to be released to production.
The DevOps team ensures that all checks are passed and then sends the latest
version to the production environment.
6. Deploy: Using Infrastructure-as-Code (IaC) tools like Terraform, the
necessary infrastructure (servers, networks, etc.) is automatically created.
Once the infrastructure is set up, the code is deployed to various environments
in an automated and repeatable way.
7. Operate: Once deployed, the software is available for users. Tools like Chef
help manage the configuration and ongoing deployment of the system to
ensure it operates smoothly.
8. Monitor: This phase involves observing how the software is performing in
the real world. Data about user behavior and application performance is
collected to identify any issues or bottlenecks. By monitoring the system, the
team can quickly spot and fix problems that may affect performance.
© ISBAT UNIVERSITY – 2023 8/1/2026
17
© ISBAT UNIVERSITY – 2023 8/1/2026
18
Traditional IT vs DevOps
Traditional (Siloed) DevOps
Separate Dev, QA & Ops teams Cross-functional, shared ownership
Infrequent, large releases Frequent, small, on-demand releases
Manual testing & deployment Automated CI/CD pipelines
Slow feedback, long MTTR Continuous monitoring & fast recovery
Change is risky and rare Change is routine and safe
© ISBAT University – 2023 | Introduction to DevOps 11
© ISBAT UNIVERSITY – 2023 8/1/2026
19
Traditional IT models typically involve separate teams for
development, testing, and operations, which can lead to delays
and errors in the software development process. DevOps, on the
other hand, promotes collaboration and communication between
these teams, resulting in a more efficient and effective
development process
DevOps also emphasizes automation and continuous delivery,
which ensures that software products are released more quickly
and reliably.
Overall, DevOps represents a paradigm shift in how software is
developed and deployed, and has become increasingly popular in
recent years as organizations look to improve their agility and
responsiveness to changing customer needs.
© ISBAT UNIVERSITY – 2023 8/1/2026
Benefits of DevOps
20
1. Improved Collaboration: By dismantling conventional silos and
encouraging a shared responsibility for the full software development
lifecycle, DevOps encourages a culture of cooperation and communication
between the development and operations teams.
2. Enhanced Security and Compliance: By integrating security into the
development lifecycle from the start, DevOps approaches can also increase
security and compliance through automation and ongoing monitoring.
3. Faster Delivery: DevOps uses continuous integration/continuous delivery
(CI/CD) pipelines and automation to facilitate more frequent releases and
quicker development cycles. This enables companies to react swiftly to
consumer input and market demands.
4. Greater Scalability: Organizations may scale their infrastructure up or
down in response to demand thanks to DevOps techniques like
infrastructure as code and automated provisioning, which provide
flexibility and responsiveness to shifting business requirements.
© ISBAT UNIVERSITY – 2023 8/1/2026
Benefits of DevOps cont..
21
5. Enhanced Automation: A fundamental principle of DevOps is automation,
which lowers human labor and mistakes in processes like infrastructure
management, testing, and deployment. This leads to increased efficiency
and faster delivery cycles.
6. Increased Stability and Reliability: DevOps contributes to the stability and
dependability of software and infrastructure by putting techniques like
feedback loops and continuous monitoring into reality. This enhances the
user experience overall and decreases downtime.
7. Improved Customer Satisfaction: Higher customer satisfaction and loyalty
are closely correlated with faster delivery of new features and upgrades as
well as increased reliability.
8. Reduced Costs: Infrastructure management, development time, and
resource usage are just a few of the areas where cost reductions can result
from automation, quicker delivery, and increased efficiency.
© ISBAT UNIVERSITY – 2023 8/1/2026
Disadvantages of DevOps cont..
22
✓ Less availability of DevOps professionals.
✓ Infrastructure cost is high for setting by DevOps environment.
✓ Increased complexity as there is another layer introduced in development process
for CI/CD
✓ Security concerns
✓ Lack of DevOps knowledge can lead to problems in the continuous integration of
automation projects.
© ISBAT UNIVERSITY – 2023 8/1/2026
23
Thank you
© ISBAT UNIVERSITY – 2023 8/1/2026