SlideShare a Scribd company logo
1 of 19
Incremental Software
Engineering
Paul Compton
School of Computer Science and Engineering
The University of New South Wales, Australia
Knowledge
Can Software Engineering be reduced to
Knowledge Engineering?
Knowledge Engineering ??!!**
The problem
• Requirements are never complete
Why?
• McCarthy’s qualification problem (1977)
– You can never anticipate every situation a robot will
have to deal with
• Domain knowledge is never complete
– An expert can’t recall every situation related to the
context.
• Is knowledge acquisition asymptotic?
– Smaller and smaller improvements
– At greater and greater cost
96% accurate
99.7% accurate
Neural Net?
Support Vector Machine?
Decision tree learners?
iLog, Drools?
Etc?
Building a classifier
7 rules added8 rules added
Ripple Down Rules
Ripple-Down Rules Features
• Controlled inference
• Cornerstone cases
– Any set of cases correctly handled by previously
rules which may fire a new rule being added
– Generally, cases for which rules were added
• Monitoring
– 85.4% auto-validated
Standard production rules If [condition] then [action-list]
Linked production rules If [condition] then [case action-list]
[inference action]
else [inference action]
• 7.5 million cases, 6 months, 12 labs, 185 KBs
• 85.4% auto-validated (labs range 48% to 96%)
• Rules added for 0.3% of the 14.6% manually monitored
General Biochemistry
0.06
0.13
0.25
0.50
1.00
2.00
4.00
8.00
16.00
32.00
64.00
128.00
256.00
512.00
0 500 1,000 1,500 2,000 2,500 3,000 3,500
meintoaddanddebugarule(mins)
medianme(mins)
rule number
2003 2004 2005 2006 2007 2008 2010 2011
253 different comments
7.3M reports processed
28hrs 8hrs 10hrs 9hrs 12hrs 5hrs 6hrs
Data from Pacific Knowledge Systems
0.06
0.13
0.25
0.50
1.00
2.00
4.00
8.00
16.00
32.00
64.00
128.00
256.00
512.00
0 2,000 4,000 6,000 8,000 10,000 12,000 14,000
Timetoaddarule(mins)
medianmeover50rules(mins)
Rule number
Data from Pacific Knowledge Systems
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000
Percetofrulesaddedwithvariousnumbersofcondions
rules added rounded up to the next 1000
> 10 condi ons
6 to 10 condi ons
4 or 5 condi ons
up to 3 condi ons
Data from Pacific Knowledge Systems
0.06
0.13
0.25
0.50
1.00
2.00
4.00
8.00
16.00
32.00
64.00
128.00
256.00
512.00
0 2,000 4,000 6,000 8,000 10,000 12,000 14,000
Timetoaddarule(mins)medianmeover50rules(mins)
averageover50rules(mins)avg.noofcondionsperrulerules
Rule number
Data from Pacific Knowledge Systems
Comparison Data
Rule-building
techniques
Time to add rules number of rules Source of the
data
Various standard
techniques
Zacharias - 2008
38 mins per rule
To
385 mins per rule
126,016
(estimate)
64 survey
respondents
Ripple Down Rules
Compton et al - 2011
78 secs per rule 57,626 Logs from 17 labs
Other applications
Pathology applications
Pacific Knowledge Systems
• Report interpretation
• Auditing data entry
• Real-time alerts
• Risk management
• Data cleansing
• Information extraction
– Part of speech
– Named entity
– Relations
Re-engineering legacy systems
RDR System
Legacy System
input output
compare
rules added when necessary
Erudine Pty. Ltd.
What sort of Software Engineering is
Possible with Ripple-Down Rules?
output
General RDR
2 3 4 41
input
If A & B THEN X , (RULE 1, ELSE RULE 4)
If A & B THEN X
UNLESS C THEN nul (rule 4, ELSE rule 1)
If C THEN Y (rule 1, exit)
5
If . . . . . THEN . . (rule 1, exit)
If . . . . . THEN . . (rule 1, rule 5)
No rule can change an assertion
made by any other rule
Linked production rules If [condition] then [case action-list]
[inference action]
else [inference action]
General RDR
output
2 3 4 41
input
5
Another
knowledge-based
system
If A & B Then X
Some other
program
A
other program
Summary
• The unexpected will always arise.
– (but everything was unexpected once)
• Incremental knowledge engineering works
• Is incremental software engineering possible?
• Can incremental knowledge engineering by used in
software engineering?
THANK YOU

