Abstract
In the Future Internet era, the way software will be produced and used will more and more depend on the new challenges deriving from the virtually infinite number of software services that can be composed to build new applications. The integration and composition of existing software, components and services is now gaining a crucial role in the software modeling and production and encompasses several aspects ranging from theoretical issues like modeling and analysis, to practical and implementation ones like run-time management and integration. In the wide set of issues concerning software composition, in this position paper we propose a formalization via a Fuzzy Description Logic for modeling architectural aspects of a software system.
The formalism models architectural patterns and non-functional requirements about quality attributes where both the relationships among patterns and the set non-functional requirements are modelled together with their mutual interactions. The declarative approach proposed here would make possible to formally represent and maintain the above mentioned knowledge by keeping the flexibility and fuzziness of modeling thanks to the use of fuzzy concepts as high, low, fair, etc. We also identify the need for a reasoning task able to exploit the fuzzy nature of the adopted logic to retrieve a ranked list of set of patterns covering given user requirements represented in terms of NFRs and families of patterns.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
In this case we do not have a high maintainability as the system adapts its configuration to context (or requirements) variations. At the same time the maintainability is not low as it has its own internal logic.
References
Ameller, D., Franch, X., Cabot, J.: Dealing with non-functional requirements in model-driven development. In: 2010 18th IEEE International Requirements Engineering Conference (RE), pp. 189–198. IEEE (2010)
Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F. (eds.): The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge University Press, Cambridge (2003)
Baresi, L., Caporuscio, M., Ghezzi, C., Guinea, S.: Model-driven management of services. In: 2010 IEEE 8th European Conference on Web Services (ECOWS), pp. 147–154. IEEE (2010)
Botella, P., Burgues, X., Franch, X., Huerta, M., Salazar, G.: Modeling non-functional requirements. In: Proceedings of Jornadas de Ingenieria de Requisitos Aplicada JIRA (2001)
Buschmann, F., Henney, K., Schmidt, D.C.: Pattern-Oriented Software Architecture: A Pattern Language for Distributed Computing, vol. 4 (2007)
Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture: A System of Patterns. John Wiley & Sons Inc, New York, NY, USA (1996)
Caporuscio, M., Mirandola, R., Trubiani, C.: Qos-based feedback for service compositions. In: Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures, pp. 37–42. ACM (2015)
Chung, L., do Prado Leite, J.C.S.: On non-functional requirements in software engineering. In: Borgida, A.T., Chaudhri, V.K., Giorgini, P., Yu, E.S. (eds.) Conceptual Modeling: Foundations and Applications. LNCS, vol. 5600, pp. 363–379. Springer, Heidelberg (2009)
Egyed, A., Grunbacher, P.: Identifying requirements conflicts and cooperation: how quality attributes and automated traceability can help. IEEE Softw. 21(6), 50–58 (2004)
Franch, X.: Systematic formulation of non-functional characteristics of software. In: 1998 Third International Conference on Requirements Engineering, pp. 174–181. IEEE (1998)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Pearson Education, Massachusetts (1994)
Glinz, M.: On non-functional requirements. In: 15th IEEE International Requirements Engineering Conference, RE 2007, pp. 21–26. IEEE (2007)
Harrison, N.B., Avgeriou, P.: How do architecture patterns and tactics interact? a model and annotation. J. Syst. Softw. 83(10), 1735–1758 (2010)
Issarny, V., Georgantas, N., Hachem, S., Zarras, A., Vassiliadist, P., Autili, M., Gerosa, M.A., Hamida, A.B.: Service-oriented middleware for the future internet: state of the art and research directions. J. Internet Serv. Appl. 2(1), 23–45 (2011)
Jansen, A., Bosch, J.: Software architecture as a set of architectural design decisions. In: 5th Working IEEE/IFIP Conference on Software Architecture, WICSA 2005, pp. 109–120. IEEE (2005)
Johnson, K., Calinescu, R.: Efficient re-resolution of smt specifications for evolving software architectures. In: Proceedings of the 10th International ACM Sigsoft Conference on Quality of Software Architectures, pp. 93–102. ACM (2014)
Li, F.-L., Horkoff, J., Mylopoulos, J., Liu, L., Borgida, A.: Non-functional requirements revisited. In: iStar, pp. 109–114. Citeseer (2013)
Maiden, N., Lockerbie, J., Zachos, K., Bertolino, A., De Angelis, G., Lonetti, F.: A requirements-led approach for specifying qos-aware service choreographies: an experience report. In: Weerd, I., Salinesi, C. (eds.) REFSQ 2014. LNCS, vol. 8396, pp. 239–253. Springer, Heidelberg (2014)
Mairiza, D., Zowghi, D., Nurmuliani, N.: Managing conflicts among non-functional requirements (2009)
Mikkonen, T.: Formalizing design patterns. In: Proceedings of the 20th International Conference on Software Engineering, pp. 115–124. IEEE Computer Society (1998)
Mylopoulos, J., Chung, L., Nixon, B.: Representing and using nonfunctional requirements: a process-oriented approach. IEEE Trans. Softw. Eng. 18(6), 483–497 (1992)
Straccia, U.: Reasoning within fuzzy description logics. J. Artif. Intell. Res. 14, 137–166 (2001)
Straccia, U.: A fuzzy description logic for the semantic web. In: Sanchez, E., (ed.) Capturing Intelligence: Fuzzy Logic and the Semantic Web, Chapter 4, pp. 73–90. Elsevier (2006)
Straccia, U.: Foundations of Fuzzy Logic and Semantic Web Languages. CRC Studies in Informatics Series. Chapman & Hall, Boca Raton (2013)
Taibi, T., Ngo, D.C.L.: Formal specification of design patterns - a balanced approach. J. Object Tech. 2(4), 127–140 (2003)
Tichy, W.F.: A catalogue of general-purpose software design patterns. In: Proceedings on Technology of Object-Oriented Languages and Systems, TOOLS 23, pp. 330–339. IEEE (1997)
Tofan, D., Galster, M., Avgeriou, P., Schuitema, W.: Past and future of software architectural decisions-a systematic mapping study. Inf. Softw. Tech. 56(8), 850–872 (2014)
Xu, L., Ziv, H., Richardson, D., Liu, Z.: Towards modeling non-functional requirements in software architecture. In: Early Aspects (2005)
Zadeh, L.A.: Fuzzy sets. Inf. Control 8(3), 338–353 (1965)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Di Noia, T., Mongiello, M., Straccia, U. (2015). Fuzzy Description Logics for Component Selection in Software Design. In: Bianculli, D., Calinescu, R., Rumpe, B. (eds) Software Engineering and Formal Methods. SEFM 2015. Lecture Notes in Computer Science(), vol 9509. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-49224-6_19
Download citation
DOI: https://doi.org/10.1007/978-3-662-49224-6_19
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-49223-9
Online ISBN: 978-3-662-49224-6
eBook Packages: Computer ScienceComputer Science (R0)