Правильно ли изображена ДВИ на сайте в разделе "FAQ – Use Case"?(Прочитано 22059 раз)
И ещё хотел бы обратить внимание на картинку на сайте - FAQ - Use Cases (Варианты Использования).
Там изображён пользователь и два ВИ(логин и регистрация), между которыми установлено отношение расширения (extend). По-моему, это далеко не отношение расширения, это отношение включения, то есть один ВИ (логин) зависит от поведения второго ВИ (регистрация). А отношение расширения - это дополнительный функционал в зависимости от условий, объявленных в перовм ВИ.
Это замечание актуально, конечно, если, корректность картинки принципиальна. =)
« Последнее редактирование: 25 Декабря 2008, 13:33:01 от bas »



И ещё хотел бы обратить внимание на картинку на сайте - FAQ - Use Cases (Варианты Использования).
Там изображён пользователь и два ВИ(логин и регистрация), между которыми установлено отношение расширения (extend). По-моему, это далеко не отношение расширения, это отношение включения, то есть один ВИ (логин) зависит от поведения второго ВИ (регистрация). А отношение расширения - это дополнительный функционал в зависимости от условий, объявленных в перовм ВИ.
Это замечание актуально, конечно, если, корректность картинки принципиальна. =)
Не соглашусь.
Пользователь инициирует ВИ "Логин" и понимает, что нут у него учетки :). Тогда он запускает ВИ "Регистрация" или завершает данный. Если учетка есть, то регистрация нам не нужна.
В данном случае Регистрация  будет являться точкой расширения в ВИ "Логин"
С другой стороны, пользователь может не логиниться, а сразу запустить регистрацию. Включение не покатит, имхо.

Включение можно использовать только в том случае, если после регистрации мы снова возвращаемся в ВИ "Логин" и используем регистрационные данные для входа в систему. Если же после того, как мы зарегистрировались нужно снова запускать ВИ "Логин", то расширение. Все зависит от сценария и логики работы приложения. Нужно описание того и другого ВИ, а тогда уже думать о модели :)
« Последнее редактирование: 25 Декабря 2008, 12:01:22 от Виталий Григораш »
Если вы не знаете куда идете, то вы вряд ли туда дойдете [Форест Гамп]
www.grigorash.ru



Не соглашусь.
Пользователь инициирует ВИ "Логин" и понимает, что нут у него учетки :). Тогда он запускает ВИ "Регистрация" или завершает данный. Если учетка есть, то регистрация нам не нужна.
В данном случае Регистрация  будет являться точкой расширения в ВИ "Логин"
С другой стороны, пользователь может не логиниться, а сразу запустить регистрацию. Включение не покатит, имхо.

Что такое ВИ? ВИ - это некий функционал, предоставляемой системой. ВИ "Логин" - авторизация пользователя, то есть это ВИ позволяет пользователю войти, если он ввёл правильный(известный системе) логин/пароль. Без регистрации залогиниться ну никак не получится, а это значит, что выполнение одного ВИ зависит от другого ВИ. А отношение расширения - это лишь дополнительный функционал, выполняемый при определённом условии, однако, без выполненного ВИ "Регистрация" залогиниться не получится, то  есть не будет работать ВИ "Логин". ИМХО =)

Включение можно использовать только в том случае, если после регистрации мы снова возвращаемся в ВИ "Логин" и используем регистрационные данные для входа в систему. Если же после того, как мы зарегистрировались нужно снова запускать ВИ "Логин", то расширение. Все зависит от сценария и логики работы приложения. Нужно описание того и другого ВИ, а тогда уже думать о модели

Опаньки...) а ведь мы тут рассматриваем Use Case, в котором важна функциональность системы, а последовательность действий - это уже другое. Тут рассматривается статика, только то, что предоставляет система - функия авторизации, функция регистрации, функция оформления заказа и т.д.. имхо...)



Что такое ВИ? ВИ - это некий функционал, предоставляемой системой. ВИ "Логин" - авторизация пользователя, то есть это ВИ позволяет пользователю войти, если он ввёл правильный(известный системе) логин/пароль. Без регистрации залогиниться ну никак не получится, а это значит, что выполнение одного ВИ зависит от другого ВИ. А отношение расширения - это лишь дополнительный функционал, выполняемый при определённом условии, однако, без выполненного ВИ "Регистрация" залогиниться не получится, то  есть не будет работать ВИ "Логин". ИМХО =)
А что есть функционал? Я такого термина не понимаю.
ВИ - это способ описания того, что ДОЛЖНА сделать система, чтобы ДОСТИЧЬ цели пользователя. Т.е. ВИ содержит некую поступательную (в смысле движения к цели) сововкупность действия как системы, так и пользователя. Как говорит Коберн некое соглашение, контракт. Контракт часто используемый термин в иностранной литературе

