scholarly journals Selecting Empirical Methods for Software Engineering Research

Author(s):  
Steve Easterbrook ◽  
Janice Singer ◽  
Margaret-Anne Storey ◽  
Daniela Damian
2014 ◽  
pp. 1639-1658
Author(s):  
Gonzalo Génova ◽  
Juan Llorens ◽  
Jorge Morato

The classical scientific method has been settled through the last centuries as a cyclic, iterative process of observation, hypothesis formulation, and confirmation/refutation of hypothesis through experimentation. This “experimental scientific method” was mainly developed in the context of natural sciences dealing with the physical world, such as Mechanics, Thermodynamics, Electromagnetism, Chemistry, and so on. But when trying to apply this classical view of the scientific method to the various branches of Computer Science and Computer Engineering, among which Software Engineering, there are two kinds of obstacles. First, Computer Science is rooted both in formal sciences such as Mathematics and experimental sciences such as Physics, and therefore, an excessive emphasis on the experimental side is not appropriate to give a full account of this kind of scientific activity. Second, the production of software systems has to deal not only with the behavior of complex physical systems such as computers, but also with the behavior of complex human systems (developers interacting with stakeholders, for instance, or users interacting with machines) where educational, cultural, sociological, and economical factors are essential. Therefore, empirical methods in their narrow sense, even though valuable in some respects, are rather limited to understand a reality that exceeds the mere physical world. Moreover, neither formal nor empirical methods can provide a full account of scientific activity, which relies on something that is beyond any established method. Qualitative (i.e. meta-methodical) reasoning plays the directive role in scientific activity. In this chapter, the authors claim that acknowledging a plurality of research methods in software engineering will benefit the advancement of this branch of science.


Author(s):  
Gonzalo Génova ◽  
Juan Llorens ◽  
Jorge Morato

The classical scientific method has been settled through the last centuries as a cyclic, iterative process of observation, hypothesis formulation, and confirmation/refutation of hypothesis through experimentation. This “experimental scientific method” was mainly developed in the context of natural sciences dealing with the physical world, such as Mechanics, Thermodynamics, Electromagnetism, Chemistry, and so on. But when trying to apply this classical view of the scientific method to the various branches of Computer Science and Computer Engineering, among which Software Engineering, there are two kinds of obstacles. First, Computer Science is rooted both in formal sciences such as Mathematics and experimental sciences such as Physics, and therefore, an excessive emphasis on the experimental side is not appropriate to give a full account of this kind of scientific activity. Second, the production of software systems has to deal not only with the behavior of complex physical systems such as computers, but also with the behavior of complex human systems (developers interacting with stakeholders, for instance, or users interacting with machines) where educational, cultural, sociological, and economical factors are essential. Therefore, empirical methods in their narrow sense, even though valuable in some respects, are rather limited to understand a reality that exceeds the mere physical world. Moreover, neither formal nor empirical methods can provide a full account of scientific activity, which relies on something that is beyond any established method. Qualitative (i.e. meta-methodical) reasoning plays the directive role in scientific activity. In this chapter, the authors claim that acknowledging a plurality of research methods in software engineering will benefit the advancement of this branch of science.


2019 ◽  
Vol 44 (3) ◽  
pp. 41-42
Author(s):  
Sai Anirudh Karre ◽  
Lalit Mohan ◽  
Y. Raghu Raghu Reddy ◽  
K.V. Raghavan ◽  
R.D. Naik ◽  
...  

Proceedings ◽  
2021 ◽  
Vol 74 (1) ◽  
pp. 13
Author(s):  
Hatice Koç ◽  
Ali Mert Erdoğan ◽  
Yousef Barjakly ◽  
Serhat Peker

Software engineering is a discipline utilizing Unified Modelling Language (UML) diagrams, which are accepted as a standard to depict object-oriented design models. UML diagrams make it easier to identify the requirements and scopes of systems and applications by providing visual models. In this manner, this study aims to systematically review the literature on UML diagram utilization in software engineering research. A comprehensive review was conducted over the last two decades, spanning from 2000 to 2019. Among several papers, 128 were selected and examined. The main findings showed that UML diagrams were mostly used for the purpose of design and modeling, and class diagrams were the most commonly used ones.


Sign in / Sign up

Export Citation Format

Share Document