Skip to search boxSkip to navigationSkip to main content

A Taxonomy of Functional Security Features and How They Can Be Located

  • Kevin Hermann
    ,
  • Simon Schneider
    ,
  • Catherine Tony
    ,
  • Asli Yardim
    ,
  • ,
  • Thorsten Berger
  • Ruhr University Bochum
    ,
  • TU Hamburg-Harburg
Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Open access

Abstract

Security must be considered in almost every software system. Unfortunately, selecting and implementing security features remains a challenge due to the wide variety of security threats and possible countermeasures. While security standards are intended to help developers, they are usually too abstract and vague to help implementing security features, or they merely help configuring such. A resource that describes security features at an abstraction level that lies between high-level (i.e., rather too general) and low-level (i.e., rather too specific) security standards could facilitate secure systems development. This resource should support the selection of appropriate security features to achieve high-level security goals, allow easy retrieval of relevant low-level details, and provide pointers to suitable ways to realize the security features. To realize security features, developers typically use external security libraries or frameworks, to minimize implementation mistakes. Even when using libraries, developers still make mistakes when writing code to integrate them, often resulting in security vulnerabilities. When security incidents occur or the system needs to be audited or maintained, it is essential to know what security features have been implemented and, more importantly, where they are located. This task, commonly referred to as feature location, is often tedious and error-prone. While dedicated feature location techniques exist, they require significant manual effort or adherence to strict development processes, preventing their use. Therefore, we have to support long-term tracking of implemented security features. We present a study of security features presented in the literature and their coverage in popular security frameworks. We contribute (1) a taxonomy of 68 functional implementation-level security features including a mapping to widely used security standards, (2) an examination of 21 popular security frameworks concerning which of these security features they provide, and (3) a discussion on the representation of security features in source code. Our taxonomy aims to aid developers in selecting appropriate security features and security frameworks, as well as relating them to security standards when they need to choose and implement security features for a software system.

Publication Information

Output type

Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Original language

English

Article number

117

Pages from-to (Number of pages)

Pages 1-57

Journal (Volume, Issue Number)

Empirical Software Engineering (Volume 30)

Publication milestones

  • Published - 09/2025

Publication status

Published - 09/2025

ISSN

1382-3256

Publication IDs

  • ORCID: /0000-0002-2604-0487/work/184914666
  • Scopus: 105006654388

Publication metrics

PlumX, opens in new tab

Citation count
4
Mentions
1
Captures
19