SlideShare una empresa de Scribd logo
1 de 22
DevOps
What ? Why ? Who ? How ?
What is DevOps ?
DevOps is the culture of Development and
Operations Engineers, participating together in
the entire service lifecycle, from design through
the development process to production support.
DevOps is a software development method that
stresses communication, collaboration and
integration between software developers and
information technology (IT) operation
professionals.
What actually is it ?
DevOps is the umbrella term for the
practice which encompasses -
➔ Culture
Cross-Team collaboration.
➔ Automation
Automating repetitive tasks.
➔ Monitoring
Monitoring systems, apps, etc.
➔ Sharing
Sharing reports, issues, regarding code,
system, application, etc.
DevOps Process Flow at Lean Apps
BitBucket
Branching
Strategy
Continuous Integration
CSS LINT
Unit Testing Code Quality Check Notifications Archive
Unit Testing
Unit Testing is a level of software testing
where individual units/ components of a
software are tested. The purpose is to
validate that each unit of the software
performs as designed.
➔ Benefits
◆ Unit testing increases
confidence in changing/
maintaining code.
◆ Easy to catch any defects
introduced due to the change
Code Quality Check
Code Quality Check helps us deliver
higher quality software and fix critical
security issues in our applications.
➔ Benefits
◆ Quantifies the quality of your code.
◆ Metrics that tell useful things about
source code.
◆ Trace through the code paths and
quickly find subtle bugs that would
take a human forever to track down.
CSS Lint
Notifications
Notifications play a major role in the
DevOps process flow. Notifying the
developers/QA/Scrum Masters about
builds, code quality and deployments is
very crucial.
➔ Benefits
◆ Build and Code quality reports are
sent via notifications.
◆ Stakeholders know the quality and
efforts in development.
◆ QA know when a new build arrives.
Artifacts
Generating artifacts for deployment ends
the Integration cycle.
➔ Benefits
◆ Generates a ready-to-deploy
object in the form of :
● WAR (Java Projects)
● ZIP(PHP Projects)
● APK(Android Projects)
● IPA(iOS Projects).
Continuous Deployment
Benefits and Power of DevOps
1. Agility
2. Velocity - Faster Delivery
3. Continuously incorporating Feedbacks.
4. Visibility to Build, Run and Secure Modern Applications
5. Innovation
6. Software Stability and Quality
7. More time to innovate (rather than fix/maintain).
8. Team Empowerment/Communication/Collaboration.
9. Increased Effectiveness.
10. Customers/Clients/Employers love DevOps.
11. Zero blame shifting, and more of owning of responsibility.
Collaboration
➔Collaboration is the most
important part of DevOps.
➔Dev and Ops work best
when they work in a
collaborative manner as
defined by DevOps.
➔It is the key to success.
Cultural
ToFrom
Shift
What people are saying ?
What Lean Apps people are saying
Build flavours in
Android generate
environment specific
builds efficiently in
Jenkins. Another
benefit is learning
about DevOps &
automation.
Saurabh Sircar,
Full Stack Mobile Dev
Saved us a lot of
time with
automation, and
build reports make it
very easy for us to
locate errors, if any.
And learning is the
best part.
Prajwal Thakre,
Java Dev
Code validation from
Unit Tests gives us a
sense of confidence
about our code, and
metric reports show
us the exact quality
of our code.
Chandrakant S.,
Java Dev
Automated
notifications about
Builds is one of the
best things for me.
Apart from this, a lot
of time is saved from
Dev’s end as well as
QA’s.
Niraj Gahukar,
QA
BY:
Yash Shanker
DevOps at Lean
Apps
QUESTIONS ?

Más contenido relacionado

La actualidad más candente

QA in DevOps: Transformation thru Automation via Jenkins
QA in DevOps:  Transformation thru Automation via JenkinsQA in DevOps:  Transformation thru Automation via Jenkins
QA in DevOps: Transformation thru Automation via Jenkins
Tatyana Kravtsov
 

La actualidad más candente (20)

Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Continuous Delivery vs Continuous Deployment | DevOps Methodology | Devops Tr...
Continuous Delivery vs Continuous Deployment | DevOps Methodology | Devops Tr...Continuous Delivery vs Continuous Deployment | DevOps Methodology | Devops Tr...
Continuous Delivery vs Continuous Deployment | DevOps Methodology | Devops Tr...
 
