Це питання призначений виключно для вивчення та посилення мого технічного розуміння. Я знаю, що немає ідеального рішення, і це питання дозволяє ніколи не закінчуватися списком рішень, але я думаю, що дуже важливо, щоб кожен архітектор розумів різницю між демонстраційним та живим проектом.
У минулому я створив багато демо-рішень. Мені зараз призначено архітектора та впровадити веб-рішення на рівні виробництва, тому я хотів запитати - на дуже високому рівні, що потрібно для перетворення демонстрації у рішення на рівні виробництва. Наскільки я розумію, це вимагатиме (крім функціонального виконання вимог клієнтів):
- Блок тестування кожного методу
- Забезпечується ~ 100% охоплення коду
- Реєстрація всіх винятків та можливих точкових скорочень - можлива за допомогою AOP
- Використання схеми дизайну інтерфейсу, введення залежності, можливо, за допомогою рамки, наприклад spring.net
- Використання лічильників та профілів для приладів
- Застосування відповідної безпеки - тобто аутентифікації Windows (якщо це вимагає клієнт).
- Управління транзакціями для кожного окремого методу
- Резервне копіювання файлів веб-додатків перед новим розгортанням рішення
Що ще?
Моє запитання більше стосується технічної сторони, а не функціональної / документації, оскільки в іншому випадку ми підемо іншим шляхом :-)
Дякую.