# A Blockchain-Based Real-Time Power Balancing Service for Trustless Renewable Energy Grids
## 5 Assessment of the Results  
The presented solution was specifically designed and developed as a proof of concept to assess the advantages and drawbacks of using a blockchain for supporting the operating protocol of a real-world decentralized application with basic time constraints, namely the energy-balancing operator service. Such a service requires the whole set of contributing actors to react in a timely manner to a collectively shared service request and implement their part of a (simple) collective behavior within a specific time frame, despite any communication delay that the blockchain itself might add. This raises two research questions: How high can the size of this set of contributing actors be scaled up? How much will the blockchain actually affect their interaction delays? To answer these questions, a very large set of tests was run to profile the behavior of the blockchain network in the implemented case study, to identify any factors affecting its scalability and, whenever possible, suggest strategies to overcome them. The first actual data obtained from the tests showed that the developed DApp could not scale up to a managed pool size greater than 290-300 DERs, with slightly varying results depending on the considered DApp prototype version. Beyond that upper boundary, the DApp showed unpredictable variations and/or stalls in the DApp protocol interactions. This upper bound was reached gradually, starting with a few tens of DERs, and then repeatedly testing the DApp with increasingly complex scenarios, by steps of ten additional DERs each. During the research experiments, as soon as we had identified a solution to overcome a specific technical implementation issue behind the observed scalability limits, we gradually integrated it into the DApp prototype. As a consequence, only the final DApp version is presented and discussed in this paper, which, as we said, works correctly and interacts reliably with the blockchain testnet for up to 290 managed DERs. The reasons for this behavior were thoroughly examined and are discussed throughout this section, while in the following, we present several example system behaviors observed in the DApp test runs. Figure 4 shows several plots of the ramp-up of the aggregated power, for 100, 200, and 290 registered prosumers, at the completion of the application setup (registration) phase, for successful completion cases. Figure 5 shows some failure cases, that is when the programmed number of prosumers that should have registered with the aggregator service was not reached, since their transaction request issued to the blockchain failed somehow. Figures 6 and 7 show several aggregated power graph screenshots representative of the observed behavior in response to some of the more interesting cases of the tested modulation requests for some success and some failure cases, respectively. A modulation was successful when the target modulated power was fully reached (with the contribution of all prosumers) in a transient time less than the (real-world inspired) max lapse of 15 min. It was unsuccessful when it did not, due to some (even very few) prosumers failing to correctly interact with the aggregator by means of the blockchain. Figures 4-7 show a graphic area that was originally designed to represent a 60 min long period, as well as four consecutive 15 min long partitions separated by three dotted vertical lines. The three lines indicate in the graph the occurrence of three milestone events in the implemented power modulation duty cycle, respectively: (1) the first line (from the left) is the end of the allowed transient from the baseline to the target modulated power; (2) the second line denotes the end of the steady state and the start of the transient from target power back to baseline; (3) the third line is the maximum allowed time to end this latter transient and have, again, a steady baseline power. The graph areas report the simulation time of day on the X-axis and the value of the current aggregate power on the Y-axis.