Advancing End User Development Through Metadesign

abstraCt End-user development means the active participation of end users in the software development process. In this perspective, tasks that are traditionally performed by professional software developers at design time are transferred to end users at use time. This creates a new challenge for software engineers: designing software systems that can be evolved by end users. Metadesign, a new design paradigm discussed in this chapter, is regarded as a possible answer to this challenge. In this line, we have developed a metadesign methodology, called Software Shaping Workshop methodology, that supports user work