SlideShare uma empresa Scribd logo
1 de 67
Baixar para ler offline
Agile Requirements
                Evolution via
          Paraconsistent Reasoning
                                        Neil A. Ernst
                               University of British Columbia
                        @neilernst • neil@neilernst.net • neilernst.net


            with: Alexander Borgida, John Mylopoulos and Ivan Jureta
                    borgida@cs.rutgers.edu, jm@disi.unitn.it,
Thursday, 28 June, 12
                             ijureta@fundp.ac.be
page 382 of proceedings

             Agile Requirements
                Evolution via
          Paraconsistent Reasoning
                                        Neil A. Ernst
                               University of British Columbia
                        @neilernst • neil@neilernst.net • neilernst.net


            with: Alexander Borgida, John Mylopoulos and Ivan Jureta
                    borgida@cs.rutgers.edu, jm@disi.unitn.it,
Thursday, 28 June, 12
                             ijureta@fundp.ac.be
Takeaway
       We need agile requirements models — that
          can still be systematically analysed.




Thursday, 28 June, 12
Takeaway
       We need agile requirements models — that
          can still be systematically analysed.

          • Motivation




Thursday, 28 June, 12
Takeaway
       We need agile requirements models — that
          can still be systematically analysed.

          • Motivation
          • Formal representation of a requirements
                  problem as a knowledge base.




Thursday, 28 June, 12
Takeaway
       We need agile requirements models — that
          can still be systematically analysed.

          • Motivation
          • Formal representation of a requirements
                  problem as a knowledge base.
          •       How paraconsistent reasoning helps us
                  support dynamism.



Thursday, 28 June, 12
Takeaway
       We need agile requirements models — that
          can still be systematically analysed.

          • Motivation
          • Formal representation of a requirements
                  problem as a knowledge base.
          •       How paraconsistent reasoning helps us
                  support dynamism.
          •       Evaluation, how this works in practice.

Thursday, 28 June, 12
Agility ...

                                               Test
                               Devel.                 Ops
                        Req



                                        time
Thursday, 28 June, 12
Agility ...


                                          Test
                              Devel.             Ops
                        Req



                                   time
Thursday, 28 June, 12
Agility ...


                                          Test
                              Devel.             Ops
                        Req



                                   time
Thursday, 28 June, 12
Agility ...


                                    Test
                        Devel.             Ops
               Req

                             time
Thursday, 28 June, 12
Agility ...


                                    Test
                        Devel.             Ops
               Req

                             time
Thursday, 28 June, 12
Requirements agility is
                        constrained




Thursday, 28 June, 12
Requirements agility is
                        constrained

      Let’s add remote login




Thursday, 28 June, 12
Requirements agility is
                        constrained

      Let’s add remote login     Security hole




Thursday, 28 June, 12
Requirements agility is
                        constrained

      Let’s add remote login     Security hole
       How about removing
             RSA?




Thursday, 28 June, 12
Requirements agility is
                        constrained

      Let’s add remote login      Security hole
       How about removing
                               Not back-compatible
             RSA?




Thursday, 28 June, 12
Requirements agility is
                        constrained

      Let’s add remote login      Security hole
       How about removing
                               Not back-compatible
             RSA?
    Simplify account mgmt?




Thursday, 28 June, 12
Requirements agility is
                        constrained

      Let’s add remote login      Security hole
       How about removing
                               Not back-compatible
             RSA?
    Simplify account mgmt? Violates Sarbanes-Oxley




Thursday, 28 June, 12
Requirements agility is
                        constrained

      Let’s add remote login      Security hole
       How about removing
                               Not back-compatible
             RSA?
    Simplify account mgmt? Violates Sarbanes-Oxley

   Add COO’s pet feature?

Thursday, 28 June, 12
Requirements agility is
                        constrained

      Let’s add remote login      Security hole
       How about removing
                               Not back-compatible
             RSA?
    Simplify account mgmt? Violates Sarbanes-Oxley

   Add COO’s pet feature?        CEO hates COO

Thursday, 28 June, 12
Requirements agility
                          means success




Thursday, 28 June, 12
Requirements agility
                          means success




Thursday, 28 June, 12
“[the code] remained
                          operational in Ariane 5
                          without satisfying any
                        (traceable) requirement.”
Thursday, 28 June, 12
Thursday, 28 June, 12
Command             Executions
                              edit.Delete          5.4 M
                               file.Save            4.3 M
                              edit.Paste           3.8 M
                               edit.Copy           2.4 M
                        ContentAssist.proposals    1.4 M




