The Alarm sound is independent from the hardware mute switch. Essentially there are 2 volume states for iOS. One is for system notifications (Alarms, calendar events, emails, SMS, other notifications etc) and one is for playback of music etc in Games, playing music, videos etc etc.
Apps have a choice what to do what the hardware switch is set to mute. The intention is that even with the switch set, you can still hear sounds, the thinking being you have specifically chosen to hear those sounds at that moment in time by playing the video (for example). Therefore, many such sounds "play through" the hardware mute. However, some apps decide to take things another way, and look for the switch state, and match the App actions accordingly.
Both of these volume levels can be set to different levels. In fact, there are sub-levels of the App volume level, in that you can retain different levels depending on whether you are using the speaker, headphones, or a headset (It will switch to the last set level for each type as and when you plug/unplug the relevant accessory)
Either way, the Alarm will ring using the normal notifications volume level (the one you can set at the home screen without any apps running, labeled "Ringer") regardless of your mute switch setting, so just turn it up, flip the mute switch, and unless you fire up a game whilst sleep-gaming, the only sound that will ever disturb you is the Alarm, and/or someone using Find my Phone, which also plays (actually at Max volume) regardless of the setting.