Я понимаю, что это очень широкий вопрос, но короткий ответ "это зависит" не будет принят. Стратегии рождаются для решения широких проблем.
-
Какие проблемы должен учитывать разработчик приложения при разработке стратегии обработки ошибок и исключений?
-
Как стратегия будет отличаться в зависимости от типа программного обеспечения (COTS, собственное бизнес-приложение, консультационные услуги, игра, размещенное веб-приложение, встроенные и т.д.)? Важен ли тип программного обеспечения?
-
Этические, политические и юридические вопросы?
-
Различные перспективы обработки ошибок (пользователь, разработчик, поддержка бизнеса, управление).
Некоторые идеи, которые я бы изучил:
-
Различные маршруты сообщений об ошибках (т.е. пользовательский интерфейс, ведение журнала, автоматическое уведомление администратора).
-
Глубокая защита и надежность (отказоустойчивость и отказоустойчивые механизмы, восстановление от проблем, которые еще не известны).
-
С уважением относиться к пользователям и клиентам (т.е. минимизировать влияние на пользователей программного обеспечения и других людей, обслуживаемых программным обеспечением).
Я ищу аналогичный список идей и концепций.
Пожалуйста, используйте комментарии, чтобы указать мне, если мне нужно уточнить вопрос дальше и спасибо всем, кто внесет вклад!
Справка
Платформа разработки (Java,.NET, mobile) - определенно окажет некоторое влияние на результирующую детальную реализацию стратегии с точки зрения разработчика, но, тем не менее, с точки зрения пользователей.
День дураков, конечно, нет. Большинство устаревших систем, на которых меня просили работать, не имели четкой стратегии обработки ошибок.
Можно ли сделать это wiki сообщества? Нет. Это кажется хорошим вопросом, и хорошие вопросы трудно найти.
Что вы подразумеваете под стратегией? Долгосрочный план, который дает направление, фокус, обеспечивает согласованность и координацию с ошибкой и обработкой исключений. В случае большей команды, работающей над программным обеспечением, стратегия может быть сформирована и распространена в письменной форме.
Кажется, это повторяющийся вопрос (см. Рекомендации по управлению исключениями в Java или C и Что и почему вы предпочитают исключения или коды возврата). Эти вопросы касаются определенной перспективы обработки ошибок (в основном разработчика), я хотел бы узнать больше о других перспективах и о том, как они способствуют общей стратегии.