SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
The Scientific Method in
  Software Evaluation
     Speaker: Benjamin Heitmann
    <benjamin.heitmann@deri.org>




                                   1
Motivation
               • The Scientific Method guarantees a certain
                     degree of objectivity in Science
               • following it improves quality of work
               • our work takes the form of Software
               • part of the scientific method is evaluation
               • How can Software be evaluated?
                                                                 2
Benjamin Heitmann: The Scientific Method in Software Evaluation
                                                                     2
Overview
               • Is Computer Science a Science ?
                                                                       hy
               • The Scientific Method                                W
               • Reasons to (not) Experiment
               • Evaluating the Design                                 ow
                                                                     H
               • Evaluating the Implementation
                                                                 3
Benjamin Heitmann: The Scientific Method in Software Evaluation
                                                                            3
Is Computer Science a
      Science?
               Reference:
 Denning, Is Computer Science Science ?



                                          4
Denning’s Definition
                     Computer Science:
                     the science of information processes and
                     their interactions with the world
               •     studies artificial and natural information
                     processes
               •     blend of Science, Engineering, Mathematics
                     and Art

                                                                 5   Chapter 1 of 5
Benjamin Heitmann: The Scientific Method in Software Evaluation
                                                                                      5
Other Definitions

               •     the study of phenomena related to
                     computers [Newell, Perlis and Simon, 1967]
               •     the study of information structures
                     [Wegner, 1968]
               •     the study and management of complexity
                     [Dijkstra, 1969]


                                                                 6   Chapter 1 of 5
Benjamin Heitmann: The Scientific Method in Software Evaluation
                                                                                      6
Real Science
                     Francis Bacon:
                          Scientific Method:
               • Process of forming hypotheses and verifying
                     them through experimentation
               • Successful hypotheses become models
                     explaining and predicting the world


                                                                 7
Benjamin Heitmann: The Scientific Method in Software Evaluation       Chapter 1 of 5
                                                                                      7
Example
               • Example: the study of algorithms
               • e.g.: sort algorithms
               • Hypothesis:
                     An algorithm executes with certain
                     performance, time and storage requirements
               • Verification: by experimentation with real
                     world data

                                                                 8
Benjamin Heitmann: The Scientific Method in Software Evaluation       Chapter 1 of 5
                                                                                      8
Non-obvious problems solved
                  by computing principles
                    Computation:                                     Communication:

                    Non-computability of                             Lossy but high-fidelity
                    some important                                   audio compression
                    problems
                                                                     Secure cryptographic key
                    Optimal algorithms for                           exchange in open
                    some common problems                             networks

                                                                     Design: Objects and
                                                                     information hiding



                                                                 9                Chapter 1 of 5
Benjamin Heitmann: The Scientific Method in Software Evaluation
                                                                                                   9
Interdisciplinary
                                  Research
                     Constantly new relationships with other
                     research fields:
                   • Bioinformatics
                   • Cognitive science
                   • Computer linguistics
                   • Immersive computing
                   • Quantum computing
Benjamin Heitmann: The Scientific Method in Software Evaluation 10   Chapter 1 of 5
                                                                                     10
True Science needs
                           Validation
                     Tichy:
                     50 % of CS papers proposing models and
                     hypotheses are not validated (papers
                     published before 1995)
                     In other fields, only 15 % not validated.



Benjamin Heitmann: The Scientific Method in Software Evaluation 11   Chapter 1 of 5
                                                                                     11
The Scientific Method
                      Reference:
Dodig-Crnkovic, Scientific Methods in Computer Science




                                                        12
Diagram of the Scientific
                    Method
1                          2                            3
      Existing
    Theories and                Hypothesis                  Predictions
    Observations

                     adjust
                   Hypothesis
                                         4 Tests and new
6 Select among
     competing
                                             Observations
      theories
                    5 Confirm old
                      theory or                                 Recursive
                                         consistency
                     propose new
                                                                and cyclic
                                          achieved
                        theory
                                    13                  Chapter 2 of 5
                                                                             13
Advantages

               • Reproducible Results
               • Impartiality
               • Acceptance based on results of logical
                     reasoning, observations and experiments



Benjamin Heitmann: The Scientific Method in Software Evaluation 14   Chapter 2 of 5
                                                                                     14
Scientific Methods of
                    Computer Science

               • Overlying principle: Modeling
               • Theoretical CS
               • Experimental CS
               • Computer Simulation

Benjamin Heitmann: The Scientific Method in Software Evaluation 15   Chapter 2 of 5
                                                                                     15
Reasons to (not)
           experiment
                   Reference:
Tichy, Should Computer Scientists Experiment More?


                                                     16
Reasons for
                             experimentation
               • Falsification of theories
               • Revealing of assumptions
               • Eliminate alternative explanations
               • Enable induction: deriving theories from
                     observation



Benjamin Heitmann: The Scientific Method in Software Evaluation 17   Chapter 3 of 5
                                                                                     17
But “experiments cost
                      to much”
               • Experimentation requires more resources
                     then theory, so why do it?
               • Rebuttal:
                • Meaningful experiments can fit into small
                         budgets
                   • Expensive experiments can be worth
                         more than their cost


Benjamin Heitmann: The Scientific Method in Software Evaluation 18   Chapter 3 of 5
                                                                                     18
But “too many variables”
               • Impossible to control all variables
               • useless results
               • Rebuttal:
                  • create benchmarks
                  • control variables and errors like e.g. in
                             medicine


Benjamin Heitmann: The Scientific Method in Software Evaluation 19   Chapter 3 of 5
                                                                                     19
But “experimentation
                    slows progress”

               • Slower flow of ideas, if experimentation is
                     required
               • Rebuttal: better identification of
                     questionable ideas




