0% found this document useful (0 votes)
29 views16 pages

Chapter 2 - Research Methods in CS_New

The document outlines various research methods used in computer science, including analytical and empirical methods, surveys, case studies, controlled experiments, ethnography, and action research. It emphasizes the importance of choosing appropriate methods based on research goals, data availability, scope, and validity threats that may affect study conclusions. Additionally, it discusses strategies for mitigating validity threats to enhance the reliability of research findings.

Uploaded by

kechohaile
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views16 pages

Chapter 2 - Research Methods in CS_New

The document outlines various research methods used in computer science, including analytical and empirical methods, surveys, case studies, controlled experiments, ethnography, and action research. It emphasizes the importance of choosing appropriate methods based on research goals, data availability, scope, and validity threats that may affect study conclusions. Additionally, it discusses strategies for mitigating validity threats to enhance the reliability of research findings.

Uploaded by

kechohaile
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Research Methods

Instructor: Solomon (Ph.D)


Chapter 2: Research Methods in Computer
Science
Overview of Research Methods in CS
• In CS research, a variety of methods are used to explore,
explain, and test hypotheses or phenomena.
• An overview of the common research methods in CS are:
1) Analytical vs. Empirical Methods
▪ Analytical Methods:
− Involve theoretical reasoning, mathematical modeling, or logical
analysis to solve problems, prove concepts, or validate systems.
− Example: Analyzing the quicksort algorithm with 𝑂(𝑛log𝑛) average-
case complexity and 𝑂(𝑛2) worst-case complexity.
▪ Empirical Methods:
− Involve experimentation, observation, or simulation to collect data
and validate hypotheses.
− Example: Comparing the execution time of bubble sort and merge
sort on randomly generated datasets.
Overview of Research Methods in CS …
2) Surveys
− Collect data through questionnaires, interviews, or online forms to study
trends, opinions, or user behaviors.
− Proper sampling, questionnaire design, and statistical analysis are critical
for reliability.
− Example: Identify the most popular programming languages among
developers in 2024.
▪ Method: Distribute an online questionnaire asking respondents about their
preferred languages, usage contexts, and satisfaction levels.
3) Case Studies
− Are in-depth analyses of a particular instance, system, or organization to
explore phenomena or derive insights. These studies provide detailed
insights but can be challenging to generalize.
− Example: Investigate how agile methodologies affect software quality and
team collaboration.
▪ Method: Interviews with team members, observations of daily stand-ups and
sprint reviews, & analysis of software defect rates before and after agile
adoption.
Overview of Research Methods in CS …
4) Controlled Experiments
− Involve manipulating one or more independent variables to observe their
effect on dependent variables while keeping other factors constant.
▪ Example: To compare the accuracy of two classification models.
✓ Independent Variable: Model type (e.g., Random Forest vs. Neural Network).
✓ Dependent Variable: Accuracy, F1 score, or recall.
✓ Control: Using the same training and testing data.

5) Ethnography and Action Research


