incremental software engineering

Download Incremental Software Engineering

Post on 06-May-2015

344 views

Category:

Technology

0 download

Embed Size (px)

DESCRIPTION

Paul Compton, UNSW, RAISE'13

TRANSCRIPT

  • 1.Incremental SoftwareEngineeringPaul ComptonSchool of Computer Science and EngineeringThe University of New South Wales, AustraliaKnowledge

2. Can Software Engineering be reduced toKnowledge Engineering?Knowledge Engineering ??!!** 3. The problem Requirements are never completeWhy? McCarthys qualification problem (1977) You can never anticipate every situation a robot willhave to deal with Domain knowledge is never complete An expert cant recall every situation related to thecontext. Is knowledge acquisition asymptotic? Smaller and smaller improvements At greater and greater cost 4. 96% accurate99.7% accurate 5. Neural Net?Support Vector Machine?Decision tree learners?iLog, Drools?Etc?Building a classifier 6. 7 rules added8 rules addedRipple Down Rules 7. Ripple-Down Rules Features Controlled inference Cornerstone cases Any set of cases correctly handled by previouslyrules which may fire a new rule being added Generally, cases for which rules were added Monitoring 85.4% auto-validatedStandard 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 8. General Biochemistry0.060.130.250.501.002.004.008.0016.0032.0064.00128.00256.00512.000 500 1,000 1,500 2,000 2,500 3,000 3,500meintoaddanddebugarule(mins)medianme(mins)rule number2003 2004 2005 2006 2007 2008 2010 2011253 different comments7.3M reports processed28hrs 8hrs 10hrs 9hrs 12hrs 5hrs 6hrsData from Pacific Knowledge Systems 9. 0.060.130.250.501.002.004.008.0016.0032.0064.00128.00256.00512.000 2,000 4,000 6,000 8,000 10,000 12,000 14,000Timetoaddarule(mins)medianmeover50rules(mins)Rule numberData from Pacific Knowledge Systems 10. 0%10%20%30%40%50%60%70%80%90%100%1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000Percetofrulesaddedwithvariousnumbersofcondionsrules added rounded up to the next 1000> 10 condi ons6 to 10 condi ons4 or 5 condi onsup to 3 condi onsData from Pacific Knowledge Systems 11. 0.060.130.250.501.002.004.008.0016.0032.0064.00128.00256.00512.000 2,000 4,000 6,000 8,000 10,000 12,000 14,000Timetoaddarule(mins)medianmeover50rules(mins)averageover50rules(mins)avg.noofcondionsperrulerulesRule numberData from Pacific Knowledge Systems 12. Comparison DataRule-buildingtechniquesTime to add rules number of rules Source of thedataVarious standardtechniquesZacharias - 200838 mins per ruleTo385 mins per rule126,016(estimate)64 surveyrespondentsRipple Down RulesCompton et al - 201178 secs per rule 57,626 Logs from 17 labs 13. Other applicationsPathology applicationsPacific Knowledge Systems Report interpretation Auditing data entry Real-time alerts Risk management Data cleansing Information extraction Part of speech Named entity Relations 14. Re-engineering legacy systemsRDR SystemLegacy Systeminput outputcomparerules added when necessaryErudine Pty. Ltd. 15. What sort of Software Engineering isPossible with Ripple-Down Rules? 16. outputGeneral RDR2 3 4 41inputIf A & B THEN X , (RULE 1, ELSE RULE 4)If A & B THEN XUNLESS C THEN nul (rule 4, ELSE rule 1)If C THEN Y (rule 1, exit)5If . . . . . THEN . . (rule 1, exit)If . . . . . THEN . . (rule 1, rule 5)No rule can change an assertionmade by any other ruleLinked production rules If [condition] then [case action-list][inference action]else [inference action] 17. General RDRoutput2 3 4 41input5Anotherknowledge-basedsystemIf A & B Then XSome otherprogramAother program 18. 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 insoftware engineering?THANK YOU

Recommended

View more >