Этот вопрос предназначен исключительно для изучения и углубления моего технического понимания. Я знаю, что нет идеального решения, и у этого вопроса есть возможность никогда не заканчивать список решений, но я думаю, что для каждого архитектора очень важно понимать разницу между демонстрацией и живым проектом.
Я создал много демонстрационных решений в .Net в прошлом. Теперь мне поручено разработать и внедрить веб-решение на уровне производства, поэтому я хотел спросить - на очень высоком уровне, что требуется для преобразования демонстрации в решение на уровне производства. Насколько я понимаю, это потребует (кроме функциональной реализации требований клиентов):
- Модульное тестирование каждого метода
- Обеспечение покрытия кода ~ 100%
- Регистрация всех исключений и возможных указателей - возможно с AOP
- Использование шаблона проектирования интерфейса, внедрение зависимостей, возможно, с использованием фреймворка, например spring.net
- Использование счетчиков производительности и профилировщиков для измерительных приборов
- Применение соответствующей безопасности - то есть проверка подлинности Windows (если это требуется клиентом).
- Управление транзакциями по каждому методу
- Резервное копирование файлов веб-приложения перед новым развертыванием решения
Что еще?
Мой вопрос больше связан с технической стороной, а не с функционалом / документацией, потому что иначе мы пойдем по другому пути :-)
Спасибо.