На мой взгляд здесь много разрозненных вопросов. Некоторые относятся к архитектуре приложения, некоторые к конфигурированию IIS, некоторые еще куда-то.
Касательно публикации самого приложения - это 2 кнопки и 3 галочки. Хотите большего? разбирайтесь с параметрами консольных команд msbuild -
https://msdn.microsoft.com/ru-ru/library/ms164311.aspx.
Касательно EF - тут вообще все зависит от структуры базы, от внесенных изменений и вообще это вопрос деплоя и версирования БД. Чую у вас тут попахивает Code First с накатом структуры данных, вы отдали этот вопрос на откуп EF - значит разбирайтесь с EnityFramework на более глубоком уровне.Опять же это не совсем вопрос deploy.
Касательно IIS - что понимать под тонкой настройкой?
https://msdn.microsoft.com/ru-ru/library/ms178477(... - Покопайтесь здесь
Касательно всего процесса - есть такая вещь как continuous integration. И такие решения как CruiseControl.NET и TeamCity. Это инструмент, который по факту обращения будет делать набор инструкций для деплоя вашего проекта(какие укажете). Например - собрать проект, прогнать тесты, если все хорошо накатить базу, если все хорошо - скопировать папку с файлами в директорию приложения и стартануть веб-сервер.