More Related Content

What's hot

Icse 2011 ds_1
Icse 2011 ds_1Icse 2011 ds_1
Icse 2011 ds_1
SAIL_QU
 
A Productive Method for Improving Test Effectiveness
A Productive Method for Improving Test EffectivenessA Productive Method for Improving Test Effectiveness
A Productive Method for Improving Test Effectiveness
Shradha Singh
 
ECE496_final_design_Poster
ECE496_final_design_PosterECE496_final_design_Poster
ECE496_final_design_Poster
Hang Wu
 
Regression Optimizer
Regression OptimizerRegression Optimizer
Regression Optimizer
Shradha Singh
 

What's hot (10)

Words that Matter
Words that MatterWords that Matter
Words that Matter
 
Icse 2011 ds_1
Icse 2011 ds_1Icse 2011 ds_1
Icse 2011 ds_1
 
Autotestcon 2016
Autotestcon 2016Autotestcon 2016
Autotestcon 2016
 
Supporting Software Evolution Using Adaptive Change Propagation
Supporting Software Evolution Using Adaptive Change PropagationSupporting Software Evolution Using Adaptive Change Propagation
Supporting Software Evolution Using Adaptive Change Propagation
 
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
 
A Productive Method for Improving Test Effectiveness
A Productive Method for Improving Test EffectivenessA Productive Method for Improving Test Effectiveness
A Productive Method for Improving Test Effectiveness
 
ECE496_final_design_Poster
ECE496_final_design_PosterECE496_final_design_Poster
ECE496_final_design_Poster
 
The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...
 
Regression Optimizer
Regression OptimizerRegression Optimizer
Regression Optimizer
 
Automatic Assessment of Failure Recovery in Erlang Applications
Automatic Assessment of Failure Recovery in Erlang ApplicationsAutomatic Assessment of Failure Recovery in Erlang Applications
Automatic Assessment of Failure Recovery in Erlang Applications
 

Viewers also liked

Idea Engineering
Idea EngineeringIdea Engineering
Idea Engineering
CS, NcState
 
In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?
CS, NcState
 

Viewers also liked (11)

Idea Engineering
Idea EngineeringIdea Engineering
Idea Engineering
 
Welcome to ICSE NIER’15 (new ideas and emerging results).
Welcome to ICSE NIER’15 (new ideas and emerging results).Welcome to ICSE NIER’15 (new ideas and emerging results).
Welcome to ICSE NIER’15 (new ideas and emerging results).
 
Next Generation “Treatment Learning” (finding the diamonds in the dust)
Next Generation “Treatment Learning” (finding the diamonds in the dust)Next Generation “Treatment Learning” (finding the diamonds in the dust)
Next Generation “Treatment Learning” (finding the diamonds in the dust)
 
In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?
 
Requirements, Design and Data Repositories
Requirements, Design and Data RepositoriesRequirements, Design and Data Repositories
Requirements, Design and Data Repositories
 
SE and AI: a two-way street
SE and AI: a two-way streetSE and AI: a two-way street
SE and AI: a two-way street
 
Talks2015 novdec
Talks2015 novdecTalks2015 novdec
Talks2015 novdec
 
Big Data: the weakest link
Big Data: the weakest linkBig Data: the weakest link
Big Data: the weakest link
 
Requirements Engineering
Requirements EngineeringRequirements Engineering
Requirements Engineering
 
Robust Design
Robust DesignRobust Design
Robust Design
 
Quality of Service
Quality of ServiceQuality of Service
Quality of Service
 

Similar to Incremental Software Engineering