Thursday, 28 June, 12
Command                  Executions
                                edit.Delete                5.4 M
                                  file.Save                 4.3 M
                                 edit.Paste                3.8 M
                                 edit.Copy                 2.4 M
                          ContentAssist.proposals          1.4 M

                               Command                     Executions
                           window.previousView                 9
                              navigate.Back                     69
                          window.showViewMenu                   89
                        window.previousPerspective             155
                          window.previousEditor                166
                                              Data: Eclipse UPP, 200908, eclipse.ui, 3.5.0
Thursday, 28 June, 12
Requirements problems




Thursday, 28 June, 12
Requirements problems
                        R   R   R




Thursday, 28 June, 12
Requirements problems
                        R       R       R



                            r       r




Thursday, 28 June, 12
Requirements problems
                        R           R           R



                            r           r




                        T           T
                                            T
                                T                   T



Thursday, 28 June, 12
Requirements problems
                        R           R           R



                            r           r




                        T           T
                                            T
                                T                   T



Thursday, 28 June, 12
Requirements problems
                        R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D

Thursday, 28 June, 12
Requirements problems
                        R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D

Thursday, 28 June, 12
Requirements problems
                        R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D

Thursday, 28 June, 12
Requirements problems
                        R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D

Thursday, 28 June, 12
Requirements problems
                        R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D

Thursday, 28 June, 12
Requirements problems
                        R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D

Thursday, 28 June, 12
Requirements problems
                        R           R               R


                                                     Requirements
                            r               r       Knowledge Base



                        T           T
                                                T
                                T                       T

                        D               D

Thursday, 28 June, 12
Paraconsistency
                                           Payment
                                          Card regs.




Thursday, 28 June, 12
Formalizing
                        paraconsistency
           • For the statement ‘requirement A
                   conflicts with requirement B’ write
                   A∧B→⊥
           •       Inconsistent when bottom (⊥) can be
                   derived
           •       Often more ‘complete’ requirements
                   are less consistent.

Thursday, 28 June, 12
Why paraconsistency?




                        taken from Nuseibeh et al. 2001
Thursday, 28 June, 12
Why paraconsistency?
              • to facilitate distributed collaborative
                        working (viewpoints),




                                           taken from Nuseibeh et al. 2001
Thursday, 28 June, 12
Why paraconsistency?
              • to facilitate distributed collaborative
                        working (viewpoints),
              •         to ensure all stakeholder views are
                        taken into account,




                                           taken from Nuseibeh et al. 2001
Thursday, 28 June, 12
Why paraconsistency?
              • to facilitate distributed collaborative
                        working (viewpoints),
              •         to ensure all stakeholder views are
                        taken into account,
              •         to focus attention on problem areas [of
                        the specification],


                                           taken from Nuseibeh et al. 2001
Thursday, 28 June, 12
Why paraconsistency?
              • to facilitate distributed collaborative
                        working (viewpoints),
              •         to ensure all stakeholder views are
                        taken into account,
              •         to focus attention on problem areas [of
                        the specification],
              •         to prevent premature commitment to
                        design decisions.
                                           taken from Nuseibeh et al. 2001
Thursday, 28 June, 12
Why paraconsistency?
              • to facilitate distributed collaborative
                        working (viewpoints),
              •         to ensure all stakeholder views are
                        taken into account,
              •         to focus attention on problem areas [of
                        the specification],
              •         to prevent premature commitment
                        to design decisions.
                                           taken from Nuseibeh et al. 2001
Thursday, 28 June, 12
Criteria for paraconsistent
                    satisfaction
               • Domain assumptions and refinements
                 are consistent.
               • Desired goals are internally
                 consistent.
               • Selected tasks are internally
                        consistent.


Thursday, 28 June, 12
R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D


Thursday, 28 June, 12
R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D


Thursday, 28 June, 12
R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D


Thursday, 28 June, 12
R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D


Thursday, 28 June, 12
R           R               R



                            r               r




                        T           T
                                                T
                                T                       T

                        D               D


Thursday, 28 June, 12
What to do?




Thursday, 28 June, 12
What to do?
               1. Given goals, what minimal sets of tasks
                  satisfy them? (minimal goal
                  achievement)




Thursday, 28 June, 12
What to do?
               1. Given goals, what minimal sets of tasks
                  satisfy them? (minimal goal
                  achievement)
               2. Given goals, and minimal task sets, what
                  can we add to expand our consistent
                  solution? (get candidate solutions)




