Abstract
Design Patterns constitute an effective way to model design knowledge for future reuse. There has been much research on topics such as object-oriented patterns, architectural styles, requirements patterns, security patterns, and more. Typically, such patterns are specified informally in natural language, and it is up to designers to determine if a pattern is applicable to a problem-at-hand, and what solution that pattern offers. Of course, this activity does not scale well, either with respect to a growing pattern library or a growing problem. In this work, we propose to formalize such patterns in a formal modeling language, thereby automating pattern matching for a given problem. The patterns and the problem are formalized in a description logic. Our proposed framework is evaluated with a case study involving Security & Dependability patterns specified in Tropos SI*. The paper presents the formalization of all concepts in SI* and the modeling of problems using OWL-\({\mathcal{DL}}\) and SWRL. We then encode patterns as SPARQL and SQWRL queries. To evaluate the scalability of our approach, we present experimental results using models inspired by an industrial case study.
Chapter PDF
Similar content being viewed by others
References
Alexander, C., Ishikawa, S., Silverstein, M.: A pattern language. Oxford Press (1977)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Longman Publishing Co., Inc., Reading (1995)
Manolescu, D., Kozaczynski, W., Miller, A., Hogg, J.: The growing divide in the patterns world. IEEE Software 24(4), 61–67 (2007)
Sommerville, I.: Software Engineering, 7th edn. Addison Wesley, Reading (May 2004)
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, New York (2003)
Asnar, Y., Bryl, V., Dalpiaz, F., El-Khoury, P., Felici, M., Halas, H., Krausová, A., Li, K., Riccucci, C., Saidane, A., Séguran, M., Yautsiukhin, A.: Final set of S&D Patterns at Organizational Level. Project Deliverable A1.D3.3, SERENITY Consortium (January 2009)
Horrocks, I., Patel-Schneider, P.F., Boley, H., Tabet, S., Grosof, B., Dean, M.: SWRL: A Semantic Web Rule Language Combining OWL and RuleML (May 2004), http://www.w3.org/Submission/2004/SUBM-SWRL-20040521/
Hanmer, R.: Patterns for Fault Tolerant Software. Wiley, Chichester (2007)
Schumacher, M., Fernandez-Buglioni, E., Hybertson, D., Buschmann, F., Sommerlad, P.: Security Patterns: Integrating Security and Systems Engineering, 1st edn. Wiley, Chichester (2006)
Giorgini, P., Massacci, F., Mylopoulos, J., Zannone, N.: Requirements Engineering for Trust Management: Model, Methodology, and Reasoning. IJIS 5(4), 257–274 (2006)
Asnar, Y., Giorgini, P., Mylopoulos, J.: Goal-driven risk assessment in requirements engineering. REJ, 1–16 (2010)
Prud’hommeaux, E., Seaborne, A.: SPARQL Query Language for RDF (February 2004), http://www.w3.org/TR/rdf-sparql-query/ (lastchecked: March 7, 2010)
O’Connor, M., Das, A.: SQWRL: a query language for OWL. In: Proc. of OWLED 2009 (2009)
McCarthy, P.: Search RDF data with SPARQL: SPARQL and the Jena Toolkit open up the semantic Web (May 2005), http://www.ibm.com/developerworks/library/j-sparql/ (lastchecked: March 1, 2010)
Friedman-Hill, E.: Jess Rule Engine, http://www.jessrules.com/ (lastchecked: December 2009)
Görz, G.: Description Logics, Knowledge Bases, Formal Ontologies and Data Bases: Content. Lecture Notes (2008)
Asnar, Y., Giorgini, P., Massacci, F., Saidane, A., Bonato, R., Meduri, V., Riccucci, C.: Secure and Dependable Patterns in Organizations: An Empirical Approach. In: Proc. of RE 2007 (2007)
Mens, T., Van Der Straeten, R., Simmonds, J.: Maintaining consistency between UML models with description logic tools. In: Proc. of UML 2003, Workshop on Consistency Problems in UML-based Software Development II (2003)
Albin-amiot, H., gaël Guéhéneuc, Y., Kastler, R.A.: Meta-modeling design patterns: Application to pattern detection and code synthesis. In: Proc. of ECOOP 2001 Workshop Automating Object-Oriented Software Development Methods, pp. 1–35 (2001)
Manolescu, D., Kozaczynski, W., Miller, A., Hogg, J.: The growing divide in the patterns world. IEEE Software 24(4), 61–67 (2007)
Zdun, U.: Systematic pattern selection using pattern language grammars and design space analysis. Software: Practice and Experience 37(9), 983–1016 (2007)
Gross, D., Yu, E.: From Non-Functional requirements to design through patterns. Requirements Engineering 6(1), 18–36 (2001)
Weiss, M., Mouratidis, H.: Selecting security patterns that fulfill security requirements. In: 16th IEEE International Requirements Engineering, RE 2008, pp. 169–172 (2008)
Eden, A.H., Yehudai, A., Gil, J.: Precise specification and automatic application of design patterns. In: Proc. of ASE 1997, pp. 143–152 (1997)
Czarnecki, K., Helsen, S.: Classification of model transformation approaches. In: Proc. of OOPSLA 2003 Workshop on Generative Techniques in the Context of the MDA (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Asnar, Y., Paja, E., Mylopoulos, J. (2011). Modeling Design Patterns with Description Logics: A Case Study. In: Mouratidis, H., Rolland, C. (eds) Advanced Information Systems Engineering. CAiSE 2011. Lecture Notes in Computer Science, vol 6741. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21640-4_14
Download citation
DOI: https://doi.org/10.1007/978-3-642-21640-4_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21639-8
Online ISBN: 978-3-642-21640-4
eBook Packages: Computer ScienceComputer Science (R0)