SlideShare a Scribd company logo
1 of 34
Download to read offline
Useful Software Engineering
 Research: Leading a Double
        -Agent Life

             Lionel Briand
Certus Center for Software Verification
             and Validation
      Simula Research Laboratory
     & University of Oslo, Norway


                                          1
Software Everywhere




                      2
Failures Everywhere …
Software Engineering Research
       Funding & Relevance
➜  Software Engineering (SE) research should be a
   top priority in most countries (except Sweden)
➜  But that is not the case anymore. Hard numbers
   are hard to get, and in some cases well protected
➜  Symptoms
  ➥  Listed priorities by research councils, funding
  ➥  University hiring
  ➥  Large centers or institutes being established or closed down

➜  May be partly related to lack of relevance?
  ➥  Industry participation in leading SE conferences
  ➥  Application/industry tracks not first class citizens
  ➥  A very small percentage of research work ever used and assessed on
      real industrial software


                                                                          4
Basili’s and Meyer’s Take
➜  Many of the advances in software engineering have come out
   of non-university sources
➜  “Academic research has had its part, honorable but
   limited.” (Meyer)
➜  Large scale labs don’t get funded, like they do in other
   engineering and scientific disciplines (Basili, Meyer)
➜  Software Engineering is “big science” (Basili)




➜  One significant difference though is that we cannot entirely
   recreate the phenomena we study within four walls – This,
   as discussed later, has significant consequences
➜  Question: What is our responsibility in all this?
                                                                  5
Engineering Research
➜  “Engineering: The application of scientific and
   mathematical principles to practical ends such as
   the design, manufacture, and operation of
   efficient and economical structures, machines,
   processes, and systems.” (American Heritage
   Dictionary)
➜  Engineering research:
  ➥ Problem driven
  ➥ Real world requirements
  ➥ Scalability
  ➥ Human factors, where it matters
  ➥ Economic tradeoffs and cost-benefit analysis
  ➥ Actually doing it on real artifacts, not just talking
     about it
                                                            6
A Representative Example
➜  Parnin and Orso (ISSTA, 2011) looked at
   automated debugging techniques
➜  50 years of automated debugging research
➜  Only 5 papers have evaluated automated
   debugging techniques with actual programmers
➜  Focus since ~2001: dozens of papers ranking
   program statements according to their
   likelihood of containing a fault
➜  Experiment
  ➥ How do programmers use the ranking?
  ➥ Do they see the bugs?
  ➥ Is the ranking important?
                                                  7
Results from Parnin and Orso’s
               Study
•  Only low performers strictly followed the ranking
•  Only one out of 10 programmers who checked a
   buggy statement stopped the investigation
•  Automated support did not speed up debugging
•  Developers wanted explanations rather than
   recommendations
•  We cannot abstract the human away in our
   research
 •  “… we must steer research towards more promising
     directions that take into account the way programmers
     actually debug in real scenarios.”


                                                             8
What Happened?
➜  How people debug and what information they need
   is poorly understood
  ➥ Probably varies a great deal according to context and
     skills
➜  Researchers focused on providing a solution that
   was a mismatch for the actual problem
➜  That line of research became fashionable: a lot of
   (cool) ideas could be easily applied and compared,
   without involving human participants
➜  Resulted in many, many papers …
➜  Many other examples in SE, e.g., Clone detection?



                                                            9
Other Examples
➜  Adaptive Random Testing: Many papers since 2004
  ➥ Mostly simulations and small artifacts, unrealistic
     failure rates. Arcuri and Briand (2011), ISSTA
➜  Regression testing: Arguably the most studied
   testing problem, perhaps most studied software
   engineering problem …
  ➥ "However, empirical evaluation and application of
     regression testing techniques at industrial level seems
     to remain limited. Out of the 159 papers …, only 12
     papers consider industrial software artefacts as a
     subject of the associated empirical studies. This
     suggests that a large-scale industrial uptake of these
     techniques has yet to occur.” Yoo and Harman (2011)
  ➥ Possible reason: Strong focus on white-box, not black
    -box regression testing? Scalability and Practicality?

                                                               10
Industry-Driven Research
➜  Let’s take now an entirely different angle …
➜  Research driven by industry needs
➜  Simula’s motto: “The industry is our lab”
➜  Go through recent and successful projects (mostly
   @ Simula) with industry partners
➜  Summarize what happened, our experience
➜  Draw conclusions and lessons learned
  ➥ Patterns for successful research
  ➥ Challenges and possible solutions




                                                       11
Mode of Collaboration


             Problem
          identification                             Realistic
                                                    validation
                                Release
                                solution

Ind. Partners
                  Problem
                formulation

                                  Study
                                               Candidate
Research Center                 State-of-
                                               Solutions
                                 the-art                           Initial
                                                                 validation




                    Gorschek et al., IEEE Software 2006




                                                                              12
Project Example 1
➜  Context: Testing in communication systems (Cisco)
➜  Original scientific problem: Modeling and test case
   generation, oracle, coverage strategy
➜  Practical observation: Access to test network
   infrastructure limited (emulate network traffic,
   etc.). Models get too large and complex.
➜  Modified research objectives: (1) How to select an
   optimal subset of test cases matching the time
   budget, (2) Modeling cross-cutting concerns




                                                         13
Project Example 1
➜  Context: Testing in communication systems (Cisco)
➜  Original scientific problem: Modeling and model
  -based test case generation, oracle, coverage
   strategy
➜  Practical observation: Access to test network
   infrastructure limited (emulate network traffic,
   etc.). Models get too large and complex.
➜  Modified research objectives: (1) How to select an
   optimal subset of test cases matching the time
   budget, (2) Modeling cross-cutting concerns
➜  References: Hemmati et al. (2010),
  Ali et al. (2011)
                                                        14
Project Example 2
➜  Context: Testing image segmentation algorithms
   for medical applications (Siemens)
➜  Original scientific problem: Define specific test
   strategies for segmentation algorithms
➜  Practical observations: Algorithms are validated by
   using highly specialized medical experts.
   Expensive and slow. No obvious test oracle
➜  Modified research objective: Learning oracles for
   image segmentation algorithms in medical
   applications. Machine learning.




                                                         15
Project Example 2
➜  Context: Testing image segmentation algorithms
   for medical applications (Siemens)
➜  Original scientific problem: Define specific test
   strategies for segmentation algorithms
➜  Practical observations: Algorithms are validated by
   using highly specialized medical experts.
   Expensive and slow. No obvious test oracle
➜  Modified research objective: Learning oracles for
   image segmentation algorithms in medical
   applications. Machine learning.
➜  Reference: Frouchni et al. (2011)



                                                         16
Project Example 3
➜  Context: Subsea integrated control systems (FMC)
➜  Original scientific problem: Architecture-driven integration in
   systems of systems
➜  Practical observations: Each subsea installation is unique
   (variant), the software configuration is extremely complex
   (hundreds of interrelated variation points in software and
   hardware)
➜  Modified research objective: Product Line architectures in
   integrated control systems to support the configuration
   process
➜  Note: Despite decades of research in
    PLA, we could not find a methodology
    fitting our requirements



                                                                     17
Project Example 3
➜  Context: Subsea integrated control systems (FMC)
➜  Original scientific problem: Architecture-driven integration in
   systems of systems
