@article{Gregor2006, abstract = {The aim of this research essay is to examine the structural nature of theory in Information Systems. Despite the importance of theory, questions relating to its form and structure are neglected in comparison with questions relating to epistemology. The essay addresses issues of causality, explanation, prediction, and generalization that underlie an understanding of theory. A taxonomy is proposed that classifies information systems theories with respect to the manner in which four central goals are addressed: analysis, explanation, prediction, and prescription. Five interrelated types of theory are distinguished: (1) theory for analyzing, (2) theory for explaining, (3) theory for predicting, (4) theory for explaining and predicting, and (5) theory for design and action. Examples illustrate the nature of each theory type. The applicability of the taxonomy is demonstrated by classifying a sample of journal articles. The paper contributes by showing that multiple views of theory exist and by exposing the assumptions underlying different viewpoints. In addition, it is suggested that the type of theory under development can influence the choice of an epistemological approach. Support is given for the legitimacy and value of each theory type. The building of integrated bodies of theory that encompass all theory types is advocated.}, author = {Gregor, Shirley}, doi = {10.2307/25148742}, issn = {02767783}, journal = {MIS Quarterly}, keywords = {Causality,Design science,Design theory,Explanation,Generalization,Information systems discipline,Interpretivist theory,Philosophy of science,Philosophy of social sciences,Prediction,Theory,Theory structure,Theory taxonomy}, number = {3}, pages = {611}, title = {{The Nature of Theory in Information Systems}}, volume = {30}, year = {2006} } @article{Johnson2012, author = {Johnson, Pontus and Ekstedt, Mathias and Jacobson, Ivar}, doi = {10.1109/MS.2012.127}, issn = {0740-7459}, journal = {IEEE Software}, keywords = {engineering,explanation,prediction,science,software engineering theory,theory}, month = {sep}, number = {5}, pages = {96--96}, publisher = {IEEE}, title = {{Where's the Theory for Software Engineering?}}, volume = {29}, year = {2012} } @article{Langley1999, abstract = {In this article I describe and compare a number of alternative generic strategies for the analysis oi process data, looking at the consequences oi these strategies ior emerging theories. I evaluate the strengths and weaknesses of the strategies in terms oi their capacity to generate theory that is accurate, porsimonious. general, and useful and suggest that method and theory are inextricably intertwined, that multiple strategies are oiten advisable, and that no analysis strategy will produce theory without an uncodiiiable creative leap, however small. Finally, I argue that there is room in the organizational research literature ior more openness within the academic community toward a variety of iorms oi coupling between theory and data.}, author = {Langley, Ann}, doi = {10.2307/259349}, issn = {03637425}, journal = {The Academy of Management Review}, month = {oct}, number = {4}, pages = {691}, title = {{Strategies for Theorizing from Process Data}}, volume = {24}, year = {1999} } @inproceedings{Ralph2015, abstract = {A process theory is an explanation of how an entity changes and develops. While software engineering is fundamentally concerned with how software artifacts change and develop, little research explicitly builds and empirically evaluates software engineering process theories. This lack of theory obstructs scientific consensus by focusing the academic community on methods. Methods inevitably oversimplify and over-rationalize reality, obfuscating crucial phenomena including uncertainty, problem framing and illusory requirements. Better process theories are therefore needed to ground software engineering in empirical reality. However, poor understanding of process theory issues impedes research and publication. This paper therefore attempts to clarify the nature and types of process theories, explore their development and provide specific guidance for their empirically evaluation.}, author = {Ralph, Paul}, booktitle = {2015 IEEE/ACM 37th IEEE International Conference on Software Engineering}, doi = {10.1109/ICSE.2015.25}, isbn = {978-1-4799-1934-5}, issn = {02705257}, keywords = {Case study,Field study,Process theory,Questionnaire,Research methodology}, month = {may}, pages = {20--31}, publisher = {IEEE}, title = {{Developing and Evaluating Software Engineering Process Theories}}, volume = {1}, year = {2015} } @inproceedings{Stol2013, abstract = {There has been a growing interest in the role of theory within Software Engineering (SE) research. For several decades, researchers within the SE research community have argued that, to become a real engineering science, SE needs to develop stronger theoretical foundations. A few authors have proposed guidelines for constructing theories, building on insights from other disciplines. However, so far, much SE research is not guided by explicit theory, nor does it produce explicit theory. In this paper we argue that SE research does, in fact, show traces of theory, which we call theory fragments. We have adapted an analytical framework from the social sciences, named the Validity Network Schema (VNS), that we use to illustrate the role of theorizing in SE research. We illustrate the use of this framework by dissecting three well known research papers, each of which has had significant impact on their respective subdisciplines. We conclude this paper by outlining a number of implications for future SE research, and show how by increasing awareness and training, development of SE theories can be improved. {\textcopyright} 2013 IEEE.}, author = {Stol, Klaas-Jan and Fitzgerald, Brian}, booktitle = {2013 2nd SEMAT Workshop on a General Theory of Software Engineering (GTSE)}, doi = {10.1109/GTSE.2013.6613863}, isbn = {978-1-4673-6273-3}, keywords = {Software engineering research,empirical research,middle-range theory,theory building,theory fragment}, month = {may}, pages = {5--14}, publisher = {IEEE}, title = {{Uncovering theories in software engineering}}, year = {2013} }