SlideShare a Scribd company logo
1 of 18
AgilityReboot:IV
To Err is Human;To Correct, Complete
Andrew Chum
In A Perfect, MagicalWorld…
• Whatever a client wants for software, a perfect software product will
appear.
• There is no software defects.
• Software requirements will never change.
• No need of any kind of software development framework or
methodologies.
To Err is Human
• Software Creation ProcessTimeline
• Requirements  Analyze  Software Requirement Specifications
(SRS)
• SRS  Design  Architectural Designs, Component Designs…
• Designs  Construct  Executables
• Executables  Verify  Releasable or not
• If theWorld is perfect, each phase produces perfect result and no
need to verify.
• In our imperfect world, human in each phase introduces mistakes.
To Correct, Complete
• It is well documented that defects identified later in SDLC are
expensive to fix than defects identified in early stage.
• To find out defects as early as possible.
• Since to err is human, each human activities for creating software
should be detected for errors.
• To Correct, Complete
How to minimize human error
• Prevention
• Detection
• Apply them to each development phase
• Requirements  Analyze w/ Prevention  SRS  Detection
• Incremental and Iterative
Prevention-Detection-Iteration
• Requirements  Analyze w/ Prevention  SRS  Detection
• SRS  Design w/ Prevention  Designs  Detection
• Designs  Construct w/ Prevention  Executables  Detection
• Executables  Verify  Releasable or not
Software Requirement Analysis
• Requirements  Analyze w/ Prevention  SRS  Detection
• Prevention
• Completeness, Consistency, Clarity,Testable,Traceable, Quantifiable …
• Detection
• Internal reviews
• Different levels of reviews: product management, development, testing, deployment
• External reviews with customers
Software Designs
• SRS  Design w/ Prevention  Designs  Detection
• Prevention
• Good Design Principles, Design Patterns, Control flow, Data flow, Module
Interfaces, Module Interactions, Scalability, Security, Fault-tolerance …
• Detection
• Infrastructure Framework, Simulations,Test Run…
Software Construction
• Designs  Construct w/ Prevention  Executables  Detection
• Prevention
• Coding Convention, ProgrammingTools, Static Analysis, Dynamic Analysis,
Resource Management, Performance, Scalability…
• Detection
• As complete as possible on test cases, UnitTests, IntegrationTests, System
Tests, ScalabilityTests, PerformanceTests,Test Automation, Automated
RandomTests…
• Detection 2: build-in monitoring for resources, performance,
traceability.
SoftwareVerification
• Executables  Verify  Releasable or not
• Put executables into production environment.
• Test with the same intensity as under Software Construction
Iterations.
• Pay attention to monitoring data which may reveal defects escaped
the testing.
Linear
Analyze Design Construct Verify
Linear Iterative
PreventionDetection
Design
PreventionDetection
Construct
PreventionDetection
Analyze
Monitoring
Verify
Overlapping
Iterative
PreventionDetection
Design PreventionDetection
Construct
PreventionDetection
Analyze
Monitoring
Verify
Incremental Iterative
• Outline &
Partition
• Sky
• Sea
• Rocks
• Coast
• Lighthouse
• Houses
Incremental Iterative
• Fill in more
details in
partitions
Incremental Iterative
• Fill in more
details & color
in partitions
Agility Essence
• To detect defects early
• Prevent defects in each human software activities
• Detect defects after each human software activities
• Incremental and Iterative
Q & A

More Related Content

What's hot

Introduction to Software Engineering Course
Introduction to Software Engineering CourseIntroduction to Software Engineering Course
Introduction to Software Engineering CourseMd. Shafiuzzaman Hira
 
Reverse Engineering.pptx
Reverse Engineering.pptxReverse Engineering.pptx
Reverse Engineering.pptxSameer Sapra
 
Non functional requirement
Non functional requirementNon functional requirement
Non functional requirementGetacher Zewudie
 
