As the first step, I would start with peeling the tomatoes because it requires a bit more time. You can either hold them on the fire until the peel starts cracking and then you remove it, or you can immerse them in the boiling water for 30 seconds and the skin should be easy to peel off.
Add the olive oil to the pan with the garlic cloves cut in half and start browning them on medium heat making sure you don't burn them.
Once the garlic is golden, add the spring onion sliced not too finely, and leave it to slightly caramelize.
Wash the asparagus and cut them into small cubes if you haven't already.
While the onion is browning, add the eggs to a large bowl and start whisking them. You can incorporate the grated Parmigiano now.
When the onion is slightly caramelized, add the asparagus cut into small pieces and a pinch of salt. Let cook for a few minutes on medium heat stirring often. Add a splash of water from time to time, slightly lower the fire, and let the asparagus cook until soft. This will take around 10 to 15 minutes.
Pre-heat the oven to 200°C/392°F.
Once the asparagus is cooked, turn off the heat and let cool down for a few minutes. When it's not too hot anymore, incorporate the asparagus with the eggs in the bowl and give a good mix.
Add the batter to the baking tray previously oiled up and put it in the oven for 25 to 30 minutes.
It's cooked when it becomes solid. You can do the test of the toothpick, stick it in and if it comes out clean, your asparagus frittata is ready.