01_Описание проекта - AWPMasterGames/Tebegram GitHub Wiki
Tebegram
Наш проект — это Мессенджер, вдохновленный Telegram. Основной функционал включает обмен медиафайлами и документами и много чего другого.
Потенциальные риски при разработке проекта
№ | Риск | Вероятность | Влияние | Уровень риска | Митигирующие меры |
---|---|---|---|---|---|
1 | Недостаток опыта работы с многопоточностью и async/await | Средняя | Высокая | Высокая | Изучить основы async/await, применять шаблоны, использовать ConfigureAwait(false) |
2 | Сбои из-за работы с HTTP через HttpClient |
Средняя | Средняя | Средняя | Оборачивать запросы в try/catch, реализовать обработку ошибок и повторные попытки |
3 | Отсутствие автоматических тестов | Высокая | Средняя | Высокая | Написать unit-тесты хотя бы для критических компонентов |
4 | Конфликты в Git при параллельной работе | Средняя | Средняя | Средняя | Разделить зоны ответственности по файлам, использовать feature-ветки |
5 | Потеря данных из-за отсутствия резервного копирования | Низкая | Высокая | Средняя | Регулярные коммиты и резервные копии проекта |
6 | Проблемы с безопасностью (открытые порты, уязвимости) | Средняя | Высокая | Высокая | Изучить базовые принципы безопасного кодирования, закрывать ngrok после тестов |
7 | Сложности с запуском ngrok и получением публичного адреса | Средняя | Средняя | Средняя | Протестировать ngrok на ранней стадии, настроить скрипты получения адреса |
8 | Неправильная работа интерфейса на разных разрешениях экрана | Средняя | Средняя | Средняя | Применять адаптивную верстку (Grid, Viewbox), тестировать на разных экранах |
9 | Задержки из-за личных дел/загруженности | Средняя | Средняя | Средняя | Согласовать расписание, установить регулярные созвоны и статусы |
10 | Нестабильность интернет-соединения для тестирования ngrok | Средняя | Средняя | Средняя | Тестировать офлайн-функции, заранее прогонять ngrok и кешировать адрес |
11 | Уязвимость HTTP-протокола без шифрования | Высокая | Средняя | Высокая | Перейти на HTTPS через ngrok, избегать передачи чувствительных данных |
12 | Проблемы с отображением сообщений при больших объемах текста | Средняя | Средняя | Средняя | Ограничить размер сообщений, протестировать на больших строках |
13 | Низкая производительность при увеличении количества сообщений | Средняя | Средняя | Средняя | Применить VirtualizingStackPanel , профилировать производительность |
14 | Отсутствие лога/журнала для отладки | Средняя | Средняя | Средняя | Добавить логгирование через Debug.WriteLine или лог-файл |
15 | Проблемы с совместной работой через GitHub (push без pull, конфликты) | Средняя | Средняя | Средняя | Придерживаться Git flow, использовать пул-реквесты, предварительные pull'ы |