Benjamin Heitmann: The Scientific Method in Software Evaluation 20   Chapter 3 of 5
                                                                                     20
But “technology changes
                    to fast”

               • Experiment duration exceeds lifetime of
                     software tool / product
               • Rebuttal: question is too narrow


Benjamin Heitmann: The Scientific Method in Software Evaluation 21   Chapter 3 of 5
                                                                                     21
Evaluating the Design

                     Reference:
Leist, Zellner; Evaluation of Current Architecture
                    Frameworks




                                                     22
Methodology

               1. establish theoretical foundation
               2. create list of features based on foundation
               3. analyse if subjects exhibit features




Benjamin Heitmann: The Scientific Method in Software Evaluation 23   Chapter 4 of 5
                                                                                     23
Evaluating Enterprise
                      Architecture Descriptions
               • Theoretical foundation: Method Engineering
               • List of features:
                        •    Meta Model

                        •    Procedure Model

                        •    Modeling Technique

                        •    Role document

                        •    Specification Document


Benjamin Heitmann: The Scientific Method in Software Evaluation 24   Chapter 4 of 5
                                                                                     24
Another in
         Table 1 Evaluation of current Architectures
                                                                                         very balan
                                                                                         shows for




                            C4ISR/DoDAF
                                                                                         methodic p
                                                                                         appropriate




                                                                       Zachman
                                                               TOGAF
                                                                                         objectives




                                                        TEAF
                                           FEAF

                                                  MDA
                     ARIS
                                                                                         further rese
                                                                                         focus on si
                                                                                         appropriate
                                                               quot;
                      !     !              !      !     !              !
Specification
document
                                                                                         7.           R
                            #              quot;            #      quot;       #
                      !                           !
Meta model
                     quot;      #                     #            quot;       quot;
                                           !            !
