В рамках курса создан репозиторий, который содержит сквозное приложение для отработки полного цикла создания fullstack приложения.
Приложение находится в репозитории Репозиторий.
Приложение разрабатывается участниками курса в итеративном режиме по процессу, близкому к SCRUM.
На первом занятии лектор знакомит участников команды разработки-слушателей с user stories, рассказывает механику и проводит первичное планирование по пользовательским историям. Задачи назначаются на ответственных. В начале каждого занятия проходит разбор домашнего задания, связанного со сквозным приложением, показывается пример варианта решения данной задачи. Разбираются сложные кейсы.
Каждую лекции по блокам в репозиторий добавляется новая ветка, в которой находится решение домашнего задания прошлого блока и заготовки для текущего блока, так же там находится README.md файл, отражающий задание для этого блока и необходимая информация.
Все результаты процесса фиксируются по договоренности и формата курса на доске команды. Формат работы может быть разный:
- Все делают одинаковые задачи параллельно с остальными участниками, ведя fork репозитория. С помощью pull реквестов в свой репозиторий, тренеры могут отслеживать прогресс и давать рекомендации по коду и применяемым решениям.
- Все участники разрабатывают общий репозиторий, ведя совместную работу и в спринтах практики показывая общий результат.
Необходимо разработать приложения для отображения банковских счетов клиента, остатка по ним и осуществлять операции перевода денежных средств с одного счета на другой.
- Реализовано на микросервисной архитектуре
- Backend и frontend разделены друг от друга
- Все независимые части приложения упакованы в docker контейнер, собираются отдельно
- Backend разработан в виде WebAPI сервиса на ASP.NET Core 2.2
- Frontend разработан на стеке NodeJS + ReactJS + Redux
- База поддерживается любая, с которой умеет работать EF Core 2.2 и которую можно упаковать в docker
- MacOS 10 \ Win 10 с поддержкой контейнеров
- Visual Studio 2017 или Visual Studio Code. VS Code вполне достаточно для разработки приложения
- Выход в интернет или доступ до npm и nuget репозиториев, доступ до docker-repository.
Я как пользователь приложения хочу видеть информацию о моих банковских картах, что бы управлять моими финансами
Критерии:
- Видеть список карт с их номером и названием
- Видеть остаток по карте и валюту карты
- Видеть активна карта или нет
Я как пользователь приложения могу просматривать операции на счете с целью контроля остатка и важности операции
Критерии:
- Видеть последние 10 операций по карте в обратном хронологическом порядке
- Вижу и различаю операции дебета и кредита
- Могу пролистать список транзакций по 10 штук
Я как пользователь могу привязать новую карту, что бы получить бонусные 10 рублей
Критерии:
- Могу задать короткое имя карты
- Сразу вижу карту в списке карт
- Получаю 10 бонусных рублей на карту при ее открытии
Я как пользователь могу перевести деньги с одной карты на другую, что бы контролировать расходы
Критерии:
- Могу перевести деньги со страницы транзакций по карте
- Могу видеть информацию о новой транзакции по карте без обновления страницы