SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
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

Mais conteúdo relacionado

Mais procurados

Predatory Journals and Publishers
Predatory Journals and PublishersPredatory Journals and Publishers
Predatory Journals and Publishersnaseembanu14
 
Research Methodology lecture-01
Research Methodology lecture-01Research Methodology lecture-01
Research Methodology lecture-01Kishor Ade
 
Unit IV Publication Ethics.ppt
Unit IV Publication Ethics.pptUnit IV Publication Ethics.ppt
Unit IV Publication Ethics.pptnaleeni1
 
Ethics In Research
Ethics In ResearchEthics In Research
Ethics In ResearchGrant Heller
 
Scientific Research And Ethics by Manu Shreshtha
Scientific Research And Ethics by Manu ShreshthaScientific Research And Ethics by Manu Shreshtha
Scientific Research And Ethics by Manu ShreshthaManu Shreshtha
 
Research ethics & scientific misconduct
Research ethics & scientific misconductResearch ethics & scientific misconduct
Research ethics & scientific misconductDr Ghaiath Hussein
 
Database and Research Matrix.pptx
Database and Research Matrix.pptxDatabase and Research Matrix.pptx
Database and Research Matrix.pptxRahulRoshan37
 
Ugc care listed journal
Ugc care listed journalUgc care listed journal
Ugc care listed journalGhanshyam Das
 
Research Methodology
Research MethodologyResearch Methodology
Research MethodologyCHARAK RAY
 
Module_3.pdf
Module_3.pdfModule_3.pdf
Module_3.pdfDorothyJ2
 
Intellectual Honesty and Research Integrity.pptx
Intellectual Honesty and Research Integrity.pptxIntellectual Honesty and Research Integrity.pptx
Intellectual Honesty and Research Integrity.pptxsheelu57
 
Research Metrics
Research Metrics Research Metrics
Research Metrics Naz Torabi
 
Research misconduct an introduction
Research misconduct an introductionResearch misconduct an introduction
Research misconduct an introductionSumit Singh
 
Salami Slicing in Research Publications
Salami Slicing in Research PublicationsSalami Slicing in Research Publications
Salami Slicing in Research Publicationsmntbs1
 
Overview of ORCID for researchers
Overview of ORCID for researchersOverview of ORCID for researchers
Overview of ORCID for researchersORCID, Inc
 
Unit 4 identification of research problem
Unit 4 identification of research problemUnit 4 identification of research problem
Unit 4 identification of research problemAsima shahzadi
 
RMD 100Q Chapter1 cohen ak revised
RMD 100Q Chapter1 cohen ak revisedRMD 100Q Chapter1 cohen ak revised
RMD 100Q Chapter1 cohen ak revisedAnil Kanjee
 

Mais procurados (20)

Predatory Journals and Publishers
Predatory Journals and PublishersPredatory Journals and Publishers
Predatory Journals and Publishers
 
Authorship (Part 1): Who should be the author of a research paper
Authorship (Part 1): Who should be the author of a research paperAuthorship (Part 1): Who should be the author of a research paper
Authorship (Part 1): Who should be the author of a research paper
 
Research Methodology lecture-01
Research Methodology lecture-01Research Methodology lecture-01
Research Methodology lecture-01
 
Unit IV Publication Ethics.ppt
Unit IV Publication Ethics.pptUnit IV Publication Ethics.ppt
Unit IV Publication Ethics.ppt
 
Ethics In Research
Ethics In ResearchEthics In Research
Ethics In Research
 
Scientific Research And Ethics by Manu Shreshtha
Scientific Research And Ethics by Manu ShreshthaScientific Research And Ethics by Manu Shreshtha
Scientific Research And Ethics by Manu Shreshtha
 
Research ethics & scientific misconduct
Research ethics & scientific misconductResearch ethics & scientific misconduct
Research ethics & scientific misconduct
 
Database and Research Matrix.pptx
Database and Research Matrix.pptxDatabase and Research Matrix.pptx
Database and Research Matrix.pptx
 
Scientific misconduct
Scientific misconductScientific misconduct
Scientific misconduct
 
Ugc care listed journal
Ugc care listed journalUgc care listed journal
Ugc care listed journal
 
Research Methodology
Research MethodologyResearch Methodology
Research Methodology
 
Module_3.pdf
Module_3.pdfModule_3.pdf
Module_3.pdf
 