Puppet Camp Seattle 2014: Keynote
Puppet Camp Seattle 2014: KeynotePuppet Camp Seattle 2014: Keynote
Puppet Camp Seattle 2014: Keynote
Puppet
 
An Extended Two-Phase Architecture for Mining Time Series Data
An Extended Two-Phase Architecture for Mining Time Series Data An Extended Two-Phase Architecture for Mining Time Series Data
An Extended Two-Phase Architecture for Mining Time Series Data
sosorry
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Lionel Briand
 
Puppet Camp Melbourne: Keynote
Puppet Camp Melbourne: KeynotePuppet Camp Melbourne: Keynote
Puppet Camp Melbourne: Keynote
Puppet
 
Puppet Camp Portland 2015:
Puppet Camp Portland 2015: Puppet Camp Portland 2015:
Puppet Camp Portland 2015:
Puppet
 

Similar to Incremental Software Engineering (20)

Webinar Slides - How KeyBank Liberated its IT Ops from Rules-Based Event Mana...
Webinar Slides - How KeyBank Liberated its IT Ops from Rules-Based Event Mana...Webinar Slides - How KeyBank Liberated its IT Ops from Rules-Based Event Mana...
Webinar Slides - How KeyBank Liberated its IT Ops from Rules-Based Event Mana...
 
Puppet Camp Atlanta 2014: Keynote
Puppet Camp Atlanta 2014: Keynote  Puppet Camp Atlanta 2014: Keynote
Puppet Camp Atlanta 2014: Keynote
 
Puppet Camp Seattle 2014: Keynote
Puppet Camp Seattle 2014: KeynotePuppet Camp Seattle 2014: Keynote
Puppet Camp Seattle 2014: Keynote
 
An Extended Two-Phase Architecture for Mining Time Series Data
An Extended Two-Phase Architecture for Mining Time Series Data An Extended Two-Phase Architecture for Mining Time Series Data
An Extended Two-Phase Architecture for Mining Time Series Data
 
Predictive Process Monitoring with Hyperparameter Optimization
Predictive Process Monitoring with Hyperparameter OptimizationPredictive Process Monitoring with Hyperparameter Optimization
Predictive Process Monitoring with Hyperparameter Optimization
 
Farid Ali Presentation_Final.pptx
Farid Ali Presentation_Final.pptxFarid Ali Presentation_Final.pptx
Farid Ali Presentation_Final.pptx
 
The Fine Art of Combining Capacity Management with Machine Learning
The Fine Art of Combining Capacity Management with Machine LearningThe Fine Art of Combining Capacity Management with Machine Learning
The Fine Art of Combining Capacity Management with Machine Learning
 
Itpi metricon 0906a final
Itpi metricon 0906a finalItpi metricon 0906a final
Itpi metricon 0906a final
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
 
Enabling Automated Software Testing with Artificial Intelligence
Enabling Automated Software Testing with Artificial IntelligenceEnabling Automated Software Testing with Artificial Intelligence
Enabling Automated Software Testing with Artificial Intelligence
 
Puppet Camp Melbourne: Keynote
Puppet Camp Melbourne: KeynotePuppet Camp Melbourne: Keynote
Puppet Camp Melbourne: Keynote
 
Ch02
Ch02Ch02
Ch02
 
Puppet Camp Portland 2015: Keynote
Puppet Camp Portland 2015: KeynotePuppet Camp Portland 2015: Keynote
Puppet Camp Portland 2015: Keynote
 
Puppet Camp Portland 2015:
Puppet Camp Portland 2015: Puppet Camp Portland 2015:
Puppet Camp Portland 2015:
 
ESEM_2023.pdf
ESEM_2023.pdfESEM_2023.pdf
ESEM_2023.pdf
 
Expert systems from rk
Expert systems from rkExpert systems from rk
Expert systems from rk
 
Maximize Your Understanding of Operational Realities in Manufacturing with Pr...
Maximize Your Understanding of Operational Realities in Manufacturing with Pr...Maximize Your Understanding of Operational Realities in Manufacturing with Pr...
Maximize Your Understanding of Operational Realities in Manufacturing with Pr...
 
