  A traditional approach to realize self-adaptation in software engineering
(SE) is by means of feedback loops. The goals of the system can be specified as
formal properties that are verified against models of the system. On the other
hand, control theory (CT) provides a well-established foundation for designing
feedback loop systems and providing guarantees for essential properties, such
as stability, settling time, and steady state error. Currently, it is an open
question whether and how traditional SE approaches to self-adaptation consider
properties from CT. Answering this question is challenging given the principle
differences in representing properties in both fields. In this paper, we take a
first step to answer this question. We follow a bottom up approach where we
specify a control design (in Simulink) for a case inspired by Scuderia Ferrari
(F1) and provide evidence for stability and safety. The design is then
transferred into code (in C) that is further optimized. Next, we define
properties that enable verifying whether the control properties still hold at
code level. Then, we consolidate the solution by mapping the properties in both
worlds using specification patterns as common language and we verify the
correctness of this mapping. The mapping offers a reusable artifact to solve
similar problems. Finally, we outline opportunities for future work,
particularly to refine and extend the mapping and investigate how it can
improve the engineering of self-adaptive systems for both SE and CT engineers.
