% % GENERATED FROM http://acme.able.cs.cmu.edu % by : anonymous % IP : ec2-44-192-53-34.compute-1.amazonaws.com % at : Thu, 28 Mar 2024 16:56:54 -0400 GMT % % Selection : Year = 2012 % @InProceedings{Barnes/NASA/2012, AUTHOR = {Barnes, Jeffrey M.}, TITLE = {NASA\'s Advanced Multimission Operations System: A Case Study in Software Architecture Evolution}, YEAR = {2012}, MONTH = {25-28 June}, BOOKTITLE = {Proceedings of the International ACM SIGSOFT Conference on the Quality of Software Architectures 2012}, ADDRESS = {Bertinoro, Italy}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/qosa-12-camera.pdf}, ABSTRACT = {Virtually all software systems of significant size and longevity eventually undergo changes to their basic architectural structure. Such changes may be prompted by new feature requests, new quality attribute requirements, changing technology, or other reasons. Whatever the cause, software architecture evolution is commonplace in real-world software projects. However, research in this area has suffered from problems of validation; previous work has tended to make heavy use of toy examples and hypothetical scenarios and has not been well supported by real-world examples. To help address this problem, this paper presents a case study of an ongoing effort at the Jet Propulsion Laboratory to rearchitect the Advanced Multimission Operations System used to operate NASA�s deep-space and astrophysics missions. Based on examination of project documents and interviews with project personnel, I describe the goals and approach of this evolution effort, then demonstrate how approaches and formal methods from previous research in architecture evolution may be applied to this evolution while using languages and tools already in place at the Jet Propulsion Laboratory.}, KEYWORDS = {Architecture Evolution} } @Article{2012:Cheng:Stitch, AUTHOR = {Cheng, Shang-Wen and Garlan, David}, TITLE = {Stitch: A Language for Architecture-Based Self-Adaptation}, YEAR = {2012}, MONTH = {December}, JOURNAL = {Journal of Systems and Software, Special Issue on State of the Art in Self-Adaptive Systems}, VOLUME = {85}, NUMBER = {12}, EDITOR = {Weyns, Danny and Andersson, Jesper and Malek, Sam and Schmerl, Bradley}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/JSS-S-11-00544.pdf}, ABSTRACT = {Requirements for high availability in computing systems today demand that systems be self-adaptive to maintain expected qualities-of-service in the presence of system faults, variable environmental conditions, and changing user requirements. Autonomic computing tackles the challenge of automating tasks that humans would otherwise have to perform to achieve this goal. However, existing approaches to autonomic computing lack the ability to capture routine human repair tasks in a way that takes into account the business context that humans use in selecting an appropriate form of adaptation, while dealing with timing delays and uncertainties in outcome of repair actions. In this article, we present Stitch, a language for representing repair strategies within the context of an architecture-based self-adaptation framework. Stitch supports the explicit representation of repair decision trees together with the ability to express business objectives, allowing a self-adaptive system to select a strategy that has optimal utility in a given context, even}, NOTE = {http://dx.doi.org/10.1016/j.jss.2012.02.060 }, KEYWORDS = {Landmark, Rainbow, Self-adaptation, Self-Repair, Stitch} } @InBook{Weyns/Schmerl/2012, AUTHOR = {Weyns, Danny and Schmerl, Bradley and Grassi, Vincenzo and Malek, Sam and Mirandola, Raffaela and Prehofer, Christian and Wuttke, Jochen and Andersson, Jesper and Giese, Holger and Goeschka, Karl}, TITLE = {On Patterns for Decentralized Control in Self-Adaptive Systems}, YEAR = {2012}, BOOKTITLE = {Software Engineering for Self-Adaptive Systems II}, VOLUME = {7475}, EDITOR = {de Lemos, Rog\'{e}rio and Giese, Holger and Muller, Hausi and Shaw, Mary}, SERIES = { LNCS }, PUBLISHER = {Springer}, ABSTRACT = {Self-adaptive systems have the ability to adapt themselves to changes in the environment and internal dynamics to achieve particular goals. Self-adaptation is typically realized using control loops. When systems are large, complex, and heterogeneous, a single control loop may not be sufficient. Given the central role control loops play in the way we conceptualize, design, and implement self-adaptive systems, their patterns of interaction should be made explicit to foster comprehension and analysability, and to serve as the basis for developing guidelines and documenting common design choices for engineers. Because of the diversity of ways that existing self-adaptive systems organize the various self-adaptation activities, it is timely to reflect on these systems to: (a) consolidate the knowledge in this area, and (b) to develop a systematic approach for describing different control schema. In this paper, we contribute with a simple notation for describing control schema with multiple control loops, which we believe helps in achieving (b), and we use this notation to describe a number of existing self-adaptation patterns, to begin to fulfill (a). From our study, we outline numerous remaining research challenges and future work in this area.}, KEYWORDS = {Coordination, Self-adaptation} } @InProceedings{Garlan/EUA/2012, AUTHOR = {Garlan, David and Dwivedi, Vishal and Ruchkin, Ivan and Schmerl, Bradley}, TITLE = {Foundations and Tools for End-User Architecting}, YEAR = {2012}, BOOKTITLE = {Large-Scale Complex IT Systems. Development, Operation and Management, 17th Monterey Workshop 2012, Oxford, UK, March 19-21, 2012}, VOLUME = {7539}, PAGES = {157-182}, EDITOR = {Garlan, David and Calinescu, Radu}, SERIES = {Lecture Notes in Computer Science}, PUBLISHER = {Springer}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/EUA-LNCS.pdf}, ABSTRACT = {Within an increasing number of domains an important emerging need is the ability for technically naive users to compose computational elements into novel configurations. Examples include astronomers who create new analysis pipelines to process telescopic data, intelligence analysts who must process diverse sources of unstructured text to discover socio-technical trends, and medical researchers who have to process brain image data in new ways to understand disease pathways. Creating such compositions today typically requires low-level technical expertise, limiting the use of computational methods and increasing the cost of using them. In this paper we describe an approach -- which we term end-user architecting -- that exploits the similarity between such compositional activities and those of software architects. Drawing on the rich heritage of software architecture languages, methods, and tools, we show how those techniques can be adapted to support end users in composing rich computational systems through domain-specific compositional paradigms and component repositories, without requiring that they have knowledge of the low-level implementation details of the components or the compositional infrastructure. Further, we outline a set of open research challenges that the area of end-user architecting raises.}, NOTE = {Book Reference: http://www.springer.com/computer/swe/book/978-3-64234058-1}, KEYWORDS = {End-user Architecture, Landmark, Service Composition, SORASCS} }