➜  Practical observations: Each subsea installation is unique
   (variant), the software configuration is extremely complex
   (hundreds of interrelated variation points in software and
   hardware)
➜  Modified research objective: Product Line architectures in
   integrated control systems to support the configuration
   process
➜  Note: Despite decades of research in
    PLA, we could not find a methodology
    fitting our requirements
➜  Reference: Behjati et al. (2011)


                                                                     18
Project Example 4
➜  Context: safety-critical embedded systems in
   the energy and maritime sectors, e.g., fire and
   gas monitoring, process shutdown, dynamic
   positioning (Kongsberg Maritime)
➜  Original scientific problem: Model-driven
   engineering for failure-mode and effect analysis
➜  Practical observations: Certification meetings
   with third-party certifiers. Certification is
   lengthy, expensive, etc. Traceability in large
   complex systems a priority.
➜  Modified research objective: Traceability
   between safety requirements and system design
   decisions. Solution based on SysML and a simple
   traceability language along with model slicing.



                                                      19
Project Example 4
➜  Context: safety-critical embedded systems in
   the energy and maritime sectors, e.g., fire and
   gas monitoring, process shutdown, dynamic
   positioning (Kongsberg Maritime)
➜  Original scientific problem: Model-driven
   engineering for failure-mode and effect analysis
➜  Practical observations: Certification meetings
   with third-party certifiers. Certification is
   lengthy, expensive, etc. Traceability in large
   complex systems a priority.
➜  Modified research objective: Traceability
   between safety requirements and system design
   decisions. Solution based on SysML and a simple
   traceability language along with model slicing.
➜  Reference: Sabetzadeh et al. (2011)


                                                      20
Project Example 5
➜  Context: Technology qualification (TQ)
   in maritime sector (DNV)
➜  Original scientific problem: Model-based
   quantitative safety analysis
➜  Practical observations: TQ is not purely
   objective, quantitative argument. Great
   complexity (e.g., sources of
   information) and expert judgment.
   Many stakeholders.
➜  Modified research objective: Modeling
   safety arguments to support
   quantitative reasoning and decision
   making by several stakeholders

                                              21
Project Example 5
➜  Context: Technology qualification (TQ)
   in maritime sector (DNV)
➜  Original scientific problem: Model-based
   quantitative safety analysis
➜  Practical observations: TQ is not purely
   objective, quantitative argument. Great
   complexity (e.g., sources of
   information) and expert judgment.
   Many stakeholders.
➜  Modified research objective: Modeling
   safety arguments to support
   quantitative reasoning and decision
   making by several stakeholders
➜  Reference: Sabetzadeh et al. (2011)
                                              22
Two Other Examples on the
          ICSM Program
➜  Erik Rogstad et al., “Industrial Experiences with
   Automated Regression Testing of a Legacy
   Database Application”
➜  Amir Reza Yazdanshenas and Leon Moonen,
   “Crossing the Boundaries While Analyzing
   Heterogeneous Component-Based Software
   Systems”




                                                       23
Successful Research Patterns
➜  Successful: Innovative and high impact
➜  Inductive research: Working from specific
   observations in real settings to broader
   generalizations and theories
  ➥ Field studies and replications, analyze commonalities
➜  Scalability and practicality considerations must be
   part of the initial research problem definition
➜  Researching by doing: Hands-on research. Apply
   what exists in well defined, realistic context,
   with clear objectives. The observed limitations
   become the research objectives.
➜  Multidisciplinary: other CS, Engineering, or non
  -technical domains
                                                            24
So What?
➜  Making a conscious effort to understand the
   problem first
  ➥  Precisely identify the requirements for an applicable solution
  ➥  More papers focused on understanding the problems
  ➥  Making industry tracks first class citizens in SE conferences

➜  Better relationships between academia and
   industry
  ➥  Different models, e.g., Research-based innovation centers in Norway
  ➥  Common labs (e.g., NASA SEL Lab)
  ➥  Exposing PhD students to industry practice: Ethical considerations
      (Fixing the PhD, Nature)

➜  Playing an active role in solving the problem, e.g.,
   action research-like


                                                                           25
So What?
➜  Work on end-to-end solutions: Pieces of solutions
   are interdependent. Necessary for impact.
➜  Beyond professors and students
  ➥ Labs with interdisciplinary teams of professional
     scientists and engineers within or collaborating with
     universities
  ➥ Used to be the case with corporate research labs: Bell
     Labs, Xerox PARC, HP labs, NASA SEL, etc.
  ➥ Now: Fraunhofer (Germany), Simula (Norway),
     Microsoft Research (US), SEI (US), SnT
     (Luxembourg)
  ➥ Corporate labs versus publicly supported ones?
  ➥ Key point: The level of basic funding must allow high
     risk research, performed by professional scientists,
     focused on impact in society
                                                             26
The NASA SEL Experience
     Factory Model




    Basili et al. (NASA SEL)

                               27
Academic Challenges
➜  Our CS legacy … emancipating ourselves as an engineering
   discipline
  ➥  Systems engineering departments?
➜  How cool is it? SE research is more driven by “fashion” than
   needs, a quest for silver bullets
  ➥  We can only blame ourselves
➜  Counting papers and how the JSS ranking does not help
  ➥  We are pressuring ourselves into irrelevance
➜  Taking academic tenure and promotion seriously
  ➥  What about rewarding impact?
➜  One’s research must cover a broader ground and be somewhat
   opportunistic – this pushes us out of our comfort zone
➜  Resources to support industry collaborations
  ➥  Large lab infrastructure, engineers, time

                                                                  28
Industrial Challenges
➜  From a discussion with Bran Selic …
➜  Short term versus longer term goals (next
   quarter’s forecast is the priority)
➜  Industrial research groups are often disconnected
   from their own business units and external
   researchers may be perceived as competitors
➜  Company’s intellectual property regulations may
   conflict with those of the research institution
➜  Complexity of industrial systems and technology
  ➥ Cannot be transplanted in artificial settings for
     research - Need studies in real settings
  ➥ Substantial domain knowledge is required

                                                        29
A Double-Agent Life


                           A new idea
  Scientist,
                           (as initially
trying to be
                          perceived by
discrete, but
                          our partners)
 inquisitive



 Warning: No               Practitioner
research here               (sanitized)


                                           30
Conclusions
➜  Software engineering is obviously important in all
   aspects of society, but academic software
   engineering research is not perceived the same
   way
➜  The academic community, at various levels, is
   partly responsible for this
➜  How we take up the challenge of increasing our
   impact will determine the future of the profession
➜  There are solutions, but no silver bullet
➜  We all have a role to play in this, as deans,
   department chairs, professors, scientists,
   reviewers, conference organizers, journal editors,
   etc. We can all be double-agents …
                                                        31
Empirical Software Engineering
➜  Springer, 6 issues a year
➜  Both research papers and industry experience
   reports
➜  2nd highest impact factor among SE research
   journals
➜  “Applied software engineering research with a
   significant empirical component”




                                                   32
References
➜  Ali, Briand, Hemmati, “Modeling Robustness Behavior Using Aspect-Oriented Modeling
    to Support Robustness Testing of Industrial Systems”, Journal of Software and
    Systems Modeling, forthcoming, 2011.
➜  Arcuri and Briand, “Adaptive Random Testing: An Illusion of Effectiveness”, ISSTA
    2011
