<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>IS-EUD</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>for Guiding Privacy Design Pattern Selection in Software Development</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Giuseppe Desolda</string-name>
          <email>giuseppe.desolda@uniba.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Andrea Esposito</string-name>
          <email>andrea.esposito@uniba.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Francesco Greco</string-name>
          <email>francesco.greco@uniba.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Rosa Lanzilotti</string-name>
          <email>rosa.lanzilotti@uniba.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marco Saltarella</string-name>
          <email>marco.saltarella@finconsgroup.com</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Computer Science Department, University of Bari Aldo Moro</institution>
          ,
          <addr-line>Via E. Orabona 4, 70125 Bari (BA)</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>FINCONS S.p.A.</institution>
          ,
          <addr-line>Via Orfeo Mazzitelli, 258/E, 70124 Bari (BA)</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2023</year>
      </pub-date>
      <volume>9</volume>
      <fpage>6</fpage>
      <lpage>8</lpage>
      <abstract>
        <p>As software production evolves, privacy is becoming an increasingly important consideration. This is especially true as national and supranational regulations, such as GDPR, require privacy as a mandatory aspect of software development. However, challenges such as a lack of knowledge about privacy and data protection regulations by developers hinder the adoption of efective privacy implementation mechanisms. To address this issue, this paper presents MATERIALIST, a Web platform designed to assist developers in using proper privacy design patterns during software development. The main focus is to suggest privacy design patterns starting from GDPR requirements, code vulnerabilities, or software lifecycle phases, providing a practical solution that developers can apply in their work. MATERIALIST aims to facilitate the adoption of appropriate privacy implementation mechanisms in the software development lifecycle, thereby improving software quality.</p>
      </abstract>
      <kwd-group>
        <kwd>Development</kwd>
        <kwd>Privacy design patterns</kwd>
        <kwd>GDPR</kwd>
        <kwd>ISO 9241-210</kwd>
        <kwd>code vulnerabilities</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Although privacy is a critical aspect of software systems and is required by privacy regulations