DevOps Masterclass Bundle
DevOps Masterclass BundleDevOps Masterclass Bundle
DevOps Masterclass Bundle
 
ATAGTR2017 Testing in DevOps Culture
ATAGTR2017 Testing in DevOps CultureATAGTR2017 Testing in DevOps Culture
ATAGTR2017 Testing in DevOps Culture
 
10 Things You Might Not Know: Continuous Integration
10 Things You Might Not Know: Continuous Integration10 Things You Might Not Know: Continuous Integration
10 Things You Might Not Know: Continuous Integration
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
Stc 2016 regional-round-ppt-automation testing with devops in agile methodolgy
Stc 2016 regional-round-ppt-automation testing with devops in agile methodolgyStc 2016 regional-round-ppt-automation testing with devops in agile methodolgy
Stc 2016 regional-round-ppt-automation testing with devops in agile methodolgy
 
Continuous integration
Continuous integration Continuous integration
Continuous integration
 
DevOps culture
DevOps cultureDevOps culture
DevOps culture
 
Roles and Responsibilities of a DevOps Engineer
Roles and Responsibilities of a DevOps EngineerRoles and Responsibilities of a DevOps Engineer
Roles and Responsibilities of a DevOps Engineer
 
The Promise of DevOps
The Promise of DevOpsThe Promise of DevOps
The Promise of DevOps
 
2017 DevSecOps Survey
2017 DevSecOps Survey2017 DevSecOps Survey
2017 DevSecOps Survey
 
CI-CD and DevOps with Ruby
CI-CD and DevOps with RubyCI-CD and DevOps with Ruby
CI-CD and DevOps with Ruby
 
DevOps in Action: How Nedbank went from quarterly to weekly releases in no time!
DevOps in Action: How Nedbank went from quarterly to weekly releases in no time!DevOps in Action: How Nedbank went from quarterly to weekly releases in no time!
DevOps in Action: How Nedbank went from quarterly to weekly releases in no time!
 
Increasing Quality with DevOps
Increasing Quality with DevOpsIncreasing Quality with DevOps
Increasing Quality with DevOps
 
QA in DevOps: Transformation thru Automation via Jenkins
QA in DevOps:  Transformation thru Automation via JenkinsQA in DevOps:  Transformation thru Automation via Jenkins
QA in DevOps: Transformation thru Automation via Jenkins
 
Continuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hallContinuous testing & devops with @petemar5hall
Continuous testing & devops with @petemar5hall
 
DevOps Patterns Distilled: Implementing The Needed Practices In Practical Steps
DevOps Patterns Distilled: Implementing The Needed Practices In Practical StepsDevOps Patterns Distilled: Implementing The Needed Practices In Practical Steps
DevOps Patterns Distilled: Implementing The Needed Practices In Practical Steps
 
Testing AS A Container - Irfan Ahmad
Testing AS A Container - Irfan AhmadTesting AS A Container - Irfan Ahmad
Testing AS A Container - Irfan Ahmad
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
 

Similar a DevOps at Lean Apps

What is DevOps And How It Is Useful In Real life.
What is DevOps And How It Is Useful In Real life.What is DevOps And How It Is Useful In Real life.
What is DevOps And How It Is Useful In Real life.
anilpmuvvala
 
What_is_DevOps_how_it's_very_useful_in_daily_Life.
What_is_DevOps_how_it's_very_useful_in_daily_Life.What_is_DevOps_how_it's_very_useful_in_daily_Life.
What_is_DevOps_how_it's_very_useful_in_daily_Life.
anilpmuvvala
 
Dev ops online training ppt
Dev ops online training pptDev ops online training ppt
Dev ops online training ppt
SayyedYusufali
 

Similar a DevOps at Lean Apps (20)

probe-into-the-key-components-and-tools-of-devops-lifecycle
probe-into-the-key-components-and-tools-of-devops-lifecycleprobe-into-the-key-components-and-tools-of-devops-lifecycle
probe-into-the-key-components-and-tools-of-devops-lifecycle
 
