Требования
Проект должен содержать 1 основное приложение и несколько вторичных вспомогательных приложений (которые используют одни и те же доменные объекты, имеют некоторые общие службы, но также имеют некоторые слегка отличающиеся друг от друга - поэтому не нужны для основного приложения - должны быть разделены).
Должна существовать общая служба поиска (возможно, в разных DLL) по большинству доменных объектов, если не по всем, с помощью настраиваемых критериев поиска и общей логики для извлечения возможных значений этих критериев (например, при поиске авторов, для получить книгу по ней).
Проблема
Подходит ли DDD здесь? И если да, то как должна выглядеть структура моего проекта? (лучший формат для ответа - список структурированных библиотек DLL + некоторые наиболее значимые пространства имен).