Intellectual Honesty and Research Integrity.pptx
Intellectual Honesty and Research Integrity.pptxIntellectual Honesty and Research Integrity.pptx
Intellectual Honesty and Research Integrity.pptx
 
Challenges in research ethics
Challenges in research ethicsChallenges in research ethics
Challenges in research ethics
 
Research Metrics
Research Metrics Research Metrics
Research Metrics
 
Research misconduct an introduction
Research misconduct an introductionResearch misconduct an introduction
Research misconduct an introduction
 
Salami Slicing in Research Publications
Salami Slicing in Research PublicationsSalami Slicing in Research Publications
Salami Slicing in Research Publications
 
Overview of ORCID for researchers
Overview of ORCID for researchersOverview of ORCID for researchers
Overview of ORCID for researchers
 
Unit 4 identification of research problem
Unit 4 identification of research problemUnit 4 identification of research problem
Unit 4 identification of research problem
 
RMD 100Q Chapter1 cohen ak revised
RMD 100Q Chapter1 cohen ak revisedRMD 100Q Chapter1 cohen ak revised
RMD 100Q Chapter1 cohen ak revised
 

Semelhante a 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
 

Semelhante a 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
 

Mais 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
 

Mais 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...
 

Último

VIP Independent Call Girls in Mumbai 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
VIP Independent Call Girls in Mumbai 🌹 9920725232 ( Call Me ) Mumbai Escorts ...VIP Independent Call Girls in Mumbai 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
VIP Independent Call Girls in Mumbai 🌹 9920725232 ( Call Me ) Mumbai Escorts ...dipikadinghjn ( Why You Choose Us? ) Escorts
 
Call Girls in New Friends Colony Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escort...
Call Girls in New Friends Colony Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escort...Call Girls in New Friends Colony Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escort...
Call Girls in New Friends Colony Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escort...Delhi Call girls
 
VIP Kalyan Call Girls 🌐 9920725232 🌐 Make Your Dreams Come True With Mumbai E...
VIP Kalyan Call Girls 🌐 9920725232 🌐 Make Your Dreams Come True With Mumbai E...VIP Kalyan Call Girls 🌐 9920725232 🌐 Make Your Dreams Come True With Mumbai E...
VIP Kalyan Call Girls 🌐 9920725232 🌐 Make Your Dreams Come True With Mumbai E...roshnidevijkn ( Why You Choose Us? ) Escorts
 
Mira Road Memorable Call Grls Number-9833754194-Bhayandar Speciallty Call Gir...
Mira Road Memorable Call Grls Number-9833754194-Bhayandar Speciallty Call Gir...Mira Road Memorable Call Grls Number-9833754194-Bhayandar Speciallty Call Gir...
Mira Road Memorable Call Grls Number-9833754194-Bhayandar Speciallty Call Gir...priyasharma62062
 
7 tips trading Deriv Accumulator Options
7 tips trading Deriv Accumulator Options7 tips trading Deriv Accumulator Options
7 tips trading Deriv Accumulator OptionsVince Stanzione
 
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
 
Booking open Available Pune Call Girls Shivane 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Shivane  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Shivane  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Shivane 6297143586 Call Hot Indian Gi...Call Girls in Nagpur High Profile
 
VIP Independent Call Girls in Mira Bhayandar 🌹 9920725232 ( Call Me ) Mumbai ...
VIP Independent Call Girls in Mira Bhayandar 🌹 9920725232 ( Call Me ) Mumbai ...VIP Independent Call Girls in Mira Bhayandar 🌹 9920725232 ( Call Me ) Mumbai ...
VIP Independent Call Girls in Mira Bhayandar 🌹 9920725232 ( Call Me ) Mumbai ...dipikadinghjn ( Why You Choose Us? ) Escorts
 
falcon-invoice-discounting-unlocking-prime-investment-opportunities
falcon-invoice-discounting-unlocking-prime-investment-opportunitiesfalcon-invoice-discounting-unlocking-prime-investment-opportunities
falcon-invoice-discounting-unlocking-prime-investment-opportunitiesFalcon Invoice Discounting
 
Top Rated Pune Call Girls Sinhagad Road ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Sinhagad Road ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Sinhagad Road ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Sinhagad Road ⟟ 6297143586 ⟟ Call Me For Genuine S...Call Girls in Nagpur High Profile
 