Resilient systems design
Resilient systems designResilient systems design
Resilient systems design
 
Resilient systems design
Resilient systems designResilient systems design
Resilient systems design
 
Cybernetics in supply chain management
Cybernetics in supply chain managementCybernetics in supply chain management
Cybernetics in supply chain management
 

More from CS, NcState

Lexisnexis june9
Lexisnexis june9Lexisnexis june9
Lexisnexis june9
CS, NcState
 
Ai4se lab template
Ai4se lab templateAi4se lab template
Ai4se lab template
CS, NcState
 
Automated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUAutomated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSU
CS, NcState
 
Dagstuhl14 intro-v1
Dagstuhl14 intro-v1Dagstuhl14 intro-v1
Dagstuhl14 intro-v1
CS, NcState
 
How to do better experiments in SE
How to do better experiments in SEHow to do better experiments in SE
How to do better experiments in SE
CS, NcState
 

More from CS, NcState (20)

Future se oct15
Future se oct15Future se oct15
Future se oct15
 
GALE: Geometric active learning for Search-Based Software Engineering
GALE: Geometric active learning for Search-Based Software EngineeringGALE: Geometric active learning for Search-Based Software Engineering
GALE: Geometric active learning for Search-Based Software Engineering
 
Three Laws of Trusted Data Sharing: (Building a Better Business Case for Dat...
Three Laws of Trusted Data Sharing:(Building a Better Business Case for Dat...Three Laws of Trusted Data Sharing:(Building a Better Business Case for Dat...
Three Laws of Trusted Data Sharing: (Building a Better Business Case for Dat...
 
Lexisnexis june9
Lexisnexis june9Lexisnexis june9
Lexisnexis june9
 
Icse15 Tech-briefing Data Science
Icse15 Tech-briefing Data ScienceIcse15 Tech-briefing Data Science
Icse15 Tech-briefing Data Science
 
Kits to Find the Bits that Fits
Kits to Find  the Bits that Fits Kits to Find  the Bits that Fits
Kits to Find the Bits that Fits
 
Ai4se lab template
Ai4se lab templateAi4se lab template
Ai4se lab template
 
Automated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUAutomated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSU
 
172529main ken and_tim_software_assurance_research_at_west_virginia
172529main ken and_tim_software_assurance_research_at_west_virginia172529main ken and_tim_software_assurance_research_at_west_virginia
172529main ken and_tim_software_assurance_research_at_west_virginia
 
Automated Software Engineering
Automated Software EngineeringAutomated Software Engineering
Automated Software Engineering
 
Tim Menzies, directions in Data Science
Tim Menzies, directions in Data ScienceTim Menzies, directions in Data Science
Tim Menzies, directions in Data Science
 
Goldrush
GoldrushGoldrush
Goldrush
 
Dagstuhl14 intro-v1
Dagstuhl14 intro-v1Dagstuhl14 intro-v1
Dagstuhl14 intro-v1
 
Know thy tools
Know thy toolsKnow thy tools
Know thy tools
 
The Art and Science of Analyzing Software Data
The Art and Science of Analyzing Software DataThe Art and Science of Analyzing Software Data
The Art and Science of Analyzing Software Data
 
What Metrics Matter?
What Metrics Matter? What Metrics Matter?
What Metrics Matter?
 
Sayyad slides ase13_v4
Sayyad slides ase13_v4Sayyad slides ase13_v4
Sayyad slides ase13_v4
 
Ase2013
Ase2013Ase2013
Ase2013
 
Warning: don't do CS
Warning: don't do CSWarning: don't do CS
Warning: don't do CS
 
How to do better experiments in SE
How to do better experiments in SEHow to do better experiments in SE
How to do better experiments in SE
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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...
 
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
 
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...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
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...
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
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
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
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
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

Incremental Software Engineering

  • 1. Incremental Software Engineering Paul Compton School of Computer Science and Engineering The University of New South Wales, Australia Knowledge
  • 2. Can Software Engineering be reduced to Knowledge Engineering? Knowledge Engineering ??!!**
  • 3. The problem • Requirements are never complete Why? • McCarthy’s qualification problem (1977) – You can never anticipate every situation a robot will have to deal with • Domain knowledge is never complete – An expert can’t recall every situation related to the context. • Is knowledge acquisition asymptotic? – Smaller and smaller improvements – At greater and greater cost
  • 5. Neural Net? Support Vector Machine? Decision tree learners? iLog, Drools? Etc? Building a classifier
  • 6.
  • 7. 7 rules added8 rules added Ripple Down Rules
  • 8. Ripple-Down Rules Features • Controlled inference • Cornerstone cases – Any set of cases correctly handled by previously rules which may fire a new rule being added – Generally, cases for which rules were added • Monitoring – 85.4% auto-validated Standard production rules If [condition] then [action-list] Linked production rules If [condition] then [case action-list] [inference action] else [inference action] • 7.5 million cases, 6 months, 12 labs, 185 KBs • 85.4% auto-validated (labs range 48% to 96%) • Rules added for 0.3% of the 14.6% manually monitored
  • 9. General Biochemistry 0.06 0.13 0.25 0.50 1.00 2.00 4.00 8.00 16.00 32.00 64.00 128.00 256.00 512.00 0 500 1,000 1,500 2,000 2,500 3,000 3,500 meintoaddanddebugarule(mins) medianme(mins) rule number 2003 2004 2005 2006 2007 2008 2010 2011 253 different comments 7.3M reports processed 28hrs 8hrs 10hrs 9hrs 12hrs 5hrs 6hrs Data from Pacific Knowledge Systems
  • 10. 0.06 0.13 0.25 0.50 1.00 2.00 4.00 8.00 16.00 32.00 64.00 128.00 256.00 512.00 0 2,000 4,000 6,000 8,000 10,000 12,000 14,000 Timetoaddarule(mins) medianmeover50rules(mins) Rule number Data from Pacific Knowledge Systems
  • 11. 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000 Percetofrulesaddedwithvariousnumbersofcondions rules added rounded up to the next 1000 > 10 condi ons 6 to 10 condi ons 4 or 5 condi ons up to 3 condi ons Data from Pacific Knowledge Systems
  • 12. 0.06 0.13 0.25 0.50 1.00 2.00 4.00 8.00 16.00 32.00 64.00 128.00 256.00 512.00 0 2,000 4,000 6,000 8,000 10,000 12,000 14,000 Timetoaddarule(mins)medianmeover50rules(mins) averageover50rules(mins)avg.noofcondionsperrulerules Rule number Data from Pacific Knowledge Systems
  • 13. Comparison Data Rule-building techniques Time to add rules number of rules Source of the data Various standard techniques Zacharias - 2008 38 mins per rule To 385 mins per rule 126,016 (estimate) 64 survey respondents Ripple Down Rules Compton et al - 2011 78 secs per rule 57,626 Logs from 17 labs
  • 14. Other applications Pathology applications Pacific Knowledge Systems • Report interpretation • Auditing data entry • Real-time alerts • Risk management • Data cleansing • Information extraction – Part of speech – Named entity – Relations
  • 15. Re-engineering legacy systems RDR System Legacy System input output compare rules added when necessary Erudine Pty. Ltd.
  • 16. What sort of Software Engineering is Possible with Ripple-Down Rules?
  • 17. output General RDR 2 3 4 41 input If A & B THEN X , (RULE 1, ELSE RULE 4) If A & B THEN X UNLESS C THEN nul (rule 4, ELSE rule 1) If C THEN Y (rule 1, exit) 5 If . . . . . THEN . . (rule 1, exit) If . . . . . THEN . . (rule 1, rule 5) No rule can change an assertion made by any other rule Linked production rules If [condition] then [case action-list] [inference action] else [inference action]
  • 18. General RDR output 2 3 4 41 input 5 Another knowledge-based system If A & B Then X Some other program A other program
  • 19. Summary • The unexpected will always arise. – (but everything was unexpected once) • Incremental knowledge engineering works • Is incremental software engineering possible? • Can incremental knowledge engineering by used in software engineering? THANK YOU