Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dvmn-tasks/4b354a1f1d7da0267a5922b195dc2d80 to your computer and use it in GitHub Desktop.
Save dvmn-tasks/4b354a1f1d7da0267a5922b195dc2d80 to your computer and use it in GitHub Desktop.
Сценарии использования для третьего урока по Django ORM.

Сценарии использования

Сценарии использования (use-cases) к третьем уроку курса Django ORM курса Девман.

1. Исправить оценки

Школьник Ваня хочет исправить свои оценки. Сайт электронного дневника уже давно настроен и работает на отдельном сервере. У Вани есть к нему доступ. Он уже научился скачивать и загружать файлы на сервер. Также он умеет открывать консоль и запускать там команды.

У Вани есть ссылка на репозиторий с кодом, оттуда он и начинает свой путь:

  1. Ваня перешёл по ссылке на репозиторий GitHub
  2. По инструкции залил скрипт на сервер, положил в указанную папку
  3. Из README Ваня скопировал и запустил на сервере консольные команды
  4. Из инструкции скопировал и запустил внутри shell python-код, если такое требуется
  5. Ваня открыл сайт электронного дневника, нашёл себя
  6. Оценки исправлены?
  7. Жалобы исчезли?
  8. Появилась похвала от учителя?

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

Хотя с английским языком Ваня дружит, но вот в IT терминологии он явно путается. Лучше не рисковать и сделать для него README на русском языке. Ещё лучше — снабдить документацию ссылками на полезные туториалы.

2. Помочь друзьям

  1. Из README Ваня узнаёт, как запустить скрипт для своего друга
  2. Ваня делает всё, что сказано в инструкции
  3. Проверяет оценки своего друга на сайте электронного дневника — оттуда исчезли все двойки и тройки
  4. Ваня открыл сайт электронного дневника, нашёл друга
  5. Оценки исправлены?
  6. Жалобы исчезли?
  7. Появилась похвала от учителя?

3. Многократное использование

Проходит месяц, а то и два. В дневнике Ваня снова набрал себе троек и теперь жаждет поднять успеваемость. Юный хакер вспоминает про ваш скрипт. Он находит ссылку на GitHub и следует инструкциям, как и в прошлый раз.

Отличие этого сценария в том, что скрипт запускается многократно в течение учебного года. Каждый раз исправляются плохие оценки, удаляются жалобы и добавляется похвала. При этом важно, чтобы записи в дневнике выглядели реалистично: текст похвалы менялся от запуска к запуску, и записи не накапливались у одного единственного урока.

4. Ошибки ввода

Школьник Ваня не так хорош в программировании и с трейсбеками работать пока не умеет. Они его шокируют и пугают, поэтому читать их он вряд ли будет. Надо позаботиться о том, чтобы в случае ошибки скрипт понятным образом сообщил ему в чём дело и как это исправить.

  1. Подготовил скрипт к работе по инструкции в README
  2. Запустил скрипт, допустив опечатку в имени 'Симён'
  3. Скрипт сообщил об ошибке?
  4. По выводу понятно что с этим делать?
  5. Запустил скрипт, в качестве имени указав пустую строку ''
  6. Скрипт сообщил об ошибке?
  7. По выводу понятно что с этим делать?

Кроме имени школьника скрипт требует указать название урока, поэтому здесь то же есть свой сценарий с опечаткой:

  1. Подготовил скрипт к работе по инструкции в README
  2. Запустил скрипт, допустив опечатку в названии урока 'матиматика'
  3. Скрипт сообщил об ошибке?
  4. По выводу понятно что с этим делать?

5. Что за проект?

Другой программист случайно наткнулся на ваш репозиторий на GitHub. У него пока нет желания вникать в код и делать что-либо. Он хочет понять где оказался и как это относится к нему.

  1. Бегло, не вчитываясь, пролистал README
  2. Узнал, как этот код связан с электронным дневником и что полезного он делает
  3. Узнал, что надо заранее развернуть у себя сайт
  4. Нашёл ссылку на репозиторий электронного дневника, перешёл туда, ознакомился, вернулся
  5. В README заметил, что это учебный проект

6. Хочу такой же

Другой программист, уже знакомый с проектом, хочет развернуть код у себя и слегка "доработать напильником".

  1. Скачал репозиторий к себе
  2. Из README узнал, что понадобится файл БД и развёрнутый сайт
  3. Раздобыл где-то свой собственный файл БД
  4. Установил у себя сайт дневника, следуя инструкциям в его репозитории
  5. По инструкции подготовил скрипт к работе
  6. Запустил скрипт
  7. Открыл сайт электронного дневника, убедился, что оценки исправлены
  8. Полез читать код
  9. ...
  10. Profit!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment