
Beyond 28 composites, the regular decrease is ex-
plained by the fact that, as the requested number of
composites increases, their size decreases until even-
tually each composite contains exactly one primitive.
Our metrics are irrelevant in such a case, which boils
down until you have no composite.
6 CONCLUSION
In this paper, we contribute to address the challenge of
providing the software architect with means to evalu-
ate whether an architecture will yield a secure sys-
tem, without exploitable vulnerabilities. We do so by
proposing metrics rooted in acknowledged guidelines.
This last point is one novelty of our work in compar-
ison to related works. In the end, it appears that the
metrics we propose are different from the ones previ-
ously proposed in the related works. Our focus on the
patterns, guidelines and smells ensures a direct link to
security concerns and intrinsically pinpoints sugges-
tions for improving the architecture, complementing
other previously existing metrics.
We used Xwiki, a large open-source application,
to ensure that an architect can use our metrics to
identify potential security-related weaknesses and im-
provements in her/his architecture, by referring to
the supporting guidelines. Using Bitwarden, another
open-source application, we showed that our metrics
behave well when the architect modifies the architec-
ture composites.
The main threat to validity is the fact that, in our
experiments, we played the role of the architect. We
need to setup a controlled experiment with engineers
to confirm our results. Besides, our reverse engineer-
ing process for Xwiki and Bitwarden is approximate.
Still, our observations and conclusions are drawn on
the recovered architectures, not on the real applica-
tions. Although we believe that, therefore, this limita-
tion of our experiments does not threaten the validity
of our conclusions, it does emphasize that our work
assumes that the architecture model is available.
In this paper, metrics focus on components, and
more specifically composites, which are well suited
to study isolation, compartmentalization, and separa-
tion of functions. In our future work, we plan to fo-
cus on connectors to provide additional metrics. Our
intuition is that metrics on connectors would empha-
size aspects related to redundancy of communication
paths, and therefore availability, resilience and denial
of service prevention.
REFERENCES
Alshammari, B., Fidge, C., and Corney, D. (2009). Security
Metrics for Object-Oriented Class Designs. In Ninth
International Conference on Quality Software.
Casola, V., De Benedictis, A., Rak, M., and Villano, U.
(2020). A novel Security-by-Design methodology:
Modeling and assessing security by SLAs with a
quantitative approach. Journal of Systems and Soft-
ware, 163.
Du, X., Chen, B., Li, Y., Guo, J., Zhou, Y., Liu, Y., and
Jiang, Y. (2019). Leopard: identifying vulnerable
code for vulnerability assessment through program
metrics. In Proceedings of the 41st International Con-
ference on Software Engineering. IEEE Press.
Fernandez-Buglioni, E. (2013). Security Patterns in Prac-
tice: Designing Secure Architectures Using Software
Patterns. Wiley.
Gennari, J. and Garlan, D. (2012). Measuring Attack
Surface in Software Architecture. Technical Report
CMU-ISR-11-121, Carnegie Mellon University.
Herley, C. and van Oorschot, P. C. (2018). Science of Se-
curity: Combining theory and measurement to reflect
the observable. IEEE Security & Privacy, 16(1).
J
¨
urjens, J. (2002). UMLsec: Extending UML for Secure
Systems Development. In UML — The Unified Mod-
eling Language, LNCS. Springer.
Manadhata, P. K. and Wing, J. M. (2011). An Attack Sur-
face Metric. IEEE Transactions on Software Engi-
neering, 37(3).
NIST (2020). Security and Privacy Controls for Information
Systems and Organizations.
Rak, M. (2017). Security Assurance of (Multi-)Cloud Ap-
plication with Security SLA Composition. In Green,
Pervasive, and Cloud Computing, LNCS. Springer.
Siavvas, M., Kehagias, D., Tzovaras, D., and Gelenbe, E.
(2021). A hierarchical model for quantifying software
security based on static analysis alerts and software
metrics. Software Quality Journal, 29(2).
Skandylas, C., Khakpour, N., and C
´
amara, J. (2022). Secu-
rity Countermeasure Selection for Component-Based
Software-Intensive Systems. In IEEE 22nd Interna-
tional Conference on Software Quality, Reliability and
Security (QRS).
Sommerville, I. (2016). Software Engineering. Pearson,
10th edition edition.
Wagner, S., Goeb, A., Heinemann, L., Kl
¨
as, M., Lampa-
sona, C., Lochmann, K., Mayr, A., Pl
¨
osch, R., Seidl,
A., Streit, J., and Trendowicz, A. (2015). Oper-
ationalised product quality models and assessment:
The Quamoco approach. Information and Software
Technology, 62.
Waidner, M., Backes, M., and M
¨
uller-Quade, J. (2014). De-
velopment of Secure Software with Security By De-
sign. Technical Report SIT-TR-2014-03, Fraunhofer
Institute for Secure Information Technology.
Yskout, K., Scandariato, R., and Joosen, W. (2015). Do
security patterns really help designers? In Proceed-
ings of the 37th International Conference on Software
Engineering - Volume 1. IEEE Press.
MODELSWARD 2024 - 12th International Conference on Model-Based Software and Systems Engineering
124