Agile Vs DevOps
Agile Vs DevOps
DevOps
Agile
• Agile is a time boxed, iterative approach to software delivery that
builds software incrementally from the start of the project, instead of
trying to deliver it all at once near the end.
• It works by breaking projects down into little bits of user functionality
called user stories, prioritizing them, and then continuously
delivering them in short two week cycles called iterations.
Working of Agile…
• You make a list:
• Sitting down with your customer you make a list of features they would like
to see in their software. We call these things user stories and they become
the To Do list for your project.
• You size things up:
• You size(estimate) your stories relatively to each other, coming up with a
guess as to how long you think each user story will take.
• You set some priorities:
• Like most lists, there always seems to be more to do than time allows. So you
ask your customer to prioritize their list so you get the most important stuff
done first, and save the least important for last.
Working of Agile
• Then you start delivering some value. You start at the top. Work your
way to the bottom. Building, iterating, and getting feedback from
your customer as you go.
• You update the plan as you go :
• Then as you and your customer starting delivering one of two things is going
to happen. You'll discover:
• You're going fast enough. All is good. Or,
• You have too much to do and not enough time.
• At this point you have two choices. You can either a) do less and cut
scope (recommended). Or you can b) push out the date and ask for
more money.
Advantages of Agile
• Customer satisfaction by rapid, continuous delivery of useful software.
• People and interactions are emphasized rather than process and tools.
Customers, developers and testers constantly interact with each other.
• Working software is delivered frequently (weeks rather than months).
Face-to-face conversation is the best form of communication.
• Close, daily cooperation between business people and developers.
Continuous attention to technical excellence and good design.
• Regular adaptation to changing circumstances.
• Even late changes in requirements are welcomed
Disadvantages of Agile model:
• In case of some software deliverables, especially the large ones, it is
difficult to assess the effort required at the beginning of the software
development life cycle.
• The project can easily get taken off track if the customer
representative is not clear what final outcome that they want.
• Only senior programmers are capable of taking the kind of decisions
required during the development process. Hence it has no place for
newbie programmers, unless combined with experienced resources.
Agile Manifesto
DevOps
• The goal of DevOps is to help bring together developers who write
application software and operations who run the software in
production.
• It’s an effort to take the innovations of the agile approach and apply
them to operations processes.