This chapter seeks to support software engineering (SE) researchers and educators in teaching the importance of theory as well as the theorizing process. Drawing on insights from other fields, the chapter presents 12 intermediate products of theorizing and what they mean in an SE context. These intermediate products serve different roles: some are theory products to frame research studies, some are theory generators, and others are components of theory. Whereas the SE domain doesn't have many theories of its own, these intermediate products of theorizing can be found widely. The chapter aims to help readers to recognize these intermediate products, their role, and how they can help in the theorizing process within SE research. To illustrate their utility, the chapter then applies the set of intermediate theorizing products to the software architecture research field. The chapter ends with a suggested structure for a 12-week course on theorizing in SE which can be readily adapted by educators.
翻译:本章旨在帮助软件工程(SE)研究人员和教育者理解理论的重要性,并掌握理论化的过程。借鉴其他领域的见解,本章提出了理论化的12种中间产物及其在软件工程背景下的含义。这些中间产物扮演着不同角色:有些是用于构建研究框架的理论产物,有些是理论生成器,而其他则是理论的组成部分。尽管软件工程领域自身理论不多,但这些理论化的中间产物却广泛存在。本章旨在帮助读者识别这些中间产物、理解其作用,以及它们如何在软件工程研究的理论化过程中提供帮助。为说明其实用性,本章随后将这套理论化中间产物应用于软件架构研究领域。最后,本章为软件工程理论化课程提供了一个可被教育工作者直接采用的12周教学结构建议。