Thursday, 28 June, 12
What to do?
               1. Given goals, what minimal sets of tasks
                  satisfy them? (minimal goal
                  achievement)
               2. Given goals, and minimal task sets, what
                  can we add to expand our consistent
                  solution? (get candidate solutions)
               3. Other operations: bottom-up reasoning,
                  costs, etc.


Thursday, 28 June, 12
Minimal Goal Achievement
                         Assign
                        unique ID                          Use
                                                       existing h/w


      Compensating                   8.1 prevent
        control                     multiple logins



                                                                  Use AS/400
       Use SUDO                                      Use
                               Log                                 servers
                                                  centralized
                              Access                  ID


Thursday, 28 June, 12
Minimal Goal Achievement
                         Assign
                        unique ID                          Use
                                                       existing h/w


      Compensating                   8.1 prevent
        control                     multiple logins



                                                                  Use AS/400
       Use SUDO                                      Use
                               Log                                 servers
                                                  centralized
                              Access                  ID


Thursday, 28 June, 12
Minimal Goal Achievement
                         Assign
                        unique ID                          Use
                                                       existing h/w


      Compensating                   8.1 prevent
        control                     multiple logins



                                                                  Use AS/400
       Use SUDO                                      Use
                               Log                                 servers
                                                  centralized
                              Access                  ID


Thursday, 28 June, 12
Assign
                        unique ID                          Use
                                                       existing h/w


      Compensating                   8.1 prevent
        control                     multiple logins



                                                                  Use AS/400
       Use SUDO                                      Use
                               Log                                 servers
                                                  centralized
                              Access                  ID


Thursday, 28 June, 12
Get Candidate Solutions
                         Assign
                        unique ID                          Use
                                                       existing h/w


      Compensating                   8.1 prevent
        control                     multiple logins



                                                                  Use AS/400
       Use SUDO                                      Use
                               Log                                 servers
                                                  centralized
                              Access                  ID


Thursday, 28 June, 12
Get Candidate Solutions
                         Assign
                        unique ID                          Use
                                                       existing h/w


      Compensating                   8.1 prevent
        control                     multiple logins



                                                                  Use AS/400
       Use SUDO                                      Use
                               Log                                 servers
                                                  centralized
                              Access                  ID


Thursday, 28 June, 12
Evaluation and implementation

               • Implemented reasoner using graphical
                        modeling tool and assumption-based
                        truth maintenance.
               •        Tested tool on 340 requirement
                        Payment Card case study.
               •        Find all solutions in ~600s.
               •        Outperforms (outdated) MinWeightSat
                        reasoner.

Thursday, 28 June, 12
RE-KOMBINE
                                       Visual editor




                        Reasoner   Domain specific lang.

Thursday, 28 June, 12
Req. Mgmt.   Visual editor
                          Tool




                        Reasoner     DSL editor

Thursday, 28 June, 12
Summary
                   Problem: support agile requirements while
                   still enabling systematically modelling and
                   analysis.
                   Solution: paraconsistent models with
                   reasoning backend.

                   Code and data available at http://github.com/
                   neilernst/Techne-TMS


                                        Neil Ernst: @neilernst • neilernst.net
Thursday, 28 June, 12

Mais conteúdo relacionado

Último

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
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 WorkerThousandEyes
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
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 2024The Digital Insurer
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
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...Drew Madelung
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
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 DevelopmentsTrustArc
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
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
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
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
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
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...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 

