okay so you need to understand the logic behind the engine mcsf light.
if you generate an error whilst driving along you will get the MCSF error on the info centre and told to go to dealer with a nice engine light symbol on dash and info centre. this means you have generate a fault and it has been recorded, so there should almost certainly be an error code for this.
some erros depending upon the nature of the fault will put the car into a safe mode of presets that will limit the engine considerably whilst still allowing you to drive until safe to stop without doing more damage to the engine.
engine safe mode is only triggered when a fault actually occurs and will stay in safe mode for the rest of your journey. once you turn the car off and later back on again to start a new journey the car will come out of safe mode. it will then only go back into safe mode the next time a fault occurs, if that fault is a safe mode trigger.
now even though the fault may not have occurred again on your subsequent journeys the engine management light will remain on to alert you to the fact that a fault has been detected. it will do this for the next 6 journeys. if the fault has not been detected again after those 6 subsequent engine starts the light should go out, although the fault code should be stored on the ECU.
you could do with taking it to an alfa specialist who will be able to tell you exactly what the fault code means, thats your best chance of success. these lights don't often come on for no reason so there must be a fault code for the light to come on.
dead battery is often a good call though and usually overlooked. dead or failing batteries cause havok with italian electrics. if you have a multimeter check you are getting about 12.50v from the battery with the engine and ignition off.