Role                                                                                     [1]   Arch
                                                                                               (MDA
                                           quot;      #     quot;      #       quot;
                      !     !
Technique
                                                                                               http:/
                     quot;                                                 #
                            !              !      !     !      !
Procedure model
                                                                                               (Acc
                   ! Fully accomplished
         Legend:
                                                                                         [2]   Blevi
                   # Partly accomplished
                                                                                               and M
                   quot; Not accomplished
                                                                                               ADM
For most of the architecture frameworks the strengths and                                      2005
weaknesses are very balanced. The adequacy of a architecture                             [3]   Bran
framework to support a development project could be evaluated                                  archi
only in consideration of specific circumstances of a case.                               [4]   Brink
                                          25                            Chapter 4 of 5
                                                                                               Meth
The results of the evaluation indicate at the same time potentials                               25
Evaluating the
           Implementation
                       Reference:
Bansiya, Evaluating Framework Architecture Structural
                        Stability


                                                        26
Methodology

               1. establish hypothesis
               2. Identify characteristics related to hypothesis
               3. define metrics to assess each characteristic
               4. collect data from metrics
               5. determine if data supports hypothesis


Benjamin Heitmann: The Scientific Method in Software Evaluation 27   Chapter 5 of 5
                                                                                     27
Evaluating Structural Stability of Windows
                       Application Frameworks

               • Hypothesis: extent of change stabilises with
                     maturity
                       Characteristics                                    Metric
                     Design Size in Classes                               count
                        number of single/
                                                                           count
                       multiple inheritances
                       average inheritance                          divide sum of maximum
                                                                    path lengths of all classes
                           depth/width                                by number of classes

Benjamin Heitmann: The Scientific Method in Software Evaluation 28                   Chapter 5 of 5
                                                                                                     28
taking the difference of the aggregate-change (Vi) of a version (i,with i > 0) with the aggregate-

change (V1) value of the first version.



      Table 4. Normalized architecture assessment metric values of MFC and OWL frameworks

       Design Metric       MFC       MFC     MFC          MFC     MFC    OWL    OWL      OWL      OWL
                            1.0       2.0     3.0          4.0     5.0    4.0    4.5      5.0      5.2
                             1        1.28    1.43         1.56   1.13     1     1.73     2.51    1.00
        Design Size
                             1         1       1            5     1.20     1     1.33     1.81    0.93
        Hierarchies
                             1        1.27    1.39         1.49   1.11     1     1.65     3.61    0.98
    Single Inheritances
                             1        1.00    1.00         1.00   1.00     1     1.44     2.31    1.00
    Multiple Inheritance
                             1        1.26    1.16         0.95   0.99     1     1.04     1.75    0.99
    Depth of Inheritance
                             1        0.99    0.98         0.96   0.98     1     0.94     1.33    0.98
    Width of Inheritance
                             1        1.26    1.16         0.95   0.99     1     0.97     1.61    0.99
     Number of Parents
                             1        1.70    1.26         1.20   0.96     1     0.87     1.55    0.99
    Number of Methods
                             1        1.26    1.19         1.03   0.96     1     1.21     2.09    1.00
      Class Coupling
                            9.0      11.01   10.57        14.14   9.31    9.0   11.18    18.57    8.86
   Aggregate Change (Vi )
  Extent-of-Change(Vi -V1) 0.0        2.01    1.57         5.14   0.31    0.0    2.18     9.57    -0.14




        The extent-of-change measure can be used as an indicator (index) of framework architecture

stability. The value of the measure indicates the relative stability of the architecture structure, while
                                                     29                          Chapter 5 of 5
higher values of the measure are reflective of higher instability in the structure, values closer to zero
                                                                                                            29
Conclusion
               • Computer Science is a true science
               • In order to have measurable results you have
                     to choose hypotheses which can actually be
                     measured.
               • Remember falsifiability tests!
               • Measure your own progress, by evaluating
                     your approach


Benjamin Heitmann: The Scientific Method in Software Evaluation 30
                                                                    30
References:


                     Denning, Is Computer Science Science? : http://cs.gmu.edu/cne/pjd/PUBS/
                     CACMcols/cacmApr05.pdf


                     Dodig-Crnkovic, Scientific Methods in Computer Science: http://
                     www.mrtc.mdh.se/publications/0446.pdf


                     Tichy, Should Computer Scientists Experiment More? : http://
                     ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=675631


                     Leist, Zellner, Evaluation of Current Architecture Frameworks : http://
                     portal.acm.org/citation.cfm?id=1141635


                     Bansiya, Evaluating Framework Architecture Structural Stability: http://
                     portal.acm.org/citation.cfm?doid=351936.351954


                     Brown, Wallnau, A Framework for Evaluating Software Technology: http://
                     ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=536457


Benjamin Heitmann: The Scientific Method in Software Evaluation
                                                                                                31

Contenu connexe

Similaire à Applying the scientific method in Software Evaluation

SDPM - Lecture 5 - Software effort estimation
SDPM - Lecture 5 - Software effort estimationSDPM - Lecture 5 - Software effort estimation
SDPM - Lecture 5 - Software effort estimationOpenLearningLab
 
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
 
633-600 Machine Learning
633-600 Machine Learning633-600 Machine Learning
633-600 Machine Learningbutest
 
Bm Systems Disruptive Innovation E Conference 20052010 Manuel Gea
Bm Systems Disruptive Innovation E Conference 20052010 Manuel GeaBm Systems Disruptive Innovation E Conference 20052010 Manuel Gea
Bm Systems Disruptive Innovation E Conference 20052010 Manuel GeaManuel GEA - Bio-Modeling Systems
 
empirical software engineering, v2.0
empirical software engineering, v2.0empirical software engineering, v2.0
empirical software engineering, v2.0CS, NcState
 
Applying Systems Thinking to Solve Wicked Problems in Software Engineering
Applying Systems Thinking to Solve Wicked Problems in Software EngineeringApplying Systems Thinking to Solve Wicked Problems in Software Engineering
Applying Systems Thinking to Solve Wicked Problems in Software EngineeringMajed Ayyad
 
The Science of Software Testing - Experiments, Evolution & Emergence (2011)
The Science of Software Testing - Experiments, Evolution & Emergence (2011)The Science of Software Testing - Experiments, Evolution & Emergence (2011)
The Science of Software Testing - Experiments, Evolution & Emergence (2011)Neil Thompson
 
Machine Learning
Machine LearningMachine Learning
Machine Learningbutest
 
Knowledge based systems
Knowledge based systemsKnowledge based systems
Knowledge based systemsMinoo N
 
Studying the Impact of Ubiquitous Monitoring Technology on Office Worker Beha...
Studying the Impact of Ubiquitous Monitoring Technology on Office Worker Beha...Studying the Impact of Ubiquitous Monitoring Technology on Office Worker Beha...
Studying the Impact of Ubiquitous Monitoring Technology on Office Worker Beha...sipcworkshop
 
Action research for_librarians_carl2012
Action research for_librarians_carl2012Action research for_librarians_carl2012
Action research for_librarians_carl2012srosenblatt
 
Think Big Analytics AWS for Financial Services
Think Big Analytics AWS for Financial ServicesThink Big Analytics AWS for Financial Services
Think Big Analytics AWS for Financial ServicesAmazon Web Services
 
OO Development 1 - Introduction to Object-Oriented Development
OO Development 1 - Introduction to Object-Oriented DevelopmentOO Development 1 - Introduction to Object-Oriented Development
OO Development 1 - Introduction to Object-Oriented DevelopmentRandy Connolly
 
Computation of Things - Justyna Zander, Pieter Mosterman - H+ Summit @ Harvard
Computation of Things - Justyna Zander, Pieter Mosterman - H+ Summit @ HarvardComputation of Things - Justyna Zander, Pieter Mosterman - H+ Summit @ Harvard
Computation of Things - Justyna Zander, Pieter Mosterman - H+ Summit @ HarvardHumanity Plus
 

Similaire à Applying the scientific method in Software Evaluation (20)

Tues m3 johannes_magenheim
Tues m3 johannes_magenheimTues m3 johannes_magenheim
Tues m3 johannes_magenheim
 
C D tutorial
C D tutorialC D tutorial
C D tutorial
 
SDPM - Lecture 5 - Software effort estimation
SDPM - Lecture 5 - Software effort estimationSDPM - Lecture 5 - Software effort estimation
SDPM - Lecture 5 - Software effort estimation
 
Lecture2 - Machine Learning
Lecture2 - Machine LearningLecture2 - Machine Learning
Lecture2 - Machine Learning
 
A Pragmatic Perspective on Software Visualization
A Pragmatic Perspective on Software VisualizationA Pragmatic Perspective on Software Visualization
A Pragmatic Perspective on Software Visualization
 
633-600 Machine Learning
633-600 Machine Learning633-600 Machine Learning
633-600 Machine Learning
 
Lecture1 - Machine Learning
Lecture1 - Machine LearningLecture1 - Machine Learning
Lecture1 - Machine Learning
 
Bm Systems Disruptive Innovation E Conference 20052010 Manuel Gea
Bm Systems Disruptive Innovation E Conference 20052010 Manuel GeaBm Systems Disruptive Innovation E Conference 20052010 Manuel Gea
Bm Systems Disruptive Innovation E Conference 20052010 Manuel Gea
 
empirical software engineering, v2.0
empirical software engineering, v2.0empirical software engineering, v2.0
empirical software engineering, v2.0
 
Applying Systems Thinking to Solve Wicked Problems in Software Engineering
Applying Systems Thinking to Solve Wicked Problems in Software EngineeringApplying Systems Thinking to Solve Wicked Problems in Software Engineering
Applying Systems Thinking to Solve Wicked Problems in Software Engineering
 
The Science of Software Testing - Experiments, Evolution & Emergence (2011)
The Science of Software Testing - Experiments, Evolution & Emergence (2011)The Science of Software Testing - Experiments, Evolution & Emergence (2011)
The Science of Software Testing - Experiments, Evolution & Emergence (2011)
 
Machine Learning
Machine LearningMachine Learning
Machine Learning
 
Secure360 on Risk
Secure360 on RiskSecure360 on Risk
Secure360 on Risk
 
Knowledge based systems
Knowledge based systemsKnowledge based systems
Knowledge based systems
 
Studying the Impact of Ubiquitous Monitoring Technology on Office Worker Beha...
Studying the Impact of Ubiquitous Monitoring Technology on Office Worker Beha...Studying the Impact of Ubiquitous Monitoring Technology on Office Worker Beha...
Studying the Impact of Ubiquitous Monitoring Technology on Office Worker Beha...
 
Action research for_librarians_carl2012
Action research for_librarians_carl2012Action research for_librarians_carl2012
Action research for_librarians_carl2012
 
Think Big Analytics AWS for Financial Services
Think Big Analytics AWS for Financial ServicesThink Big Analytics AWS for Financial Services
Think Big Analytics AWS for Financial Services
 
OO Development 1 - Introduction to Object-Oriented Development
OO Development 1 - Introduction to Object-Oriented DevelopmentOO Development 1 - Introduction to Object-Oriented Development
OO Development 1 - Introduction to Object-Oriented Development
 
Computation of Things
Computation of ThingsComputation of Things
Computation of Things
 
Computation of Things - Justyna Zander, Pieter Mosterman - H+ Summit @ Harvard
Computation of Things - Justyna Zander, Pieter Mosterman - H+ Summit @ HarvardComputation of Things - Justyna Zander, Pieter Mosterman - H+ Summit @ Harvard
Computation of Things - Justyna Zander, Pieter Mosterman - H+ Summit @ Harvard
 

Plus de Benjamin Heitmann

A new direction for recommender systems: balancing privacy and personalisation
A new direction for recommender systems: balancing privacy and personalisationA new direction for recommender systems: balancing privacy and personalisation
A new direction for recommender systems: balancing privacy and personalisationBenjamin Heitmann
 
Benjamin Heitmann, PhD defence talk: An Open Framework for Multi-source, Cro...
Benjamin Heitmann, PhD defence talk: An Open Framework for Multi-source, Cro...Benjamin Heitmann, PhD defence talk: An Open Framework for Multi-source, Cro...
Benjamin Heitmann, PhD defence talk: An Open Framework for Multi-source, Cro...Benjamin Heitmann
 
Lessons and requirements from a decade of deployed Semantic Web apps
Lessons and requirements from a decade of deployed Semantic Web appsLessons and requirements from a decade of deployed Semantic Web apps
Lessons and requirements from a decade of deployed Semantic Web appsBenjamin Heitmann
 
An architecture for privacy-enabled user profile portability on the Web of Data
An architecture for privacy-enabled user profile portability on the Web of DataAn architecture for privacy-enabled user profile portability on the Web of Data
An architecture for privacy-enabled user profile portability on the Web of DataBenjamin Heitmann
 
What your hairstyle says about your political preferences, and why you should...
What your hairstyle says about your political preferences, and why you should...What your hairstyle says about your political preferences, and why you should...
What your hairstyle says about your political preferences, and why you should...Benjamin Heitmann
 
Enabling Case-Based Reasoning on the Web of Data (How to create a Web of Exp...
Enabling Case-Based Reasoning  on the Web of Data (How to create a Web of Exp...Enabling Case-Based Reasoning  on the Web of Data (How to create a Web of Exp...
Enabling Case-Based Reasoning on the Web of Data (How to create a Web of Exp...Benjamin Heitmann
 
Implementing Semantic Web applications: reference architecture and challenges
Implementing Semantic Web applications:  reference architecture and challengesImplementing Semantic Web applications:  reference architecture and challenges
Implementing Semantic Web applications: reference architecture and challengesBenjamin Heitmann
 
Representing discourse and argumentation as an application of Web Science
Representing discourse and argumentation as an application of Web ScienceRepresenting discourse and argumentation as an application of Web Science
Representing discourse and argumentation as an application of Web ScienceBenjamin Heitmann
 
Web Science: Motivation, Goals and Contributions
Web Science: Motivation, Goals and ContributionsWeb Science: Motivation, Goals and Contributions
Web Science: Motivation, Goals and ContributionsBenjamin Heitmann
 
Presentation of current research: distributed architecture for recommendation...
Presentation of current research: distributed architecture for recommendation...Presentation of current research: distributed architecture for recommendation...
Presentation of current research: distributed architecture for recommendation...Benjamin Heitmann
 
Lessons learned from Futures Studies: Towards a method for Web Science
Lessons learned from Futures Studies: Towards a method for Web ScienceLessons learned from Futures Studies: Towards a method for Web Science
Lessons learned from Futures Studies: Towards a method for Web ScienceBenjamin Heitmann
 
RDFa: putting RDF on the Web
RDFa: putting RDF on the WebRDFa: putting RDF on the Web
RDFa: putting RDF on the WebBenjamin Heitmann
 
Transitioning web application frameworks towards the Semantic Web (master the...
Transitioning web application frameworks towards the Semantic Web (master the...Transitioning web application frameworks towards the Semantic Web (master the...
Transitioning web application frameworks towards the Semantic Web (master the...Benjamin Heitmann
 
Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Sem...
Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Sem...Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Sem...
Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Sem...Benjamin Heitmann
 

Plus de Benjamin Heitmann (14)

A new direction for recommender systems: balancing privacy and personalisation
A new direction for recommender systems: balancing privacy and personalisationA new direction for recommender systems: balancing privacy and personalisation
A new direction for recommender systems: balancing privacy and personalisation
 
Benjamin Heitmann, PhD defence talk: An Open Framework for Multi-source, Cro...
Benjamin Heitmann, PhD defence talk: An Open Framework for Multi-source, Cro...Benjamin Heitmann, PhD defence talk: An Open Framework for Multi-source, Cro...
Benjamin Heitmann, PhD defence talk: An Open Framework for Multi-source, Cro...
 
Lessons and requirements from a decade of deployed Semantic Web apps
Lessons and requirements from a decade of deployed Semantic Web appsLessons and requirements from a decade of deployed Semantic Web apps
Lessons and requirements from a decade of deployed Semantic Web apps
 
An architecture for privacy-enabled user profile portability on the Web of Data
An architecture for privacy-enabled user profile portability on the Web of DataAn architecture for privacy-enabled user profile portability on the Web of Data
An architecture for privacy-enabled user profile portability on the Web of Data
 
What your hairstyle says about your political preferences, and why you should...
What your hairstyle says about your political preferences, and why you should...What your hairstyle says about your political preferences, and why you should...
What your hairstyle says about your political preferences, and why you should...
 
Enabling Case-Based Reasoning on the Web of Data (How to create a Web of Exp...
Enabling Case-Based Reasoning  on the Web of Data (How to create a Web of Exp...Enabling Case-Based Reasoning  on the Web of Data (How to create a Web of Exp...
Enabling Case-Based Reasoning on the Web of Data (How to create a Web of Exp...
 
Implementing Semantic Web applications: reference architecture and challenges
Implementing Semantic Web applications:  reference architecture and challengesImplementing Semantic Web applications:  reference architecture and challenges
Implementing Semantic Web applications: reference architecture and challenges
 
Representing discourse and argumentation as an application of Web Science
Representing discourse and argumentation as an application of Web ScienceRepresenting discourse and argumentation as an application of Web Science
Representing discourse and argumentation as an application of Web Science
 
Web Science: Motivation, Goals and Contributions
Web Science: Motivation, Goals and ContributionsWeb Science: Motivation, Goals and Contributions
Web Science: Motivation, Goals and Contributions
 
Presentation of current research: distributed architecture for recommendation...
Presentation of current research: distributed architecture for recommendation...Presentation of current research: distributed architecture for recommendation...
Presentation of current research: distributed architecture for recommendation...
 
Lessons learned from Futures Studies: Towards a method for Web Science
Lessons learned from Futures Studies: Towards a method for Web ScienceLessons learned from Futures Studies: Towards a method for Web Science
Lessons learned from Futures Studies: Towards a method for Web Science
 
RDFa: putting RDF on the Web
RDFa: putting RDF on the WebRDFa: putting RDF on the Web
RDFa: putting RDF on the Web
 
Transitioning web application frameworks towards the Semantic Web (master the...
Transitioning web application frameworks towards the Semantic Web (master the...Transitioning web application frameworks towards the Semantic Web (master the...
Transitioning web application frameworks towards the Semantic Web (master the...
 
Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Sem...
Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Sem...Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Sem...
Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Sem...
 

Dernier

CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual serviceanilsa9823
 
The Economic History of the U.S. Lecture 21.pdf
The Economic History of the U.S. Lecture 21.pdfThe Economic History of the U.S. Lecture 21.pdf
The Economic History of the U.S. Lecture 21.pdfGale Pooley
 
The Economic History of the U.S. Lecture 19.pdf
The Economic History of the U.S. Lecture 19.pdfThe Economic History of the U.S. Lecture 19.pdf
The Economic History of the U.S. Lecture 19.pdfGale Pooley
 
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsHigh Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Dividend Policy and Dividend Decision Theories.pptx
Dividend Policy and Dividend Decision Theories.pptxDividend Policy and Dividend Decision Theories.pptx
Dividend Policy and Dividend Decision Theories.pptxanshikagoel52
 
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Call US 📞 9892124323 ✅ Kurla Call Girls In Kurla ( Mumbai ) secure service
Call US 📞 9892124323 ✅ Kurla Call Girls In Kurla ( Mumbai ) secure serviceCall US 📞 9892124323 ✅ Kurla Call Girls In Kurla ( Mumbai ) secure service
Call US 📞 9892124323 ✅ Kurla Call Girls In Kurla ( Mumbai ) secure servicePooja Nehwal
 
The Economic History of the U.S. Lecture 18.pdf
The Economic History of the U.S. Lecture 18.pdfThe Economic History of the U.S. Lecture 18.pdf
The Economic History of the U.S. Lecture 18.pdfGale Pooley
 
The Economic History of the U.S. Lecture 23.pdf
The Economic History of the U.S. Lecture 23.pdfThe Economic History of the U.S. Lecture 23.pdf
The Economic History of the U.S. Lecture 23.pdfGale Pooley
 
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...Call Girls in Nagpur High Profile
 
The Economic History of the U.S. Lecture 25.pdf
The Economic History of the U.S. Lecture 25.pdfThe Economic History of the U.S. Lecture 25.pdf
The Economic History of the U.S. Lecture 25.pdfGale Pooley
 
The Economic History of the U.S. Lecture 17.pdf
The Economic History of the U.S. Lecture 17.pdfThe Economic History of the U.S. Lecture 17.pdf
The Economic History of the U.S. Lecture 17.pdfGale Pooley
 
Vip Call US 📞 7738631006 ✅Call Girls In Sakinaka ( Mumbai )
Vip Call US 📞 7738631006 ✅Call Girls In Sakinaka ( Mumbai )Vip Call US 📞 7738631006 ✅Call Girls In Sakinaka ( Mumbai )
Vip Call US 📞 7738631006 ✅Call Girls In Sakinaka ( Mumbai )Pooja Nehwal
 
The Economic History of the U.S. Lecture 22.pdf
The Economic History of the U.S. Lecture 22.pdfThe Economic History of the U.S. Lecture 22.pdf
The Economic History of the U.S. Lecture 22.pdfGale Pooley
 
Log your LOA pain with Pension Lab's brilliant campaign
Log your LOA pain with Pension Lab's brilliant campaignLog your LOA pain with Pension Lab's brilliant campaign
Log your LOA pain with Pension Lab's brilliant campaignHenry Tapper
 
06_Joeri Van Speybroek_Dell_MeetupDora&Cybersecurity.pdf
06_Joeri Van Speybroek_Dell_MeetupDora&Cybersecurity.pdf06_Joeri Van Speybroek_Dell_MeetupDora&Cybersecurity.pdf
06_Joeri Van Speybroek_Dell_MeetupDora&Cybersecurity.pdfFinTech Belgium
 
Stock Market Brief Deck (Under Pressure).pdf
Stock Market Brief Deck (Under Pressure).pdfStock Market Brief Deck (Under Pressure).pdf
Stock Market Brief Deck (Under Pressure).pdfMichael Silva
 
02_Fabio Colombo_Accenture_MeetupDora&Cybersecurity.pptx
02_Fabio Colombo_Accenture_MeetupDora&Cybersecurity.pptx02_Fabio Colombo_Accenture_MeetupDora&Cybersecurity.pptx
02_Fabio Colombo_Accenture_MeetupDora&Cybersecurity.pptxFinTech Belgium
 
Instant Issue Debit Cards - High School Spirit
Instant Issue Debit Cards - High School SpiritInstant Issue Debit Cards - High School Spirit
Instant Issue Debit Cards - High School Spiritegoetzinger
 

Dernier (20)

CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
 
The Economic History of the U.S. Lecture 21.pdf
The Economic History of the U.S. Lecture 21.pdfThe Economic History of the U.S. Lecture 21.pdf
The Economic History of the U.S. Lecture 21.pdf
 
The Economic History of the U.S. Lecture 19.pdf
The Economic History of the U.S. Lecture 19.pdfThe Economic History of the U.S. Lecture 19.pdf
The Economic History of the U.S. Lecture 19.pdf
 
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsHigh Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
 
Dividend Policy and Dividend Decision Theories.pptx
Dividend Policy and Dividend Decision Theories.pptxDividend Policy and Dividend Decision Theories.pptx
Dividend Policy and Dividend Decision Theories.pptx
 
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Call US 📞 9892124323 ✅ Kurla Call Girls In Kurla ( Mumbai ) secure service
Call US 📞 9892124323 ✅ Kurla Call Girls In Kurla ( Mumbai ) secure serviceCall US 📞 9892124323 ✅ Kurla Call Girls In Kurla ( Mumbai ) secure service
Call US 📞 9892124323 ✅ Kurla Call Girls In Kurla ( Mumbai ) secure service
 
The Economic History of the U.S. Lecture 18.pdf
The Economic History of the U.S. Lecture 18.pdfThe Economic History of the U.S. Lecture 18.pdf
The Economic History of the U.S. Lecture 18.pdf
 
The Economic History of the U.S. Lecture 23.pdf
The Economic History of the U.S. Lecture 23.pdfThe Economic History of the U.S. Lecture 23.pdf
The Economic History of the U.S. Lecture 23.pdf
 
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
 
The Economic History of the U.S. Lecture 25.pdf
The Economic History of the U.S. Lecture 25.pdfThe Economic History of the U.S. Lecture 25.pdf
The Economic History of the U.S. Lecture 25.pdf
 
The Economic History of the U.S. Lecture 17.pdf
The Economic History of the U.S. Lecture 17.pdfThe Economic History of the U.S. Lecture 17.pdf
The Economic History of the U.S. Lecture 17.pdf
 
Vip Call US 📞 7738631006 ✅Call Girls In Sakinaka ( Mumbai )
Vip Call US 📞 7738631006 ✅Call Girls In Sakinaka ( Mumbai )Vip Call US 📞 7738631006 ✅Call Girls In Sakinaka ( Mumbai )
Vip Call US 📞 7738631006 ✅Call Girls In Sakinaka ( Mumbai )
 
The Economic History of the U.S. Lecture 22.pdf
The Economic History of the U.S. Lecture 22.pdfThe Economic History of the U.S. Lecture 22.pdf
The Economic History of the U.S. Lecture 22.pdf
 
(Vedika) Low Rate Call Girls in Pune Call Now 8250077686 Pune Escorts 24x7
(Vedika) Low Rate Call Girls in Pune Call Now 8250077686 Pune Escorts 24x7(Vedika) Low Rate Call Girls in Pune Call Now 8250077686 Pune Escorts 24x7
(Vedika) Low Rate Call Girls in Pune Call Now 8250077686 Pune Escorts 24x7
 
Log your LOA pain with Pension Lab's brilliant campaign
Log your LOA pain with Pension Lab's brilliant campaignLog your LOA pain with Pension Lab's brilliant campaign
Log your LOA pain with Pension Lab's brilliant campaign
 
06_Joeri Van Speybroek_Dell_MeetupDora&Cybersecurity.pdf
06_Joeri Van Speybroek_Dell_MeetupDora&Cybersecurity.pdf06_Joeri Van Speybroek_Dell_MeetupDora&Cybersecurity.pdf
06_Joeri Van Speybroek_Dell_MeetupDora&Cybersecurity.pdf
 
Stock Market Brief Deck (Under Pressure).pdf
Stock Market Brief Deck (Under Pressure).pdfStock Market Brief Deck (Under Pressure).pdf
Stock Market Brief Deck (Under Pressure).pdf
 
02_Fabio Colombo_Accenture_MeetupDora&Cybersecurity.pptx
02_Fabio Colombo_Accenture_MeetupDora&Cybersecurity.pptx02_Fabio Colombo_Accenture_MeetupDora&Cybersecurity.pptx
02_Fabio Colombo_Accenture_MeetupDora&Cybersecurity.pptx
 
Instant Issue Debit Cards - High School Spirit
Instant Issue Debit Cards - High School SpiritInstant Issue Debit Cards - High School Spirit
Instant Issue Debit Cards - High School Spirit
 

Applying the scientific method in Software Evaluation

  • 1. The Scientific Method in Software Evaluation Speaker: Benjamin Heitmann <benjamin.heitmann@deri.org> 1
  • 2. Motivation • The Scientific Method guarantees a certain degree of objectivity in Science • following it improves quality of work • our work takes the form of Software • part of the scientific method is evaluation • How can Software be evaluated? 2 Benjamin Heitmann: The Scientific Method in Software Evaluation 2
  • 3. Overview • Is Computer Science a Science ? hy • The Scientific Method W • Reasons to (not) Experiment • Evaluating the Design ow H • Evaluating the Implementation 3 Benjamin Heitmann: The Scientific Method in Software Evaluation 3
  • 4. Is Computer Science a Science? Reference: Denning, Is Computer Science Science ? 4
  • 5. Denning’s Definition Computer Science: the science of information processes and their interactions with the world • studies artificial and natural information processes • blend of Science, Engineering, Mathematics and Art 5 Chapter 1 of 5 Benjamin Heitmann: The Scientific Method in Software Evaluation 5
  • 6. Other Definitions • the study of phenomena related to computers [Newell, Perlis and Simon, 1967] • the study of information structures [Wegner, 1968] • the study and management of complexity [Dijkstra, 1969] 6 Chapter 1 of 5 Benjamin Heitmann: The Scientific Method in Software Evaluation 6
  • 7. Real Science Francis Bacon: Scientific Method: • Process of forming hypotheses and verifying them through experimentation • Successful hypotheses become models explaining and predicting the world 7 Benjamin Heitmann: The Scientific Method in Software Evaluation Chapter 1 of 5 7
  • 8. Example • Example: the study of algorithms • e.g.: sort algorithms • Hypothesis: An algorithm executes with certain performance, time and storage requirements • Verification: by experimentation with real world data 8 Benjamin Heitmann: The Scientific Method in Software Evaluation Chapter 1 of 5 8
  • 9. Non-obvious problems solved by computing principles Computation: Communication: Non-computability of Lossy but high-fidelity some important audio compression problems Secure cryptographic key Optimal algorithms for exchange in open some common problems networks Design: Objects and information hiding 9 Chapter 1 of 5 Benjamin Heitmann: The Scientific Method in Software Evaluation 9
  • 10. Interdisciplinary Research Constantly new relationships with other research fields: • Bioinformatics • Cognitive science • Computer linguistics • Immersive computing • Quantum computing Benjamin Heitmann: The Scientific Method in Software Evaluation 10 Chapter 1 of 5 10
  • 11. True Science needs Validation Tichy: 50 % of CS papers proposing models and hypotheses are not validated (papers published before 1995) In other fields, only 15 % not validated. Benjamin Heitmann: The Scientific Method in Software Evaluation 11 Chapter 1 of 5 11
  • 12. The Scientific Method Reference: Dodig-Crnkovic, Scientific Methods in Computer Science 12
  • 13. Diagram of the Scientific Method 1 2 3 Existing Theories and Hypothesis Predictions Observations adjust Hypothesis 4 Tests and new 6 Select among competing Observations theories 5 Confirm old theory or Recursive consistency propose new and cyclic achieved theory 13 Chapter 2 of 5 13
  • 14. Advantages • Reproducible Results • Impartiality • Acceptance based on results of logical reasoning, observations and experiments Benjamin Heitmann: The Scientific Method in Software Evaluation 14 Chapter 2 of 5 14
  • 15. Scientific Methods of Computer Science • Overlying principle: Modeling • Theoretical CS • Experimental CS • Computer Simulation Benjamin Heitmann: The Scientific Method in Software Evaluation 15 Chapter 2 of 5 15
  • 16. Reasons to (not) experiment Reference: Tichy, Should Computer Scientists Experiment More? 16
  • 17. Reasons for experimentation • Falsification of theories • Revealing of assumptions • Eliminate alternative explanations • Enable induction: deriving theories from observation Benjamin Heitmann: The Scientific Method in Software Evaluation 17 Chapter 3 of 5 17
  • 18. But “experiments cost to much” • Experimentation requires more resources then theory, so why do it? • Rebuttal: • Meaningful experiments can fit into small budgets • Expensive experiments can be worth more than their cost Benjamin Heitmann: The Scientific Method in Software Evaluation 18 Chapter 3 of 5 18
  • 19. But “too many variables” • Impossible to control all variables • useless results • Rebuttal: • create benchmarks • control variables and errors like e.g. in medicine Benjamin Heitmann: The Scientific Method in Software Evaluation 19 Chapter 3 of 5 19
  • 20. But “experimentation slows progress” • Slower flow of ideas, if experimentation is required • Rebuttal: better identification of questionable ideas Benjamin Heitmann: The Scientific Method in Software Evaluation 20 Chapter 3 of 5 20
  • 21. But “technology changes to fast” • Experiment duration exceeds lifetime of software tool / product • Rebuttal: question is too narrow Benjamin Heitmann: The Scientific Method in Software Evaluation 21 Chapter 3 of 5 21
  • 22. Evaluating the Design Reference: Leist, Zellner; Evaluation of Current Architecture Frameworks 22
  • 23. Methodology 1. establish theoretical foundation 2. create list of features based on foundation 3. analyse if subjects exhibit features Benjamin Heitmann: The Scientific Method in Software Evaluation 23 Chapter 4 of 5 23
  • 24. Evaluating Enterprise Architecture Descriptions • Theoretical foundation: Method Engineering • List of features: • Meta Model • Procedure Model • Modeling Technique • Role document • Specification Document Benjamin Heitmann: The Scientific Method in Software Evaluation 24 Chapter 4 of 5 24
  • 25. Another in Table 1 Evaluation of current Architectures very balan shows for C4ISR/DoDAF methodic p appropriate Zachman TOGAF objectives TEAF FEAF MDA ARIS further rese focus on si appropriate quot; ! ! ! ! ! ! Specification document 7. R # quot; # quot; # ! ! Meta model quot; # # quot; quot; ! ! Role [1] Arch (MDA quot; # quot; # quot; ! ! Technique http:/ quot; # ! ! ! ! ! Procedure model (Acc ! Fully accomplished Legend: [2] Blevi # Partly accomplished and M quot; Not accomplished ADM For most of the architecture frameworks the strengths and 2005 weaknesses are very balanced. The adequacy of a architecture [3] Bran framework to support a development project could be evaluated archi only in consideration of specific circumstances of a case. [4] Brink 25 Chapter 4 of 5 Meth The results of the evaluation indicate at the same time potentials 25
  • 26. Evaluating the Implementation Reference: Bansiya, Evaluating Framework Architecture Structural Stability 26
  • 27. Methodology 1. establish hypothesis 2. Identify characteristics related to hypothesis 3. define metrics to assess each characteristic 4. collect data from metrics 5. determine if data supports hypothesis Benjamin Heitmann: The Scientific Method in Software Evaluation 27 Chapter 5 of 5 27
  • 28. Evaluating Structural Stability of Windows Application Frameworks • Hypothesis: extent of change stabilises with maturity Characteristics Metric Design Size in Classes count number of single/ count multiple inheritances average inheritance divide sum of maximum path lengths of all classes depth/width by number of classes Benjamin Heitmann: The Scientific Method in Software Evaluation 28 Chapter 5 of 5 28
  • 29. taking the difference of the aggregate-change (Vi) of a version (i,with i > 0) with the aggregate- change (V1) value of the first version. Table 4. Normalized architecture assessment metric values of MFC and OWL frameworks Design Metric MFC MFC MFC MFC MFC OWL OWL OWL OWL 1.0 2.0 3.0 4.0 5.0 4.0 4.5 5.0 5.2 1 1.28 1.43 1.56 1.13 1 1.73 2.51 1.00 Design Size 1 1 1 5 1.20 1 1.33 1.81 0.93 Hierarchies 1 1.27 1.39 1.49 1.11 1 1.65 3.61 0.98 Single Inheritances 1 1.00 1.00 1.00 1.00 1 1.44 2.31 1.00 Multiple Inheritance 1 1.26 1.16 0.95 0.99 1 1.04 1.75 0.99 Depth of Inheritance 1 0.99 0.98 0.96 0.98 1 0.94 1.33 0.98 Width of Inheritance 1 1.26 1.16 0.95 0.99 1 0.97 1.61 0.99 Number of Parents 1 1.70 1.26 1.20 0.96 1 0.87 1.55 0.99 Number of Methods 1 1.26 1.19 1.03 0.96 1 1.21 2.09 1.00 Class Coupling 9.0 11.01 10.57 14.14 9.31 9.0 11.18 18.57 8.86 Aggregate Change (Vi ) Extent-of-Change(Vi -V1) 0.0 2.01 1.57 5.14 0.31 0.0 2.18 9.57 -0.14 The extent-of-change measure can be used as an indicator (index) of framework architecture stability. The value of the measure indicates the relative stability of the architecture structure, while 29 Chapter 5 of 5 higher values of the measure are reflective of higher instability in the structure, values closer to zero 29
  • 30. Conclusion • Computer Science is a true science • In order to have measurable results you have to choose hypotheses which can actually be measured. • Remember falsifiability tests! • Measure your own progress, by evaluating your approach Benjamin Heitmann: The Scientific Method in Software Evaluation 30 30
  • 31. References: Denning, Is Computer Science Science? : http://cs.gmu.edu/cne/pjd/PUBS/ CACMcols/cacmApr05.pdf Dodig-Crnkovic, Scientific Methods in Computer Science: http:// www.mrtc.mdh.se/publications/0446.pdf Tichy, Should Computer Scientists Experiment More? : http:// ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=675631 Leist, Zellner, Evaluation of Current Architecture Frameworks : http:// portal.acm.org/citation.cfm?id=1141635 Bansiya, Evaluating Framework Architecture Structural Stability: http:// portal.acm.org/citation.cfm?doid=351936.351954 Brown, Wallnau, A Framework for Evaluating Software Technology: http:// ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=536457 Benjamin Heitmann: The Scientific Method in Software Evaluation 31