Introduction to Non Functional Requirement (NFR)
Introduction to Non Functional Requirement (NFR)Introduction to Non Functional Requirement (NFR)
Introduction to Non Functional Requirement (NFR)Sanjay Kumar
 
INTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGINTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGPreeti Mishra
 
Presentation (software engineering)
Presentation (software engineering)Presentation (software engineering)
Presentation (software engineering)Abdullah Al Shiam
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringUpekha Vandebona
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
An Introduction to Iterative Software Development
An Introduction to Iterative Software DevelopmentAn Introduction to Iterative Software Development
An Introduction to Iterative Software DevelopmentGeoffrey Weglarz
 
Agile & Secure SDLC
Agile & Secure SDLCAgile & Secure SDLC
Agile & Secure SDLCPaul Yang
 
Pressman ch-1-software
Pressman ch-1-softwarePressman ch-1-software
Pressman ch-1-softwareAlenaDion
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement AnalysisSADEED AMEEN
 

What's hot (20)

Introduction to Software Engineering Course
Introduction to Software Engineering CourseIntroduction to Software Engineering Course
Introduction to Software Engineering Course
 
Reverse Engineering.pptx
Reverse Engineering.pptxReverse Engineering.pptx
Reverse Engineering.pptx
 
Why do we test software?
Why do we test software?Why do we test software?
Why do we test software?
 
Non functional requirement
Non functional requirementNon functional requirement
Non functional requirement
 
Software Process Model
Software Process ModelSoftware Process Model
Software Process Model
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
Iterative software development
Iterative software developmentIterative software development
Iterative software development
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Introduction to Non Functional Requirement (NFR)
Introduction to Non Functional Requirement (NFR)Introduction to Non Functional Requirement (NFR)
Introduction to Non Functional Requirement (NFR)
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
INTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGINTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERING
 
Presentation (software engineering)
Presentation (software engineering)Presentation (software engineering)
Presentation (software engineering)
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
User stories
User storiesUser stories
User stories
 
An Introduction to Iterative Software Development
An Introduction to Iterative Software DevelopmentAn Introduction to Iterative Software Development
An Introduction to Iterative Software Development
 
Agile & Secure SDLC
Agile & Secure SDLCAgile & Secure SDLC
Agile & Secure SDLC
 
Lecture2
Lecture2Lecture2
Lecture2
 
Pressman ch-1-software
Pressman ch-1-softwarePressman ch-1-software
Pressman ch-1-software
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 

Similar to Agility reboot iv

AppSec in an Agile World
AppSec in an Agile WorldAppSec in an Agile World
AppSec in an Agile WorldDavid Lindner
 
Assessing System Risk the Smart Way
Assessing System Risk the Smart WayAssessing System Risk the Smart Way
Assessing System Risk the Smart WaySecurity Innovation
 
Softwareengineeringfundamentalssvetlinnakov 1233295163644547-1
Softwareengineeringfundamentalssvetlinnakov 1233295163644547-1Softwareengineeringfundamentalssvetlinnakov 1233295163644547-1
Softwareengineeringfundamentalssvetlinnakov 1233295163644547-1gururguru01
 
Cyber security - It starts with the embedded system
Cyber security - It starts with the embedded systemCyber security - It starts with the embedded system
Cyber security - It starts with the embedded systemRogue Wave Software
 
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinDev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinMatt Tesauro
 
Testing quick interview preparation
Testing quick interview preparationTesting quick interview preparation
Testing quick interview preparationtesting1001
 
Jason Kent - AppSec Without Additional Tools
Jason Kent - AppSec Without Additional ToolsJason Kent - AppSec Without Additional Tools
Jason Kent - AppSec Without Additional Toolscentralohioissa
 
Mt s1 basic_fundamentals
Mt s1 basic_fundamentalsMt s1 basic_fundamentals
Mt s1 basic_fundamentalsTestingGeeks
 
Manual Testing.pptx
Manual Testing.pptxManual Testing.pptx
Manual Testing.pptxAyushNilabh2
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSanthia RK
 
