Отчёт (1158758)
Текст из файла
Московский государственный университет имени М. В. Ломоносова,
факультет Вычислительной математики и кибернетики
ОТЧЕТ ПО ООАП
Вариант 10. Web Форум
Выполнил: Щербина Антон Леонидович,
студент 427 группы
Принял: доц. кафедры СП, канд. физ.-мат. наук
Малышко Виктор Васильевич
Москва 2010
Оглавление
Оглавление 2
Глава 1. Постановка задачи 10
Глава 2. Анализ требований 11
Глоссарий деятельности 11
Описания действующих лиц 13
Описание вариантов использования 13
Вариант использования Войти в форум: 13
Вариант использования Зарегистрироваться: 14
Вариант использования Просмотр форума: 14
Вариант использования Добавить сообщение: 16
Вариант использования Редактировать сообщение: 16
Вариант использования Начать тему: 17
Вариант использования Наказать пользователя: 17
Вариант использования Модерировать форум: 18
Вариант использования Управление правами пользователей: 19
Вариант использования Работа с разделами: 19
Глава 3. Анализ системы 21
Диаграмма ключевых абстракций 21
Диаграммы последовательности для вариантов использования 22
Вариант использования Войти в форум: 22
Вариант использования Зарегистрироваться: 23
Вариант использования Просмотр форума: 24
Вариант использования Добавить сообщение: 25
Вариант использования Редактировать сообщение: 26
Вариант использования Начать тему: 27
Вариант использования Наказать пользователя: 28
Вариант использования Модерировать форум: 29
Вариант использования Управление правами пользователей: 30
Вариант использования Работа с разделами: 31
Глава 4. Проектирование 33
Иерархия проектных классов системы 33
Описание классов 35
Класс MainPage 35
Класс RegistrationForm 36
Класс MessageForm 36
Класс TopiсForm 36
Класс UserProfileForm 36
Класс SectionForm 37
Класс LoginController 37
Класс RegistrationController 37
Класс ViewController 37
Класс MessageController 37
Класс TopicController 38
Класс UserProfileControl 38
Класс ModerateController 38
Класс SectionController 38
Класс User 38
Класс Message 39
Класс Topic 39
Класс Section 39
Диаграмма состояний, описывающая поведение класса Message 40
Подсистема DBControl 40
Описание интерфейса IDBController 40
Класс IDBController 40
Диаграмма классов подсистемы DBControl 42
Диаграммы последовательности, описывающие реализацию операций интерфейса IDBController 43
Диаграмма размещения 51
Схема данных 52
Заключение 52
Глава 1. Постановка задачи
Web-форум состоит из нескольких разделов. В каждом разделе содержатся темы, обсуждаемые его пользователями. Темы в разделе упорядочены по убыванию даты последнего ответа в тему. Каждая тема открывается заглавным сообщением и представляет собой древовидную структуру сообщений. Верхний уровень иерархии составляют сообщения, открывающие новые темы, а подуровни составляют сообщения, полученные в ответ на них и т. д.
Сообщение состоит из текста и заголовка (который может не совпадать с заголовком темы). Каждое сообщение-ответ содержит ссылку на сообщение, ответом на которое оно является. Сообщения помечены именами их авторов и двумя датами (датой добавления сообщения и датой его последнего изменения).
Начальной страницей конференции является список разделов, на которой находятся ссылки на первые страницы разделов. Количество тем в разделе может быть большим, поэтому на первой странице раздела отображается список из первых 20 сообщений темы, на второй – следующие 20 и т. д. В списке отображаются только заголовки тем, их авторы и даты последних ответов. Просматривая список, пользователь может перейти на страницу заглавного сообщения темы. Помимо текста заглавного сообщения темы на этой странице отображается список (иерархический) сообщений являющихся ответами на заглавное, ответами на ответы и т. д. С этой страницы пользователь может перейти на страницу сообщения-ответа, на которой также отображается текст сообщения и дерево ответов. На всех страницах сообщений содержатся ссылки на заглавную страницу форума, на страницу текущего раздела форума и на страницу заглавного сообщения темы.
Просматривать страницы форума могут любые пользователи Web. Зарегистрированные пользователи, осуществляют вход в форум, указывая имя и пароль. После входа пользователь может добавить ответ, заполнив форму на странице сообщения, также он может редактировать свои сообщения (в течение двух недель с момента их создания). Еще он имеет возможность начать новую тему, заполнив форму на странице раздела.
Регистрирует новых пользователей администратор форума. При регистрации пользователь заполняет специальную форму, содержимое которой затем пересылается администратору и запоминается в базе пользователей. Администратор решает, регистрировать пользователя или нет, и отправляет свой ответ.
Администратор может создавать, редактировать или удалять разделы. Администратор управляет правами пользователей, он может назначить кого-либо из них модератором (ведущим) какого-либо раздела. У одного раздела может быть несколько ведущих. Модератор имеет право удалять любые сообщения из раздела, редактировать их независимо от срока их создания, переносить темы в другие разделы. Он также может наказывать пользователей, нарушающих правила поведения в форуме, лишая на некоторое время возможности добавлять и редактировать сообщения.
Вариант задания включает в себя разработку схемы базы данных для хранения разделов, тем и сообщений форума, а также информации о зарегистрированных пользователях.
Глава 2. Анализ требований
Глоссарий деятельности
| Раздел (Section) | Часть форума, в которой содержатся темы соответствующие разделу. Темы в разделе упорядочены по убыванию даты последнего ответа в тему. |
| Тема (Theme) | Часть раздела, в которой собраны сообщения по определённому вопросу. |
| Сообщение (Message) | Высказывание пользователя. Состоит из текста и заголовка. |
| Пользователь (User) | Человек, просматривающий страницы форума. |
| Зарегистрированный пользователь(Registered User) | Человек, осуществивший вход в форум. |
| Модератор (Moderator) | Ведущий раздела. |
| Администратор (Administrator) | Человек, управляющий правами пользователей. |
| Регистрация (Registration) | Процесс добавления пользователя в базу пользователей. |
Диаграмма вариантов использования
Описания действующих лиц
Пользователь (User) - лицо, которое использует действующий форум.
Модератор (Moderator) - лицо, которое имеет те же возможности, что и пользователь, но дополнительно может работать с чужими сообщениями и наказывать пользователей.
Администратор (Administrator) - лицо, которое имеет те же возможности, что и пользователь, но дополнительно может работать с разделами и назначать модераторов.
Описание вариантов использования
Вариант использования Войти в форум:
Краткое описание
Данный вариант использования описывает вход пользователя в форум.
Основной поток событий
Данный вариант использования начинает выполняться, когда пользователь хочет войти в форум.
1. Система запрашивает имя пользователя и пароль.
2. Пользователь вводит имя и пароль.
3. Система проверяет имя и пароль, после чего открываются возможности добавления и редактирования сообщений и тем.
Альтернативные потоки
Неправильное имя/пароль
Если во время выполнения Основного потока обнаружится, что пользователь ввел неправильное имя и/или пароль, система выводит сообщение об ошибке. Пользователь может вернуться к началу Основного потока или отказаться от входа в форум, при этом выполнение варианта использования завершается.
Предусловия
Отсутствуют.
Постусловия
Если вариант использования выполнен успешно, пользователь входит в форум. В противном случае состояние системы не изменяется.
Вариант использования Зарегистрироваться:
Краткое описание
Данный вариант использования позволяет пользователю зарегистрироваться в форуме.
Основной поток событий
Данный вариант использования начинает выполняться, когда пользователь хочет зарегистрироваться в форуме.
1. Система запрашивает имя пользователя, пароль, подтверждение пароля, информацию о пользователе.
2. Данные пользователя добавляются в базу пользователей.
Альтернативные потоки
Имя использовано/неверный пароль.
1. Если указанное имя уже зарегистрировано или подтверждение пароля не совпадает с паролем, то выдаётся предупреждение. Пользователь может вернуться к началу Основного потока или отказаться от регистрации, при этом выполнение варианта использования завершается.
Предусловия
Отсутствуют.
Постусловия
Если вариант использования завершится успешно, пользователь будет добавлен в базу. В противном случае база не изменится.
Вариант использования Просмотр форума:
Краткое описание
Данный вариант использования позволяет пользователю выбирать раздел, тему и читать сообщения.
Основной поток событий
Данный вариант использования начинает выполняться, когда пользователь хочет прочитать сообщения.
1. Система выдаёт пользователю начальную страницу (страницу со списком разделов).
2. Пользователь выбирает интересующий его раздел.
3. Система выдаёт страницу со списком тем (не более 20 на странице).
4. Пользователь выбирает интересующую его тему.
5. Система выдаёт страницу заглавного сообщения темы.
Альтернативные потоки
Перейти к следующим темам
1. Если интересующей пользователя темы нет на текущей странице тем, то пользователь может перейти к другой странице тем.
Предусловия
Отсутствуют.
Постусловия
Отсутствуют.
Диаграмма деятельности для варианта использования «Просмотр форума» (ViewForum)
Вариант использования Добавить сообщение:
Краткое описание
Данный вариант использования позволяет пользователю добавить своё сообщение в форум.
Основной поток событий
Данный вариант использования начинает выполняться, когда пользователь хочет добавить сообщение.
1. Пользователь заполняет форму на странице сообщения и отправляет сообщение.
2. Система добавляет сообщение в базу форума.
Предусловия
Перед началом выполнения данного варианта использования пользователь должен войти в форум и обладать правом на добавление сообщений.
Постусловия
Если вариант использования завершится успешно, будет добавлено сообщение. В противном случае база форума не изменится.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.















