1

Этап 1

Проработать идею

2

Этап 2

Изучить методы и стратегии разработки приложения.

3

Этап 3

Изучить, дополнить знания по технологиям

4

Этап 4

Проектная документация

5

Этап 5

Проработка приложения

6

Этап 6

Реализация фич

7

Этап 7

TimeTracker

8

Этап 8

Pomodoro

9

Этап 9

Water meter

10

Этап 10

Разработка приложения

11

Этап 11

Тесты

12

Этап 12

Использование приложения

13

Этап 13

Дорожная карта продукта

14

Этап 14

Дизайн приложения

15

Этап 15

Внести правки

16

Этап 16

Приложение в Google Play

1

Этап 1

Проработать идею

2

Этап 2

Изучить методы и стратегии разработки приложения.

3

Этап 3

Изучить, дополнить знания по технологиям

4

Этап 4

Проектная документация

5

Этап 5

Проработка приложения

6

Этап 6

Реализация фич

7

Этап 7

TimeTracker

8

Этап 8

Pomodoro

9

Этап 9

Water meter

10

Этап 10

Разработка приложения

11

Этап 11

Тесты

12

Этап 12

Использование приложения

13

Этап 13

Дорожная карта продукта

14

Этап 14

Дизайн приложения

15

Этап 15

Внести правки

16

Этап 16

Приложение в Google Play

14 октября 2023 03 января 2025
Цель просрочена на 19 дней

Цель заброшена

Автор не отписывался в цели 1 год 2 месяца 8 дней

Карьера и работа

TimeFocus, от идеи до Google Play через реализацию проекта

TimeFocus - мобильное приложение под Android для тайменеджмента

TimeTracker + Pomodoro + Water meter (drink, to the toilet) + Eating (breakfast, lunch, dinner) + Physical activity (sport,knock-up)

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

Разработка приложения под android на языке kotlin с использованием Jetpack Compose и библиотек поддерживающих KMP с последующим переходим на KMP.

 Критерий завершения

Приложение реализовано и размещено в Google Play

 Личные ресурсы

Знание, умение, время.

 Экологичность цели

Под свои нужды.

  1. Проработать идею

  2. Изучить методы и стратегии разработки приложения.

    1. Наиболее популярная agile-методология — Scrum

    2. eXtreme Programming (XP)

    3. Scrumban

  3. Изучить, дополнить знания по технологиям

    android-application jetpack-compose kotlin kotlin-dsl kotlin-coroutines flow clean-architecture single-activity mvi-pattern stateflow usecase-pattern repository-pattern viewmodel navigation kodein SQLDelight

    1. Agile.Scrumban = Scrum + Kanban

    2. KMP основы

    3. Управление IT-проектами и продуктом

    4. Вертикальная и горизонтальная декомпозиция

    5. Беклог продукта

    6. Приоритеты

    7. Четко и подробно расписывать функциональные требования.

    8. Многомодульность

    9. MVI

    10. NativeCoroutines Async-Await (KMP)

    11. DI Kodein (KMP)

    12. SQLDelight (KMP) - DB

  4. Проектная документация

    Техническое задание, проектная документация, документация.

    1. ТЗ

    2. Составить план разработки по ТЗ

    3. Документация

  5. Проработка приложения

    1. Декомпозиция на основные состовляющие

    2. Продумать и нарисовать слои приложения, модули

    3. Продумать и нарисовать экраны приложения

    4. Продумать и расписать навигацию

    5. Определиться с минимумом фич для MVP v.1

    6. Нарисовать ER модель базы данных

  6. Реализация фич

    1. Первый коммит в Github

    2. Костяк многомодульности

    3. Реализовать навигацию

    4. TimeTracker

    5. Pomodoro

    6. Water meter

  7. TimeTracker

    1. Декомпозиция

  8. Pomodoro

    1. Декомпозиция

  9. Water meter

    1. Декомпозиция

  10. Разработка приложения

    Реализовать MVP v.1 с простым дизайном.

    1. Версия v.0.1a

    2. Версия v.0.2a

    3. Версия v.0.3a

    4. Версия v.0.4a

    5. Версия v.0.5a

    6. Версия v.0.6a

    7. Версия v.0.7a

    8. Версия v.0.8a

    9. Версия v.0.9a

    10. Версия v.1.0b

  11. Тесты

    Тестирование приложения

  12. Использование приложения

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

  13. Дорожная карта продукта

  14. Дизайн приложения

    1. Сделать заставку при старте

    2. Сделать иконку приложения

    3. Сделать иконки меню

    4. Дизайн всех окон

  15. Внести правки

    Реализовать MVP v.2

  16. Приложение в Google Play

    1. Оплатить домменное имя

    2. Изучить правила для Google Play

    3. Оплатить аккаунт Google Play

    4. Приложение в Google Play

  • 815
  • 14 октября 2023, 09:47