ppt_se.bdfhrfykjyftiktgdukhydiyiuoyu8otrfu
ppt_se.bdfhrfykjyftiktgdukhydiyiuoyu8otrfuppt_se.bdfhrfykjyftiktgdukhydiyiuoyu8otrfu
ppt_se.bdfhrfykjyftiktgdukhydiyiuoyu8otrfutubashaikh26
 
Bringing Security Testing to Development: How to Enable Developers to Act as ...
Bringing Security Testing to Development: How to Enable Developers to Act as ...Bringing Security Testing to Development: How to Enable Developers to Act as ...
Bringing Security Testing to Development: How to Enable Developers to Act as ...Achim D. Brucker
 
Programming languages and techniques for today’s embedded andIoT world
Programming languages and techniques for today’s embedded andIoT worldProgramming languages and techniques for today’s embedded andIoT world
Programming languages and techniques for today’s embedded andIoT worldRogue Wave Software
 
Introduction to Automated Testing
Introduction to Automated TestingIntroduction to Automated Testing
Introduction to Automated TestingLars Thorup
 
Introduction to-automated-testing
Introduction to-automated-testingIntroduction to-automated-testing
Introduction to-automated-testingBestBrains
 
Real%20 world%20software%20testing%20white%20backgoround1
Real%20 world%20software%20testing%20white%20backgoround1Real%20 world%20software%20testing%20white%20backgoround1
Real%20 world%20software%20testing%20white%20backgoround1Varun Sharma
 

Similar to Agility reboot iv (20)

Static Code Analysis
Static Code AnalysisStatic Code Analysis
Static Code Analysis
 
Java Code Quality Tools
Java Code Quality ToolsJava Code Quality Tools
Java Code Quality Tools
 
AppSec in an Agile World
AppSec in an Agile WorldAppSec in an Agile World
AppSec in an Agile World
 
Assessing System Risk the Smart Way
Assessing System Risk the Smart WayAssessing System Risk the Smart Way
Assessing System Risk the Smart Way
 
Softwareengineeringfundamentalssvetlinnakov 1233295163644547-1
Softwareengineeringfundamentalssvetlinnakov 1233295163644547-1Softwareengineeringfundamentalssvetlinnakov 1233295163644547-1
Softwareengineeringfundamentalssvetlinnakov 1233295163644547-1
 
Cyber security - It starts with the embedded system
Cyber security - It starts with the embedded systemCyber security - It starts with the embedded system
Cyber security - It starts with the embedded system
 
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinDev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
 
Testing quick interview preparation
Testing quick interview preparationTesting quick interview preparation
Testing quick interview preparation
 
Jason Kent - AppSec Without Additional Tools
Jason Kent - AppSec Without Additional ToolsJason Kent - AppSec Without Additional Tools
Jason Kent - AppSec Without Additional Tools
 
SE Unit-1.pptx
SE Unit-1.pptxSE Unit-1.pptx
SE Unit-1.pptx
 
Mt s1 basic_fundamentals
Mt s1 basic_fundamentalsMt s1 basic_fundamentals
Mt s1 basic_fundamentals
 
Manual Testing.pptx
Manual Testing.pptxManual Testing.pptx
Manual Testing.pptx
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
ppt_se.bdfhrfykjyftiktgdukhydiyiuoyu8otrfu
ppt_se.bdfhrfykjyftiktgdukhydiyiuoyu8otrfuppt_se.bdfhrfykjyftiktgdukhydiyiuoyu8otrfu
ppt_se.bdfhrfykjyftiktgdukhydiyiuoyu8otrfu
 
Bringing Security Testing to Development: How to Enable Developers to Act as ...
Bringing Security Testing to Development: How to Enable Developers to Act as ...Bringing Security Testing to Development: How to Enable Developers to Act as ...
Bringing Security Testing to Development: How to Enable Developers to Act as ...
 
