Empirical software engineering

For the journal, see Empirical Software Engineering.

Empirical software engineering (ESE)[1] is a subfield of software engineering (SE) research that uses empirical research methods to study and evaluate an SE phenomenon of interest. The phenomenon may refer to software development tools/technology, practices, processes, policies, or other human and organizational aspects.

ESE has roots in experimental software engineering, but as the field has matured the need and acceptance for both quantitative and qualitative research has grown.[2] Today, common research methods used in ESE for primary and secondary research are the following:[3]

* Primary research (experimentation, case study research, survey research, simulations in particular software Process simulation)
* Secondary research methods (Systematic reviews, Systematic mapping studies, rapid reviews, tertiary review)

## Teaching empirical software engineering

[edit]

Some comprehensive books[1][4] for students, professionals and researchers interested in ESE are available.

## Research community

[edit]

Journals, conferences, and communities devoted specifically to ESE:

* Empirical Software Engineering: An International Journal
* International Symposium on Empirical Software Engineering and Measurement
* International Software Engineering Research Network (ISERN)

## References

[edit]

1. ^ a b Guide to advanced empirical software engineering. New York: Springer. 2008. ISBN 978-1-84800-043-8.
2. ^ Ali, Nauman bin (8 September 2016). "Is effectiveness sufficient to choose an intervention?". Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement. pp. 1–6. doi:10.1145/2961111.2962631. ISBN 9781450344272. S2CID 3208211.
3. ^ Wohlin, Claes; Aurum, Aybüke (December 2015). "Towards a decision-making structure for selecting a research design in empirical software engineering". Empirical Software Engineering. 20 (6): 1427–1455. doi:10.1007/s10664-014-9319-7. S2CID 254463421.
4. ^ Felderer, Michael; Travassos, Guilherme Horta (2020). Contemporary empirical methods in software engineering. Cham, Switzerland. ISBN 978-3-030-32488-9.`{{cite book}}`: CS1 maint: location missing publisher (link)

* v
* t
* e

Software engineering

Fields|

* Computer programming
* DevOps
* Empirical software engineering
* Experimental software engineering
* Formal methods
* Requirements engineering
* Search-based software engineering
* Site reliability engineering
* Social software engineering
* Software deployment
* Software design
* Software maintenance
* Software testing
* Systems analysis

Concepts|

* Abstraction
* Component-based software engineering
* Software compatibility
* Backward compatibility
* Compatibility layer
* Compatibility mode
* Forward compatibility
* Software incompatibility
* Data modeling
* Enterprise architecture
* Functional specification
* Modeling language
* Programming paradigm
* Software
* Software archaeology
* Software architecture
* Software configuration management
* Software development process/methodology
* Software quality
* Software quality assurance
* Software verification and validation
* Software system
* Structured analysis
* Essential analysis
* CI/CD

Orientations|

* Agile
* Aspect-oriented
* Object orientation
* Ontology
* Service orientation
* SDLC

Models|

| Developmental|

* Agile
* EUP
* Executable UML
* Incremental model
* Iterative model
* Prototype model
* RAD
* UP
* Scrum
* Spiral model
* V-model
* Waterfall model
* XP
* Model-driven engineering
* Round-trip engineering

|

Other|

* SPICE
* CMMI
* Data model
* ER model
* Function model
* Information model
* Metamodeling
* Object model
* Systems model
* View model

Languages|

* IDEF
* UML
* USL
* SysML

Related fields|

* Computer science
* Computer engineering
* Information science
* Project management
* Risk management
* Systems engineering

* Commons
* Category

*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template