Цитировать
Опаньки...) а ведь мы тут рассматриваем Use Case, в котором важна функциональность системы, а последовательность действий - это уже другое. Тут рассматривается статика, только то, что предоставляет система - функия авторизации, функция регистрации, функция оформления заказа и т.д.. имхо...)
Включение, как Вам объяснили - это обязательный акт. По Вашему, регистрация включается в код авторизации всегда - действительно ли пользователь существует или нет.

Но на деле, авторизация включает только проверку: есть ли пользователь с данными характеристиками или нет. Если результат проверки положительный - обеспечивается доступ, нет сообщается о необходимости регистрации или каких-то других действий. Ведь регистрация может быть и не автоматической, а например нужно написать письмо администратору, позвонить ему по телефону, прийти лично - много вариантов



Цитировать
... Без регистрации залогиниться ну никак не получится, а это значит, что выполнение одного ВИ зависит от другого ВИ. ...
Не надо путать предусловия и связь вариантов использования. То что, перед логином пользователь должен быть зарегистрирован, это показывается либо предусловием, либо проверкой в теле самого варианта использования.
Связь dependency ("зависит") и use, которые показывают, что один элемент зависит от другого между вариантами использования не ставятся.
Если вы не знаете куда идете, то вы вряд ли туда дойдете [Форест Гамп]
www.grigorash.ru



Опаньки...) а ведь мы тут рассматриваем Use Case, в котором важна функциональность системы, а последовательность действий - это уже другое. Тут рассматривается статика, только то, что предоставляет система - функия авторизации, функция регистрации, функция оформления заказа и т.д.. имхо...)
По-моему. Вы абсолютно не верно трактуете ВИ (возможно я ошибаюсь :)). ВИ в первую очередь это описание последовательности действий пользователя и откликов системы. Если вы используете диаграмму ВИ для того, чтобы описать функции системы ("статику"), без описания поведения, то я бы Вам посоветовал избавляться от подобной практики.
Если вы не знаете куда идете, то вы вряд ли туда дойдете [Форест Гамп]
www.grigorash.ru



А что есть функционал? Я такого термина не понимаю.
ВИ - это способ описания того, что ДОЛЖНА сделать система, чтобы ДОСТИЧЬ цели пользователя. Т.е. ВИ содержит некую поступательную (в смысле движения к цели) сововкупность действия как системы, так и пользователя. Как говорит Коберн некое соглашение, контракт.

Всё же, позволю с Вами не согласиться...) Как я понимаю, ВИ - это не способ описания того, что должна делать система, чтобы достичь цели пользователя. ВИ - это и есть в общем то, что должна делать система, чтобы достичь цели пользователя (это я и вкладывал в понятие функционал). Да, пускай это некая последовательность действий, шагов, поступатльная совокупность действий, но, как мне кажется, на уровне конкретного use case'а поступательность непринципиальна, и рассматривается исключительно совокупность выполняемых действий как единое целое для предоставления пользователю конкретного результата (ака регистрация, авторизация, поиск и т.д..).


Включение, как Вам объяснили - это обязательный акт. По Вашему, регистрация включается в код авторизации всегда - действительно ли пользователь существует или нет.

Ну при чём тут код? С точки зрения ДВИ, важно только то, что должна делать система для достижение цели пользователя. Почему такое действие не может быть авторизацией? а так же регистрацией? Мне кажется, Вы погружаетесь в конкретику.
Включение специфицирует тот факт, что некоторый ВИ содержит поведение другого ВИ. То есть поведение одного ВИ зависит от другого.


Но на деле, авторизация включает только проверку: есть ли пользователь с данными характеристиками или нет. Если результат проверки положительный - обеспечивается доступ, нет сообщается о необходимости регистрации или каких-то других действий.

А по-моему, авторизация (логин) - это не проверка пользователя, а предоставление определённого доступа к ресурсам сайта, например.


Ведь регистрация может быть и не автоматической, а например нужно написать письмо администратору, позвонить ему по телефону, прийти лично - много вариантов