Дневник цели

31день
KsArT13 нояб. 2023, 08:12

Немного завис мой проект, решил все же для начала разобраться в KMP, чтобы часть андроид сразу делать с использованием фреймворка KMP, но как-то все это сложно.

15день

Запись к этапу «Изучить методы и стратегии разработки приложения.»

KsArT28 окт. 2023, 12:05

Ну очень интересный видосик по планированию

13день

Запись к этапу «Изучить, дополнить знания по технологиям»

KsArT26 окт. 2023, 07:18

Немного определиться стоит ли сразу пилить KMP, пока понятно что, для десктопа нужна - идея, а для андроид и iOS - андроид студия и это сразу останавливает, слишком много настроек. Но в любом случае это нужно.

10день

Запись к этапу «Изучить, дополнить знания по технологиям»

KsArT23 окт. 2023, 16:08

Немного погрузился в должность тимлида или скрам мастера, дополнил план.

8день

Запись к этапу «Изучить методы и стратегии разработки приложения.»

KsArT21 окт. 2023, 18:21

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

Сегодня изучал agile методологию — Scrum и понял, что это не подходит для моего проекта.

Рассматриваю варианты Scrumban или Экстремальное программирование.

Изучив экстремальное программирование, основное это постоянная работа с заказчиком и быстрое изменение требований от заказчика.

У меня готовая идея и быстрого изменения к требованиям точно не будет.

Scrumban - Kanban и Scrum. Планирование, разбивка за мелкие задачи, доска канбан, выбор любой задачи, завершение задачи за спринт.

Scrumban – это инновационный Agile-метод, позволяющий работать над проектом более эффективно и действительно решать поставленные задачи, а не просто концентрироваться на них. Гибридный подход помогает быстрее определять ключевые проблемы и находить пути их решения, лучше планировать и контролировать нагрузку команды, быстро реагировать на изменения.

Основные причины для использования Scrumban

  • Легче внедрить, чем Scrum. Процесс Scrumban свободнее и больше похож на Kanban. В результате команды могут учиться и адаптироваться к нему быстрее.
  • Отлично подходит для команд по разработке продуктов и R&D. Быстрая процедура обеспечивает быстрое и относительно безрисковое тестирование концепции.
  • Постоянное улучшение. Благодаря Scrum команда гарантированно вносит улучшения, продвигая свой рабочий процесс.
5день

Запись к этапу «Проработать идею»

KsArT18 окт. 2023, 17:03

Проблема-аналитика

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

Цель

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

Отдельное приложение выполняет свою функцию, но, например постоянно сообщает о необходимости приема воды во время помидора, что нарушает концентрацию на работе.

MVP 1

Мобильное приложение Android

Features: TimeTracker + Pomodoro + Water meter (drink, to the toilet)

Упрощенный дизайн

4день

Запись к этапу «Проработать идею»

KsArT17 окт. 2023, 17:51

Немного поработал над идеей, определил проблему, описал цель решения проблемы, определился с экранами и минимумом для MVP 1.

3день
KsArT16 окт. 2023, 20:33

