Цель работы: Разработать веб-приложение, предназначенное для написания литературных произведений. Каждое произведение может быть написано одним или несколькими пользователями приложения (произведение разбивается на несколько частей, каждый пользователь дополняет произведение своей частью). Также присутствует возможность чтения уже завершенных произведений.
Инфологическая модель базы данных, требуемой для работы разрабатываемого веб-приложения:
Даталогическая модель базы данных, требуемой для разрабатываемого веб-приложения:
Сущности:
- Пользователь – содержит информацию о пользователях;
• ID_Пользователь – уникальный идентификатор пользователя;
• ФИО – фамилия, имя и отчество пользователя;
• СтатусПользователя – online/offline;
• ТипПользователя – стандартный п-ль/модератор/администратор;
- Отрывок – содержит информацию об отрывках литературных произведений;
• ID_Отрывок – уникальный идентификатор отрывка;
• Произведение – произведение, к которому относится отрывок;
• Пользователь – пользователь, который является автором отрывка;
• ТекстОтрывка – текст отрывка;
- Произведение – содержит информацию о литературных произведениях;
• ID_Произведение – уникальный идентификатор произведения;
• Жанр – жанр произведения;
• Отрывок – отрывки, из которых состоит произведение;
• Название - название произведения;
• Статус – завершено/не завершено;
Назначение и описание логики работы веб-приложения, её связь с моделью БД:
Приложение предназначено для написания и чтения литературных произведений различных жанров. Пользователи могут дописывать произведения или читать уже написанные произведения. Каждое произведение разделяется на отрывки (от 1 до n отрывков в каждом произведении). Каждый отрывок имеет автора. Количество отрывков произведения увеличивается до тех пор, пока произведению не присваивается статус «завершено». Далее произведение будет доступно для чтения.
При добавлении нового отрывка происходит обновление таблицы «Отрывок» и «Произведение». В новой записи содержится текст отрывка и информация об авторе (UPDATE).
При создании нового произведения в таблицу «Произведение» добавляется новая запись, которая содержит информацию о жанре, названии и пр. (UPDATE).
После того, как пользователи решают, что произведение закончено, данные в таблице «Произведение» обновляются, а конкретному произведению присваивается статус «завершено»;
При необходимости администратор может удалять рядовых пользователей, при этом будет происходить удаление соответствующей записи из таблицы «Пользователи» (DELETE);
Модератор может удалять отрывки произведений или уже завершенные произведения. Возможно изменение информации о произведении. (DELETE/UPDATE);
Пользователи могут читать уже завершенные произведения (SELECT);
При регистрации происходит добавление новой записи в таблицу «Пользователь» (UPDATE).
Доступные возможности администратора и пользователя:
Стандартный пользователь:
Пользователь может просматривать список уже завершенных произведений, писать отрывки для произведений, которые имеют статус «не завершено» или же создавать новые произведения. Каждый пользователь может писать несколько отрывков для одного и того же произведения. Также пользователь может изменять статус произведения на «завершено», если считает, что идея произведения раскрыта до конца.
Администратор:
Администратор отвечает за регистрацию новых стандартных пользователей и за их удаление из списка пользователей. Администратор не может воздействовать на литературные произведения.
Модератор:
Модератор может удалять определенные отрывки произведений или уже завершенные произведения целиком. Также модератор может редактировать отрывки и информацию о произведении (изменять статус, название и пр.).