Да кто же спорит то? =) Но и здесь ведь важен не способ, а суть. Главное - регистрация, то есть конкретное действие, которое должна выполнить система для получения результата пользоватлем. =)

ПС.
Я не настаиваю на исключительности своей точки зрения и на своей правоте. Я всецело допускаю, что я могу ошибаться. Просто, если я неправ, хочется, чтобы вопрос был до конца ясен.  :)



По-моему. Вы абсолютно не верно трактуете ВИ.
Вполне возможно =)

ВИ в первую очередь это описание последовательности действий пользователя и откликов системы.
Категорически не согласен. Дабы не быть голословным, я попозже приведу доводы и аргументы, надо обратиться к первоисточникам и авторитетным изданиям. ;)
Да, возможно я неправ...)
« Последнее редактирование: 25 Декабря 2008, 17:59:40 от StUtk »



StUtk,

ВИ описывает действия Системы и ПОЛЬЗОВАТЕЛЯ (Актера), чтобы достичь цель последнего. Так что хотя бы поэтому, ВИ  - это НЕ функционал ИС, функционала там только 50%. ВИ - это ПОЛЬЗОВАТЕЛЬСКИЕ Тр., а НЕ "функциональные" по классификации Вигерса.

Чтобы спорить прошу Вас описать сценарии этих 2ух ВИ (хотябы кратко), только после этого можно будет понять "кто прав, а кто виноват"
Не важно какой ты сейчас - большой или маленький, важно - как ты растешь.
Б.А.С.



StUtk,

ВИ описывает действия Системы и ПОЛЬЗОВАТЕЛЯ (Актера), чтобы достичь цель последнего. Так что хотя бы поэтому, ВИ  - это НЕ функционал ИС, функционала там только 50%. ВИ - это ПОЛЬЗОВАТЕЛЬСКИЕ Тр., а НЕ "функциональные" по классификации Вигерса.

По-моему началась путаница из-за слова функционал. ВИ - это некое действие системы приводящее к какому-то результату для актёра. Эта формулировка верна? Для ВИ важно ЧТО делает система, а не КАК она это делает. Правильно?

И ещё, очень интересны мнения по ниже приведённым высказываниям:
- "Функциональные требования определяют действия, которые должна выполнять система, без рассмотрения физических особенностей их реализации."
- "Тем самым функциональные требования определяют внешнее поведение системы."
- "Лучше всего они описываются в форме модели ВИ."

Всё познаётся в сравнении. Вот есть отношение расширения и отношение включения. К примеру, есть ВИ, то есть действие системы, которая считает пользователю в инет-магазине сумму заказанного товара. Пользователь(актёр) получает эту сумму(число). Далее, система может предоставить пользователю скидку. Предоставление скидки - чем не действие системы? Пускай будет ещё один ВИ "предоставление скидки постоянным клиентам". Здесь, как я понимаю, между двумя ВИ ("рассчитать сумму заказа" и "предоставление  скидки постоянным клиентам") отношение расширения. То есть при каком-то условии (постоянный клиент) будет выполняться ВИ, предоставляющий скидку. Но в любом случае, сумма то посчитается, то есть первый ВИ всё равно будет выполнен - сумма товара будет посчитана, со скидкой или без. В случае с регистрацией и авторизацией другая ситуация, то есть система не сможет произвести действие "авторизация" никак, если не была выполнена регистрация. Здесь очевидна зависимость одного действия системы (авторизация) от результатов второго действия (регистрация).
Где мои рассуждения ошибочны? (если я вам ещё не надоел :) )

Чтобы спорить прошу Вас описать сценарии этих 2ух ВИ (хотябы кратко), только после этого можно будет понять "кто прав, а кто виноват"

1. ВИ "авторизация"
цель:
- получения доступа к ресурсам сайта
краткое описание:
- пользователь запрашивает форму авторизации
- система предлагает ввести логин/пароль
- пользователь вводит данные
- система обрабатывает данные и предоставляет или отказывает в доступе

2. ВИ "регистрация"
цель:
- возможность авторизоваться
краткое описание:
- пользователь запрашивает форму регистрации
- система предоставляет форму
- пользователь вводит данные
- система регистрирует пользователя