Programming languages and techniques for today’s embedded andIoT world
Programming languages and techniques for today’s embedded andIoT worldProgramming languages and techniques for today’s embedded andIoT world
Programming languages and techniques for today’s embedded andIoT world
 
Introduction to Automated Testing
Introduction to Automated TestingIntroduction to Automated Testing
Introduction to Automated Testing
 
Introduction to-automated-testing
Introduction to-automated-testingIntroduction to-automated-testing
Introduction to-automated-testing
 
ppt_se.pdf
ppt_se.pdfppt_se.pdf
ppt_se.pdf
 
Real%20 world%20software%20testing%20white%20backgoround1
Real%20 world%20software%20testing%20white%20backgoround1Real%20 world%20software%20testing%20white%20backgoround1
Real%20 world%20software%20testing%20white%20backgoround1
 

Recently uploaded

办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 

Recently uploaded (20)

办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 

Agility reboot iv

  • 1. AgilityReboot:IV To Err is Human;To Correct, Complete Andrew Chum
  • 2. In A Perfect, MagicalWorld… • Whatever a client wants for software, a perfect software product will appear. • There is no software defects. • Software requirements will never change. • No need of any kind of software development framework or methodologies.
  • 3. To Err is Human • Software Creation ProcessTimeline • Requirements  Analyze  Software Requirement Specifications (SRS) • SRS  Design  Architectural Designs, Component Designs… • Designs  Construct  Executables • Executables  Verify  Releasable or not • If theWorld is perfect, each phase produces perfect result and no need to verify. • In our imperfect world, human in each phase introduces mistakes.
  • 4. To Correct, Complete • It is well documented that defects identified later in SDLC are expensive to fix than defects identified in early stage. • To find out defects as early as possible. • Since to err is human, each human activities for creating software should be detected for errors. • To Correct, Complete
  • 5. How to minimize human error • Prevention • Detection • Apply them to each development phase • Requirements  Analyze w/ Prevention  SRS  Detection • Incremental and Iterative
  • 6. Prevention-Detection-Iteration • Requirements  Analyze w/ Prevention  SRS  Detection • SRS  Design w/ Prevention  Designs  Detection • Designs  Construct w/ Prevention  Executables  Detection • Executables  Verify  Releasable or not
  • 7. Software Requirement Analysis • Requirements  Analyze w/ Prevention  SRS  Detection • Prevention • Completeness, Consistency, Clarity,Testable,Traceable, Quantifiable … • Detection • Internal reviews • Different levels of reviews: product management, development, testing, deployment • External reviews with customers
  • 8. Software Designs • SRS  Design w/ Prevention  Designs  Detection • Prevention • Good Design Principles, Design Patterns, Control flow, Data flow, Module Interfaces, Module Interactions, Scalability, Security, Fault-tolerance … • Detection • Infrastructure Framework, Simulations,Test Run…
  • 9. Software Construction • Designs  Construct w/ Prevention  Executables  Detection • Prevention • Coding Convention, ProgrammingTools, Static Analysis, Dynamic Analysis, Resource Management, Performance, Scalability… • Detection • As complete as possible on test cases, UnitTests, IntegrationTests, System Tests, ScalabilityTests, PerformanceTests,Test Automation, Automated RandomTests… • Detection 2: build-in monitoring for resources, performance, traceability.
  • 10. SoftwareVerification • Executables  Verify  Releasable or not • Put executables into production environment. • Test with the same intensity as under Software Construction Iterations. • Pay attention to monitoring data which may reveal defects escaped the testing.
  • 14. Incremental Iterative • Outline & Partition • Sky • Sea • Rocks • Coast • Lighthouse • Houses
  • 15. Incremental Iterative • Fill in more details in partitions
  • 16. Incremental Iterative • Fill in more details & color in partitions
  • 17. Agility Essence • To detect defects early • Prevent defects in each human software activities • Detect defects after each human software activities • Incremental and Iterative
  • 18. Q & A