Destaque

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destaque (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Supporting Agile Requirements Evolution via Paraconsistent Reasoning

  • 1. Agile Requirements Evolution via Paraconsistent Reasoning Neil A. Ernst University of British Columbia @neilernst • neil@neilernst.net • neilernst.net with: Alexander Borgida, John Mylopoulos and Ivan Jureta borgida@cs.rutgers.edu, jm@disi.unitn.it, Thursday, 28 June, 12 ijureta@fundp.ac.be
  • 2. page 382 of proceedings Agile Requirements Evolution via Paraconsistent Reasoning Neil A. Ernst University of British Columbia @neilernst • neil@neilernst.net • neilernst.net with: Alexander Borgida, John Mylopoulos and Ivan Jureta borgida@cs.rutgers.edu, jm@disi.unitn.it, Thursday, 28 June, 12 ijureta@fundp.ac.be
  • 3. Takeaway We need agile requirements models — that can still be systematically analysed. Thursday, 28 June, 12
  • 4. Takeaway We need agile requirements models — that can still be systematically analysed. • Motivation Thursday, 28 June, 12
  • 5. Takeaway We need agile requirements models — that can still be systematically analysed. • Motivation • Formal representation of a requirements problem as a knowledge base. Thursday, 28 June, 12
  • 6. Takeaway We need agile requirements models — that can still be systematically analysed. • Motivation • Formal representation of a requirements problem as a knowledge base. • How paraconsistent reasoning helps us support dynamism. Thursday, 28 June, 12
  • 7. Takeaway We need agile requirements models — that can still be systematically analysed. • Motivation • Formal representation of a requirements problem as a knowledge base. • How paraconsistent reasoning helps us support dynamism. • Evaluation, how this works in practice. Thursday, 28 June, 12
  • 8. Agility ... Test Devel. Ops Req time Thursday, 28 June, 12
  • 9. Agility ... Test Devel. Ops Req time Thursday, 28 June, 12
  • 10. Agility ... Test Devel. Ops Req time Thursday, 28 June, 12
  • 11. Agility ... Test Devel. Ops Req time Thursday, 28 June, 12
  • 12. Agility ... Test Devel. Ops Req time Thursday, 28 June, 12
  • 13. Requirements agility is constrained Thursday, 28 June, 12
  • 14. Requirements agility is constrained Let’s add remote login Thursday, 28 June, 12
  • 15. Requirements agility is constrained Let’s add remote login Security hole Thursday, 28 June, 12
  • 16. Requirements agility is constrained Let’s add remote login Security hole How about removing RSA? Thursday, 28 June, 12
  • 17. Requirements agility is constrained Let’s add remote login Security hole How about removing Not back-compatible RSA? Thursday, 28 June, 12
  • 18. Requirements agility is constrained Let’s add remote login Security hole How about removing Not back-compatible RSA? Simplify account mgmt? Thursday, 28 June, 12
  • 19. Requirements agility is constrained Let’s add remote login Security hole How about removing Not back-compatible RSA? Simplify account mgmt? Violates Sarbanes-Oxley Thursday, 28 June, 12
  • 20. Requirements agility is constrained Let’s add remote login Security hole How about removing Not back-compatible RSA? Simplify account mgmt? Violates Sarbanes-Oxley Add COO’s pet feature? Thursday, 28 June, 12
  • 21. Requirements agility is constrained Let’s add remote login Security hole How about removing Not back-compatible RSA? Simplify account mgmt? Violates Sarbanes-Oxley Add COO’s pet feature? CEO hates COO Thursday, 28 June, 12
  • 22. Requirements agility means success Thursday, 28 June, 12
  • 23. Requirements agility means success Thursday, 28 June, 12
  • 24. “[the code] remained operational in Ariane 5 without satisfying any (traceable) requirement.” Thursday, 28 June, 12
  • 26. Command Executions edit.Delete 5.4 M file.Save 4.3 M edit.Paste 3.8 M edit.Copy 2.4 M ContentAssist.proposals 1.4 M Thursday, 28 June, 12
  • 27. Command Executions edit.Delete 5.4 M file.Save 4.3 M edit.Paste 3.8 M edit.Copy 2.4 M ContentAssist.proposals 1.4 M Command Executions window.previousView 9 navigate.Back 69 window.showViewMenu 89 window.previousPerspective 155 window.previousEditor 166 Data: Eclipse UPP, 200908, eclipse.ui, 3.5.0 Thursday, 28 June, 12
  • 29. Requirements problems R R R Thursday, 28 June, 12
  • 30. Requirements problems R R R r r Thursday, 28 June, 12
  • 31. Requirements problems R R R r r T T T T T Thursday, 28 June, 12
  • 32. Requirements problems R R R r r T T T T T Thursday, 28 June, 12
  • 33. Requirements problems R R R r r T T T T T D D Thursday, 28 June, 12
  • 34. Requirements problems R R R r r T T T T T D D Thursday, 28 June, 12
  • 35. Requirements problems R R R r r T T T T T D D Thursday, 28 June, 12
  • 36. Requirements problems R R R r r T T T T T D D Thursday, 28 June, 12
  • 37. Requirements problems R R R r r T T T T T D D Thursday, 28 June, 12
  • 38. Requirements problems R R R r r T T T T T D D Thursday, 28 June, 12
  • 39. Requirements problems R R R Requirements r r Knowledge Base T T T T T D D Thursday, 28 June, 12
  • 40. Paraconsistency Payment Card regs. Thursday, 28 June, 12
  • 41. Formalizing paraconsistency • For the statement ‘requirement A conflicts with requirement B’ write A∧B→⊥ • Inconsistent when bottom (⊥) can be derived • Often more ‘complete’ requirements are less consistent. Thursday, 28 June, 12
  • 42. Why paraconsistency? taken from Nuseibeh et al. 2001 Thursday, 28 June, 12
  • 43. Why paraconsistency? • to facilitate distributed collaborative working (viewpoints), taken from Nuseibeh et al. 2001 Thursday, 28 June, 12
  • 44. Why paraconsistency? • to facilitate distributed collaborative working (viewpoints), • to ensure all stakeholder views are taken into account, taken from Nuseibeh et al. 2001 Thursday, 28 June, 12
  • 45. Why paraconsistency? • to facilitate distributed collaborative working (viewpoints), • to ensure all stakeholder views are taken into account, • to focus attention on problem areas [of the specification], taken from Nuseibeh et al. 2001 Thursday, 28 June, 12
  • 46. Why paraconsistency? • to facilitate distributed collaborative working (viewpoints), • to ensure all stakeholder views are taken into account, • to focus attention on problem areas [of the specification], • to prevent premature commitment to design decisions. taken from Nuseibeh et al. 2001 Thursday, 28 June, 12
  • 47. Why paraconsistency? • to facilitate distributed collaborative working (viewpoints), • to ensure all stakeholder views are taken into account, • to focus attention on problem areas [of the specification], • to prevent premature commitment to design decisions. taken from Nuseibeh et al. 2001 Thursday, 28 June, 12
  • 48. Criteria for paraconsistent satisfaction • Domain assumptions and refinements are consistent. • Desired goals are internally consistent. • Selected tasks are internally consistent. Thursday, 28 June, 12
  • 49. R R R r r T T T T T D D Thursday, 28 June, 12
  • 50. R R R r r T T T T T D D Thursday, 28 June, 12
  • 51. R R R r r T T T T T D D Thursday, 28 June, 12
  • 52. R R R r r T T T T T D D Thursday, 28 June, 12
  • 53. R R R r r T T T T T D D Thursday, 28 June, 12
  • 54. What to do? Thursday, 28 June, 12
  • 55. What to do? 1. Given goals, what minimal sets of tasks satisfy them? (minimal goal achievement) Thursday, 28 June, 12
  • 56. What to do? 1. Given goals, what minimal sets of tasks satisfy them? (minimal goal achievement) 2. Given goals, and minimal task sets, what can we add to expand our consistent solution? (get candidate solutions) Thursday, 28 June, 12
  • 57. What to do? 1. Given goals, what minimal sets of tasks satisfy them? (minimal goal achievement) 2. Given goals, and minimal task sets, what can we add to expand our consistent solution? (get candidate solutions) 3. Other operations: bottom-up reasoning, costs, etc. Thursday, 28 June, 12
  • 58. Minimal Goal Achievement Assign unique ID Use existing h/w Compensating 8.1 prevent control multiple logins Use AS/400 Use SUDO Use Log servers centralized Access ID Thursday, 28 June, 12
  • 59. Minimal Goal Achievement Assign unique ID Use existing h/w Compensating 8.1 prevent control multiple logins Use AS/400 Use SUDO Use Log servers centralized Access ID Thursday, 28 June, 12
  • 60. Minimal Goal Achievement Assign unique ID Use existing h/w Compensating 8.1 prevent control multiple logins Use AS/400 Use SUDO Use Log servers centralized Access ID Thursday, 28 June, 12
  • 61. Assign unique ID Use existing h/w Compensating 8.1 prevent control multiple logins Use AS/400 Use SUDO Use Log servers centralized Access ID Thursday, 28 June, 12
  • 62. Get Candidate Solutions Assign unique ID Use existing h/w Compensating 8.1 prevent control multiple logins Use AS/400 Use SUDO Use Log servers centralized Access ID Thursday, 28 June, 12
  • 63. Get Candidate Solutions Assign unique ID Use existing h/w Compensating 8.1 prevent control multiple logins Use AS/400 Use SUDO Use Log servers centralized Access ID Thursday, 28 June, 12
  • 64. Evaluation and implementation • Implemented reasoner using graphical modeling tool and assumption-based truth maintenance. • Tested tool on 340 requirement Payment Card case study. • Find all solutions in ~600s. • Outperforms (outdated) MinWeightSat reasoner. Thursday, 28 June, 12
  • 65. RE-KOMBINE Visual editor Reasoner Domain specific lang. Thursday, 28 June, 12
  • 66. Req. Mgmt. Visual editor Tool Reasoner DSL editor Thursday, 28 June, 12
  • 67. Summary Problem: support agile requirements while still enabling systematically modelling and analysis. Solution: paraconsistent models with reasoning backend. Code and data available at http://github.com/ neilernst/Techne-TMS Neil Ernst: @neilernst • neilernst.net Thursday, 28 June, 12