➜  Basili, “Learning Through Application: The maturing of the QIP in the SEL”, Making
    Software; What really works and why we believe it, Edited by Andy Oram and Greg
    Wilson, O’Reilly Publishers, 2011, pp.65-78.
➜  Behjati, Yue, Briand and Selic , “SimPL: A Product-Line Modeling Methodology for
    Families of Integrated Control Systems”, Simula Technical Report 2011-14 (V. 2),
    Submitted.
➜  Hemmati, Briand, Arcuri, Ali “An Enhanced Test Case Selection Approach for Model
   -Based Testing: An Industrial Case Study”, FSE, 2010
➜  Frouchni, Briand, Labiche, Grady, and Subramanyan, “Automating Image Segmentation
    Verification and Validation by Learning Test Oracles”, forthcoming in Information and
    Software Technology (Elsevier), 2011.




                                                                                            33
References II
➜  Sabetzadeh, Nejati, Briand, Evensen Mills “Using SysML for Modeling of Safety
   -Critical Software–Hardware Interfaces: Guidelines and Industry Experience”, HASE,
    2011
➜  Parnin and Orso, “Are Automated Debugging Techniques Actually Helping
    Programmers?”, ISSTA, 2011
➜  Sabetzadeh et al., “Combining Goal Models, Expert Elicitation, and Probabilistic
    Simulation for Qualification of New Technology”, HASE, 2011
➜  Yoo and Harman, “Regression testing minimization, selection and prioritization: a
    survey”, STVR, Wiley, forthcoming
➜  Bertrand Meyer’s blog: http://bertrandmeyer.com/2010/04/25/the-other
   -impediment-to-software-engineering-research/




                                                                                        34

More Related Content

What's hot

Building Blocks for Continuous Experimentation
Building Blocks for Continuous ExperimentationBuilding Blocks for Continuous Experimentation
Building Blocks for Continuous ExperimentationJürgen Münch
 
Controlled experiments, Hypothesis Testing, Test Selection, Threats to Validity
Controlled experiments, Hypothesis Testing, Test Selection, Threats to ValidityControlled experiments, Hypothesis Testing, Test Selection, Threats to Validity
Controlled experiments, Hypothesis Testing, Test Selection, Threats to Validityalessio_ferrari
 
Software Development as an Experiment System: A Qualitative Survey on the St...
Software Development as an Experiment System:  A Qualitative Survey on the St...Software Development as an Experiment System:  A Qualitative Survey on the St...
Software Development as an Experiment System: A Qualitative Survey on the St...Jürgen Münch
 
Past and Future of Software Testing and Analysis
Past and Future of Software Testing and AnalysisPast and Future of Software Testing and Analysis
Past and Future of Software Testing and AnalysisLionel Briand
 
Empirical Methods in Software Engineering - an Overview
Empirical Methods in Software Engineering - an OverviewEmpirical Methods in Software Engineering - an Overview
Empirical Methods in Software Engineering - an Overviewalessio_ferrari
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineeringIvano Malavolta
 
Surveys in Software Engineering
Surveys in Software EngineeringSurveys in Software Engineering
Surveys in Software EngineeringDaniel Mendez
 
Impact-Driven Research on Software Engineering Tooling
Impact-Driven Research on Software Engineering ToolingImpact-Driven Research on Software Engineering Tooling
Impact-Driven Research on Software Engineering ToolingTao Xie
 
Survey Research In Empirical Software Engineering
Survey Research In Empirical Software EngineeringSurvey Research In Empirical Software Engineering
Survey Research In Empirical Software Engineeringalessio_ferrari
 
An Exploratory Study on Technology Transfer in Software Engineering
An Exploratory Study on Technology Transfer in Software EngineeringAn Exploratory Study on Technology Transfer in Software Engineering
An Exploratory Study on Technology Transfer in Software EngineeringDaniel Mendez
 
IEEE augmented reality learning experience model (ARLEM)
IEEE augmented reality learning experience model (ARLEM)IEEE augmented reality learning experience model (ARLEM)
IEEE augmented reality learning experience model (ARLEM)fridolin.wild
 
[01-B] Empirical software engineering
[01-B] Empirical software engineering[01-B] Empirical software engineering
[01-B] Empirical software engineeringIvano Malavolta
 
IEEE p1589 'ARLEM' virtual meeting, September 9, 2015
IEEE p1589 'ARLEM' virtual meeting, September 9, 2015IEEE p1589 'ARLEM' virtual meeting, September 9, 2015
IEEE p1589 'ARLEM' virtual meeting, September 9, 2015fridolin.wild
 
Testing the Intelligence of your AI
Testing the Intelligence of your AITesting the Intelligence of your AI
Testing the Intelligence of your AIIosif Itkin
 
Analysis of software architectures
Analysis of software architecturesAnalysis of software architectures
Analysis of software architecturesHoria Constantin
 
Software Visualization Today - Systematic Literature Review
Software Visualization Today - Systematic Literature ReviewSoftware Visualization Today - Systematic Literature Review
Software Visualization Today - Systematic Literature ReviewMindtrek
 
Natural Language Processing (NLP) for Requirements Engineering (RE): an Overview
Natural Language Processing (NLP) for Requirements Engineering (RE): an OverviewNatural Language Processing (NLP) for Requirements Engineering (RE): an Overview
Natural Language Processing (NLP) for Requirements Engineering (RE): an Overviewalessio_ferrari
 
Final Survey On Rule Base Development Slideshare
Final Survey On Rule Base Development SlideshareFinal Survey On Rule Base Development Slideshare
Final Survey On Rule Base Development SlideshareValentin Zacharias
 
ACM Chicago March 2019 meeting: Software Engineering and AI - Prof. Tao Xie, ...
ACM Chicago March 2019 meeting: Software Engineering and AI - Prof. Tao Xie, ...ACM Chicago March 2019 meeting: Software Engineering and AI - Prof. Tao Xie, ...
ACM Chicago March 2019 meeting: Software Engineering and AI - Prof. Tao Xie, ...ACM Chicago
 

What's hot (20)

Building Blocks for Continuous Experimentation
Building Blocks for Continuous ExperimentationBuilding Blocks for Continuous Experimentation
Building Blocks for Continuous Experimentation
 
Controlled experiments, Hypothesis Testing, Test Selection, Threats to Validity
Controlled experiments, Hypothesis Testing, Test Selection, Threats to ValidityControlled experiments, Hypothesis Testing, Test Selection, Threats to Validity
Controlled experiments, Hypothesis Testing, Test Selection, Threats to Validity
 
Software Development as an Experiment System: A Qualitative Survey on the St...
Software Development as an Experiment System:  A Qualitative Survey on the St...Software Development as an Experiment System:  A Qualitative Survey on the St...
Software Development as an Experiment System: A Qualitative Survey on the St...
 
Past and Future of Software Testing and Analysis
Past and Future of Software Testing and AnalysisPast and Future of Software Testing and Analysis
Past and Future of Software Testing and Analysis
 
Empirical Methods in Software Engineering - an Overview
Empirical Methods in Software Engineering - an OverviewEmpirical Methods in Software Engineering - an Overview
Empirical Methods in Software Engineering - an Overview
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering
 
Surveys in Software Engineering
Surveys in Software EngineeringSurveys in Software Engineering
Surveys in Software Engineering
 
Impact-Driven Research on Software Engineering Tooling
Impact-Driven Research on Software Engineering ToolingImpact-Driven Research on Software Engineering Tooling
Impact-Driven Research on Software Engineering Tooling
 
