3. Описание нефункциональных требований
Словарь терминов
Термин |
Определение |
Синоним |
Владелец |
Человек, имеющий возможность создания блога и его изменения |
Создатель |
Гость |
Посетитель блога, имеющий право на комментирование постов |
Посетитель |
Система |
Система поддержки и управления блогом |
System |
Сервер |
Вычислительная часть блога |
Server |
Пост |
Запись владельца в блоге |
Post |
Комментарий |
Запись под постом, оставленная гостем или владельцем |
Commentary |
Аутентификация |
Процедура проверки подлинности |
Authentication |
Блог |
Совокупность записей и комментариев |
Blog |
Логин |
Имя владельца для уникального доступа в блог |
Login |
Пароль |
Набор символов для уникального доступа в блог в соответствии с логином |
**** ****, Password |
Пользователь |
Человек, имеющий права на изменение данных собственного блога |
User |
Форма |
Указание желаемого имени, пароля, списка своих интересов, дату рождения |
Form |
Моделирование предметной области
Выделили концептуальные классы.
Отобразили их модели в модели предметной области в виде классов на диаграмме UML.
Добавили необходимые ассоциации и атрибуты.
Результатом выполнения этих действий для предметной области системы «Блога» будет следующая диаграмма классов (рис 1.).
Рисунок 1 - Диаграмма классов предметной области
5. Составление системных диаграмм последовательностей
Составим диаграммы СДП, используя основной успешный сценарий прецендента.
Рисунок 2 – Диаграмма системной последовательности регистрации
Рисунок 3 – Диаграмма системной последовательности аутентификации
Рисунок 4 – Диаграмма системной последовательности редактирование личных данных
Рисунок 5 – Диаграмма системной последовательности удаление блога
Рисунок 6 – Диаграмма системной последовательности публикации поста
Рисунок 7 – Диаграмма системной последовательности изменения записи
Рисунок 8 – Диаграмма системной последовательности удаление записи
Рисунок 9 – Диаграмма системной последовательности добавления комментария
Рисунок 10 – Диаграмма системной последовательности удаления комментария
Составление описание операций
Описание операции регистрации блога:
Операция: RegistrationBlog (name: string, login: char[], password: char[], preference: string[], birthdate: date, mail: string, info: string)
Ссылки: Прецеденты: Регистрация собственного блога
Предусловия: Пользователь не зарегистрирован в системе
Постусловия:
- создаем экземпляр класса User и Blog
- Атрибуту User.name присваиваем значение name
- Атрибуту User.login присвоено значение login
- Атрибуту User.password присвоено значение password
- Атрибуту User.preference присвоено значение preference
- Атрибуту User.birthdate присвоено значение birthdate
- Атрибуту User.mail присвоено значение mail
- Атрибуту User.info присвоено значение info
2) Описание операции аутентификации:
Операция: Autentification(login: char[], password: char[])
Ссылки: Прецеденты: Аутентификация
Предусловия: Пользователь уже зарегистрирован в системе
Постусловия:
- user получает доступ к классу User
3) Описание операции редактирования блога:
Операция: EditBlog (user: User)
Ссылки: Прецеденты: Изменение данных собственного блога
Предусловия: Существование блога в системе, наличие аутентификации
Постусловия:
- вносятся изменения в экземпляр класса user
4) Описание операции удаления блога:
Операция: DeleteBlog (user: User)
Ссылки: Прецеденты: Удаление собственного блога
Предусловия: Выполнен вход в систему
Постусловия:
- удален соответствующий экземпляр класса user
5) Описание операции публикации поста:
Операция: PostPublication(user: User, content: string, access: bool)
Ссылки: Прецеденты: Изменение данных собственного блога
Предусловия: Аутентификация и наличие блога
Постусловия:
- Создан экземпляр Post в экземпляре класса Blog
- Атрибуту Post.user присваиваем значение user
- Атрибуту Post.publicationTime присвоено значение timevt
- Атрибуту Post.access присвоено значение bool
- Атрибуту Post.content присвоено значение string
6) Описание операции редактирование публикации:
Операция: EditPost (post: Post)
Ссылки: Прецеденты: Изменение данных собственного блога
Предусловия: Наличие записи
Постусловия:
- вносятся изменения в экземпляр класса Post
7) Описание операции удаления публикации:
Операция: DeletePost (post: Post)
Ссылки: Прецеденты: Изменение данных собственного блога
Предусловия: Наличие записи
Постусловия:
- удаляется соответствующий экземпляр класса post
8) Описание операции добавления комментарияочен:
Операция: commentPublication (comment: string, user: User)
Ссылки: Прецеденты: Комментирование
Предусловия: Существование записей в блоге, разращение комментирования
Постусловия:
- Создан экземпляр Comment в экземпляре класса Post
- Атрибуту Comment.user присваиваем значение user
- Атрибуту Comment.postId присваиваем значение user
- Атрибуту Comment.timeOfPublication присвоено значение time
- Атрибуту Comment.content присвоено значение string
9) Описание операции удаление комментария:
Операция: deleteComment (comment: Comment)
Ссылки: Прецеденты: Комментирование
Предусловия: Существование комментария
Постусловия:
- удаляется соответствующего комментария