Skip to content

snazzarov/Vending-Mashine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Тестовое задание по C#

  1. Описание задачи: 

 Смоделировать работу VM по продаже кофе, чая и т.д. реализовать

описанные сценарии работы.

 Реализовать на ASP.NET MVC 4.5 / 5, .net 4.0+

 Рисовать VM в деталях не требуется, достаточно схематически

расположить контролы на форме обозначающие кошелек и VM

 Предоставить архив с исходным кодом (VS2010+) и, при необходимости,

базой (мы приветствуем code first подход и автоматизированные миграции,

но решение может акцентрироваться на иных аспектах и вовсе не иметь

настоящей базы данных)

 Оценка по времени может варьироваться от того, что за технология

выбрана для решения тех или иных задач и насколько качественно сделано

 По оценкам технических экспертов выполнение задания может занять от 3

до 8 часов, в зависимости от желания и возможностей кандидата

  1. На что стоит обратить внимание на:

 Обработку ошибок (не допускается падения программы)

 Валидацию пользовательского ввода (исключить возможность ввода

некорректных данных пользователем)

 Декомпозицию задачи (на слои, классы и т.д., будем смотреть во что

обойдется поддержка и развитие кода, его тестируемость) 

 Ну и на технику кодирования.

  1. Техническое задание на разработку виртуального

аппарата по продаже кофе (Vending Machine)

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

  1. Система показывает кошелек пользователя (кол-во монет разного

достоинства)

  1. 1 руб = 10 штук (начальные данные)

  2. 2 руб = 30 штук

  3. 5 руб = 20 штук

  4. 10 руб = 15 штук

  5. Система показывает ассортимент товаров для продажи, стоимость и

остаток товара

  1. Чай = 13 руб, 10 порций. (начальные данные)

  2. Кофе = 18 руб, 20 порций.

  3. Кофе с молоком = 21 руб, 20 порций.

  4. Сок = 35 руб = 15 порций.

  5. Система показывает кошелек VM для сдачи (кол-во монет разного

достоинства)

  1. 1 руб = 100 штук (начальные данные)

  2. 2 руб = 100 штук

  3. 5 руб = 100 штук

  4. 10 руб = 100 штук

  5. Пользователь может ввнести монеты в монетоприемник VM нажав на

монету (или кнопку "внести" рядом с соотвествующей монетой) в своем

кошелке.

  1. При этом кол-во монет в кошелке пользователя соотвествущего

достоинства должно измениться.

  1. VM должна обновить поле "Внесенная сумма".

  2. Пользователь может запросить назад остаток внесенной суммы нажав

кнопку "Сдача" на VM

  1. При этом кол-во монет в кошелке пользователя должно измениться.

  2. VM должна обновить поле "Внесенная сумма".

  3. Внесенная сумма возвращается целиком, при этом сумма

возвращается наименьшим кол-вом монет. (напр: 23 руб = 2 х 10 руб

  • 1 х 2 руб + 1 х 1 руб). При этом возможно изменение кол-во монет в

кошелке VM.

  1. Пользователь может купить товар нажав на товар (или на кнопку рядом с

соотвествующим товаром) на VM

  1. Если стоимость товара <= "Внесенной суммы" товар выдается

пользователю, "Внесенная сумма" уменьшается на цену товара и

сумма зачисляется в кошелек VM (см. п. 3). Пользователю

показывается сообщение с текстом "Спасибо!"

  1. Если стоимость товара > "Внесенной суммы" пользователю выдается

сообщение с текстом "Недостаточно средств"

  1. Пользователь может повторить п.4. п.5. п.6. в произвольной

последовательности.

  1. (опционально) при отсутствии нужного набора монет для сдачи автомати не

выдает товар при запросе, а отображает соответствующее сообщение

пользователю.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published