Preprint Open Access

Category Theory Framework for Variability Models with Non-Functional Requirements

Daniel-Jesus Munoz; Dilian Gurov; Monica Pinto; Lidia Fuentes


MARC21 XML Export

<?xml version='1.0' encoding='UTF-8'?>
<record xmlns="http://www.loc.gov/MARC21/slim">
  <leader>00000nam##2200000uu#4500</leader>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Al-Qutaish, R.E.: Quality models in software engineering literature: an analytical and comparative study. Journal of American Science 6(3), 166{175 (2010)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Bak, K., Diskin, Z., Antkiewicz, M., Czarnecki, K., Wasowski, A.: Clafer: unifying class and feature modeling. Software &amp; Systems Modeling 15(3), 811{845 (2016)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Barr, M., Wells, C.: Category theory for computing science. Prentice Hall (1990)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Batory, D., Azanza, M., Saraiva, J.: The objects and arrows of computational design. In: International Conference on Model Driven Engineering Languages and Systems. pp. 1{20. Springer (2008)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Benavides, D., Trinidad, P., Ruiz-Cortés, A.: Automated reasoning on feature models. In: Pastor, O., Falc~ao e Cunha, J. (eds.) Advanced Information Systems Engineering. pp. 491{503. Springer Berlin Heidelberg, Berlin, Heidelberg (2005)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Budiardjo, E.K., Zamzami, E.M., et al.: Feature modeling and variability modeling syntactic notation comparison and mapping. Computer and Communications ('14)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Chen, L., Ali Babar, M., Ali, N.: Variability management in software product lines: A systematic review. In: Proceedings of the 13th International Software Product Line Conference. p. 81{90. SPLC '09, Carnegie Mellon University, USA (2009)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Chohan, A.Z., Bibi, A., Motla, Y.H.: Optimized software product line architecture and feature modeling in improvement of spl. In: 2017 International Conference on Frontiers of Information Technology (FIT). pp. 167{172. IEEE (2017)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Chowdhury, S., Borle, S., Romansky, S., Hindle, A.: Greenscaler: training software energy models with automatic test generation. Empirical Software Engineering 24(4), 1649{1692 (2019)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing cardinality-based feature models and their specialization. Software process 10(1), 7{29 (2005)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">De Moura, L., Bjorner, N.: Z3: An efficient smt solver. In: Int. conference on Tools and Algorithms for the Construction and Analysis of Systems. Springer (2008)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Elliott, C.: Compiling to categories. Proceedings of the ACM on Programming Languages 1(ICFP), 1{27 (2017)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Fraenkel, A.A., Bar-Hillel, Y., Levy, A.: Foundations of set theory. Elsevier (1973)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Gamez, N., Fuentes, L.: Software product line evolution with cardinality-based feature models. In: Int. Conference on Software Reuse. pp. 102{118. Springer (2011)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Glinz, M.: On non-functional requirements. In: 15th IEEE International Requirements Engineering Conference (RE 2007). pp. 21{26. IEEE (2007)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">González-Huerta, J., Insfran, E., Abrah~ao, S., McGregor, J.D.: Non-functional requirements in model-driven software product line engineering. In: Proceedings of the Fourth InternationalWorkshop on Nonfunctional System Properties in Domain Specific Modeling Languages. NFPinDSML '12, NY, USA (2012)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Gurov, D., Ostvold, B.M., Schaefer, I.: A hierarchical variability model for software product lines. In: International Symposium On Leveraging Applications of Formal Methods, Verification and Validation. pp. 181{199. Springer (2011)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Gurrola-Ramos, L., Macías, S., Macias-Diaz, J.: On the isomorphism of injective objects in grothendieck categories. Quaestiones Mathematicae 40(5) (2017)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Hellendoorn, V.J., Sutton, C., Singh, R., Maniatis, P., Bieber, D.: Global relational models of source code. In: Int. Conference on Learning Representations (2019)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Horcas, J.M., Pinto, M., Fuentes, L.: An automatic process for weaving functional quality attributes using a software product line approach. Journal of Systems and Software 112, 78 { 95 (2016)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Jussien, N., Rochart, G., Lorca, X.: Choco: an open source java constraint programming library. In: HAL Archives Ouvertes (2008)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (foda) feasibility study. Tech. rep., Carnegie-Mellon Univ Pittsburgh Pa Software Engineering Inst (1990)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Kiziltoprak, A., Köse, N.Y.: Relational thinking: The bridge between arithmetic and algebra. International Journal of Elementary Education 10(1), 131{145 (2017)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Lambek, J., Scott, P.J.: Introduction to higher-order categorical logic, vol. 7. Cambridge University Press (1988)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Montenegro, J.A., Pinto, M., Fuentes, L.: What do software developers need to know to build secure energy-efficient android applications? IEEE Access (2018)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Müller, J.: Theopogles|a theorem prover based on first-order polynomials and a special knuth-bendix procedure. In: GWAI-87 11th German Workshop on Artificial Intelligence. pp. 241{250. Springer (1987)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Munoz, D.J., Montenegro, J.A., Pinto, M., Fuentes, L.: Energy-aware environments for the development of green applications for cyber{physical systems. Future Generation Computer Systems 91, 536 { 554 (2019)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Munoz, D.J., Oh, J., Pinto, M., Fuentes, L., Batory, D.: Uniform random sampling product configurations of feature models that have numerical features. In: Proceedings of the 23rd International Systems and Software Product Line Conference - Volume A. p. 289{301. Association for Computing Machinery, NY, USA (2019)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Munoz, D.J., Pinto, M., Fuentes, L.: Hadas: analysing quality attributes of software configurations. In: Proceedings of the 23rd International Systems and Software Product Line Conference-Volume B. pp. 13{16 (2019)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Olaechea, R., Stewart, S., Czarnecki, K., Rayside, D.: Modelling and multiobjective optimization of quality attributes in variability-rich software. In: Proceedings of the Fourth International Workshop on Nonfunctional System Properties in Domain Specific Modeling Languages. pp. 1{6 (2012)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Pohl, K., Böckle, G., van Der Linden, F.J.: Software product line engineering: foundations, principles and techniques. Springer Science &amp; Business Media (2005)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Ren, J., Wang, H., Hou, T., Zheng, S., Tang, C.: Federated learning-based computation offloading optimization in edge computing-supported internet of things. IEEE Access 7, 69194{69201 (2019)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Schultz, P., Wisnesky, R.: Algebraic data integration. Journal of Functional Programming 27 (2017)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Siegmund, N., Rosenmüller, M., Kuhlemann, M., Kästner, C., Apel, S., Saake, G.: Spl conqueror: Toward optimization of non-functional properties in software product lines. Software Quality Journal 20(3-4), 487{517 (2012)</subfield>
  </datafield>
  <datafield tag="999" ind1="C" ind2="5">
    <subfield code="x">Taentzer, G., Salay, R., Strüber, D., Chechik, M.: Transformations of software product lines: A generalizing framework based on category theory. In: 20th Int. Conference on Model Driven Engineering Languages and Systems (MODELS) (2017)</subfield>
  </datafield>
  <datafield tag="041" ind1=" " ind2=" ">
    <subfield code="a">eng</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">numerical variability model</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">feature</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">non-functional requirement</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">quality attribute</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">category theory</subfield>
  </datafield>
  <controlfield tag="005">20210702153055.0</controlfield>
  <datafield tag="500" ind1=" " ind2=" ">
    <subfield code="a">Munoz, Pinto and Fuentes work is supported by the European Union's H2020 research and innovation programme under grant agreement DAEMON 101017109, by the projects co-financed by FEDER funds LEIA UMA18-FEDERJA-15, MEDEA RTI2018-099213-B-I00 and Rhea P18-FR-1081 and the PRE2019-087496 grant from the Ministerio de Ciencia e Innovación.</subfield>
  </datafield>
  <controlfield tag="001">4599585</controlfield>
  <datafield tag="711" ind1=" " ind2=" ">
    <subfield code="d">28 June - 02 July 2021</subfield>
    <subfield code="g">CAiSE '21</subfield>
    <subfield code="a">33rd International Conference on Advanced Information Systems Engineering</subfield>
    <subfield code="c">Melbourne, Australia</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">KTH Royal Institute of Technology</subfield>
    <subfield code="0">(orcid)0000-0002-0074-8786</subfield>
    <subfield code="a">Dilian Gurov</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">Universidad de Málaga | ITIS Software</subfield>
    <subfield code="0">(orcid)0000-0002-5376-742X</subfield>
    <subfield code="a">Monica Pinto</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">Universidad de Málaga | ITIS Software</subfield>
    <subfield code="0">(orcid)0000-0002-5677-7156</subfield>
    <subfield code="a">Lidia Fuentes</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">1187332</subfield>
    <subfield code="z">md5:2fef9070853a8f33f7a7d2e60116ef5a</subfield>
    <subfield code="u">https://zenodo.org/record/4599585/files/CAISE_21__Daniel-Jesus_Munoz_.pdf</subfield>
  </datafield>
  <datafield tag="542" ind1=" " ind2=" ">
    <subfield code="l">open</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="y">Conference website</subfield>
    <subfield code="u">https://caise21.org</subfield>
  </datafield>
  <datafield tag="260" ind1=" " ind2=" ">
    <subfield code="c">2021-03-11</subfield>
  </datafield>
  <datafield tag="909" ind1="C" ind2="O">
    <subfield code="p">openaire</subfield>
    <subfield code="p">user-h2020daemon</subfield>
    <subfield code="o">oai:zenodo.org:4599585</subfield>
  </datafield>
  <datafield tag="100" ind1=" " ind2=" ">
    <subfield code="u">Universidad de Málaga | ITIS Software</subfield>
    <subfield code="0">(orcid)0000-0002-1398-9423</subfield>
    <subfield code="a">Daniel-Jesus Munoz</subfield>
  </datafield>
  <datafield tag="245" ind1=" " ind2=" ">
    <subfield code="a">Category Theory Framework for Variability Models with Non-Functional Requirements</subfield>
  </datafield>
  <datafield tag="980" ind1=" " ind2=" ">
    <subfield code="a">user-h2020daemon</subfield>
  </datafield>
  <datafield tag="536" ind1=" " ind2=" ">
    <subfield code="c">101017109</subfield>
    <subfield code="a">Network intelligence for aDAptive and sElf-Learning MObile Networks</subfield>
  </datafield>
  <datafield tag="540" ind1=" " ind2=" ">
    <subfield code="u">https://creativecommons.org/licenses/by/4.0/legalcode</subfield>
    <subfield code="a">Creative Commons Attribution 4.0 International</subfield>
  </datafield>
  <datafield tag="650" ind1="1" ind2="7">
    <subfield code="a">cc-by</subfield>
    <subfield code="2">opendefinition.org</subfield>
  </datafield>
  <datafield tag="520" ind1=" " ind2=" ">
    <subfield code="a">&lt;p&gt;&lt;strong&gt;This is a pre-print, please access and cite the published version:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://doi.org/10.1007/978-3-030-79382-1_24"&gt;https://doi.org/10.1007/978-3-030-79382-1_24&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Software Product Lines&lt;/em&gt; (SPLs) make use of &lt;em&gt;Variability Models&lt;/em&gt; (VMs) as an input to automated reasoners, which are mainly used to generate optimal product configurations according to certain &lt;em&gt;Quality Attributes&lt;/em&gt; (QAs). However, VMs and more specifically those including numerical features (i.e., NVMs), do not natively support QAs, and consequently, neither do automated reasoners commonly used in variability resolution. However, those satisfiability and optimisation problems have been covered and refined in other relational models such as databases.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Category Theory&lt;/em&gt; (CT) is an abstract mathematical theory typically used to capture the common aspects of seemingly dissimilar algebraic structures. We propose a unified relational modelling framework subsuming the structured objects of VMs and QAs and their relationships into algebraic categories. This abstraction allows a combination of automated reasoners over different domains to analyse SPLs. The solutions optimisation can now be natively performed by a combination of automated theorem proving, hashing, balanced-trees and chasing algorithms. We validate this approach by means of the edge computing SPL tool HADAS.&lt;/p&gt;</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="n">doi</subfield>
    <subfield code="i">isPreviousVersionOf</subfield>
    <subfield code="a">10.1007/978-3-030-79382-1_24</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="n">doi</subfield>
    <subfield code="i">isVersionOf</subfield>
    <subfield code="a">10.5281/zenodo.4599584</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="g">397--413</subfield>
    <subfield code="b">Springer International Publishing</subfield>
    <subfield code="a">Cham</subfield>
    <subfield code="z">978-3-030-79382-1</subfield>
    <subfield code="t">Advanced Information Systems Engineering</subfield>
  </datafield>
  <datafield tag="024" ind1=" " ind2=" ">
    <subfield code="a">10.5281/zenodo.4599585</subfield>
    <subfield code="2">doi</subfield>
  </datafield>
  <datafield tag="980" ind1=" " ind2=" ">
    <subfield code="a">publication</subfield>
    <subfield code="b">preprint</subfield>
  </datafield>
</record>
178
142
views
downloads
All versions This version
Views 178178
Downloads 142142
Data volume 168.6 MB168.6 MB
Unique views 153153
Unique downloads 137137

Share

Cite as