Survey Research In Empirical Software Engineering
Survey Research In Empirical Software EngineeringSurvey Research In Empirical Software Engineering
Survey Research In Empirical Software Engineering
 
An Exploratory Study on Technology Transfer in Software Engineering
An Exploratory Study on Technology Transfer in Software EngineeringAn Exploratory Study on Technology Transfer in Software Engineering
An Exploratory Study on Technology Transfer in Software Engineering
 
IEEE augmented reality learning experience model (ARLEM)
IEEE augmented reality learning experience model (ARLEM)IEEE augmented reality learning experience model (ARLEM)
IEEE augmented reality learning experience model (ARLEM)
 
[01-B] Empirical software engineering
[01-B] Empirical software engineering[01-B] Empirical software engineering
[01-B] Empirical software engineering
 
IEEE p1589 'ARLEM' virtual meeting, September 9, 2015
IEEE p1589 'ARLEM' virtual meeting, September 9, 2015IEEE p1589 'ARLEM' virtual meeting, September 9, 2015
IEEE p1589 'ARLEM' virtual meeting, September 9, 2015
 
Testing the Intelligence of your AI
Testing the Intelligence of your AITesting the Intelligence of your AI
Testing the Intelligence of your AI
 
Analysis of software architectures
Analysis of software architecturesAnalysis of software architectures
Analysis of software architectures
 
Lopez
LopezLopez
Lopez
 
Software Visualization Today - Systematic Literature Review
Software Visualization Today - Systematic Literature ReviewSoftware Visualization Today - Systematic Literature Review
Software Visualization Today - Systematic Literature Review
 
Natural Language Processing (NLP) for Requirements Engineering (RE): an Overview
Natural Language Processing (NLP) for Requirements Engineering (RE): an OverviewNatural Language Processing (NLP) for Requirements Engineering (RE): an Overview
Natural Language Processing (NLP) for Requirements Engineering (RE): an Overview
 
Final Survey On Rule Base Development Slideshare
Final Survey On Rule Base Development SlideshareFinal Survey On Rule Base Development Slideshare
Final Survey On Rule Base Development Slideshare
 
ACM Chicago March 2019 meeting: Software Engineering and AI - Prof. Tao Xie, ...
ACM Chicago March 2019 meeting: Software Engineering and AI - Prof. Tao Xie, ...ACM Chicago March 2019 meeting: Software Engineering and AI - Prof. Tao Xie, ...
ACM Chicago March 2019 meeting: Software Engineering and AI - Prof. Tao Xie, ...
 

Viewers also liked

Industry - Testing & Quality Assurance in Data Migration Projects
Industry - Testing & Quality Assurance in Data Migration Projects Industry - Testing & Quality Assurance in Data Migration Projects
Industry - Testing & Quality Assurance in Data Migration Projects ICSM 2011
 
ERA - Tracking Technical Debt
ERA - Tracking Technical DebtERA - Tracking Technical Debt
ERA - Tracking Technical DebtICSM 2011
 
Traceability - Structural Conformance Checking with Design Tests: An Evaluati...
Traceability - Structural Conformance Checking with Design Tests: An Evaluati...Traceability - Structural Conformance Checking with Design Tests: An Evaluati...
Traceability - Structural Conformance Checking with Design Tests: An Evaluati...ICSM 2011
 
ERA - Measuring Maintainability of Spreadsheets in the Wild
ERA - Measuring Maintainability of Spreadsheets in the Wild ERA - Measuring Maintainability of Spreadsheets in the Wild
ERA - Measuring Maintainability of Spreadsheets in the Wild ICSM 2011
 
Metrics - Using Source Code Metrics to Predict Change-Prone Java Interfaces
Metrics - Using Source Code Metrics to Predict Change-Prone Java InterfacesMetrics - Using Source Code Metrics to Predict Change-Prone Java Interfaces
Metrics - Using Source Code Metrics to Predict Change-Prone Java InterfacesICSM 2011
 
Components - Graph Based Detection of Library API Limitations
Components - Graph Based Detection of Library API LimitationsComponents - Graph Based Detection of Library API Limitations
Components - Graph Based Detection of Library API LimitationsICSM 2011
 
Industry - Precise Detection of Un-Initialized Variables in Large, Real-life ...
Industry - Precise Detection of Un-Initialized Variables in Large, Real-life ...Industry - Precise Detection of Un-Initialized Variables in Large, Real-life ...
Industry - Precise Detection of Un-Initialized Variables in Large, Real-life ...ICSM 2011
 
Natural Language Analysis - Expanding Identifiers to Normalize Source Code Vo...
Natural Language Analysis - Expanding Identifiers to Normalize Source Code Vo...Natural Language Analysis - Expanding Identifiers to Normalize Source Code Vo...
Natural Language Analysis - Expanding Identifiers to Normalize Source Code Vo...ICSM 2011
 
Tutorial 2 - Practical Combinatorial (t-way) Methods for Detecting Complex Fa...
Tutorial 2 - Practical Combinatorial (t-way) Methods for Detecting Complex Fa...Tutorial 2 - Practical Combinatorial (t-way) Methods for Detecting Complex Fa...
Tutorial 2 - Practical Combinatorial (t-way) Methods for Detecting Complex Fa...ICSM 2011
 
Reliability and Quality - Predicting post-release defects using pre-release f...
Reliability and Quality - Predicting post-release defects using pre-release f...Reliability and Quality - Predicting post-release defects using pre-release f...
Reliability and Quality - Predicting post-release defects using pre-release f...ICSM 2011
 
Faults and Regression Testing - Fault interaction and its repercussions
Faults and Regression Testing - Fault interaction and its repercussionsFaults and Regression Testing - Fault interaction and its repercussions
Faults and Regression Testing - Fault interaction and its repercussionsICSM 2011
 
ERA - Measuring Disruption from Software Evolution Activities Using Graph-Bas...
ERA - Measuring Disruption from Software Evolution Activities Using Graph-Bas...ERA - Measuring Disruption from Software Evolution Activities Using Graph-Bas...
ERA - Measuring Disruption from Software Evolution Activities Using Graph-Bas...ICSM 2011
 
Industry - The Evolution of Information Systems. A Case Study on Document Man...
Industry - The Evolution of Information Systems. A Case Study on Document Man...Industry - The Evolution of Information Systems. A Case Study on Document Man...
Industry - The Evolution of Information Systems. A Case Study on Document Man...ICSM 2011
 
Impact Analysis - ImpactScale: Quantifying Change Impact to Predict Faults in...
Impact Analysis - ImpactScale: Quantifying Change Impact to Predict Faults in...Impact Analysis - ImpactScale: Quantifying Change Impact to Predict Faults in...
Impact Analysis - ImpactScale: Quantifying Change Impact to Predict Faults in...ICSM 2011
 
Components - Crossing the Boundaries while Analyzing Heterogeneous Component-...
Components - Crossing the Boundaries while Analyzing Heterogeneous Component-...Components - Crossing the Boundaries while Analyzing Heterogeneous Component-...
Components - Crossing the Boundaries while Analyzing Heterogeneous Component-...ICSM 2011
 
