% % GENERATED FROM http://acme.able.cs.cmu.edu % by : anonymous % IP : 216.73.216.246 % at : Fri, 20 Jun 2025 20:03:04 -0400 GMT % % Selection : Author: Shang-Wen_Cheng % @InProceedings{Cheng2006, AUTHOR = {Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley}, TITLE = {Architecture-based Self-adaptation in the Presence of Multiple Objectives}, YEAR = {2006}, MONTH = {21-22 May}, BOOKTITLE = {ICSE 2006 Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS)}, ADDRESS = {Shanghai, China}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/seams06.pdf}, ABSTRACT = {In the world of autonomic computing, the ultimate aim is to automate human tasks in system management to achieve high-level stakeholder objectives. One common approach is to capture and represent human expertise in a form executable by a computer. Techniques to capture such expertise in programs, scripts, or rule sets are effective to an extent. However, they are often incapable of expressing the necessary adaptation expertise and emulating the subtleties of trade-offs in high-level decision making. In this paper, we propose a new language of adaptation that is suffi-ciently expressive to capture the subtleties of choice, deriving its ontology from system administration tasks and its underlying formalism from utility theory.}, KEYWORDS = {Landmark, Rainbow, Self-adaptation, Self-Repair} } @InProceedings{Cheng2005, AUTHOR = {Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley}, TITLE = {Making Self-Adaptation an Engineering Reality}, YEAR = {2005}, BOOKTITLE = {Proceedings of the Conference on Self-Star Properties in Complex Information Systems}, VOLUME = {3460}, EDITOR = {Babaoghu, Ozlap and Jelasity, Mark and Montroser, Alberto and Fetzer, Christof and Leonardi, Stefano and Van Moorsel, Aad}, SERIES = {LNCS}, PUBLISHER = {Springer-Verlag}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/self-star-2005.pdf}, ABSTRACT = {In this paper, we envision a world where a software engineer could take an existing software system, specify, for a set of properties of interest, an objective, conditions for change, and strategies for their adaptation and, within a few man weeks, make that system self-adaptive where it was not before. We describe how our approach generalizes to different classes of systems and holds promise for cost-effective, dynamic system self-adaptation to become an engineering reality.}, NOTE = {Also available from Springer-Verlag here}, KEYWORDS = {Autonomic Systems, Rainbow, Self-Repair} } @Misc{Cheng2005a, AUTHOR = {Cheng, Shang-Wen and Nord, Robert and Stafford, Judith}, TITLE = {WICSA Wiki WAN Party: capturing experience in software architecture best practices}, YEAR = {2005}, MONTH = {January}, HOWPUBLISHED = {ACM SIGSOFT Software Engineering Notes, Volume 30, Number 1}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/wwwp.pdf}, ABSTRACT = {Researchers, practitioners, educators, and students of software architecture would benefit from having online access to quality information about the state of research and practice of software architecture. In recent years, Wiki technology has enabled distributed and collaborative editing of content using only a Web browser. To explore whether Wiki technology would be effective in facilitating the ongoing discussion and evolution of ideas on software architecture, we hosted the WICSA Wiki WAN Party (WWWP) during the 4th Working IEEE/IFIP Conference on Software Architecture (WICSA 2004). We used a history tool developed at IBM Research to monitor site activity and provide daily feedback to conference participants. This report recounts experience hosting this Wiki site and summarizes the site activity.}, KEYWORDS = {Software Architecture} } @InProceedings{Cheng2004, AUTHOR = {Cheng, Shang-Wen and Huang, An-Cheng and Garlan, David and Schmerl, Bradley and Steenkiste, Peter}, TITLE = {An Architecture for Coordinating Multiple Self-Management Systems}, YEAR = {2004}, MONTH = {11-14 June}, BOOKTITLE = {Proceedings of the 4th Working IEEE/IFIP Conference on Software Architectures (WICSA4)}, ADDRESS = {Oslo, Norway}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/wicsa4-cheng.pdf}, ABSTRACT = {A common approach to adding self-management capabilities to a system is to provide one or more external control modules, whose responsibility is to monitor system behavior, and adapt the system at run time to achieve various goals (configure the system, improve performance, recover from faults, etc.). An important problem arises when there is more than one such self-management module: how can one make sure that they are composed to provide consistent and complementary benefits? In this paper we describe a solution that introduces a self-management coordination architecture and infrastructure to support such composition. We focus on the problem of coordinating self-configuring and self-healing capabilities, particularly with respect to global configuration and incremental repair. We illustrate the approach in the context of a self-managing video teleconference system that composes two pre-existing adaptation modules to achieve synergistic benefits of both.}, KEYWORDS = {Autonomic Systems, Coordination, Rainbow, Self-adaptation} } @InBook{Garlan2003, AUTHOR = {Garlan, David and Cheng, Shang-Wen and Schmerl, Bradley}, TITLE = {Increasing System Dependability through Architecture-based Self-repair}, YEAR = {2003}, BOOKTITLE = {Architecting Dependable Systems}, EDITOR = {de Lemos, Rog\'{e}rio and Gacek, Cristina and Romanovsky, Alexander}, PUBLISHER = {Springer-Verlag}, PDF = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/WADS/WADS-architecture.pdf}, PS = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/WADS/WADS-architecture.ps}, ABSTRACT = {One increasingly important technique for improving system dependability is to provide mechanisms for a system to adapt at run time in order to accommodate varying resources, system errors, and changing requirements. For such 'self-repairing' systems one of the hard problems is determining when a change is needed, and knowing what kind of adaptation is required. In this paper we describe a partial solution in which stylized architectural design models are maintained at run time as a vehicle for automatically monitoring system behavior, for detecting when that behavior falls outside of acceptable ranges, and for deciding on a high-level repair strategy. The main innovative feature of the approach is the ability to specialize a generic run time adaptation framework to support particular architectural styles and properties of interest. Specifically, a formal description of an architectural style defines for a family of related systems the conditions under which adaptation should be considered, provides an analytic basis for detecting anomalies, and serves as a basis for developing sound repair strategies.}, KEYWORDS = {Rainbow, Self-Repair, Software Architecture} } @InProceedings{Cheng2002, AUTHOR = {Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley and Steenkiste, Peter and Hu, Ningning}, TITLE = {Software Architecture-based Adaptation for Grid Computing}, YEAR = {2002}, MONTH = {July}, BOOKTITLE = {The 11th IEEE Conference on High Performance Distributed Computing (HPDC}, ADDRESS = {Edinburgh, Scotland}, PDF = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/hpdc02/hpdc02.pdf}, PS = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/hpdc02/hpdc02.ps}, ABSTRACT = {Grid applications must increasingly self-adapt dynamically to changing environments. In most cases, adaptation has been implemented in an ad hoc fashion, on a perapplication basis. This paper describes work which generalizes adaptation so that it can be used across applications by providing an adaptation framework. This framework uses a software architectural model of the system to analyze whether the application requires adaptation, and allows repairs to be written in the context of the architectural model and propagated to the running system. In this paper, we exemplify our framework by applying it to the domain of load-balancing a client-server system. We report on an experiment conducted using our framework, which illustrates that this approach maintains architectural requirements.}, KEYWORDS = {Autonomic Systems, Self-Repair, Software Architecture} } @InProceedings{Cheng2002a, AUTHOR = {Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley and Sousa, Jo\~{a}o and Spitznagel, Bridget and Steenkiste, Peter}, TITLE = {Using Architectural Style as a Basis for Self-repair}, YEAR = {2002}, MONTH = {25-31 August}, BOOKTITLE = {Software Architecture: System Design, Development, and Maintenance (Proceedings of the 3rd Working IEEE/IFIP Conference on Software Architecture)}, PAGES = {45-59}, EDITOR = {Bosch, Jan and Gentleman, Morven and Hofmeister, Christine and Kuusela, Juha}, PUBLISHER = {Kluwer Academic Publishers}, PDF = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/wicsa3-arch/WICSA-web.pdf}, PS = {http://www.cs.cmu.edu/afs/cs/project/able/ftp//wicsa3-arch/WICSA-web.ps}, ABSTRACT = {An increasingly important requirement for software systems is the capability to adapt at run time in order to accommodate varying resources, system errors, and changing requirements. For such self-repairing systems, one of the hard problems is determining when a change is needed, and knowing what kind of adaptation is required. Recently several researchers have explored the possibility of using architectural models as a basis for run time monitoring, error detection, and repair. Each of these efforts, however, has demonstrated the feasibility of using architectural models in the context of a specific style. In this paper we show how to generalize these solutions by making architectural style a parameter in the monitoring/repair framework and its supporting infrastructure. The value of this generalization is that it allows one to tailor monitoring/ repair mechanisms to match both the properties of interest (such as performance or security), and the available operators for run time adaptation.}, KEYWORDS = {Architectural Analysis, Autonomic Systems, Self-Repair, Software Architecture} } @InProceedings{Cheng2002b, AUTHOR = {Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley and Sousa, Jo\~{a}o and Spitznagel, Bridget and Steenkiste, Peter and Hu, Ningning}, TITLE = {Software Architecture-based Adaptation for Pervasive Systems}, YEAR = {2002}, MONTH = {8-11 April}, BOOKTITLE = {International Conference on Architecture of Computing Systems (ARCS'02): Trends in Network and Pervasive Computing}, VOLUME = {2299}, EDITOR = {Schmeck, H and Ungerer, T and Wolf, L}, SERIES = {Lecture Notes in Computer Science}, ADDRESS = {Karlsruhe, Germany}, PUBLISHER = {Springer-Verlag}, PDF = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/arch-arcs02/arcs-final.pdf}, PS = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/arch-arcs02/arcs-final.ps}, ABSTRACT = { An important requirement for pervasive computing systems is the ability to adapt at runtime to handle varying resources, user mobility, changing user needs, and system faults. In this paper we describe an approach in which dynamic adaptation is supported by the use of software architectural models to monitor an application and guide dynamic changes to it. The use of externalized models permits one to make reconfiguration decisions based on a global per-spective of the running system, apply analytic models to determine correct re-pair strategies, and gauge the effectiveness of repair through continuous system monitoring. We illustrate the application of this idea to pervasive computing systems, focusing on the need to adapt based on performance-related criteria and models.}, KEYWORDS = {Software Architecture, Ubiquitous Computing} } @Article{Garlan2002b, AUTHOR = {Garlan, David and Kompanek, Andrew and Cheng, Shang-Wen}, TITLE = {Reconciling the Needs of Architectural Description with Object-Modeling Notations}, YEAR = {2002}, JOURNAL = {Science of Computer Programming}, VOLUME = {44}, PAGES = {23-49}, PDF = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/uml01/uml01.pdf}, PS = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/uml01/uml01.ps}, ABSTRACT = {Complex software systems require expressive notations for representing their software architectures. Two competing paths have emerged. One is to use a specialized notation for architecture - or architecture description language (ADL). The other is to adapt a general-purpose modeling notation, such as UML. The latter has a number of benefits, including familiarity to developers, close mapping to implementations, and commercial tool support. However, it remains an open question as to how best to use object-oriented notations for architectural description, and, indeed, whether they are sufficiently expressive, as currently defined. In this paper we take a systematic look at these questions, examining the space of possible mappings from ADLs into object notations. Specifically, we describe (a) the principle strategies for representing architectural structure in UML; (b) the benefits and limitations of each strategy; and (c) aspects of architectural description that are intrinsically difficult to model in UML using the strategies.}, KEYWORDS = {Software Architecture, UML} } @InProceedings{Cheng2001, AUTHOR = {Cheng, Shang-Wen and Garlan, David}, TITLE = {Mapping Architectural Concepts to UML-RT}, YEAR = {2001}, MONTH = {June}, BOOKTITLE = {Proceedings of the 2001 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'2001)}, ADDRESS = {Las Vegas, NV}, PDF = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/pdpta01/pdpta01.pdf}, PS = {http://www.cs.cmu.edu/afs/cs/project/able/ftp/pdpta01/pdpta01.ps}, ABSTRACT = {Complex software systems require expressive notations for representing their software architectures. Two competing paths have emerged, one using a specialized notation for architecture - or architecture description language (ADL), the other using notations applied generally throughout design, such as UML. The latter has a number of benefits, including familiarity to developers, close mappings to implementations, and commercial tool support. However, it remains an open question how best to use object-oriented notations for architectural description and whether they are sufficiently expressive as currently defined. In this paper, we present a mapping between Acmea notation designed for expressing architectures - and the UML Real-Time Profile - an object-oriented design notation. Specifically, we describe (a) how to map Acme descriptions to descriptions in the UML Real-Time Profile, and (b)the places where this mapping breaks down. }, KEYWORDS = {Software Architecture, UML} } @InProceedings{Cheng:2007:huas/iwlu, AUTHOR = {Cheng, Shang-Wen and Garlan, David}, TITLE = {Handling Uncertainty in Autonomic Systems}, YEAR = {2007}, MONTH = {5 November}, BOOKTITLE = {Proceedings of the International Workshop on Living with Uncertainties (IWLU'07), co-located with the 22nd International Conference on Automated Software Engineering (ASE'07)}, ADDRESS = {Atlanta, GA, USA}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/IWLU07-HandlingUncertainties-pub.pdf}, ABSTRACT = {Autonomic, or self-adaptive, systems are increasingly important. One of the most prevalent techniques is to adopt a control systems view of the solution: adding a runtime, separate control unit that monitors and adapts the system under consideration. A problem with this paradigm for system engineering is that the control and the system are loosely coupled, introducing a variety of sources of uncertainty. In this paper we describe three specific sources of uncertainty, and briefly explain how we address those in the Rainbow Project.}, NOTE = {<a href=http://godzilla.cs.toronto.edu/IWLU/program.html>http://godzilla.cs.toronto.edu/IWLU/program.html</a>;}, KEYWORDS = {Autonomic Systems, Rainbow, Self-adaptation, Self-Repair, Stitch, uncertainty} } @InBook{2009:AdaptationChapter, AUTHOR = {Garlan, David and Schmerl, Bradley and Cheng, Shang-Wen}, TITLE = {Software Architecture-Based Self-Adaptation}, YEAR = {2009}, BOOKTITLE = {Autonomic Computing and Networking}, NUMBER = {ISBN 978-0-387-89827-8}, EDITOR = {Denko, Mieso and Yang, Laurence and Zhang, Yan}, PUBLISHER = {Springer}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/chapter-final.pdf}, ABSTRACT = {Increasingly, systems must have the ability to self-adapt to meet changes in their execution environment. Unfortunately, existing solutions require human oversight, or are limited in the kinds of systems and the set of quality-of-service concerns they address. Our approach, embodied in a system called Rainbow, uses software architecture models and architectural styles to overcome existing limitations. It provides an engineering approach and a framework of mechanisms to monitor a target system and its environment, reflect observations into a system's architecture model, detect opportunities for improvements, select a course of action, and effect changes in a closed loop. The framework provides general and reusable infrastructures with well-defined customization points, allowing engineers to systematically customize Rainbow to particular systems and concerns. }, NOTE = {Springer Link}, KEYWORDS = {Autonomic Systems, Rainbow, Self-adaptation, Self-Repair} } @PhdThesis{Cheng:2008:Thesis, AUTHOR = {Cheng, Shang-Wen}, TITLE = {Rainbow: Cost-Effective Software Architecture-Based Self-Adaptation}, YEAR = {2008}, MONTH = {May}, SCHOOL = {Carnegie Mellon University}, URL = {http://reports-archive.adm.cs.cmu.edu/anon/isr2008/abstracts/08-113.html}, NOTE = {Institute for Software Research Technical Report CMU-ISR-08-113}, KEYWORDS = {Rainbow} } @Article{Garlan2004, AUTHOR = {Garlan, David and Cheng, Shang-Wen and Huang, An-Cheng and Schmerl, Bradley and Steenkiste, Peter}, TITLE = {Rainbow: Architecture-Based Self Adaptation with Reusable Infrastructure}, YEAR = {2004}, MONTH = {October}, JOURNAL = {IEEE Computer}, VOLUME = {37}, NUMBER = {10}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/computer04.pdf}, ABSTRACT = {The Rainbow framework uses software architectures and a reusable infrastructure to support self-adaptation of software systems. The use of external adaptation mechanisms allows the explicit specification of adaptation strategies for multiple system concerns.}, KEYWORDS = {Autonomic Systems, Landmark, Rainbow, Self-adaptation} } @InProceedings{Cheng:2009:RAIDE/icse, AUTHOR = {Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley}, TITLE = {RAIDE for Engineering Architecture-Based Self-Adaptive Systems}, YEAR = {2009}, BOOKTITLE = {2009 International Conference on Software Engineering}, ADDRESS = {Vancouver, BC, Canada}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/ICSE2009_IRD_0659_Cheng_Shang-Wen.pdf}, ABSTRACT = {Rainbow is an approach for engineering self-adaptive systems, with run-time, closed-loop control over target systems to monitor, detect, decide, and act on opportunities for system improvement. RAIDE enables adaptation engineers to customize the Rainbow framework, simulate adaptation behavior, and deploy Rainbow run-time components.}, KEYWORDS = {Rainbow} } @InProceedings{Cheng:2009:benchmark/znn:seams, AUTHOR = {Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley}, TITLE = {Evaluating the Effectiveness of the Rainbow Self-Adaptive System}, YEAR = {2009}, MONTH = {18-19 May}, BOOKTITLE = {ICSE 2009 Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS\'09), Vancouver, BC, Canada}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/ICSE2009_SEAMS_2528_Cheng_Shang-Wen.pdf}, ABSTRACT = {Rainbow is a framework for engineering a system with run-time, self-adaptive capabilities to monitor, detect, decide, and act on opportunities for system improvement. We applied Rainbow to a system, Znn.com, and evaluated its effectiveness to self-adapt on three levels: its effectiveness to maintain quality attribute in the face of changing conditions, run-time overheads of adaptation, and the engineering effort to use it to add self-adaptive capabilities to Znn.com. We make Znn.com and the associated evaluation tools available to the community so that other researchers can use it to evaluate their own systems and the community can compare different systems. In this paper, we report on our evaluation experience, reflect on some principles for benchmarking self-adaptive systems, and discuss the suitability of our evaluation tools for this purpose.}, NOTE = {Awarded Most Influential Paper for SEAMS 2009}, KEYWORDS = {Benchmark, Rainbow} } @InProceedings{SOAR2009, AUTHOR = {Raheja, Rahul and Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley}, TITLE = {Improving Architecture-Based Self-Adaptation using Preemption}, YEAR = {2009}, MONTH = {14 September}, BOOKTITLE = {Proceedings of the Workshop on Self-Organizing Architecture}, ADDRESS = {Cambridge, UK}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/SOAR-web.pdf}, ABSTRACT = {One common approach to self-adaptive systems is to incorporate a control layer that monitors a system, supervisorily detects problems, and applies adaptation strategies to fix problems or improve system behavior. While such approaches have been found to be quite effective, they are typically limited to carrying out a single adaptation at a time, delaying other adaptations until the current one finishes. This in turn leads to a problem in which a time-critical adaptation may have to wait for an existing long-running adaptation to complete, thereby missing a window of opportunity for that adaptation. In this paper we improve on existing practice through an approach in which adaptations can be preempted to allow for other time-critical adaptations to be scheduled. Scheduling is based on an algorithm that maximizes time-related utility for a set of concurrently executing adaptations.}, KEYWORDS = {Autonomic Systems, Rainbow, Self-adaptation, Software Architecture, Software Engineering} } @Article{RajhansMPM2009, AUTHOR = {Rajhans, Akshay and Cheng, Shang-Wen and Schmerl, Bradley and Garlan, David and Krogh, Bruce and Agbi, Clarence and Bhave, Ajinkya Y.}, TITLE = {An Architectural Approach to the Design and Analysis of Cyber-Physical Systems}, YEAR = {2009}, JOURNAL = {Electronic Communications of the EASST}, VOLUME = {21: Multi-Paradigm Modeling}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/286-855-1-PB.pdf}, ABSTRACT = {This paper presents an extension of existing software architecture tools to model physical systems, their interconnections, and the interactions between physical and cyber components. A new CPS architectural style is introduced to support the principled design and evaluation of alternative architectures for cyber-physical systems (CPSs). The implementation of the CPS architectural style in AcmeStudio includes behavioral annotations on components and connectors using either ?nite state processes (FSP) or linear hybrid automata (LHA) with plug-ins to perform behavior analysis using the Labeled Transition System Analyzer (LTSA) or Polyhedral Hybrid Automata Veri?er (PHAVer), respectively. The CPS architectural style and analysis plug-ins are illustrated with an example. }, KEYWORDS = {Cyberphysical Systems} } @InBook{Prediction2008, AUTHOR = {Poladian, Vahe and Cheng, Shang-Wen and Garlan, David and Schmerl, Bradley}, TITLE = {Improving Architecture-Based Self-Adaption Through Resource Prediction}, YEAR = {2008}, BOOKTITLE = {Software Engineering for Self-Adaptive Systems}, VOLUME = {5525}, EDITOR = {Cheng, Betty H.C. and de Lemos, Rog\'{e}rio and Giese, Holger and Inverardi, Paola and Magee, Jeff}, SERIES = {Lecture Notes in Computer Science}, PUBLISHER = {LNCS}, CHAPTER = {15}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/LNCS-SEfSASChapter-2009-0222-web.pdf}, ABSTRACT = {An increasingly important concern for modern systems design is how best to incorporate self-adaptation into systems so as to improve their ability to dynamically respond to faults, resource variation, and changing user needs. One promising approach is to use architectural models as a basis for monitoring, problem detection, and repair selection. While this approach has been shown to yield positive results, current systems use a reactive approach: they respond to problems only when they occur. In this paper we argue that self-adaptation can be improved by adopting an anticipatory approach in which predictions are used to inform adaptation strategies. We show how such an approach can be incorporated into an architecture-based adaptation framework and demonstrate the benefits of the approach.}, KEYWORDS = {Rainbow, Resource prediction, Self-adaptation} } @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} } @InProceedings{2021:Cheng:Debate, AUTHOR = {Cheng, Shang-Wen}, TITLE = {Change Is the Ultimate Self-Adaptive Challenge}, YEAR = {2021}, MONTH = {18-21 May}, BOOKTITLE = {Proceedings of the 16th Symposium on Software Engineering for Adaptive and Self-Managing Systems}, ADDRESS = {Virtual}, PDF = {http://acme.able.cs.cmu.edu/pubs/uploads/pdf/Cheng_SEAMS_2021.pdf}, ABSTRACT = {This paper argues that change alone is sufficiently difficult; simply, handling change, i.e., anticipated changes, remains the ultimate challenge of self-adaptation.}, KEYWORDS = {Self-adaptation, uncertainty} }