Разбирался в декомпозиции по агиле.

Техники декомпозиции требований в Agile

Метод 1 – разбиение по этапам

Разбить большую задачу, описывающую некий бизнес-процесс на составные части и этапы. Для этого в данном процессе необходимо выделить последовательную цепочку шагов, которые могут быть реализованы и выполнены независимо друг от друга.

В результате мы разбиваем большой бизнес-процесс на составляющие его этапы. Какие-то этапы при этом могут быть критичными и обязательными, а какие-то опциональными. Такая декомпозиция дает возможность:

Во-первых, определить различные приоритеты для каждой истории и сосредоточиться в первую очередь на самых важных для бизнеса этапах.

Во-вторых, при таком разбиении лучше понятен сам процесс, его шаги и составные части, возможные зависимости меду этапами.

Метод 2 – разбиение по позитивным и негативным сценариям

Декомпозицию на ожидаемый сценарий использования функционала и на неправильные, но возможные и вероятные сценарии работы. Для каждого сценария важно выделить отдельные пользовательские истории:

Для позитивного – реализация правильной работы функционала.

Для негативных – реализовать правильную отработку той или иной возможной ошибки, разработать альтернативный сценарий.

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

Метод 3 – разбиение по правилам

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

Позволяет

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

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

Метод 4: Разбиение по видам операций

Существует ряд относительно стандартных операций, которые часто встречаются в различных функциях.

CRUD – от слов Create, Read, Update, Delete. Операции CRUD очень распространены в случаях, когда функциональность включает управление объектами, такими как продукты, заказы, пользователи, файлы и т.д.

Декомпозируя функциональность таким образом достаточно легко ответить на следующие вопросы:

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

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

Метод 5: Декомпозиция по типам платформы/ОС.

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

Для разных платформ: персональные компьютеры, планшеты, смартфоны.

Для разных ОС: Windows, iOS, Android.

Для работы в различных браузерах.

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

Метод 6: Разбиение по типам данных и параметрам.

Для некоторых функций можно выделить различные типы данных или параметров, которые они должны обрабатывать. Соответственно, мы можем разбить большое требование\фичу на ряд мелких пользовательских историй, в рамках каждой из которых нужно реализовать работу только с каким-то одним типом данных.

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

Метод 7: Разбиение по ролям\правам доступа.

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

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

Метод 8: Декомпозиция по сценариям тестирования\тест-кейсам.

позволяет разбить большие пользовательские истории задавая вопрос, как та или иная часть функциональности будет проверена.

Мы определяем какие сценарии необходимо проверить, какие тесты выполнить, чтобы узнать, работает ли эта функция. В результате мы сформируем набор тест-кейсов, каждый из которых и будет представлять собой отдельную задачу. Каждая задача должна быть реализована так, чтобы тестовый сценарий был успешно пройден.

Анализируя тестовый сценарий легко понять, насколько он распространен и вероятен в условия реального использования продукта, что позволяет выставить соответствующие приоритеты.

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

1день
KsArT14 окт. 2023, 18:21

Пока занимаюсь проработкой идеи, разбором пунктов ТЗ, минимумов фич для MVP 1. Все сразу не получиться реализовать, пока нужно рабочий минимум реализовать.

Создал доску в трело для проекта. Пока еще нет карточек, посмотреть тут

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

1день
KsArT14 окт. 2023, 10:14

Работать над приложением каждый день, каждый день писать отчет о проделанной работе.

Вы тоже можете
опубликовать свою
цель здесь

Мы поможем вам ее достичь!

309 000

единомышленников

инструменты

для увлекательного достижения

Присоединиться
Регистрация

Регистрация

Уже зарегистрированы?
Быстрая регистрация через соцсети
Вход на сайт

Входите.
Открыто.

Еще не зарегистрированы?
 
Войти через соцсети
Забыли пароль?
Time4changes
Антоха
Яна
Ольга З
Katerina
Natalie
Яна
silva05
Екатерина Середа
Вадим
Isagi
Kate