Why DevOps in Mobile App Development is Important
Why DevOps in Mobile App Development is ImportantWhy DevOps in Mobile App Development is Important
Why DevOps in Mobile App Development is Important
 
Top 20 DevOps Interview Questions.pdf
Top 20 DevOps Interview Questions.pdfTop 20 DevOps Interview Questions.pdf
Top 20 DevOps Interview Questions.pdf
 
Devops
DevopsDevops
Devops
 
An Ultimate 10 Point DevOps Checklist for your Organization.pdf
An Ultimate 10 Point DevOps Checklist for your Organization.pdfAn Ultimate 10 Point DevOps Checklist for your Organization.pdf
An Ultimate 10 Point DevOps Checklist for your Organization.pdf
 
Devops interview-questions-PDF
Devops interview-questions-PDFDevops interview-questions-PDF
Devops interview-questions-PDF
 
What_is_DevOps.pptx
What_is_DevOps.pptxWhat_is_DevOps.pptx
What_is_DevOps.pptx
 
What is DevOps And How It Is Useful In Real life.
What is DevOps And How It Is Useful In Real life.What is DevOps And How It Is Useful In Real life.
What is DevOps And How It Is Useful In Real life.
 
What_is_DevOps_how_it's_very_useful_in_daily_Life.
What_is_DevOps_how_it's_very_useful_in_daily_Life.What_is_DevOps_how_it's_very_useful_in_daily_Life.
What_is_DevOps_how_it's_very_useful_in_daily_Life.
 
What is DevOps Services_ Tools and Benefits.pdf
What is DevOps Services_ Tools and Benefits.pdfWhat is DevOps Services_ Tools and Benefits.pdf
What is DevOps Services_ Tools and Benefits.pdf
 
What is DevOps Services_ Tools and Benefits.pdf
What is DevOps Services_ Tools and Benefits.pdfWhat is DevOps Services_ Tools and Benefits.pdf
What is DevOps Services_ Tools and Benefits.pdf
 
How Azure DevOps can boost your organization's productivity
How Azure DevOps can boost your organization's productivityHow Azure DevOps can boost your organization's productivity
How Azure DevOps can boost your organization's productivity
 
AICT_presentation.pptx
AICT_presentation.pptxAICT_presentation.pptx
AICT_presentation.pptx
 
6 Resons To Implememnt DevOps In Your Business
6 Resons To Implememnt DevOps In Your Business6 Resons To Implememnt DevOps In Your Business
6 Resons To Implememnt DevOps In Your Business
 
What is DevOps All You Need To Know.pdf
What is DevOps All You Need To Know.pdfWhat is DevOps All You Need To Know.pdf
What is DevOps All You Need To Know.pdf
 
Devops training
Devops trainingDevops training
Devops training
 
Dev0PS online Training in Hyderabad
Dev0PS  online Training  in HyderabadDev0PS  online Training  in Hyderabad
Dev0PS online Training in Hyderabad
 
Best devops training in Hyderabad
Best devops training in HyderabadBest devops training in Hyderabad
Best devops training in Hyderabad
 
Dev ops online training ppt
Dev ops online training pptDev ops online training ppt
Dev ops online training ppt
 
How do I start my DevOps career
How do I start my DevOps careerHow do I start my DevOps career
How do I start my DevOps career
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

