{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,28]],"date-time":"2025-02-28T05:36:08Z","timestamp":1740720968119,"version":"3.38.0"},"reference-count":30,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2004,2,1]],"date-time":"2004-02-01T00:00:00Z","timestamp":1075593600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/2.0"},{"start":{"date-parts":[[2004,2,1]],"date-time":"2004-02-01T00:00:00Z","timestamp":1075593600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/2.0"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["J Braz Comp Soc"],"published-print":{"date-parts":[[2004,2]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>This paper presents a comprehensive approach to describe, deploy and adapt component-based applications having dynamic non-functional requirements. The approach is centered on high-level contracts associated to architectural descriptions, which allow the non-functional requirements to be handled separately during the system, design process. This helps to achieve separation of concerns facilitating the reuse of modules that implement the application in other systems. Besides specifying non-functional requirements, contracts are used at runtime to guide configuration adaptations required to enforce these requirements. The infrastructure required to manage the contracts follows an architectural pattern, which can be directly mapped to specific components included in a supporting reflective middleware. This allows designers to write a contract and to follow standard recipes to insert the extra code required to its enforcement in the supporting middleware.<\/jats:p>","DOI":"10.1007\/bf03192350","type":"journal-article","created":{"date-parts":[[2010,11,12]],"date-time":"2010-11-12T04:47:58Z","timestamp":1289537278000},"page":"5-20","source":"Crossref","is-referenced-by-count":10,"title":["A contract-based approach to describe and deploy non-functional adaptations in software architectures"],"prefix":"10.1007","volume":"10","author":[{"given":"Orlando","family":"Loques","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Alexandre","family":"Sztajnberg","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Romulo","family":"Curty","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sidney","family":"Ansaloni","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"BF03192350_CR1","unstructured":"[1]_S. Ansaloni. An Architectural Pattern to Describe and Implement QoS Contracts. Masters Dissertation, Instituto de Computa\u00e7\u00e3o, UFF, May 2003."},{"issue":"2","key":"BF03192350_CR2","doi-asserted-by":"publisher","first-page":"51","DOI":"10.1016\/S0164-1212(01)00117-0","volume":"63","author":"A. M. Barroso","year":"2002","unstructured":"[2]_A. M. Barroso, J. Leite and O. Loques. Treating Uncertainty in Distributed Scheduling.Journal of Systems and Software, Elsevier, Vol. 63\/2 pp. 51\u201358, November 2002.","journal-title":"Journal of Systems and Software"},{"issue":"N. 10","key":"BF03192350_CR3","doi-asserted-by":"publisher","first-page":"51","DOI":"10.1145\/383845.383857","volume":"44","author":"L. Bergmans","year":"2001","unstructured":"[3]_L. Bergmans, and M. Aksit. Composing Crosscutting Concerns Using Composition Filters.Communications of the ACM, Vol. 44, N. 10, pp. 51\u201357, October 2001.","journal-title":"Communications of the ACM"},{"issue":"N. 7","key":"BF03192350_CR4","doi-asserted-by":"crossref","first-page":"38","DOI":"10.1109\/2.774917","volume":"32","author":"A. Beugnard","year":"1999","unstructured":"[4]_A. Beugnard, J.-M. J\u00e9z\u00e9quel, N. Plouzeau, and D. Watkins. Making Components Contract Aware.IEEE Computer, Vol. 32, N. 7, pp. 38\u201345, July 1999.","journal-title":"IEEE Computer"},{"key":"BF03192350_CR5","unstructured":"[5]_A. Borg, and A. Wellings. A Real-Time RM I Framework for the RTSJ. InProceedings of the 15th Euromicro Conference on Real-Time Systems, Porto, Portugal, July 2003."},{"key":"BF03192350_CR6","doi-asserted-by":"publisher","first-page":"148","DOI":"10.1016\/j.entcs.2004.04.010","volume":"95","author":"C. Braga","year":"2004","unstructured":"[6]_C. Braga and A. Sztajnberg. Towards a Rewriting Semantics to a Software Architecture Description Language.Electronic Notes in Theoretical Computer Science, Elsevier, Vol. 95, pp. 148\u2013168, May 2004.","journal-title":"Electronic Notes in Theoretical Computer Science"},{"key":"BF03192350_CR7","unstructured":"[7]_Carvalho, S. T, Lisb\u00f4a, J. and Loques, O. A Design Pattern for Software Architecture Configuration. 2nd Latin American Conference on Pattern Languages of Programming, Itaipava, RJ, Brazil, August 2002."},{"key":"BF03192350_CR8","unstructured":"[8]_W. Cazzola, A. Savigni and A. Sosio. Architectural Reflection: Concepts, Design, and Evaluation. Technical Report RI-DSI 234-99, DSI, University degli Studi di Milano, May 1999."},{"key":"BF03192350_CR9","unstructured":"[9]_J. K. Cross and D. Schmidt. Quality Connector: A Pattern Language for Provisioning and Managing Quality-Constrained Services in Distributed Real-Time and Embedded Systems.9th Conference on Pattern Language of Programs, Monticello, II, U.S.A., September 2002."},{"key":"BF03192350_CR10","unstructured":"[10]_R. C. Cerqueira. A Methodology to Describe and Implement Contracts for Services with Differentiated Quality in Distributed Architectures. Masters Dissertation, Instituto de Computa\u00e7\u00e3o, UFF, 2002."},{"key":"BF03192350_CR11","unstructured":"[11]_R. C. Cerqueira, R., S. Ansaloni, O. Loques, and A. Sztajnberg. Deploying Non-Functional Aspects by Contract.2nd Workshop on Reflective and Adaptive Middleware, Middleware 2003 Companion, pp.90\u201394, Rio de Janeiro, Brasil, June 2003."},{"issue":"N. 10","key":"BF03192350_CR12","doi-asserted-by":"publisher","first-page":"33","DOI":"10.1145\/383845.383854","volume":"44","author":"T. Elrad","year":"2001","unstructured":"[12]_T. Elrad, A. Aksit, G. Kiczales, K. J. Lieberherr and H. Ossher. Discussing Aspects of AO P.Communications of the ACM, Vol. 44, N. 10, pp. 33\u201338, 2001.","journal-title":"Communications of the ACM"},{"key":"BF03192350_CR13","doi-asserted-by":"publisher","first-page":"179","DOI":"10.1088\/0967-1846\/5\/4\/005","volume":"5","author":"S. Frolund","year":"1998","unstructured":"[13]_S. Frolund and J. Koistinen. Quality-of-Service Specifications in Distributed Object Systems.IEE Distributed Systems Engineering, N. 5, pp. 179\u2013202, UK, 1998","journal-title":"IEE Distributed Systems Engineering, N."},{"key":"BF03192350_CR14","unstructured":"[14]_D. Garlan, B. R. Schmerl and J. Chang. Using Gauges for Architecture-Based Monitoring and Adaptation.Working Conference on Complex and Dynamic Systems Architecture, Brisbane, Austrlia, December 2001."},{"key":"BF03192350_CR15","doi-asserted-by":"crossref","unstructured":"[15]_I. Georgiadis, J. Magee and J. Kramer. Self-Organizing Software Architectures for Distributed Systems.Proceedings of the first Workshop on Self-healing Systems (WOSS\u201902), pp. 33\u201338, Charleston, SC, U.S.A., November 2002.","DOI":"10.1145\/582128.582135"},{"issue":"N. 6","key":"BF03192350_CR16","doi-asserted-by":"publisher","first-page":"33","DOI":"10.1145\/508448.508470","volume":"45","author":"F. Kon","year":"2002","unstructured":"[16]_F. Kon, F. Costa, G. Blair and R. H. Campbell. The Case for Reflective Middleware.Communications of the ACM, Vol. 45, N. 6, pp. 33\u201338, June 2002.","journal-title":"Communications of the ACM"},{"key":"BF03192350_CR17","doi-asserted-by":"crossref","unstructured":"[17]_O. Loques, R. A. Botafogo and J. C. B. Leite. A Configuration Approach for Distributed Object-Oriented System Customization. InProceedings of the Third IEEE Workshop on Object-Oriented Real-Time Dependable Systems, pp. 185\u2013189, Newport Beach, California, U.S.A., February 1997.","DOI":"10.1109\/WORDS.1997.609952"},{"key":"BF03192350_CR18","series-title":"LNCS","doi-asserted-by":"publisher","first-page":"191","DOI":"10.1007\/3-540-45046-7_11","volume-title":"Reflection and Software Engineering","author":"O. Loques","year":"2000","unstructured":"[18]_O. Loques, A. Sztajnberg, J. Leite and M. Lobosco. On the Integration of Configuration and Meta-Level Programming Approaches.In Reflection and Software Engineering, LNCS, Vol. 1826, pp. 191\u2013210, Springer-Verlag, Heidelberg, Germany, June 2000."},{"key":"BF03192350_CR19","series-title":"LNCS","first-page":"18","volume-title":"2nd International Working Conference on Component Deployment (CD 2004)","author":"O. Loques","year":"2004","unstructured":"[19]_O. Loques and A. Sztajnberg. Customizing Component-Based Architectures by Contract.In 2nd International Working Conference on Component Deployment (CD 2004), LNCS, V. 3083, pp. 18\u201334, Springer-Verlag, Edinburgh, Scotland, UK, May 2004."},{"key":"BF03192350_CR20","unstructured":"[20]_J. P. Loyall, P. Rubel, M. Atighetchi, R. Schantz and J. Zinky. Emerging Patterns in Adaptive, Distributed Real-Time, Embedded Middleware.9th Conference on Pattern Language of Programs, Monticello, II, U.S.A., September 2002."},{"issue":"N. 10","key":"BF03192350_CR21","doi-asserted-by":"publisher","first-page":"66","DOI":"10.1145\/383845.383859","volume":"44","author":"J. A. D. Pace","year":"2001","unstructured":"[21]_J. A. D. Pace and M. R. Campo. Analyzing the Role of Aspects in Software Design.Communications of the ACM, Vol. 44, N. 10, pp. 66\u201373, October 2001.","journal-title":"Communications of the ACM"},{"key":"BF03192350_CR22","series-title":"LNCS","first-page":"454","volume-title":"Middleware 2003 Proceedings","author":"A. Popovici","year":"2003","unstructured":"[22]_A. Popovici, A. Frei, and G. Alonso. A Proactive Middleware Platform for Mobile Computing. InMiddleware 2003 Proceedings, LNCS 2672, pp. 454\u2013473, Springer-Verlag, Rio de Janeiro, Brasil, June 2003."},{"key":"BF03192350_CR23","unstructured":"[23]_F. Siqueira and V. Cahill. Quartz: A QoS Architecture for Open Systems. InProceedings of the 180 Simp\u00f3sio Brasileiro de Redes de Computadores, pp. 553\u2013568, Belo Horizonte, MG, Brasil, May 2000."},{"issue":"N. 10","key":"BF03192350_CR24","doi-asserted-by":"publisher","first-page":"95","DOI":"10.1145\/383845.383865","volume":"44","author":"G. T. Sullivan","year":"2001","unstructured":"[24]_G. T. Sullivan. Aspect-Oriented Programming Using Reflection and Metaobject Protocols.Communications of the ACM, Vol. 44, N. 10, pp. 95\u201397, October 2001.","journal-title":"Communications of the ACM"},{"key":"BF03192350_CR25","unstructured":"[25]_A. Sztajnberg and O. Loques. Bringing QoS to the Architectural Level.ECO OP 2000 Workshop on QoS on Distributed Object Systems, Cannes France, June 2000."},{"key":"BF03192350_CR26","unstructured":"[26]_A. Sztajnberg and O. Loques. Software Connectors Performance Evaluation. InCadernos do IME \u2014 S\u00e9rie Inform\u00e1tica, Rio de Janeiro (UERJ), V. 14, pp. 7\u201318, 2003."},{"issue":"N. 6","key":"BF03192350_CR27","doi-asserted-by":"publisher","first-page":"39","DOI":"10.1145\/508448.508471","volume":"45","author":"A. Tripathi","year":"2002","unstructured":"[27]_A. Tripathi. Challenges Designing Next-Generation Middleware Systems.Communications of the ACM, pp. 39\u201342, Vol. 45, N. 6, June 2002.","journal-title":"Communications of the ACM"},{"key":"BF03192350_CR28","doi-asserted-by":"crossref","unstructured":"[28]_R. West and K. Schwan. Quality Events: A Flexible Mechanism for Quality of Service Management.Seventh IEEE Real-Time Technology and Applications Symposium (RTAS \u201901), pp. 95\u2013104, Taipei, Taiwan, May\u2013June 2001.","DOI":"10.1109\/RTTAS.2001.929869"},{"issue":"N. 5\u20136","key":"BF03192350_CR29","doi-asserted-by":"publisher","first-page":"757","DOI":"10.1016\/S0167-739X(99)00025-4","volume":"15","author":"R. Wolski Spring","year":"1999","unstructured":"[29]_R. Wolski. Spring, T. Neil and J. Hayes. The Network Weather Service: A Distributed Resource Performance Forecasting Service for Metacomputing.Future Generation Computer Systems, Vol. 15, N. 5\u20136, pp. 757\u2013768, 1999.","journal-title":"Future Generation Computer Systems"},{"key":"BF03192350_CR30","doi-asserted-by":"crossref","unstructured":"[30]_V. Zandy and B. Miller. Reliable Network Connections. InProceedings of the 8th annual international conference on Mobile computing and networking (MOBICOM\u201902), pp.95\u2013106, Atlanta, Georgia, September 2002.","DOI":"10.1145\/570645.570657"}],"container-title":["Journal of the Brazilian Computer Society"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/BF03192350.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/BF03192350\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/www.springerlink.com\/index\/pdf\/10.1007\/BF03192350","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/BF03192350.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,2,27]],"date-time":"2025-02-27T20:05:09Z","timestamp":1740686709000},"score":1,"resource":{"primary":{"URL":"https:\/\/journal-bcs.springeropen.com\/articles\/10.1007\/BF03192350"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2004,2]]},"references-count":30,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2004,2]]}},"alternative-id":["BF03192350"],"URL":"https:\/\/doi.org\/10.1007\/bf03192350","relation":{},"ISSN":["0104-6500","1678-4804"],"issn-type":[{"type":"print","value":"0104-6500"},{"type":"electronic","value":"1678-4804"}],"subject":[],"published":{"date-parts":[[2004,2]]}}}