Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Use cases на практике

49.694 visualizaciones

Publicado el

Publicado en: Tecnología, Empresariales

Use cases на практике

  1. 1. Use cases на практике <ul><li>Предеин Александр, </li></ul><ul><li>Системный аналитик </li></ul><ul><li>[email_address] </li></ul>
  2. 2. Вариант использования. Что это? <ul><li>Вариант использования (Use case ) - описание поведения системы при ее взаимодействии с окружающим миром. Use case описывает то, как действующее лицо пытается достичь некой цели, используя систему  </li></ul>
  3. 3. Описание функции <ul><li>Зарегистрироваться на сайте </li></ul><ul><li>Сайт должен предоставлять пользователю возможность зарегистрироваться. Для регистрации пользователь должен заполнить форму. После регистрации сайт должен отправить на e-mail пользователя подтверждение о регистрации </li></ul>
  4. 4. Та же функция только в формате Use Case <ul><li>UC . Зарегистрироваться на сайте </li></ul><ul><li>Действующее лицо: пользователь сайта </li></ul><ul><li>Предусловия: пользователь находится на главной странице сайта </li></ul><ul><li>Основной сценарий: </li></ul><ul><ul><li>Пользователь нажимает кнопку «Зарегистрироваться&quot; </li></ul></ul><ul><ul><li>Сайт отображает форму регистрации </li></ul></ul><ul><ul><li>Пользователь заполняет поля формы и подтверждает регистрацию </li></ul></ul><ul><ul><li>Сайт подтверждает правильность заполнения формы </li></ul></ul><ul><ul><li>Сайт регистрирует пользователя и отправляет на его e-mail письмо с подтверждением регистрации </li></ul></ul><ul><li>Альтернативные сценарии: </li></ul><ul><ul><li>… </li></ul></ul>
  5. 5. Структура <ul><li>Цель </li></ul><ul><li>Действующие лица </li></ul><ul><li>Предусловия </li></ul><ul><li>Максимальные и минимальные гарантии </li></ul><ul><li>Основной сценарий </li></ul><ul><li>Расширения (альтернативные сценарии) </li></ul>
  6. 6. Нехороший пример <ul><li>Пользователь нажимает кнопку «Зарегистрироваться». Сайт отображает форму регистрации. Пользователь заполняет поля формы и подтверждает регистрацию. Сайт проверяет правильность заполнения формы. Если поля заполнены неверно, то сайт сообщает пользователю об ошибках заполнения формы. Если поля заполнены верно, то сайт регистрирует пользователя и отправляет на его e-mail письмо с подтверждением регистрации. </li></ul>
  7. 7. Нехороший пример (продолжение) <ul><li>Пользователь нажимает кнопку «Зарегистрироваться». Сайт отображает форму регистрации. Пользователь заполняет поля формы и подтверждает регистрацию. Сайт проверяет правильность заполнения формы. Если поля заполнены неверно, то сайт сообщает пользователю об ошибках заполнения формы. Если в базе уже есть пользователь с таким же e-mail , то сайт сообщает пользователю о том, что пользователь с таким e-mail уже зарегистрирован. Если поля заполнены верно, то сайт регистрирует пользователя и отправляет на его e-mail письмо с подтверждением регистрации. </li></ul>
  8. 8. Исправленный вариант использования <ul><li>Основной сценарий: </li></ul><ul><ul><li>Пользователь нажимает кнопку «Зарегистрироваться&quot; </li></ul></ul><ul><ul><li>Сайт отображает форму регистрации </li></ul></ul><ul><ul><li>Пользователь заполняет поля формы и подтверждает регистрацию </li></ul></ul><ul><ul><li>Сайт подтверждает правильность заполнения формы </li></ul></ul><ul><ul><li>Сайт регистрирует пользователя и отправляет на его e-mail письмо с подтверждением регистрации </li></ul></ul>
  9. 9. Исправленный вариант использования <ul><li>Основной сценарий: </li></ul><ul><li>Пользователь нажимает кнопку «Зарегистрироваться&quot; </li></ul><ul><li>Сайт отображает форму регистрации </li></ul><ul><li>Пользователь заполняет поля формы и подтверждает регистрацию </li></ul><ul><li>Сайт подтверждает правильность заполнения формы </li></ul><ul><li>Сайт регистрирует пользователя и отправляет на его e-mail письмо с подтверждением регистрации </li></ul><ul><li>Альтернативные сценарии: </li></ul><ul><li>4а. Есть ошибки заполнения формы: </li></ul><ul><li>4а1. Сайт сообщает об ошибках заполнения формы. </li></ul><ul><li>4а2. Переход на шаг 3. </li></ul><ul><li>4б. Пользователь с таким e-mail уже зарегистрирован: </li></ul><ul><li>4б1. Сайт сообщает о том, что пользователь с таким e-mail уже зарегистрирован. </li></ul><ul><li>4б2. Переход на шаг 3. </li></ul>
  10. 10. Расширения <ul><li>Альтернативные сценарии: </li></ul><ul><li>2-4а. Условие… : </li></ul><ul><li>2-4а1. Действие… </li></ul><ul><li>2-4а2. Действие… </li></ul><ul><li>*а. Условие… : </li></ul><ul><li>*а1. Действие… </li></ul><ul><li>*а2. Действие… </li></ul>
  11. 11. Еще пример
  12. 12. В чем преимущество описания Use Case ? <ul><li>Дают представление о поведении системы </li></ul><ul><li>Сравните с функцией: </li></ul><ul><li>Сайт должен предоставить пользователю возможность зарегистрироваться </li></ul><ul><li>Понятны заказчикам и разработчикам </li></ul><ul><li>Позволяют описать множество альтернатив (исключений) </li></ul><ul><li>Список вариантов использования – перечень функциональности системы </li></ul><ul><li>Позволяют описывать функционал итеративно (перечень Use Cases - > Краткие описания - > Основные потоки -> Расширения) </li></ul>
  13. 13. Use Case и User Story
  14. 14. Use Case и User Story <ul><li>User Story это один из сценариев, тогда как Use Case это набор сценариев </li></ul><ul><li>Use Case объединяет несколько сценариев и показывает отношения между ними </li></ul>
  15. 15. Когда не стоит использовать Use Case <ul><li>Не стоит использовать: </li></ul><ul><li>Когда требуется описать сложный алгоритм </li></ul><ul><li>Для описания пользовательского интерфейса </li></ul>
  16. 16. Несколько рекомендаций <ul><li>Основной сценарий не больше 3 - 9 шагов </li></ul><ul><li>Исключите элементы дизайна (если в них есть необходимость опишите в другом месте) </li></ul><ul><li>Используйте один уровень детализации на всех шагах </li></ul><ul><li>Избегайте формализма ( используйте тот шаблон, который необходим в данный момент ) </li></ul><ul><li>Не пытайтесь описать все расширения сразу </li></ul><ul><li>Не используйте «если» </li></ul><ul><li>Следите за тем на чьей стороне мяч </li></ul>
  17. 17. О чем можно поговорить еще <ul><li>Как выявлять варианты использования </li></ul><ul><li>Место вариантов использования среди требований </li></ul>
  18. 18. Что почитать <ul><li>Алистер Коберн «Современные методы описания функциональных требований к системам» https://prj.slweb.ru/attachments/download/6940 </li></ul><ul><li>Алистер Коберн «Варианты использования , десять лет спустя» , статья http://www.maxkir.com/sd/useCasesTenYearsLater_RUS.html </li></ul><ul><li>Блог Алистера Коберна о UC : http://alistair.cockburn.us/Use+cases </li></ul><ul><ul><li>Why I still use use cases: http://alistair.cockburn.us/Why+I+still+use+use+cases </li></ul></ul>
  19. 19. Вопросы <ul><li>? </li></ul>Предеин Александр, [email_address]

×