Faults and Regression testing - Localizing Failure-Inducing Program Edits Bas...
Faults and Regression testing - Localizing Failure-Inducing Program Edits Bas...Faults and Regression testing - Localizing Failure-Inducing Program Edits Bas...
Faults and Regression testing - Localizing Failure-Inducing Program Edits Bas...ICSM 2011
 
ERA - A Comparison of Stemmers on Source Code Identifiers for Software Search
ERA - A Comparison of Stemmers on Source Code Identifiers for Software SearchERA - A Comparison of Stemmers on Source Code Identifiers for Software Search
ERA - A Comparison of Stemmers on Source Code Identifiers for Software SearchICSM 2011
 
Postdoc symposium - A Logic Meta-Programming Foundation for Example-Driven Pa...
Postdoc symposium - A Logic Meta-Programming Foundation for Example-Driven Pa...Postdoc symposium - A Logic Meta-Programming Foundation for Example-Driven Pa...
Postdoc symposium - A Logic Meta-Programming Foundation for Example-Driven Pa...ICSM 2011
 
Dynamic Analysis - SCOTCH: Improving Test-to-Code Traceability using Slicing ...
Dynamic Analysis - SCOTCH: Improving Test-to-Code Traceability using Slicing ...Dynamic Analysis - SCOTCH: Improving Test-to-Code Traceability using Slicing ...
Dynamic Analysis - SCOTCH: Improving Test-to-Code Traceability using Slicing ...ICSM 2011
 
ERA - Clustering and Recommending Collections of Code Relevant to Task
ERA - Clustering and Recommending Collections of Code Relevant to TaskERA - Clustering and Recommending Collections of Code Relevant to Task
ERA - Clustering and Recommending Collections of Code Relevant to TaskICSM 2011
 

Viewers also liked (20)

Industry - Testing & Quality Assurance in Data Migration Projects
Industry - Testing & Quality Assurance in Data Migration Projects Industry - Testing & Quality Assurance in Data Migration Projects
Industry - Testing & Quality Assurance in Data Migration Projects
 
ERA - Tracking Technical Debt
ERA - Tracking Technical DebtERA - Tracking Technical Debt
ERA - Tracking Technical Debt
 
Traceability - Structural Conformance Checking with Design Tests: An Evaluati...
Traceability - Structural Conformance Checking with Design Tests: An Evaluati...Traceability - Structural Conformance Checking with Design Tests: An Evaluati...
Traceability - Structural Conformance Checking with Design Tests: An Evaluati...
 
ERA - Measuring Maintainability of Spreadsheets in the Wild
ERA - Measuring Maintainability of Spreadsheets in the Wild ERA - Measuring Maintainability of Spreadsheets in the Wild
ERA - Measuring Maintainability of Spreadsheets in the Wild
 
Metrics - Using Source Code Metrics to Predict Change-Prone Java Interfaces
Metrics - Using Source Code Metrics to Predict Change-Prone Java InterfacesMetrics - Using Source Code Metrics to Predict Change-Prone Java Interfaces
Metrics - Using Source Code Metrics to Predict Change-Prone Java Interfaces
 
Components - Graph Based Detection of Library API Limitations
Components - Graph Based Detection of Library API LimitationsComponents - Graph Based Detection of Library API Limitations
Components - Graph Based Detection of Library API Limitations
 
Industry - Precise Detection of Un-Initialized Variables in Large, Real-life ...
Industry - Precise Detection of Un-Initialized Variables in Large, Real-life ...Industry - Precise Detection of Un-Initialized Variables in Large, Real-life ...
Industry - Precise Detection of Un-Initialized Variables in Large, Real-life ...
 
Natural Language Analysis - Expanding Identifiers to Normalize Source Code Vo...
Natural Language Analysis - Expanding Identifiers to Normalize Source Code Vo...Natural Language Analysis - Expanding Identifiers to Normalize Source Code Vo...
Natural Language Analysis - Expanding Identifiers to Normalize Source Code Vo...
 
Tutorial 2 - Practical Combinatorial (t-way) Methods for Detecting Complex Fa...
Tutorial 2 - Practical Combinatorial (t-way) Methods for Detecting Complex Fa...Tutorial 2 - Practical Combinatorial (t-way) Methods for Detecting Complex Fa...
Tutorial 2 - Practical Combinatorial (t-way) Methods for Detecting Complex Fa...
 
Reliability and Quality - Predicting post-release defects using pre-release f...
Reliability and Quality - Predicting post-release defects using pre-release f...Reliability and Quality - Predicting post-release defects using pre-release f...
Reliability and Quality - Predicting post-release defects using pre-release f...
 
Faults and Regression Testing - Fault interaction and its repercussions
Faults and Regression Testing - Fault interaction and its repercussionsFaults and Regression Testing - Fault interaction and its repercussions
Faults and Regression Testing - Fault interaction and its repercussions
 
ERA - Measuring Disruption from Software Evolution Activities Using Graph-Bas...
ERA - Measuring Disruption from Software Evolution Activities Using Graph-Bas...ERA - Measuring Disruption from Software Evolution Activities Using Graph-Bas...
ERA - Measuring Disruption from Software Evolution Activities Using Graph-Bas...
 
Industry - The Evolution of Information Systems. A Case Study on Document Man...
Industry - The Evolution of Information Systems. A Case Study on Document Man...Industry - The Evolution of Information Systems. A Case Study on Document Man...
Industry - The Evolution of Information Systems. A Case Study on Document Man...
 
Impact Analysis - ImpactScale: Quantifying Change Impact to Predict Faults in...
Impact Analysis - ImpactScale: Quantifying Change Impact to Predict Faults in...Impact Analysis - ImpactScale: Quantifying Change Impact to Predict Faults in...
Impact Analysis - ImpactScale: Quantifying Change Impact to Predict Faults in...
 
Components - Crossing the Boundaries while Analyzing Heterogeneous Component-...
Components - Crossing the Boundaries while Analyzing Heterogeneous Component-...Components - Crossing the Boundaries while Analyzing Heterogeneous Component-...
Components - Crossing the Boundaries while Analyzing Heterogeneous Component-...
 
Faults and Regression testing - Localizing Failure-Inducing Program Edits Bas...
Faults and Regression testing - Localizing Failure-Inducing Program Edits Bas...Faults and Regression testing - Localizing Failure-Inducing Program Edits Bas...
Faults and Regression testing - Localizing Failure-Inducing Program Edits Bas...
 
ERA - A Comparison of Stemmers on Source Code Identifiers for Software Search
ERA - A Comparison of Stemmers on Source Code Identifiers for Software SearchERA - A Comparison of Stemmers on Source Code Identifiers for Software Search
ERA - A Comparison of Stemmers on Source Code Identifiers for Software Search
 
Postdoc symposium - A Logic Meta-Programming Foundation for Example-Driven Pa...
Postdoc symposium - A Logic Meta-Programming Foundation for Example-Driven Pa...Postdoc symposium - A Logic Meta-Programming Foundation for Example-Driven Pa...
Postdoc symposium - A Logic Meta-Programming Foundation for Example-Driven Pa...
 
Dynamic Analysis - SCOTCH: Improving Test-to-Code Traceability using Slicing ...
Dynamic Analysis - SCOTCH: Improving Test-to-Code Traceability using Slicing ...Dynamic Analysis - SCOTCH: Improving Test-to-Code Traceability using Slicing ...
Dynamic Analysis - SCOTCH: Improving Test-to-Code Traceability using Slicing ...
 