such as the European Union’s General Data Protection Regulation (GDPR), several factors
limit its proper implementation. Firstly, designers and developers have diferent views on
privacy, leading to diferent approaches and solutions [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Secondly, privacy regulations only
provide legal guidance without specific technical instructions for developers. Thirdly, although
privacy regulations require user involvement, there is a lack of user-centric implementations [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
Finally, developers and engineers often lack privacy and security skills, leading to vulnerable
and insecure privacy solutions [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Thus, there is a need for more appropriate methodologies to
integrate privacy aspects into the software development process without ambiguity and from
      </p>
      <p>This paper presents a web platform, called MATERIALIST (Mapping dATa rEgulation
softwaRe lIfecycle And vuLnerabilitIeS paTterns) whose aim is to assist developers, designers, and
nEvelop-O
CEUR
engineers in integrating privacy aspects during software development. This platform can be
considered a CASE (Computer-Aided Software Engineering) tool, i.e., software used to facilitate
and support Software Engineering processes, such as UML tools, process modeling tools, project
management tools, documentation tools, IDEs, and compilers. It guides the selection of privacy
design patterns (PDPs) from three starting points: GDPR articles, phases of the ISO 9241-210
software development lifecycle, and vulnerabilities discovered during static code analysis. The
ifrst two entry points allow the incorporation of PDPs at the beginning of the development
process (forward engineering), while the third entry point supports the re-engineering of
software systems (backward engineering). This platform provides PDPs at both architectural and
user interface levels to make the adoption of selected PDPs more concrete. In the following, we
report on the details of MATERIALIST.</p>
    </sec>
    <sec id="sec-2">
      <title>2. The MATERIALIST Platform</title>
      <p>
        This platform implements a framework called MATERIALIST [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], designed by some authors of
this paper. The heart of this framework is a collection of 72 privacy design patterns found on
privacypatterns.org. To make the adoption of these patterns more practical, we extended them
with new architectural and user interface patterns that help developers and designers create
privacy-related code and interfaces more clearly and unambiguously. Throughout the paper,
we refer to the extended set of privacy design patterns as PDPs for simplicity. The idea is to
use these PDPs to guide stakeholders in selecting privacy solutions from three diferent entry
points: GDPR articles, ISO 9241-210 phases, and privacy vulnerabilities found during static code
analysis. The use of PDPs addresses two of the issues mentioned in the introduction – difering
views on privacy and a lack of privacy and security knowledge.
      </p>
      <p>PDPs provide a standardized language for privacy and ofer robust and practical solutions
created by privacy experts. The MATERIALIST framework considers the GDPR and ISO
9241210 because they are the main privacy regulation and human-centered software development
process in the EU, respectively. Using these standards mitigates the issues of non-compliance
and non-user-centric implementations. We also use the OWASP Top 10 2021, de-facto standard,
to identify vulnerabilities. One unique aspect of this framework is the ability to traverse between
entry points using privacy patterns, allowing stakeholders to easily identify PDPs that apply to
diferent phases of development or specific vulnerabilities. In forward engineering, PDPs are
proposed to comply with GDPR articles, as well as for each ISO 9241-210 phase; in backward
engineering, PDPs are proposed for each vulnerability found during the static analysis of existing
code.</p>
      <p>
        To guide stakeholders in selecting the right PDPs for GDPR compliance, the authors of [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]
systematically mapped the 72 privacy patterns and the GDPR articles. Two researchers, who
are experts in both GDPR and PDPs, independently conducted the mapping phase, which took
around 40 hours each. To increase robustness and reduce biases, the mapping was performed
starting from each PDP towards the GDPR articles and vice versa. The researchers then
compared their results and reached full agreement on the remaining mappings, resulting in
diferent relationships between each privacy pattern and 14 diferent articles of the GDPR. The
mapping result is reported as a Web page available at http://90.147.170.155/mapping.html.
      </p>
      <p>
        The mapping between vulnerabilities and PDPs aligns with the study reported by Baldassarre
et al. [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. We performed the same mapping but considered the updated OWASP Top 10 2021
instead of the OWASP Top 10 2017 used in the existing mapping. The mapping is achieved by
ifrst associating the vulnerabilities with the Privacy by Design (PbD) principles, which are then
mapped with privacy design strategy, and finally with the PDPs.
      </p>
      <p>
        Finally, a mapping between the ISO 9241-210 process phases and each PDP is also performed
to identify when stakeholders should consider implementing a particular pattern during the
development process [
        <xref ref-type="bibr" rid="ref6 ref7">6, 7</xref>
        ]. This helps ensure that security is considered a process throughout
the whole software development life cycle (SDLC). The ISO 9241-210 process is iterative and
divided into five phases, and the mapping helps to identify which PDPs should be implemented
during each phase. This helps to ease the secure implementation of the system.
      </p>
      <p>All the resulting PDPs and the above-mentioned mappings have been implemented in a web
platform that simplifies the selection of appropriate PDPs in the software development lifecycle,
thereby improving software quality. The design of the platform followed a Human-Centered
Design process. The requirements were collected during an elicitation study performed in the
forms of interviews and involving 3 project managers, 1 analyst, and 5 developers. The resulting
requirements drove the design of the web platform, which was then evaluated during a user
test. This paper focuses on the details of the platform while further details of the HCD process
and of all the mappings will be reported in a longer version of this study and presented during
the workshop.</p>
      <p>The platform comprises two principal sections: the Knowledge Base section and the Project
section. The former allows users to explore the various entry points of the framework and their
corresponding mappings. The latter allows users to select and track the PDPs to be implemented
and provides an overview of each phase of the ISO 9241-210 lifecycle and the GDPR articles
to which the implementation of the PDPs corresponds. Additionally, an example project is
available to each user to familiarize them with the platform’s functionalities.</p>
      <p>When a new project is created, the user is prompted to complete a questionnaire to assist
them in selecting the PDPs to be implemented based on the requirements of the software being
analyzed, as shown in Figure 1. After completing the questionnaire, the user is presented with
an overview tab on the left side displaying the diferent PDPs tracked in the project and their
implementation details, including the practical application of the patterns (see Figure 2). An
info tooltip explains to the user why a PDP was added to the project, such as a positive response
to a question or manual addition. A “GDPR” tab highlights the GDPR articles covered by the
implementation of each PDP, while the “ISO9241-210” tab indicates the phase in which each
PDP should be considered and implemented. Users can add or remove any PDP to the project
by searching the knowledge base for patterns that match the system requirements.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Conclusion and Future Work</title>
      <p>In this paper, we presented MATERIALIST, a web platform designed to support user-centric,
secure, and privacy-aware software engineering processes both forward and backward. This
tool facilitates the selection of Privacy Design Patterns (PDPs) using diferent starting points,
such as GDPR articles, code vulnerabilities, or ISO 9241-210 phases.</p>
      <p>To enhance the selection of PDP, we are also working on defining intermediate layers that will
help guide PDP selection from any entry point. We are also exploring heuristic and metric-based
approaches to recommend appropriate PDPs based on contextual factors. Furthermore, we
plan to further expand the PDPs catalog by defining architectural patterns and User Interface
patterns for each one to better assist designers and developers during software development
activities such as coding and design.</p>
    </sec>
    <sec id="sec-4">
      <title>Acknowledgments</title>
      <p>This work is partially supported by the co-funding of the European union - Next Generation EU:
NRRP Initiative, Mission 4, Component 2, Investment 1.3 – Partnerships extended to universities,
research centres, companies and research D.D. MUR n. 341 del 5.03.2022 – Next Generation EU
(PE0000014 - ”Security and Rights In the CyberSpace - SERICS” - CUP: H93C22000620001).</p>
      <p>The research of Andrea Esposito is funded by a Ph.D. fellowship within the framework of the
Italian “D.M. n. 352, April 9, 2022”- under the National Recovery and Resilience Plan, Mission 4,
Component 2, Investment 3.3 – Ph.D. Project “Human-Centered Artificial Intelligence (HCAI)
techniques for supporting end users interacting with AI systems”, co-supported by “Eusoft S.r.l.”
(CUP H91I22000410007).</p>
      <p>The research of Francesco Greco is funded by a PhD fellowship within the framework of the
Italian “D.M. n. 352, April 9, 2022”- under the National Recovery and Resilience Plan, Mission 4,
Component 2, Investment 3.3 - PhD Project “Investigating XAI techniques to help user defend
from phishing attacks”, co-supported by “Auriga S.p.A.” (CUP H91I22000410007).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Y.-S.</given-names>
            <surname>Martin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kung</surname>
          </string-name>
          ,
          <article-title>Methods and tools for GDPR compliance through privacy and data protection engineering</article-title>
          , in: 2018
          <source>IEEE European Symposium on Security and Privacy Workshops (EuroS&amp;amp;PW)</source>
          , IEEE,
          <year>2018</year>
          , pp.
          <fpage>108</fpage>
          -
          <lpage>111</lpage>
          . URL: https://doi.org/10.1109/eurospw.
          <year>2018</year>
          .
          <volume>00021</volume>
          . doi:
          <volume>10</volume>
          .1109/eurospw.
          <year>2018</year>
          .
          <volume>00021</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M.</given-names>
            <surname>Sobolewski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mazur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Paliński</surname>
          </string-name>
          ,
          <article-title>Gdpr: A step towards a user-centric internet?</article-title>
          ,
          <source>Intereconomics</source>
          <volume>52</volume>
          (
          <year>2017</year>
          )
          <fpage>207</fpage>
          -
          <lpage>213</lpage>
          . URL: https://doi.org/10.1007/s10272-017-0676-5. doi:
          <volume>10</volume>
          . 1007/s10272- 017- 0676- 5.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>K.</given-names>
            <surname>Hjerppe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Ruohonen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Leppanen</surname>
          </string-name>
          ,
          <article-title>The general data protection regulation: Requirements, architectures, and constraints</article-title>
          , in: 2019 IEEE 27th International Requirements Engineering Conference (RE), IEEE,
          <year>2019</year>
          , pp.
          <fpage>265</fpage>
          -
          <lpage>275</lpage>
          . URL: https://doi.org/10.1109/re.
          <year>2019</year>
          .
          <volume>00036</volume>
          . doi:
          <volume>10</volume>
          . 1109/re.
          <year>2019</year>
          .
          <volume>00036</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>V.</given-names>
            <surname>Barletta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Desolda</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Gigante</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Lanzilotti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Saltarella</surname>
          </string-name>
          ,
          <article-title>From gdpr to privacy design patterns: The materialist framework</article-title>
          ,
          <source>in: Proceedings of the 19th International Conference on Security and Cryptography - Volume</source>
          <volume>1</volume>
          : SECRYPT„ INSTICC, SciTePress,
          <year>2022</year>
          , pp.
          <fpage>642</fpage>
          -
          <lpage>648</lpage>
          . doi:
          <volume>10</volume>
          .5220/0011305900003283.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M. T.</given-names>
            <surname>Baldassarre</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V. S.</given-names>
            <surname>Barletta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Caivano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Scalera</surname>
          </string-name>
          ,
          <article-title>Privacy oriented software development</article-title>
          , in: M.
          <string-name>
            <surname>Piattini</surname>
          </string-name>
          , P. Rupino da Cunha, I. García Rodríguez de Guzmán, R. Pérez-Castillo (Eds.),
          <source>Quality of Information and Communications Technology</source>
          , Springer International Publishing, Cham,
          <year>2019</year>
          , pp.
          <fpage>18</fpage>
          -
          <lpage>32</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>S.</given-names>
            <surname>Alpers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Oberweis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pieper</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Betz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Fritsch</surname>
          </string-name>
          , G. Schiefer,
          <string-name>
            <given-names>M.</given-names>
            <surname>Wagner</surname>
          </string-name>
          ,
          <string-name>
            <surname>PRIVACYAVARE:</surname>
          </string-name>
          <article-title>An approach to manage and distribute privacy settings</article-title>
          ,
          <source>in: 2017 3rd IEEE International Conference on Computer and Communications (ICCC)</source>
          , IEEE,
          <year>2017</year>
          , pp.
          <fpage>1460</fpage>
          -
          <lpage>1468</lpage>
          . doi:
          <volume>10</volume>
          .1109/compcomm.
          <year>2017</year>
          .
          <volume>8322784</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>T.</given-names>
            <surname>Jakobi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Patil</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Randall</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Stevens</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Wulf</surname>
          </string-name>
          ,
          <article-title>It is about what they could do with the data: A user perspective on privacy in smart metering</article-title>
          ,
          <source>ACM Trans. Comput.-Hum. Interact</source>
          .
          <volume>26</volume>
          (
          <year>2019</year>
          ). URL: https://doi.org/10.1145/3281444. doi:
          <volume>10</volume>
          .1145/3281444.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>