3271
Обсуждение статей / Re: Отношение extend
« : 16 Июля 2009, 22:53:27 »
Pshony,
давайте разберемся, что и как мы моделируем.
Модель использования входит в моделирование взаимодействия. Модель использования прежде всего состоит из
перечисления участников: основных действующих лиц, второстепенных действующих лиц, закулисных действующих лиц
и
перечисления их значимых интересов
Это базис, который позволяет создать контекст решаемой задачи.
Далее для действительно важного набора вариантов использования создаются текстовые спецификации их.
В ходе описания (желательно на структурированном языке) проблемы включения, расширения и т.п. в общем-то нет так актуальны. Тут главный принцип: простота и понятность. Вносит больше понятности и простоты понимания некоторая структурированность, оформленная как отдельные ВИ включение и расширения - делаем это, нет - избегаем этого.
Критерий тут только опыт - опыт написания (и рисования) вариантов использования для ДРУГИХ людей, получения от них обратной связи (рефлексии).
Многие авторы советуют использовать диаграмму вариантов использования как иллюстрированное содержание к модели вариантов использования.
Но, конечно, Вы можете делать то, что полагаете нужным, но правильно. Что это значит? Рисуя пиктограммы ВИ (овал с описанием цели), Вы инкапсулируете все виды сценариев данного ВИ, т.е. видя овал, мы не видим всех сценариев данного ВИ: успешных или неуспешных. Далее структурируя диаграмму использования и добавля отношения включения и расширения между ВИ, мы никаким образом не указываем в каком месте какого конкретного сценария будет происходить включение или расширения.
МЕСТО включения Вы определяете в тексте - для меня же видно только два овальчика о --> о, они мне говорят - первый базовый ВИ, он где-то (в основном потоке или в каких-то исключениях) включает в себя другой ВИ. Без этого другого ВИ он неполный, несостоятельный, он просто не имеет экземпляра. Другой ВИ - нечто самостоятельное, возможно тоже не инициируемое ДЛ, но которое как-то спокойно может обойтись и без своего базового.
Точно так же и с расширением - Вы только на пиктограмме указываете точки расширения, и только в тексте ВИ Вы можете указать где же это может произойти именно.
В вашей задаче о пересылке письма следует понять, что указание или не указание адреса - лишь отдельный шаг варианта использования.
Возможность или нет сохранить письмо в черновике, скорее опциональность к ВИ Послать письмо.
Обратите внимание, что у Вас ВИ - Послать письмо - ограничивается именно пересылкой письма, т.е. как бы получается примерно следующее:
ВИ: Отправить новое письмо (ответ)
Предусловие: текст письма написан и готово к отправке
Основной поток:
1. Пользователь вводит email получателя
точка расширения: массовая рассылка
2. Пользователь вводит тему письма, если необходимо
3. Пользователь отправляет письмо
4. Система (почтовый клиент) сообщает об успешной отправки письма
Альтернативные потоки (исключения, ветвления, прерывания, расширения)
* В любой момент пользователь закрывает редактор письма
*1 система предлагает сохранить письмо как черновик
*2 если пользователь соглашается
*2.1 система сохраняет письмо как черновик и помещает в папку Черновики
иначе
*2.2 система удаляет новое письмо
И1. нет соединения с сервером
И1.1. система сообщает, что отсутствует соединение с сервером
И1.2. система помещает письмо в папке Исходящие
Далее можно написать расширяющий ВИ: Указать адреса для массовой рассылки
В любом случае - ВИ - это нестрогие математические законы, это семантика + ваше понимание и умение. Наверняка, Вы можете придумать что-то свое и не менее оригинальное и понятное
давайте разберемся, что и как мы моделируем.
Модель использования входит в моделирование взаимодействия. Модель использования прежде всего состоит из
перечисления участников: основных действующих лиц, второстепенных действующих лиц, закулисных действующих лиц
и
перечисления их значимых интересов
Это базис, который позволяет создать контекст решаемой задачи.
Далее для действительно важного набора вариантов использования создаются текстовые спецификации их.
В ходе описания (желательно на структурированном языке) проблемы включения, расширения и т.п. в общем-то нет так актуальны. Тут главный принцип: простота и понятность. Вносит больше понятности и простоты понимания некоторая структурированность, оформленная как отдельные ВИ включение и расширения - делаем это, нет - избегаем этого.
Критерий тут только опыт - опыт написания (и рисования) вариантов использования для ДРУГИХ людей, получения от них обратной связи (рефлексии).
Многие авторы советуют использовать диаграмму вариантов использования как иллюстрированное содержание к модели вариантов использования.
Но, конечно, Вы можете делать то, что полагаете нужным, но правильно. Что это значит? Рисуя пиктограммы ВИ (овал с описанием цели), Вы инкапсулируете все виды сценариев данного ВИ, т.е. видя овал, мы не видим всех сценариев данного ВИ: успешных или неуспешных. Далее структурируя диаграмму использования и добавля отношения включения и расширения между ВИ, мы никаким образом не указываем в каком месте какого конкретного сценария будет происходить включение или расширения.
МЕСТО включения Вы определяете в тексте - для меня же видно только два овальчика о --> о, они мне говорят - первый базовый ВИ, он где-то (в основном потоке или в каких-то исключениях) включает в себя другой ВИ. Без этого другого ВИ он неполный, несостоятельный, он просто не имеет экземпляра. Другой ВИ - нечто самостоятельное, возможно тоже не инициируемое ДЛ, но которое как-то спокойно может обойтись и без своего базового.
Точно так же и с расширением - Вы только на пиктограмме указываете точки расширения, и только в тексте ВИ Вы можете указать где же это может произойти именно.
В вашей задаче о пересылке письма следует понять, что указание или не указание адреса - лишь отдельный шаг варианта использования.
Возможность или нет сохранить письмо в черновике, скорее опциональность к ВИ Послать письмо.
Обратите внимание, что у Вас ВИ - Послать письмо - ограничивается именно пересылкой письма, т.е. как бы получается примерно следующее:
ВИ: Отправить новое письмо (ответ)
Предусловие: текст письма написан и готово к отправке
Основной поток:
1. Пользователь вводит email получателя
точка расширения: массовая рассылка
2. Пользователь вводит тему письма, если необходимо
3. Пользователь отправляет письмо
4. Система (почтовый клиент) сообщает об успешной отправки письма
Альтернативные потоки (исключения, ветвления, прерывания, расширения)
* В любой момент пользователь закрывает редактор письма
*1 система предлагает сохранить письмо как черновик
*2 если пользователь соглашается
*2.1 система сохраняет письмо как черновик и помещает в папку Черновики
иначе
*2.2 система удаляет новое письмо
И1. нет соединения с сервером
И1.1. система сообщает, что отсутствует соединение с сервером
И1.2. система помещает письмо в папке Исходящие
Далее можно написать расширяющий ВИ: Указать адреса для массовой рассылки
В любом случае - ВИ - это нестрогие математические законы, это семантика + ваше понимание и умение. Наверняка, Вы можете придумать что-то свое и не менее оригинальное и понятное


