Дмитрий Николаевич Черемнов

Профессиональные компетенции разработки программного обеспечения


Скачать книгу

результата разработки.

      Цель проекта описывает какие задачи должны быть решены в результате проекта, а содержание проекта – что именно является результатом проекта.

      Описание цели и содержания проекта (Project Scope) на примере проекта "Универсальная модульная платформа", в реализации которого принимают участие некоторые "выпускники" курса.

      Проект "Универсальная модульная платформа"

      Цель проекта

      Много проектов имеют схожую многомодульную структуру, до 25% общего функционала.

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

      • быстрый старт разработки проекта на базе платформы;

      • получение востребованного опыта и навыков разработки участниками;

      • легкое вхождение участников команды разработки в однотипный проект;

      • эффективное участие юниоров в разработке однотипных проектов;

      • упрощение разработки и поддержки однотипных проектов;

      • улучшение качества за счет многократного тестирования общего кода на разных проектах;

      • уменьшение периода разработки за счет подключаемых модулей;

      • финансовая экономия.

      Описание проекта – Project Scope

      Описание проекта – многомодульной платформы, предоставляющей базовый функционал наиболее часто востребованных нефункциональных и функциональных требований. Модули данной платформы могут быть подключены по необходимости для реализации систем различных назначений, реализующих конкретные бизнес требования:

      • система заказов услуг или продуктов;

      • система бронирования и продажи билетов;

      • система логистики;

      • e-commerce система;

      • информационная система и прочие.

      Можно выделить основные компоненты систем:

      • SQL база данных;

      • Backend с бизнес логикой;

      • приложение администратора;

      • REST (JSON) API сервер;

      • Frontend с веб интерфейсом;

      • мобильные приложения.

      Список наиболее востребованных нефункциональных и функциональных требований:

      • аутентификация и авторизация;

      • логирование;

      • уровень доступа к SQL базе данных;

      • планировщики для запуска периодических процессов;

      • инфраструктура и настройка REST контроллеров;

      • создание, редактирование и просмотр администраторов и пользователей системы;

      • загрузка в систему и скачивание из системы файлов (фото, документов и т.п.).

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

      Открытыми для обсуждения с участниками проекта остаются аспекты:

      • масштабируемость платформы – должна ли система, построенная на платформе легко масштабироваться