<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">mais</journal-id><journal-title-group><journal-title xml:lang="ru">Моделирование и анализ информационных систем</journal-title><trans-title-group xml:lang="en"><trans-title>Modeling and Analysis of Information Systems</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">1818-1015</issn><issn pub-type="epub">2313-5417</issn><publisher><publisher-name>Yaroslavl State University</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.18255/1818-1015-2016-6-804-825</article-id><article-id custom-type="elpub" pub-id-type="custom">mais-416</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>Оригинальные статьи</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>Articles</subject></subj-group></article-categories><title-group><article-title>Реконфигурирование компонентно-ориентированных систем на базе графовых грамматик</article-title><trans-title-group xml:lang="en"><trans-title>Component-based Systems Reconﬁgurations Using Graph Grammars</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0003-1482-9015</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Кушнаренко</surname><given-names>О. Б.</given-names></name><name name-style="western" xml:lang="en"><surname>Kouchnarenko</surname><given-names>O.</given-names></name></name-alternatives><bio xml:lang="ru"><p>профессор информатики, доктор, ул. Рут де Грей, 16, г. Безансон, 25000 Франция</p></bio><bio xml:lang="en"><p>PhD, 16 route de Gray, 25000 Besancon, France</p></bio><email xlink:type="simple">olga.kouchnarenko@univ-fcomte.fr</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Вебер</surname><given-names>Ж.-Ф.</given-names></name><name name-style="western" xml:lang="en"><surname>Weber</surname><given-names>J.-F.</given-names></name></name-alternatives><bio xml:lang="ru"><p>аспирант, ул. Рут де Грей, 16, г. Безансон, 25000 Франция</p></bio><bio xml:lang="en"><p>graduate student, 16 route de Gray, 25000 Besancon,France</p></bio><email xlink:type="simple">jfweber@femto-st.fr</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Университет Бургундия Франш-Комтэ</institution><country>Франция</country></aff><aff xml:lang="en"><institution>Universite de Bourgogne - Franche-Comte</institution><country>France</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2016</year></pub-date><pub-date pub-type="epub"><day>20</day><month>12</month><year>2016</year></pub-date><volume>23</volume><issue>6</issue><fpage>804</fpage><lpage>825</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Кушнаренко О.Б., Вебер Ж., 2016</copyright-statement><copyright-year>2016</copyright-year><copyright-holder xml:lang="ru">Кушнаренко О.Б., Вебер Ж.</copyright-holder><copyright-holder xml:lang="en">Kouchnarenko O., Weber J.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://www.mais-journal.ru/jour/article/view/416">https://www.mais-journal.ru/jour/article/view/416</self-uri><abstract><p>Динамические реконфигурирования могут изменять архитектуру компонентно-ориентированных систем, не подвергаясь никакому системному простою. В этом контексте основной вклад данной статьи – доказательство результатов корректности реконфигурирования систем, используя графовые грамматики. В этой статье предложены новые охраняемые реконфигурирования на базе логики Хоара, которые построены на основе примитивных операций по реконфигурированию и включают последовательности реконфигурирований, альтернативные и повторяющиеся конструкции, сохраняя при этом непротиворечивость конфигураций. Практический вклад состоит в описании имплементации компонентно-ориентированной модели, используя программный инструмент GROOVE для преобразования графов. После обогащения модели интерпретированными конфигурациями и реконфигурированиями, совместимого с непротиворечивостью, отношение симуляции используется для доказательства корректности имплементации, выполненной под GROOVE. Эта имплементация иллюстрирована на примере многоуровневого облачно-ориентированного приложения.</p></abstract><trans-abstract xml:lang="en"><p>Dynamic reconﬁgurations can modify the architecture of component-based systems without incurring any system downtime. In this context, the main contribution of the present article is the establishment of correctness results proving component-based systems reconﬁgurations using graph grammars. New guarded reconﬁgurations allow us to build reconﬁgurations based on primitive reconﬁguration operations using sequences of reconﬁgurations and the alternative and the repetitive constructs, while preserving conﬁguration consistency. A practical contribution consists of the implementation of a component-based model using the GROOVE graph transformation tool. Then, after enriching the model with interpreted conﬁgurations and reconﬁgurations in a consistency compatible manner, a simulation relation is exploited to validate component systems’ implementations. This sound implementation is illustrated on a cloud-based multitier application hosting environment managed as a component-based system.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>компонентно-ориентированные системы</kwd><kwd>динамическое реконфигурирование</kwd><kwd>непротиворечивость</kwd><kwd>соответствие</kwd><kwd>реализация</kwd><kwd>GROOVE</kwd></kwd-group><kwd-group xml:lang="en"><kwd>component-based systems</kwd><kwd>dynamic reconﬁgurations</kwd><kwd>consistency</kwd><kwd>simulation relation</kwd><kwd>implementation</kwd><kwd>GROOVE</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">De Lemos R., Giese H., MuЁller H. A., Shaw M., Andersson J., Litoiu M., Schmerl B., Tamura G., Villegas N. M., Vogel T., et al., “Software engineering for self-adaptive systems: A second research roadmap”, Software Engineering for Self-Adaptive Systems II, 2013, 1– 32.</mixed-citation><mixed-citation xml:lang="en">De Lemos R., Giese H., MuЁller H. A., Shaw M., Andersson J., Litoiu M., Schmerl B., Tamura G., Villegas N. M., Vogel T., et al., “Software engineering for self-adaptive systems: A second research roadmap”, Software Engineering for Self-Adaptive Systems II, 2013, 1– 32.</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Dwyer M. B., Avrunin G. S., Corbett J. C., “Patterns in property speciﬁcations for ﬁnite- state veriﬁcation”, Proceedings of the 1999 International Conference on, Software Engineering, 1999, 411–420.</mixed-citation><mixed-citation xml:lang="en">Dwyer M. B., Avrunin G. S., Corbett J. C., “Patterns in property speciﬁcations for ﬁnite- state veriﬁcation”, Proceedings of the 1999 International Conference on, Software Engineering, 1999, 411–420.</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Dormoy J., Kouchnarenko O., Lanoix A., “Runtime veriﬁcation of temporal patterns for dynamic reconﬁgurations of components”, LNCS, 7253, eds. Arbab F., OЁlveczky P., Springer, Berlin Heidelberg, 2012, 115–132.</mixed-citation><mixed-citation xml:lang="en">Dormoy J., Kouchnarenko O., Lanoix A., “Runtime veriﬁcation of temporal patterns for dynamic reconﬁgurations of components”, LNCS, 7253, eds. Arbab F., OЁlveczky P., Springer, Berlin Heidelberg, 2012, 115–132.</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Trentelman K., Huisman M., “Extending JML speciﬁcations with temporal logic”, Algebraic Methodology and Software Technology, 2002, 334–348.</mixed-citation><mixed-citation xml:lang="en">Trentelman K., Huisman M., “Extending JML speciﬁcations with temporal logic”, Algebraic Methodology and Software Technology, 2002, 334–348.</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Kouchnarenko O., Weber J. F., “Adapting component-based systems at runtime via policies with temporal patterns”, LNCS, 8348, eds. Fiadeiro J. L., Liu Z., Xue J., Springer, 2014, 234–253.</mixed-citation><mixed-citation xml:lang="en">Kouchnarenko O., Weber J. F., “Adapting component-based systems at runtime via policies with temporal patterns”, LNCS, 8348, eds. Fiadeiro J. L., Liu Z., Xue J., Springer, 2014, 234–253.</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Kouchnarenko O., Weber J. F., “Decentralised evaluation of temporal patterns over component-based systems at runtime”, LNCS, 8997, eds. Lanese I., Madelaine E., Springer, 2015, 108–126.</mixed-citation><mixed-citation xml:lang="en">Kouchnarenko O., Weber J. F., “Decentralised evaluation of temporal patterns over component-based systems at runtime”, LNCS, 8997, eds. Lanese I., Madelaine E., Springer, 2015, 108–126.</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Lanoix A., Dormoy J., Kouchnarenko O., “Combining proof and model-checking to validate reconﬁgurable architectures”, ENTCS, 279 (2011), 43–57.</mixed-citation><mixed-citation xml:lang="en">Lanoix A., Dormoy J., Kouchnarenko O., “Combining proof and model-checking to validate reconﬁgurable architectures”, ENTCS, 279 (2011), 43–57.</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Dijkstra E. W., “Guarded commands, nondeterminacy and formal derivation of programs”, Communications of the ACM, 18 (1975), 453–457.</mixed-citation><mixed-citation xml:lang="en">Dijkstra E. W., “Guarded commands, nondeterminacy and formal derivation of programs”, Communications of the ACM, 18 (1975), 453–457.</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Ghamarian A.H., de Mol M., Rensink A., Zambon E., Zimakova M., “Modelling and analysis using GROOVE”, J. on Software Tools for Technology Transfer, 14 (2012), 15–40.</mixed-citation><mixed-citation xml:lang="en">Ghamarian A.H., de Mol M., Rensink A., Zambon E., Zimakova M., “Modelling and analysis using GROOVE”, J. on Software Tools for Technology Transfer, 14 (2012), 15–40.</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">Bruneton E., Coupaye T., Leclercq M., Queґma V., Stefani J. B., “The fractal component model and its support in java”, Softw., Pract. Exper., 36 (2006), 1257–1284.</mixed-citation><mixed-citation xml:lang="en">Bruneton E., Coupaye T., Leclercq M., Queґma V., Stefani J. B., “The fractal component model and its support in java”, Softw., Pract. Exper., 36 (2006), 1257–1284.</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">Schneider S., Treharne H., “Csp theorems for communicating b machines”, Formal Asp. Comput., 17 (2005), 390–422.</mixed-citation><mixed-citation xml:lang="en">Schneider S., Treharne H., “Csp theorems for communicating b machines”, Formal Asp. Comput., 17 (2005), 390–422.</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">Seinturier L., Merle P., Rouvoy R., Romero D., Schiavoni V., Stefani J.B., “A component-based middleware platform for reconﬁgurable service-oriented architectures”, Software: Practice and Experience, 42 (2012), 559–583.</mixed-citation><mixed-citation xml:lang="en">Seinturier L., Merle P., Rouvoy R., Romero D., Schiavoni V., Stefani J.B., “A component-based middleware platform for reconﬁgurable service-oriented architectures”, Software: Practice and Experience, 42 (2012), 559–583.</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">Dormoy J., Kouchnarenko O., Lanoix A., “Using temporal logic for dynamic reconﬁgurations of components”, LNCS, 6921, eds. Barbosa L., Lumpe M., Springer, Berlin Heidelberg, 2012, 200–217.</mixed-citation><mixed-citation xml:lang="en">Dormoy J., Kouchnarenko O., Lanoix A., “Using temporal logic for dynamic reconﬁgurations of components”, LNCS, 6921, eds. Barbosa L., Lumpe M., Springer, Berlin Heidelberg, 2012, 200–217.</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">Hamilton A. G., Logic for mathematicians, Cambridge University Press, Cambridge, 1978.</mixed-citation><mixed-citation xml:lang="en">Hamilton A. G., Logic for mathematicians, Cambridge University Press, Cambridge, 1978.</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Hoare C. A. R., “An axiomatic basis for computer programming”, Communications of the ACM, 12 (1969), 576–580.</mixed-citation><mixed-citation xml:lang="en">Hoare C. A. R., “An axiomatic basis for computer programming”, Communications of the ACM, 12 (1969), 576–580.</mixed-citation></citation-alternatives></ref><ref id="cit16"><label>16</label><citation-alternatives><mixed-citation xml:lang="ru">Milner R., Communication and concurrency, Prentice-Hall, Inc., 1989.</mixed-citation><mixed-citation xml:lang="en">Milner R., Communication and concurrency, Prentice-Hall, Inc., 1989.</mixed-citation></citation-alternatives></ref><ref id="cit17"><label>17</label><citation-alternatives><mixed-citation xml:lang="ru">Ma X., Baresi L., Ghezzi C., Panzica La Manna V., Lu J., “Version-consistent dynamic reconﬁguration of component-based distributed systems”, ACM, Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering, 2011, 245–255.</mixed-citation><mixed-citation xml:lang="en">Ma X., Baresi L., Ghezzi C., Panzica La Manna V., Lu J., “Version-consistent dynamic reconﬁguration of component-based distributed systems”, ACM, Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering, 2011, 245–255.</mixed-citation></citation-alternatives></ref><ref id="cit18"><label>18</label><citation-alternatives><mixed-citation xml:lang="ru">Boyer F., Gruber O., Pous D., “Robust reconﬁgurations of component assemblies”, Int. Conf. on Software Engineering (ICSE ’13, Piscataway), 2013, 13–22.</mixed-citation><mixed-citation xml:lang="en">Boyer F., Gruber O., Pous D., “Robust reconﬁgurations of component assemblies”, Int. Conf. on Software Engineering (ICSE ’13, Piscataway), 2013, 13–22.</mixed-citation></citation-alternatives></ref><ref id="cit19"><label>19</label><citation-alternatives><mixed-citation xml:lang="ru">Kramer J., Magee J., “The evolving philosophers problem: Dynamic change management”, Software Engineering, IEEE Transactions, 16 (1990), 1293–1306.</mixed-citation><mixed-citation xml:lang="en">Kramer J., Magee J., “The evolving philosophers problem: Dynamic change management”, Software Engineering, IEEE Transactions, 16 (1990), 1293–1306.</mixed-citation></citation-alternatives></ref><ref id="cit20"><label>20</label><citation-alternatives><mixed-citation xml:lang="ru">Vandewoude Y., Ebraert P., Berbers Y., D’Hondt T., “Tranquility: A low disruptive alternative to quiescence for ensuring safe dynamic updates”, Software Engineering, IEEE Transactions, 33 (2007), 856–868.</mixed-citation><mixed-citation xml:lang="en">Vandewoude Y., Ebraert P., Berbers Y., D’Hondt T., “Tranquility: A low disruptive alternative to quiescence for ensuring safe dynamic updates”, Software Engineering, IEEE Transactions, 33 (2007), 856–868.</mixed-citation></citation-alternatives></ref><ref id="cit21"><label>21</label><citation-alternatives><mixed-citation xml:lang="ru">Le Metayer D., “Describing software architecture styles using graph grammars”, IEEE Transactions on Software Engineering, 24 (1998), 521–533.</mixed-citation><mixed-citation xml:lang="en">Le Metayer D., “Describing software architecture styles using graph grammars”, IEEE Transactions on Software Engineering, 24 (1998), 521–533.</mixed-citation></citation-alternatives></ref><ref id="cit22"><label>22</label><citation-alternatives><mixed-citation xml:lang="ru">KaЁhkoЁnen K., Lampinen J., Heljanko K., NiemelaЁ I., “The lime interface speciﬁcation language and runtime monitoring tool”, Int. Wshop on Runtime Veriﬁcation, RV’09, LNCS, 5779, eds. Bensalem S., Peled D.A., Springer, Berlin Heidelberg, 2009, 93–100.</mixed-citation><mixed-citation xml:lang="en">KaЁhkoЁnen K., Lampinen J., Heljanko K., NiemelaЁ I., “The lime interface speciﬁcation language and runtime monitoring tool”, Int. Wshop on Runtime Veriﬁcation, RV’09, LNCS, 5779, eds. Bensalem S., Peled D.A., Springer, Berlin Heidelberg, 2009, 93–100.</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
