Research software engineering requires utilizing specific methods and tools, among those are programming languages and techniques, as well as design concepts and third-party libraries. Therefore, the methods and tools proven vital for the presented research are discussed in this chapter. Section 3.1 lists relevant programming paradigms. Section 3.2 introduces some relevant features of C++, the primary programming language used in this work. Section 3.3 presents the term CBSE whereas Section 3.4 discusses LCSD.