По-моему началась путаница из-за слова функционал. ВИ - это некое действие системы приводящее к какому-то результату для актёра. Эта формулировка верна? Для ВИ важно ЧТО делает система, а не КАК она это делает. Правильно?
"Для ВИ важно ЧТО делает система,а не КАК она это делает." - это правильно. Но ВИ - это действия и Пользователя и Системы, ВИ - это НЕ только действия системы.

И ещё, очень интересны мнения по ниже приведённым высказываниям:
- "Функциональные требования определяют действия, которые должна выполнять система, без рассмотрения физических особенностей их реализации."
- "Тем самым функциональные требования определяют внешнее поведение системы."
- "Лучше всего они описываются в форме модели ВИ."
1. Ну допустим
2. Не только. ФТ описывают и то что происходит внутри Системы без привязке к физ. реализации.
3. А вот тут путаница. Не знаю почему у Вигерса так сделано, но у него все Тр. делятся на класс ФТ и НеФТ, но есть разные уровни Тр. (БТр, ПТр, ФТр), причем в уровень ФТр входят экземпляр опять же ФТр, Ограничений и Внешних Интерфейсов. См. картинку по классификации Тр. Но Вы в любом случае не правы в Вашем последнем высказывании :) Еще раз скажу, что ВИ - это ПТ по уровням Тр. Вигерса.


1. ВИ "авторизация"
цель:
- получения доступа к ресурсам сайта
краткое описание:
1. пользователь запрашивает форму авторизации
2. система предлагает ввести логин/пароль
3. пользователь вводит данные
4. система обрабатывает данные и предоставляет или отказывает в доступе
А представим, что альтернативным потоком на шаге 4. будет Регистрация, если Пользователь не может авторизоваться?! Так, например, сделано на всех практически сайтах.
Не важно какой ты сейчас - большой или маленький, важно - как ты растешь.
Б.А.С.



"Для ВИ важно ЧТО делает система,а не КАК она это делает." - это правильно. Но ВИ - это действия и Пользователя и Системы, ВИ - это НЕ только действия системы.
По-моему, ВИ - это обобщённое понятие нечто того, что делает система (в документации встречалось выражение unit of functionality, функциональность то бишь по-русски, вроде), а уж детали, грубо говоря в каком поле пользователь вводит логин и пароль - это уже не важно на уровне ВИ, главно, что идёт процесс авторизации. Бесспорно, что выполнение ВИ инициирует актёр.

3. А вот тут путаница. Не знаю почему у Вигерса так сделано, но у него все Тр. делятся на класс ФТ и НеФТ, но есть разные уровни Тр. (БТр, ПТр, ФТр), причем в уровень ФТр входят экземпляр опять же ФТр, Ограничений и Внешних Интерфейсов. См. картинку по классификации Тр. Но Вы в любом случае не правы в Вашем последнем высказывании :) Еще раз скажу, что ВИ - это ПТ по уровням Тр. Вигерса.
А кто такой Вигерс? И вообще, кого можно считать носителем истины о UML? Я тут не пытаюсь навязать своё мировоззрение семантики языка, просто пытаюсь как-то скореллировать то, что вижу здесь, со знаниями, полученными в других источниках.
И ещё, эти три высказывания не мои, это цитаты...)

А представим, что альтернативным потоком на шаге 4. будет Регистрация, если Пользователь не может авторизоваться?! Так, например, сделано на всех практически сайтах.
Хорошо.
А можно тогда пример отношения включения?



Уууууууууууууууууууууу Батенька читаем Вигерса и Коберна для начала.

А можно тогда пример отношения включения?
Отношение включения имеет смысл только тогда, когда ВИ включается в несколько ВИ. Если ВИ включается только в один ВИ, то он описывается внутри второго ВИ.
Пример, хм ....
Не совсем корректный пример но все же:
Есть ВИ - "Открыть позицию" и "Закрыть Позицию" Трейдером на рынке ЦБ. Есть ВИ "Исполнить Заявку", вот этот ВИ включается и в ВИ  "Открыть позицию" и в ВИ "Закрыть Позицию".
Не важно какой ты сейчас - большой или маленький, важно - как ты растешь.
Б.А.С.



Уууууууууууууууууууууу Батенька читаем Вигерса и Коберна для начала.
Всё остальное злобная ересь?



Всё остальное злобная ересь?
Смотря что. Но Вигерс с Кобероном - это то что должно быть прочтено обязательно и в начале.
Не важно какой ты сейчас - большой или маленький, важно - как ты растешь.
Б.А.С.




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19