DevOps at Lean Apps

  • 1. DevOps What ? Why ? Who ? How ?
  • 2. What is DevOps ? DevOps is the culture of Development and Operations Engineers, participating together in the entire service lifecycle, from design through the development process to production support. DevOps is a software development method that stresses communication, collaboration and integration between software developers and information technology (IT) operation professionals.
  • 3. What actually is it ? DevOps is the umbrella term for the practice which encompasses - ➔ Culture Cross-Team collaboration. ➔ Automation Automating repetitive tasks. ➔ Monitoring Monitoring systems, apps, etc. ➔ Sharing Sharing reports, issues, regarding code, system, application, etc.
  • 4.
  • 5. DevOps Process Flow at Lean Apps
  • 8. CSS LINT Unit Testing Code Quality Check Notifications Archive
  • 9. Unit Testing Unit Testing is a level of software testing where individual units/ components of a software are tested. The purpose is to validate that each unit of the software performs as designed. ➔ Benefits ◆ Unit testing increases confidence in changing/ maintaining code. ◆ Easy to catch any defects introduced due to the change
  • 10. Code Quality Check Code Quality Check helps us deliver higher quality software and fix critical security issues in our applications. ➔ Benefits ◆ Quantifies the quality of your code. ◆ Metrics that tell useful things about source code. ◆ Trace through the code paths and quickly find subtle bugs that would take a human forever to track down. CSS Lint
  • 11. Notifications Notifications play a major role in the DevOps process flow. Notifying the developers/QA/Scrum Masters about builds, code quality and deployments is very crucial. ➔ Benefits ◆ Build and Code quality reports are sent via notifications. ◆ Stakeholders know the quality and efforts in development. ◆ QA know when a new build arrives.
  • 12. Artifacts Generating artifacts for deployment ends the Integration cycle. ➔ Benefits ◆ Generates a ready-to-deploy object in the form of : ● WAR (Java Projects) ● ZIP(PHP Projects) ● APK(Android Projects) ● IPA(iOS Projects).
  • 14.
  • 15. Benefits and Power of DevOps 1. Agility 2. Velocity - Faster Delivery 3. Continuously incorporating Feedbacks. 4. Visibility to Build, Run and Secure Modern Applications 5. Innovation 6. Software Stability and Quality 7. More time to innovate (rather than fix/maintain). 8. Team Empowerment/Communication/Collaboration. 9. Increased Effectiveness. 10. Customers/Clients/Employers love DevOps. 11. Zero blame shifting, and more of owning of responsibility.
  • 16. Collaboration ➔Collaboration is the most important part of DevOps. ➔Dev and Ops work best when they work in a collaborative manner as defined by DevOps. ➔It is the key to success.
  • 18. What people are saying ?
  • 19.
  • 20.
  • 21. What Lean Apps people are saying Build flavours in Android generate environment specific builds efficiently in Jenkins. Another benefit is learning about DevOps & automation. Saurabh Sircar, Full Stack Mobile Dev Saved us a lot of time with automation, and build reports make it very easy for us to locate errors, if any. And learning is the best part. Prajwal Thakre, Java Dev Code validation from Unit Tests gives us a sense of confidence about our code, and metric reports show us the exact quality of our code. Chandrakant S., Java Dev Automated notifications about Builds is one of the best things for me. Apart from this, a lot of time is saved from Dev’s end as well as QA’s. Niraj Gahukar, QA
  • 22. BY: Yash Shanker DevOps at Lean Apps QUESTIONS ?

