Preheat the oven to 120°C.
Add half the olive oil to another frying pan and fry bacon until crisp. Transfer to a plate line with kitchen paper and leave to drain.
Spilt the muffins open and toast on both sides, spreading with a little butter if you like. Transfer the muffins and the bacon to the low oven to keep warm.
Fill a deep-frying pan with boiling water from the kettle water and add a pinch of salt, setting over a high heat to bring to the boil. Reduce the heat to a minimum so you just see a few gentle bubbles forming.
Crack an egg into to a small bowl and slide gently into the water, lowering the bowl as close to the water surface as you can so the egg doesn’t spread out. Repeat with the other eggs and leave to poach until cooking to your liking, about 5-7 minutes.
Bring a pan of water to the boil, add the asparagus and cook for 2-3 until just tender. Drain well, drizzle over the rest of the olive oil and season with a little salt and pepper. Keep warm with the muffins and bacon if the eggs are not quite ready.
Use a slotted spoon to lift the eggs from the water to a plate lined with kitchen paper. Allow to drain for a few seconds.
To assemble the muffins, start by adding 3 rashers of bacon to each muffin. Divide the seasoned asparagus between each muffin and finish with a poached egg. Top with other half of the muffin and tuck in immediately.