1. The scientific method - The world is observed and a model is built based on the simulation (e.g. a simulation model)
2. The engineering method - The current solutions are studied, and changes are proposed, and evaluated
3. The empirical method - A model is proposed and evaluated through empirical studies, eg. case studies or experiments
4. The analytical method - A formal theory is proposed and then compared with empirical observations.
Since SE is a cross-disciplinary subject, researches in SE were very much governed by human behavior when dealing with software development (Wohlin et.al). In this relation, the need to understand the underlying process when performing empirical studies is very important. Wohlin et. al (2000) outlines three major categories of empirical strategies:-
- Survey - normally performed in retrospect, when for instance a tool or technique has been used for a while
- Case Study - are used for monitoring projects, activities or assignments. Data is collected for specific purposes; is an observational study with lower level of controls
- Formal experiment - normally a controlled study done in a lab environment, thus provide high level of control. Subjects are either assigned to different treatment on random basis (true experimentation) or non-random (quasi-experiments)