▪ Ethnography:
− Is a qualitative research method where researchers immerse themselves in a
specific environment or community to understand cultural practices, social
dynamics, and interactions. In CS, it is often used to study user behaviors,
practices, and interactions with technology in real-world contexts.
− Example: A researcher studies how hospital staff use an electronic health record
(EHR) system.
▪ Action Research:
− Is a participatory and iterative research methodology where researchers actively
collaborate with stakeholders to solve practical problems while simultaneously
contributing to theoretical knowledge.
− Example: A researcher collaborates with teachers to create a digital tool for math
Overview of Research Methods in CS …
6) Quantitative, Qualitative, and Mixed Methods
▪ Quantitative Methods:
− Rely on numerical data, statistical analysis, and mathematical models
to measure variables and test hypotheses.
− Example: Collect numerical data about how often users interact with
different app features.
▪ Qualitative Methods:
− Focus on understanding phenomena through non-numerical data,
such as text, interviews, and observations.
− Example: Analyzing developers’ motivations in contributing to open-
source projects.
▪ Mixed Methods:
− Combine both approaches to provide a comprehensive
understanding of the research problem.
− Example: Evaluating the effectiveness of a software tool by analyzing
user logs (quantitative) and conducting interviews (qualitative).
Choosing Research Methods
• Choosing the right research method in Computer Science
depends on the research goals, available data, and the
specific problem being studied.
• The key factors to consider when selecting the research
method are:
1) Research goals
▪ Theoretical Exploration:
− If your goal is to develop new theories or algorithms, analytical methods (e.g.,
mathematical proofs, logical reasoning) are often best suited.
− These methods allow for precise and rigorous conclusions about the
properties of a system or algorithm.
− Example: Proving the computational complexity of a new algorithm.
▪ Practical Problem Solving:
− If you aim to solve a practical, real-world issue (e.g., improving system
performance), empirical methods like controlled experiments or case studies
may be more appropriate.
− They involve testing hypotheses or observing real-world phenomena.
Choosing Research Methods …
2) Data Availability
▪ Quantitative (Numerical) Data:
− If you have access to measurable, numerical data (e.g., log files, system
performance metrics), quantitative methods are often ideal.
− Example: You could evaluate the model’s accuracy, precision, recall, and
F1 score based on a dataset of labeled data.
▪ Qualitative (Descriptive) Data:
− If your data is more descriptive (e.g., interviews, user feedback),
qualitative methods will help in understanding deeper insights,
experiences, and patterns.
− Example: Conducting interviews with users or observing them using the
system, and recording their feedback in a descriptive form.
▪ Mixed Data (Both Numerical and Descriptive):
− In cases where both types of data are available (e.g., user feedback with
usage statistics), mixed methods allow you to combine both to get a
comprehensive understanding of the research question.
− Example: Assess the usability of a web application in terms of speed,
error rates, and user satisfaction.
Choosing Research Methods …
3) Research Scope
▪ Broad Generalizations:
− For research that aims to generalize findings across a wide range of
contexts (e.g., user preferences or technology adoption trends),
surveys or controlled experiments can gather large amounts of data
and provide statistical significance.
− Example: A survey to assess the adoption of machine learning
frameworks across the tech industry.
▪ In-Depth Analysis:
− If the goal is to explore a specific case or instance in great detail, case
studies or ethnography can provide rich, contextual insights.
− Example: Studying the development process of a specific open-
source project like the Linux kernel.
Choosing Research Methods …
4) Iteration and Adaptation
− Continuous Improvement: If your research involves ongoing
improvement or adjustment based on real-time feedback, action
research is a suitable method. It involves cycles of planning,
acting, observing, and reflecting to address specific problems.
▪ Example: Iteratively refining a software development methodology
based on feedback from developers during each sprint.
5) Research Environment
− Controlled Setting: If you want to test a hypothesis in a controlled
environment where you can manipulate variables, controlled
experiments are appropriate. These experiments ensure that the
results are due to the manipulated variables and not external
factors.
▪ Example: Testing the effect of algorithmic optimizations on the
performance of a software system under controlled conditions.
Validity Threats
• Validity threats refer to factors that may undermine the
trustworthiness or accuracy of a research study’s
conclusions.
– These threats are particularly significant in empirical research
methods such as experiments, surveys, and case studies.
– They can affect the internal, external, construct, and conclusion
validity of the study.
• The most common validity threats are:
1) Internal Validity Threats
▪ Confounding Variables:
− An outside factor that affects both the independent and dependent variables,
potentially distorting or biasing the results of an experiment or study. These
variables can lead to incorrect conclusions.
− Example: Measure user satisfaction with different user interface (UI) designs.
▪ Independent Variable: Type of UI design (e.g., minimalistic, complex, modern)
▪ Dependent Variable: User satisfaction (measured on a scale from 1 to 10)
▪ Potential Confounding Variable: The users' prior experience with similar software
Validity Threats …
▪ Selection Bias:
− Occurs when there is a systematic difference between the groups being compared,
leading to inaccurate conclusions.
− Example: If a study on software usability includes participants who are already
familiar with similar software, it may not accurately reflect the general user
population's experience.
▪ History Effect:
− Arises when external events occurring during the study affect participants’
behavior or responses, thereby influencing the results.
− Example: A study examines the effectiveness of a new online learning platform in
improving students’ test scores over six months.
✓ Threat: During the study, a new policy mandates additional tutoring for all students, influencing
their learning outcomes independently of the platform.
✓ Outcome: The observed improvement might be partially due to the tutoring policy, not just the
platform.

2) External Validity Threats


▪ Sampling Bias:
− If the sample is not representative of the broader population, the findings cannot
be generalized.
− Example: A survey on programming language preferences conducted only in a
specific company may not be applicable to the global software industry.
Validity Threats …
▪ Ecological Validity:
− Refers to the extent to which the study’s conditions match real-world
settings. If the research is conducted in an artificial environment, it may not
reflect real-world behavior.
− Example: Testing a new software tool in a laboratory setting might not reflect
how users will interact with it in their daily work environment.

3) Construct Validity Threats


▪ Measurement Errors:
− This occurs when the tools or instruments used to measure variables do not
accurately measure what they are intended to.
− Example: If a usability test measures how quickly a user completes a task but
doesn’t consider the complexity of the task, it might not truly reflect user
experience.
▪ Operationalization Issues:
− When theoretical concepts are defined too loosely or are difficult to measure,
leading to ambiguous or unreliable results.
− Example: Defining "user satisfaction" purely by the number of errors made
during a task, without considering other factors like ease of use or design
aesthetics.
Validity Threats …
4) Conclusion Validity Threats
▪ Type I and Type II Errors:
− Type I Error (False Positive) is rejecting the null hypothesis when it is
actually true, while Type II Error (False Negative) is failing to reject
the null hypothesis when it is actually false.
− Example:
✓ A spam filter flags a legitimate email as spam (Type I) or
✓ A malware detection system fails to recognize a genuine malware attack
(Type II).
▪ Low Statistical Power:
− A study with a small sample size may not have enough power to
detect a real effect, leading to inaccurate conclusions.
− Example: A researcher tests a novel algorithm on a limited dataset
to compare its accuracy with an existing model.
✓ Problem: The dataset includes only 50 samples, leading to high
variability in results.
✓ Impact: The algorithm might appear no better than the baseline, even
though it could perform better on a larger dataset.
Validity Threats …
• Mitigating Validity Threats
▪ Randomization: Helps control for selection bias and confounding
variables, ensuring that results are not skewed by external
factors.
▪ Control Groups: Comparing the experimental group with a
control group can help isolate the effect of the independent
variable.
▪ Longitudinal Studies: Following participants over time can help
mitigate the history effect and provide a more accurate measure
of changes.
▪ Clear Operational Definitions: Ensuring that concepts are clearly
defined and measured consistently enhances construct validity.
• Hence, by understanding and addressing these threats,
researchers can improve the quality and reliability of
their studies.
Thank You!

You might also like