Notas del editor

  1. A unit is the smallest testable part of software. Testing each unit with mock inputs is Unit Testing. Codes are more reusable. In order to make unit testing possible, codes need to be modular. This means that codes are easier to reuse. Development is faster. How? If you do not have unit testing in place, you write your code and perform that fuzzy ‘developer test’ (You set some breakpoints, fire up the GUI, provide a few inputs that hopefully hit your code and hope that you are all set.) If you have unit testing in place, you write the test, write the code and run the test. Writing tests takes time but the time is compensated by the less amount of time it takes to run the tests; You need not fire up the GUI and provide all those inputs. And, of course, unit tests are more reliable than ‘developer tests’. Development is faster in the long run too. How? The effort required to find and fix defects found during unit testing is very less in comparison to the effort required to fix defects found during system testing or acceptance testing. The cost of fixing a defect detected during unit testing is lesser in comparison to that of defects detected at higher levels. Compare the cost (time, effort, destruction, humiliation) of a defect detected during acceptance testing or when the software is live. Debugging is easy. When a test fails, only the latest changes need to be debugged. With testing at higher levels, changes made over the span of several days/ weeks/ months need to be scanned. Codes are more reliable. Why? I think there is no need to explain this to a sane person. Codes are more reusable. In order to make unit testing possible, codes need to be modular. This means that codes are easier to reuse. Development is faster. How? If you do not have unit testing in place, you write your code and perform that fuzzy ‘developer test’ (You set some breakpoints, fire up the GUI, provide a few inputs that hopefully hit your code and hope that you are all set.) If you have unit testing in place, you write the test, write the code and run the test. Writing tests takes time but the time is compensated by the less amount of time it takes to run the tests; You need not fire up the GUI and provide all those inputs. And, of course, unit tests are more reliable than ‘developer tests’. Development is faster in the long run too. How? The effort required to find and fix defects found during unit testing is very less in comparison to the effort required to fix defects found during system testing or acceptance testing. The cost of fixing a defect detected during unit testing is lesser in comparison to that of defects detected at higher levels. Compare the cost (time, effort, destruction, humiliation) of a defect detected during acceptance testing or when the software is live. Debugging is easy. When a test fails, only the latest changes need to be debugged. With testing at higher levels, changes made over the span of several days/ weeks/ months need to be scanned. Codes are more reliable. Why? I think there is no need to explain this to a sane person.
  2. A unit is the smallest testable part of software. Testing each unit with mock inputs is Unit Testing. Codes are more reusable. In order to make unit testing possible, codes need to be modular. This means that codes are easier to reuse. Development is faster. How? If you do not have unit testing in place, you write your code and perform that fuzzy ‘developer test’ (You set some breakpoints, fire up the GUI, provide a few inputs that hopefully hit your code and hope that you are all set.) If you have unit testing in place, you write the test, write the code and run the test. Writing tests takes time but the time is compensated by the less amount of time it takes to run the tests; You need not fire up the GUI and provide all those inputs. And, of course, unit tests are more reliable than ‘developer tests’. Development is faster in the long run too. How? The effort required to find and fix defects found during unit testing is very less in comparison to the effort required to fix defects found during system testing or acceptance testing. The cost of fixing a defect detected during unit testing is lesser in comparison to that of defects detected at higher levels. Compare the cost (time, effort, destruction, humiliation) of a defect detected during acceptance testing or when the software is live. Debugging is easy. When a test fails, only the latest changes need to be debugged. With testing at higher levels, changes made over the span of several days/ weeks/ months need to be scanned. Codes are more reliable. Why? I think there is no need to explain this to a sane person. Codes are more reusable. In order to make unit testing possible, codes need to be modular. This means that codes are easier to reuse. Development is faster. How? If you do not have unit testing in place, you write your code and perform that fuzzy ‘developer test’ (You set some breakpoints, fire up the GUI, provide a few inputs that hopefully hit your code and hope that you are all set.) If you have unit testing in place, you write the test, write the code and run the test. Writing tests takes time but the time is compensated by the less amount of time it takes to run the tests; You need not fire up the GUI and provide all those inputs. And, of course, unit tests are more reliable than ‘developer tests’. Development is faster in the long run too. How? The effort required to find and fix defects found during unit testing is very less in comparison to the effort required to fix defects found during system testing or acceptance testing. The cost of fixing a defect detected during unit testing is lesser in comparison to that of defects detected at higher levels. Compare the cost (time, effort, destruction, humiliation) of a defect detected during acceptance testing or when the software is live. Debugging is easy. When a test fails, only the latest changes need to be debugged. With testing at higher levels, changes made over the span of several days/ weeks/ months need to be scanned. Codes are more reliable. Why? I think there is no need to explain this to a sane person.
  3. A unit is the smallest testable part of software. Testing each unit with mock inputs is Unit Testing. Codes are more reusable. In order to make unit testing possible, codes need to be modular. This means that codes are easier to reuse. Development is faster. How? If you do not have unit testing in place, you write your code and perform that fuzzy ‘developer test’ (You set some breakpoints, fire up the GUI, provide a few inputs that hopefully hit your code and hope that you are all set.) If you have unit testing in place, you write the test, write the code and run the test. Writing tests takes time but the time is compensated by the less amount of time it takes to run the tests; You need not fire up the GUI and provide all those inputs. And, of course, unit tests are more reliable than ‘developer tests’. Development is faster in the long run too. How? The effort required to find and fix defects found during unit testing is very less in comparison to the effort required to fix defects found during system testing or acceptance testing. The cost of fixing a defect detected during unit testing is lesser in comparison to that of defects detected at higher levels. Compare the cost (time, effort, destruction, humiliation) of a defect detected during acceptance testing or when the software is live. Debugging is easy. When a test fails, only the latest changes need to be debugged. With testing at higher levels, changes made over the span of several days/ weeks/ months need to be scanned. Codes are more reliable. Why? I think there is no need to explain this to a sane person. Codes are more reusable. In order to make unit testing possible, codes need to be modular. This means that codes are easier to reuse. Development is faster. How? If you do not have unit testing in place, you write your code and perform that fuzzy ‘developer test’ (You set some breakpoints, fire up the GUI, provide a few inputs that hopefully hit your code and hope that you are all set.) If you have unit testing in place, you write the test, write the code and run the test. Writing tests takes time but the time is compensated by the less amount of time it takes to run the tests; You need not fire up the GUI and provide all those inputs. And, of course, unit tests are more reliable than ‘developer tests’. Development is faster in the long run too. How? The effort required to find and fix defects found during unit testing is very less in comparison to the effort required to fix defects found during system testing or acceptance testing. The cost of fixing a defect detected during unit testing is lesser in comparison to that of defects detected at higher levels. Compare the cost (time, effort, destruction, humiliation) of a defect detected during acceptance testing or when the software is live. Debugging is easy. When a test fails, only the latest changes need to be debugged. With testing at higher levels, changes made over the span of several days/ weeks/ months need to be scanned. Codes are more reliable. Why? I think there is no need to explain this to a sane person.
  4. A unit is the smallest testable part of software. Testing each unit with mock inputs is Unit Testing. Codes are more reusable. In order to make unit testing possible, codes need to be modular. This means that codes are easier to reuse. Development is faster. How? If you do not have unit testing in place, you write your code and perform that fuzzy ‘developer test’ (You set some breakpoints, fire up the GUI, provide a few inputs that hopefully hit your code and hope that you are all set.) If you have unit testing in place, you write the test, write the code and run the test. Writing tests takes time but the time is compensated by the less amount of time it takes to run the tests; You need not fire up the GUI and provide all those inputs. And, of course, unit tests are more reliable than ‘developer tests’. Development is faster in the long run too. How? The effort required to find and fix defects found during unit testing is very less in comparison to the effort required to fix defects found during system testing or acceptance testing. The cost of fixing a defect detected during unit testing is lesser in comparison to that of defects detected at higher levels. Compare the cost (time, effort, destruction, humiliation) of a defect detected during acceptance testing or when the software is live. Debugging is easy. When a test fails, only the latest changes need to be debugged. With testing at higher levels, changes made over the span of several days/ weeks/ months need to be scanned. Codes are more reliable. Why? I think there is no need to explain this to a sane person. Codes are more reusable. In order to make unit testing possible, codes need to be modular. This means that codes are easier to reuse. Development is faster. How? If you do not have unit testing in place, you write your code and perform that fuzzy ‘developer test’ (You set some breakpoints, fire up the GUI, provide a few inputs that hopefully hit your code and hope that you are all set.) If you have unit testing in place, you write the test, write the code and run the test. Writing tests takes time but the time is compensated by the less amount of time it takes to run the tests; You need not fire up the GUI and provide all those inputs. And, of course, unit tests are more reliable than ‘developer tests’. Development is faster in the long run too. How? The effort required to find and fix defects found during unit testing is very less in comparison to the effort required to fix defects found during system testing or acceptance testing. The cost of fixing a defect detected during unit testing is lesser in comparison to that of defects detected at higher levels. Compare the cost (time, effort, destruction, humiliation) of a defect detected during acceptance testing or when the software is live. Debugging is easy. When a test fails, only the latest changes need to be debugged. With testing at higher levels, changes made over the span of several days/ weeks/ months need to be scanned. Codes are more reliable. Why? I think there is no need to explain this to a sane person.
  5. strategic imperative becomes responding rapidly via agility and modularity through DevOps and adaptive IT. When you don't know what the future holds, it's important to have the infrastructure in place that can respond to business needs on the fly. Speed to market and quick iteration is critical in competing in software, otherwise competitors will outpace your product development and win the market. To compete, engineering teams should adopt DevOps to enable teams and break down friction in order to increase agility and speed to market. Surveys have shown that organizations successfully implementing DevOps tools and practices are likely to experience high growth in profitability, market share, and productivity goals
  6. Author of NextGenDevops ...
  7. Co-Founder DevOpsGuys and MS Regional Director