Graphical User Interface (GUI) development is time-consuming and error-prone, especially if GUIs for different devices (e.g., smartphone, tablet or desktop PC) are needed for the same application. Model-driven GUI generation approaches have the potential to decrease the development effort through applying automated transformations while refining device-independent high-level interaction models to GUI source code. However, the usability of such automatically generated GUIs is typically rather low. Manual customizations on GUI models can be applied to improve the usability, but are typically lost in case of regeneration. This work extends a previous model-driven GUI generation approach - the Unified Communication Platform (UCP) - to support the automated transformation of device-independent high-level interaction models to device-tailored GUIs, and to give the designer more control over the resulting GUIs. Tailoring a GUI, through optimizing it for a specific device, improves its usability. This helps to achieve a good level of usability for devices with a small screen (e.g., smartphones), because they are more constrained in terms of screen size than devices with a large screen (e.g., desktop PC). In general, however, even an optimized GUI may still not be sufficient to achieve the desired level of usability or the desired "look & feel" of a GUI. We, therefore, propose an interactive GUI generation approach that allows the designer to select between different tailoring strategies and to customize the optimized GUI through specific transformation rules or adaptations on a screen-based GUI model. The UCP-based implementation of our conceptual approach supports the fully automatic generation of the GUI code and parts of the application back-end. Based on this tool, we defined an iterative and incremental process for interaction design and GUI customization, to achieve a good level of usability for the GUI's behavior and its structure. In its previous version, UCP already supported the transformation of device-independent high-level interaction models, so-called Discourse-based Communication Models, to Web-based GUIs. We extended UCP to provide a screen-based GUI model (the Screen Model). The Screen Model provides the basis for both, our automated approach for tailoring the GUI for a specific device, and for manual customization. We applied our new approach and our iterative and incremental development process using UCP, to develop two small applications (flight booking and bike rental), and a more elaborate vacation booking application. This allowed us to test the feasibility of our conceptual approach and to evaluate the usability of the generated GUIs.