Я разрабатываю Программное обеспечение для моделирования данных , которое реализовано на Java. Это приложение преобразует текстовые данные (хранящиеся в базе данных) в графическую форму, чтобы пользователи могли интерпретировать данные в более эффективной форме. Теперь к этому приложению будут обращаться 3 вида людей:
1. Менеджеры (которые могут заполнять базу данных данными, а также могут просматривать визуальную форму данных после ввода данных в базу данных)
2. Зрители (которые могут просматривать только визуальную форму данных, заполненных менеджерами)
3. Администраторы (которые могут создавать и управлять другими администраторами, менеджерами и зрителями)
Теперь, как реализовать 3 дифф. просмотров того же приложения.
Примечание. Менеджеры, зрители и администраторы могут находиться в любой части мира и должны получать доступ к приложению через Интернет.
Одна мысль, которая пришла мне в голову, выглядит следующим образом:
Шаг 1: Кодировать всю бизнес-логику в EJB-компонентах, чтобы она могла использоваться в распределенной среде (средства, к которым могут обращаться несколько пользователей через Интернет)
Шаг 2: Код 3 Клиенты графического интерфейса Swing: один для администраторов, один для менеджеров и один для зрителей. Эти 3 клиента GUI могут получить доступ к бизнес-логике, написанной в EJB.
Шаг 3: Распределите клиентов, соответствующих их пользователям. Например, менеджер клиент для менеджеров.
================================= ВОПРОСЫ ======= ================================
Q1. Является ли вышеуказанный подход верным?
Q2. Это очень распространенная функциональность, которая имеется в различных программах. Итак, реализуют ли они такую функциональность тем или иным способом?
Q3. Если какой-либо другой подход был бы лучше, тогда что это за подход?