ERA - Clustering and Recommending Collections of Code Relevant to Task
ERA - Clustering and Recommending Collections of Code Relevant to TaskERA - Clustering and Recommending Collections of Code Relevant to Task
ERA - Clustering and Recommending Collections of Code Relevant to Task
 

Similar to Lionel Briand ICSM 2011 Keynote

Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Lionel Briand
 
Applying AI to software engineering problems: Do not forget the human!
Applying AI to software engineering problems: Do not forget the human!Applying AI to software engineering problems: Do not forget the human!
Applying AI to software engineering problems: Do not forget the human!University of Córdoba
 
Design Principles of Advanced Task Elicitation Systems
Design Principles of Advanced Task Elicitation SystemsDesign Principles of Advanced Task Elicitation Systems
Design Principles of Advanced Task Elicitation SystemsProf. Dr. Alexander Maedche
 
Research-Based Innovation with Industry: Project Experience and Lessons Learned
Research-Based Innovation with Industry: Project Experience and Lessons LearnedResearch-Based Innovation with Industry: Project Experience and Lessons Learned
Research-Based Innovation with Industry: Project Experience and Lessons LearnedLionel Briand
 
Replication and Benchmarking in Software Analytics
Replication and Benchmarking in Software AnalyticsReplication and Benchmarking in Software Analytics
Replication and Benchmarking in Software AnalyticsUniversity of Zurich
 
Industry-Academia Communication In Empirical Software Engineering
Industry-Academia Communication In Empirical Software EngineeringIndustry-Academia Communication In Empirical Software Engineering
Industry-Academia Communication In Empirical Software EngineeringPer Runeson
 
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 IntelligenceLionel Briand
 
Systems Practice in Engineering (SPiE)
Systems Practice in Engineering (SPiE)Systems Practice in Engineering (SPiE)
Systems Practice in Engineering (SPiE)mikeyearworth
 
[2016/2017] RESEARCH in software engineering
[2016/2017] RESEARCH in software engineering[2016/2017] RESEARCH in software engineering
[2016/2017] RESEARCH in software engineeringIvano Malavolta
 
Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...
Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...
Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...KTN
 
From Bugs to Decision Support - Selected Research Highlights
From Bugs to Decision Support - Selected Research HighlightsFrom Bugs to Decision Support - Selected Research Highlights
From Bugs to Decision Support - Selected Research HighlightsMarkus Borg
 
Software Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global AnalysisSoftware Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global AnalysisEditor IJMTER
 
Keynote at-icpc-2020
Keynote at-icpc-2020Keynote at-icpc-2020
Keynote at-icpc-2020Ralf Laemmel
 
A Pragmatic Perspective on Software Visualization
A Pragmatic Perspective on Software VisualizationA Pragmatic Perspective on Software Visualization
A Pragmatic Perspective on Software VisualizationArie van Deursen
 
Testing survey by_directions
Testing survey by_directionsTesting survey by_directions
Testing survey by_directionsTao He
 
Software Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesSoftware Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesTao Xie
 
Pathways to Technology Transfer and Adoption: Achievements and Challenges
Pathways to Technology Transfer and Adoption: Achievements and ChallengesPathways to Technology Transfer and Adoption: Achievements and Challenges
Pathways to Technology Transfer and Adoption: Achievements and ChallengesTao Xie
 
Scalable and Cost-Effective Model-Based Software Verification and Testing
Scalable and Cost-Effective Model-Based Software Verification and TestingScalable and Cost-Effective Model-Based Software Verification and Testing
Scalable and Cost-Effective Model-Based Software Verification and TestingLionel Briand
 

Similar to Lionel Briand ICSM 2011 Keynote (20)

Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.
 
Applying AI to software engineering problems: Do not forget the human!
Applying AI to software engineering problems: Do not forget the human!Applying AI to software engineering problems: Do not forget the human!
Applying AI to software engineering problems: Do not forget the human!
 
Design Principles of Advanced Task Elicitation Systems
Design Principles of Advanced Task Elicitation SystemsDesign Principles of Advanced Task Elicitation Systems
Design Principles of Advanced Task Elicitation Systems
 
Research-Based Innovation with Industry: Project Experience and Lessons Learned
Research-Based Innovation with Industry: Project Experience and Lessons LearnedResearch-Based Innovation with Industry: Project Experience and Lessons Learned
Research-Based Innovation with Industry: Project Experience and Lessons Learned
 
Replication and Benchmarking in Software Analytics
Replication and Benchmarking in Software AnalyticsReplication and Benchmarking in Software Analytics
Replication and Benchmarking in Software Analytics
 
Industry-Academia Communication In Empirical Software Engineering
Industry-Academia Communication In Empirical Software EngineeringIndustry-Academia Communication In Empirical Software Engineering
Industry-Academia Communication In Empirical Software Engineering
 
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
 
Systems Practice in Engineering (SPiE)
Systems Practice in Engineering (SPiE)Systems Practice in Engineering (SPiE)
Systems Practice in Engineering (SPiE)
 
[2016/2017] RESEARCH in software engineering
[2016/2017] RESEARCH in software engineering[2016/2017] RESEARCH in software engineering
[2016/2017] RESEARCH in software engineering
 
Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...
Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...
Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...
 
2011 EASE - Motivation in Software Engineering: A Systematic Review Update
2011 EASE - Motivation in Software Engineering: A Systematic Review Update2011 EASE - Motivation in Software Engineering: A Systematic Review Update
2011 EASE - Motivation in Software Engineering: A Systematic Review Update
 
From Bugs to Decision Support - Selected Research Highlights
From Bugs to Decision Support - Selected Research HighlightsFrom Bugs to Decision Support - Selected Research Highlights
From Bugs to Decision Support - Selected Research Highlights
 
Software Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global AnalysisSoftware Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global Analysis
 
Keynote at-icpc-2020
Keynote at-icpc-2020Keynote at-icpc-2020
Keynote at-icpc-2020
 
A Pragmatic Perspective on Software Visualization
A Pragmatic Perspective on Software VisualizationA Pragmatic Perspective on Software Visualization
A Pragmatic Perspective on Software Visualization
 
Testing survey by_directions
Testing survey by_directionsTesting survey by_directions
Testing survey by_directions
 
Ece481 lecture4engsocexp
Ece481 lecture4engsocexpEce481 lecture4engsocexp
Ece481 lecture4engsocexp
 
Software Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesSoftware Analytics - Achievements and Challenges
Software Analytics - Achievements and Challenges
 
Pathways to Technology Transfer and Adoption: Achievements and Challenges
Pathways to Technology Transfer and Adoption: Achievements and ChallengesPathways to Technology Transfer and Adoption: Achievements and Challenges
Pathways to Technology Transfer and Adoption: Achievements and Challenges
 
Scalable and Cost-Effective Model-Based Software Verification and Testing
Scalable and Cost-Effective Model-Based Software Verification and TestingScalable and Cost-Effective Model-Based Software Verification and Testing
Scalable and Cost-Effective Model-Based Software Verification and Testing
 

Recently uploaded

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 

Recently uploaded (20)

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 