VIP Independent Call Girls in Bandra West 🌹 9920725232 ( Call Me ) Mumbai Esc...
VIP Independent Call Girls in Bandra West 🌹 9920725232 ( Call Me ) Mumbai Esc...VIP Independent Call Girls in Bandra West 🌹 9920725232 ( Call Me ) Mumbai Esc...
VIP Independent Call Girls in Bandra West 🌹 9920725232 ( Call Me ) Mumbai Esc...dipikadinghjn ( Why You Choose Us? ) Escorts
 
CBD Belapur Expensive Housewife Call Girls Number-📞📞9833754194 No 1 Vipp HIgh...
CBD Belapur Expensive Housewife Call Girls Number-📞📞9833754194 No 1 Vipp HIgh...CBD Belapur Expensive Housewife Call Girls Number-📞📞9833754194 No 1 Vipp HIgh...
CBD Belapur Expensive Housewife Call Girls Number-📞📞9833754194 No 1 Vipp HIgh...priyasharma62062
 
Best VIP Call Girls Morni Hills Just Click Me 6367492432
Best VIP Call Girls Morni Hills Just Click Me 6367492432Best VIP Call Girls Morni Hills Just Click Me 6367492432
Best VIP Call Girls Morni Hills Just Click Me 6367492432motiram463
 
Top Rated Pune Call Girls Shikrapur ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
Top Rated  Pune Call Girls Shikrapur ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...Top Rated  Pune Call Girls Shikrapur ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
Top Rated Pune Call Girls Shikrapur ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...Call Girls in Nagpur High Profile
 
Business Principles, Tools, and Techniques in Participating in Various Types...
Business Principles, Tools, and Techniques  in Participating in Various Types...Business Principles, Tools, and Techniques  in Participating in Various Types...
Business Principles, Tools, and Techniques in Participating in Various Types...jeffreytingson
 
Vasai-Virar High Profile Model Call Girls📞9833754194-Nalasopara Satisfy Call ...
Vasai-Virar High Profile Model Call Girls📞9833754194-Nalasopara Satisfy Call ...Vasai-Virar High Profile Model Call Girls📞9833754194-Nalasopara Satisfy Call ...
Vasai-Virar High Profile Model Call Girls📞9833754194-Nalasopara Satisfy Call ...priyasharma62062
 
VIP Call Girl Service Andheri West ⚡ 9920725232 What It Takes To Be The Best ...
VIP Call Girl Service Andheri West ⚡ 9920725232 What It Takes To Be The Best ...VIP Call Girl Service Andheri West ⚡ 9920725232 What It Takes To Be The Best ...
VIP Call Girl Service Andheri West ⚡ 9920725232 What It Takes To Be The Best ...dipikadinghjn ( Why You Choose Us? ) Escorts
 
