The change of change applications to suit the needs of users in different places and facilitate development over time has long been a major challenge for software maintenance experts. In this chapter we take up tailoring as a means of making software flexible. Starting with two case studies— one taking up tailoring for different users and the other addressing changes over time—the article discusses problems related to both the use and development of a tailorable application. Developing tailorable software presents newchallenges: howdo you create a user-friendly tailoring interface? How do you decide what should be tailorable, and how do you create a software architecture that permits this? How do you ensure that the tailorable system gives acceptable performance? Our experience shows that the borders between maintenance and use become blurred since tailorability can replace maintenance by professional software engineers by tailoring by advanced users. Using our experience of the two selected cases, we identify and discuss five important issues to consider when designing and implementing tailorable systems in industrial settings.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer
About this chapter
Cite this chapter
Dittrich, Y., Lindeberg, O., Lundberg, L. (2006). End-User Development as Adaptive Maintenance. In: Lieberman, H., Paternò, F., Wulf, V. (eds) End User Development. Human-Computer Interaction Series, vol 9. Springer, Dordrecht. https://doi.org/10.1007/1-4020-5386-X_14
Download citation
DOI: https://doi.org/10.1007/1-4020-5386-X_14
Publisher Name: Springer, Dordrecht
Print ISBN: 978-1-4020-4220-1
Online ISBN: 978-1-4020-5386-3
eBook Packages: Computer ScienceComputer Science (R0)