Lionel Briand ICSM 2011 Keynote

  • 1. Useful Software Engineering Research: Leading a Double -Agent Life Lionel Briand Certus Center for Software Verification and Validation Simula Research Laboratory & University of Oslo, Norway 1
  • 4. Software Engineering Research Funding & Relevance ➜  Software Engineering (SE) research should be a top priority in most countries (except Sweden) ➜  But that is not the case anymore. Hard numbers are hard to get, and in some cases well protected ➜  Symptoms ➥  Listed priorities by research councils, funding ➥  University hiring ➥  Large centers or institutes being established or closed down ➜  May be partly related to lack of relevance? ➥  Industry participation in leading SE conferences ➥  Application/industry tracks not first class citizens ➥  A very small percentage of research work ever used and assessed on real industrial software 4
  • 5. Basili’s and Meyer’s Take ➜  Many of the advances in software engineering have come out of non-university sources ➜  “Academic research has had its part, honorable but limited.” (Meyer) ➜  Large scale labs don’t get funded, like they do in other engineering and scientific disciplines (Basili, Meyer) ➜  Software Engineering is “big science” (Basili) ➜  One significant difference though is that we cannot entirely recreate the phenomena we study within four walls – This, as discussed later, has significant consequences ➜  Question: What is our responsibility in all this? 5
  • 6. Engineering Research ➜  “Engineering: The application of scientific and mathematical principles to practical ends such as the design, manufacture, and operation of efficient and economical structures, machines, processes, and systems.” (American Heritage Dictionary) ➜  Engineering research: ➥ Problem driven ➥ Real world requirements ➥ Scalability ➥ Human factors, where it matters ➥ Economic tradeoffs and cost-benefit analysis ➥ Actually doing it on real artifacts, not just talking about it 6
  • 7. A Representative Example ➜  Parnin and Orso (ISSTA, 2011) looked at automated debugging techniques ➜  50 years of automated debugging research ➜  Only 5 papers have evaluated automated debugging techniques with actual programmers ➜  Focus since ~2001: dozens of papers ranking program statements according to their likelihood of containing a fault ➜  Experiment ➥ How do programmers use the ranking? ➥ Do they see the bugs? ➥ Is the ranking important? 7
  • 8. Results from Parnin and Orso’s Study •  Only low performers strictly followed the ranking •  Only one out of 10 programmers who checked a buggy statement stopped the investigation •  Automated support did not speed up debugging •  Developers wanted explanations rather than recommendations •  We cannot abstract the human away in our research •  “… we must steer research towards more promising directions that take into account the way programmers actually debug in real scenarios.” 8
  • 9. What Happened? ➜  How people debug and what information they need is poorly understood ➥ Probably varies a great deal according to context and skills ➜  Researchers focused on providing a solution that was a mismatch for the actual problem ➜  That line of research became fashionable: a lot of (cool) ideas could be easily applied and compared, without involving human participants ➜  Resulted in many, many papers … ➜  Many other examples in SE, e.g., Clone detection? 9
  • 10. Other Examples ➜  Adaptive Random Testing: Many papers since 2004 ➥ Mostly simulations and small artifacts, unrealistic failure rates. Arcuri and Briand (2011), ISSTA ➜  Regression testing: Arguably the most studied testing problem, perhaps most studied software engineering problem … ➥ "However, empirical evaluation and application of regression testing techniques at industrial level seems to remain limited. Out of the 159 papers …, only 12 papers consider industrial software artefacts as a subject of the associated empirical studies. This suggests that a large-scale industrial uptake of these techniques has yet to occur.” Yoo and Harman (2011) ➥ Possible reason: Strong focus on white-box, not black -box regression testing? Scalability and Practicality? 10
  • 11. Industry-Driven Research ➜  Let’s take now an entirely different angle … ➜  Research driven by industry needs ➜  Simula’s motto: “The industry is our lab” ➜  Go through recent and successful projects (mostly @ Simula) with industry partners ➜  Summarize what happened, our experience ➜  Draw conclusions and lessons learned ➥ Patterns for successful research ➥ Challenges and possible solutions 11
  • 12. Mode of Collaboration Problem identification Realistic validation Release solution Ind. Partners Problem formulation Study Candidate Research Center State-of- Solutions the-art Initial validation Gorschek et al., IEEE Software 2006 12
  • 13. Project Example 1 ➜  Context: Testing in communication systems (Cisco) ➜  Original scientific problem: Modeling and test case generation, oracle, coverage strategy ➜  Practical observation: Access to test network infrastructure limited (emulate network traffic, etc.). Models get too large and complex. ➜  Modified research objectives: (1) How to select an optimal subset of test cases matching the time budget, (2) Modeling cross-cutting concerns 13
  • 14. Project Example 1 ➜  Context: Testing in communication systems (Cisco) ➜  Original scientific problem: Modeling and model -based test case generation, oracle, coverage strategy ➜  Practical observation: Access to test network infrastructure limited (emulate network traffic, etc.). Models get too large and complex. ➜  Modified research objectives: (1) How to select an optimal subset of test cases matching the time budget, (2) Modeling cross-cutting concerns ➜  References: Hemmati et al. (2010), Ali et al. (2011) 14
  • 15. Project Example 2 ➜  Context: Testing image segmentation algorithms for medical applications (Siemens) ➜  Original scientific problem: Define specific test strategies for segmentation algorithms ➜  Practical observations: Algorithms are validated by using highly specialized medical experts. Expensive and slow. No obvious test oracle ➜  Modified research objective: Learning oracles for image segmentation algorithms in medical applications. Machine learning. 15
  • 16. Project Example 2 ➜  Context: Testing image segmentation algorithms for medical applications (Siemens) ➜  Original scientific problem: Define specific test strategies for segmentation algorithms ➜  Practical observations: Algorithms are validated by using highly specialized medical experts. Expensive and slow. No obvious test oracle ➜  Modified research objective: Learning oracles for image segmentation algorithms in medical applications. Machine learning. ➜  Reference: Frouchni et al. (2011) 16
  • 17. Project Example 3 ➜  Context: Subsea integrated control systems (FMC) ➜  Original scientific problem: Architecture-driven integration in systems of systems ➜  Practical observations: Each subsea installation is unique (variant), the software configuration is extremely complex (hundreds of interrelated variation points in software and hardware) ➜  Modified research objective: Product Line architectures in integrated control systems to support the configuration process ➜  Note: Despite decades of research in PLA, we could not find a methodology fitting our requirements 17
  • 18. Project Example 3 ➜  Context: Subsea integrated control systems (FMC) ➜  Original scientific problem: Architecture-driven integration in systems of systems ➜  Practical observations: Each subsea installation is unique (variant), the software configuration is extremely complex (hundreds of interrelated variation points in software and hardware) ➜  Modified research objective: Product Line architectures in integrated control systems to support the configuration process ➜  Note: Despite decades of research in PLA, we could not find a methodology fitting our requirements ➜  Reference: Behjati et al. (2011) 18
  • 19. Project Example 4 ➜  Context: safety-critical embedded systems in the energy and maritime sectors, e.g., fire and gas monitoring, process shutdown, dynamic positioning (Kongsberg Maritime) ➜  Original scientific problem: Model-driven engineering for failure-mode and effect analysis ➜  Practical observations: Certification meetings with third-party certifiers. Certification is lengthy, expensive, etc. Traceability in large complex systems a priority. ➜  Modified research objective: Traceability between safety requirements and system design decisions. Solution based on SysML and a simple traceability language along with model slicing. 19
  • 20. Project Example 4 ➜  Context: safety-critical embedded systems in the energy and maritime sectors, e.g., fire and gas monitoring, process shutdown, dynamic positioning (Kongsberg Maritime) ➜  Original scientific problem: Model-driven engineering for failure-mode and effect analysis ➜  Practical observations: Certification meetings with third-party certifiers. Certification is lengthy, expensive, etc. Traceability in large complex systems a priority. ➜  Modified research objective: Traceability between safety requirements and system design decisions. Solution based on SysML and a simple traceability language along with model slicing. ➜  Reference: Sabetzadeh et al. (2011) 20
  • 21. Project Example 5 ➜  Context: Technology qualification (TQ) in maritime sector (DNV) ➜  Original scientific problem: Model-based quantitative safety analysis ➜  Practical observations: TQ is not purely objective, quantitative argument. Great complexity (e.g., sources of information) and expert judgment. Many stakeholders. ➜  Modified research objective: Modeling safety arguments to support quantitative reasoning and decision making by several stakeholders 21
  • 22. Project Example 5 ➜  Context: Technology qualification (TQ) in maritime sector (DNV) ➜  Original scientific problem: Model-based quantitative safety analysis ➜  Practical observations: TQ is not purely objective, quantitative argument. Great complexity (e.g., sources of information) and expert judgment. Many stakeholders. ➜  Modified research objective: Modeling safety arguments to support quantitative reasoning and decision making by several stakeholders ➜  Reference: Sabetzadeh et al. (2011) 22
  • 23. Two Other Examples on the ICSM Program ➜  Erik Rogstad et al., “Industrial Experiences with Automated Regression Testing of a Legacy Database Application” ➜  Amir Reza Yazdanshenas and Leon Moonen, “Crossing the Boundaries While Analyzing Heterogeneous Component-Based Software Systems” 23
  • 24. Successful Research Patterns ➜  Successful: Innovative and high impact ➜  Inductive research: Working from specific observations in real settings to broader generalizations and theories ➥ Field studies and replications, analyze commonalities ➜  Scalability and practicality considerations must be part of the initial research problem definition ➜  Researching by doing: Hands-on research. Apply what exists in well defined, realistic context, with clear objectives. The observed limitations become the research objectives. ➜  Multidisciplinary: other CS, Engineering, or non -technical domains 24
  • 25. So What? ➜  Making a conscious effort to understand the problem first ➥  Precisely identify the requirements for an applicable solution ➥  More papers focused on understanding the problems ➥  Making industry tracks first class citizens in SE conferences ➜  Better relationships between academia and industry ➥  Different models, e.g., Research-based innovation centers in Norway ➥  Common labs (e.g., NASA SEL Lab) ➥  Exposing PhD students to industry practice: Ethical considerations (Fixing the PhD, Nature) ➜  Playing an active role in solving the problem, e.g., action research-like 25
  • 26. So What? ➜  Work on end-to-end solutions: Pieces of solutions are interdependent. Necessary for impact. ➜  Beyond professors and students ➥ Labs with interdisciplinary teams of professional scientists and engineers within or collaborating with universities ➥ Used to be the case with corporate research labs: Bell Labs, Xerox PARC, HP labs, NASA SEL, etc. ➥ Now: Fraunhofer (Germany), Simula (Norway), Microsoft Research (US), SEI (US), SnT (Luxembourg) ➥ Corporate labs versus publicly supported ones? ➥ Key point: The level of basic funding must allow high risk research, performed by professional scientists, focused on impact in society 26
  • 27. The NASA SEL Experience Factory Model Basili et al. (NASA SEL) 27
  • 28. Academic Challenges ➜  Our CS legacy … emancipating ourselves as an engineering discipline ➥  Systems engineering departments? ➜  How cool is it? SE research is more driven by “fashion” than needs, a quest for silver bullets ➥  We can only blame ourselves ➜  Counting papers and how the JSS ranking does not help ➥  We are pressuring ourselves into irrelevance ➜  Taking academic tenure and promotion seriously ➥  What about rewarding impact? ➜  One’s research must cover a broader ground and be somewhat opportunistic – this pushes us out of our comfort zone ➜  Resources to support industry collaborations ➥  Large lab infrastructure, engineers, time 28
  • 29. Industrial Challenges ➜  From a discussion with Bran Selic … ➜  Short term versus longer term goals (next quarter’s forecast is the priority) ➜  Industrial research groups are often disconnected from their own business units and external researchers may be perceived as competitors ➜  Company’s intellectual property regulations may conflict with those of the research institution ➜  Complexity of industrial systems and technology ➥ Cannot be transplanted in artificial settings for research - Need studies in real settings ➥ Substantial domain knowledge is required 29
  • 30. A Double-Agent Life A new idea Scientist, (as initially trying to be perceived by discrete, but our partners) inquisitive Warning: No Practitioner research here (sanitized) 30
  • 31. Conclusions ➜  Software engineering is obviously important in all aspects of society, but academic software engineering research is not perceived the same way ➜  The academic community, at various levels, is partly responsible for this ➜  How we take up the challenge of increasing our impact will determine the future of the profession ➜  There are solutions, but no silver bullet ➜  We all have a role to play in this, as deans, department chairs, professors, scientists, reviewers, conference organizers, journal editors, etc. We can all be double-agents … 31
  • 32. Empirical Software Engineering ➜  Springer, 6 issues a year ➜  Both research papers and industry experience reports ➜  2nd highest impact factor among SE research journals ➜  “Applied software engineering research with a significant empirical component” 32
  • 33. References ➜  Ali, Briand, Hemmati, “Modeling Robustness Behavior Using Aspect-Oriented Modeling to Support Robustness Testing of Industrial Systems”, Journal of Software and Systems Modeling, forthcoming, 2011. ➜  Arcuri and Briand, “Adaptive Random Testing: An Illusion of Effectiveness”, ISSTA 2011 ➜  Basili, “Learning Through Application: The maturing of the QIP in the SEL”, Making Software; What really works and why we believe it, Edited by Andy Oram and Greg Wilson, O’Reilly Publishers, 2011, pp.65-78. ➜  Behjati, Yue, Briand and Selic , “SimPL: A Product-Line Modeling Methodology for Families of Integrated Control Systems”, Simula Technical Report 2011-14 (V. 2), Submitted. ➜  Hemmati, Briand, Arcuri, Ali “An Enhanced Test Case Selection Approach for Model -Based Testing: An Industrial Case Study”, FSE, 2010 ➜  Frouchni, Briand, Labiche, Grady, and Subramanyan, “Automating Image Segmentation Verification and Validation by Learning Test Oracles”, forthcoming in Information and Software Technology (Elsevier), 2011. 33
  • 34. References II ➜  Sabetzadeh, Nejati, Briand, Evensen Mills “Using SysML for Modeling of Safety -Critical Software–Hardware Interfaces: Guidelines and Industry Experience”, HASE, 2011 ➜  Parnin and Orso, “Are Automated Debugging Techniques Actually Helping Programmers?”, ISSTA, 2011 ➜  Sabetzadeh et al., “Combining Goal Models, Expert Elicitation, and Probabilistic Simulation for Qualification of New Technology”, HASE, 2011 ➜  Yoo and Harman, “Regression testing minimization, selection and prioritization: a survey”, STVR, Wiley, forthcoming ➜  Bertrand Meyer’s blog: http://bertrandmeyer.com/2010/04/25/the-other -impediment-to-software-engineering-research/ 34