call girls in Sant Nagar (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Sant Nagar (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️call girls in Sant Nagar (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Sant Nagar (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
VIP Independent Call Girls in Taloja 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
VIP Independent Call Girls in Taloja 🌹 9920725232 ( Call Me ) Mumbai Escorts ...VIP Independent Call Girls in Taloja 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
VIP Independent Call Girls in Taloja 🌹 9920725232 ( Call Me ) Mumbai Escorts ...dipikadinghjn ( Why You Choose Us? ) Escorts
 

Último (20)

VIP Independent Call Girls in Mumbai 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
VIP Independent Call Girls in Mumbai 🌹 9920725232 ( Call Me ) Mumbai Escorts ...VIP Independent Call Girls in Mumbai 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
VIP Independent Call Girls in Mumbai 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
 
Call Girls in New Friends Colony Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escort...
Call Girls in New Friends Colony Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escort...Call Girls in New Friends Colony Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escort...
Call Girls in New Friends Colony Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escort...
 
VIP Kalyan Call Girls 🌐 9920725232 🌐 Make Your Dreams Come True With Mumbai E...
VIP Kalyan Call Girls 🌐 9920725232 🌐 Make Your Dreams Come True With Mumbai E...VIP Kalyan Call Girls 🌐 9920725232 🌐 Make Your Dreams Come True With Mumbai E...
VIP Kalyan Call Girls 🌐 9920725232 🌐 Make Your Dreams Come True With Mumbai E...
 
Mira Road Memorable Call Grls Number-9833754194-Bhayandar Speciallty Call Gir...
Mira Road Memorable Call Grls Number-9833754194-Bhayandar Speciallty Call Gir...Mira Road Memorable Call Grls Number-9833754194-Bhayandar Speciallty Call Gir...
Mira Road Memorable Call Grls Number-9833754194-Bhayandar Speciallty Call Gir...
 
7 tips trading Deriv Accumulator Options
7 tips trading Deriv Accumulator Options7 tips trading Deriv Accumulator Options
7 tips trading Deriv Accumulator Options
 
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
 
Booking open Available Pune Call Girls Shivane 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Shivane  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Shivane  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Shivane 6297143586 Call Hot Indian Gi...
 
VIP Independent Call Girls in Mira Bhayandar 🌹 9920725232 ( Call Me ) Mumbai ...
VIP Independent Call Girls in Mira Bhayandar 🌹 9920725232 ( Call Me ) Mumbai ...VIP Independent Call Girls in Mira Bhayandar 🌹 9920725232 ( Call Me ) Mumbai ...
VIP Independent Call Girls in Mira Bhayandar 🌹 9920725232 ( Call Me ) Mumbai ...
 
falcon-invoice-discounting-unlocking-prime-investment-opportunities
falcon-invoice-discounting-unlocking-prime-investment-opportunitiesfalcon-invoice-discounting-unlocking-prime-investment-opportunities
falcon-invoice-discounting-unlocking-prime-investment-opportunities
 
Top Rated Pune Call Girls Sinhagad Road ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Sinhagad Road ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Sinhagad Road ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Sinhagad Road ⟟ 6297143586 ⟟ Call Me For Genuine S...
 
VIP Independent Call Girls in Bandra West 🌹 9920725232 ( Call Me ) Mumbai Esc...
VIP Independent Call Girls in Bandra West 🌹 9920725232 ( Call Me ) Mumbai Esc...VIP Independent Call Girls in Bandra West 🌹 9920725232 ( Call Me ) Mumbai Esc...
VIP Independent Call Girls in Bandra West 🌹 9920725232 ( Call Me ) Mumbai Esc...
 
CBD Belapur Expensive Housewife Call Girls Number-📞📞9833754194 No 1 Vipp HIgh...
CBD Belapur Expensive Housewife Call Girls Number-📞📞9833754194 No 1 Vipp HIgh...CBD Belapur Expensive Housewife Call Girls Number-📞📞9833754194 No 1 Vipp HIgh...
CBD Belapur Expensive Housewife Call Girls Number-📞📞9833754194 No 1 Vipp HIgh...
 
Best VIP Call Girls Morni Hills Just Click Me 6367492432
Best VIP Call Girls Morni Hills Just Click Me 6367492432Best VIP Call Girls Morni Hills Just Click Me 6367492432
Best VIP Call Girls Morni Hills Just Click Me 6367492432
 
Top Rated Pune Call Girls Shikrapur ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
Top Rated  Pune Call Girls Shikrapur ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...Top Rated  Pune Call Girls Shikrapur ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
Top Rated Pune Call Girls Shikrapur ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
 
Business Principles, Tools, and Techniques in Participating in Various Types...
Business Principles, Tools, and Techniques  in Participating in Various Types...Business Principles, Tools, and Techniques  in Participating in Various Types...
Business Principles, Tools, and Techniques in Participating in Various Types...
 
Vasai-Virar High Profile Model Call Girls📞9833754194-Nalasopara Satisfy Call ...
Vasai-Virar High Profile Model Call Girls📞9833754194-Nalasopara Satisfy Call ...Vasai-Virar High Profile Model Call Girls📞9833754194-Nalasopara Satisfy Call ...
Vasai-Virar High Profile Model Call Girls📞9833754194-Nalasopara Satisfy Call ...
 
VIP Call Girl Service Andheri West ⚡ 9920725232 What It Takes To Be The Best ...
VIP Call Girl Service Andheri West ⚡ 9920725232 What It Takes To Be The Best ...VIP Call Girl Service Andheri West ⚡ 9920725232 What It Takes To Be The Best ...
VIP Call Girl Service Andheri West ⚡ 9920725232 What It Takes To Be The Best ...
 
call girls in Sant Nagar (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Sant Nagar (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️call girls in Sant Nagar (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Sant Nagar (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
 
VIP Independent Call Girls in Taloja 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
VIP Independent Call Girls in Taloja 🌹 9920725232 ( Call Me ) Mumbai Escorts ...VIP Independent Call Girls in Taloja 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
VIP Independent Call Girls in Taloja 🌹 9920725232 ( Call Me ) Mumbai Escorts ...
 
(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
 

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