Bachelor's Thesis

Smart Task Planner

Final Thesis 5.76 MB

Author of thesis: Ing. Jan Zimola

Acad. year: 2022/2023

Supervisor: Ing. Jiří Hynek, Ph.D.

Reviewer: Ing. Alena Omachtová

Abstract:

This thesis aims to create a new planning application that combines various time management techniques. From in-depth research on time management combined with a survey of potential users, diverse techniques emerged that the application needs to provide to satisfy various users' needs. Current applications were insufficient for this purpose. The new implementation mainly combines a todo list and a calendar but also adds support for habits or the Pomodoro technique. On top of it, the user can assign values to projects, labels, or tasks such as priority, deadline, or estimate. These attributes are later used in a machine learning model to score elements, enabling the app to suggest the most relevant tasks to the user. The app was built using the multiplatform framework Flutter and released to App Store and Google Play. Own synchronization mechanism for the app's data is utilized between an Isar database and an Appwrite server. The user-defined events can also be reflected in the user-selected synchronization local calendar.

Keywords:

time management, mobile app, Flutter, Appwrite, Isar, Pomodoro technique, timeboxing, calendar, todo list, dart, habits, Android, iOS, machine learning

Date of defence

12.06.2023

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.

Topics for thesis defence

  1. Vysvětlete, jak používáte strojové učení k výpočtu skóre.
  2. Který konkrétní model jste použil?
  3. Jak se promítly analyzované time management techniky v aplikaci?
  4. Jak řešíte konflikty při synchronizaci dat ze serveru?
  5. Pokud člověk udělá změnu např. na mobilu a další na tabletu, uloží se poslední změna?
  6. Kdo aplikaci používá?
  7. Když mám naplánováno více úkolů na různé časy, v čem mi aplikace hlavně pomůže?
  8. Platí tedy, že úkoly, které nejsou úplně prioritní, se aplikace snaží plánovat do volných časových oken?

Language of thesis

English

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

prof. Ing. Adam Herout, Ph.D. (předseda)
doc. Mgr. Adam Rogalewicz, Ph.D. (člen)
doc. Ing. Michal Bidlo, Ph.D. (člen)
Ing. Miloš Musil, Ph.D. (člen)
doc. RNDr. Dana Hliněná, Ph.D. (člen)

Supervisor’s report
Ing. Jiří Hynek, Ph.D.

Student ke své práci přistupoval svědomitě, dokázal pracovat samostatně a vytvořil použitelné řešení, které poslouží pro efektivnější plánování času. Práce je psána v anglickém jazyce. Výsledky byly publikovány. Navrhuji hodnocení stupněm A.

Evaluation criteria Verbal classification
Informace k zadání

Práce vznikla jako nápad studenta vytvořit uživatelsky přívětivou aplikaci pro chytré plánování uživatelských aktivit. Student nejprve prostudoval známé techniky pro organizaci času (např. Pomodoro), principy rekomendačních systémů a vývoje multiplatformních mobilních aplikací. Dále se seznámil s technologiemi (např. Dart/Flutter, Appwrite, Isar a přidružené knihovny). Velké úsilí student věnoval uživatelské stránce, ovládání a testování výsledku. Zadání hodnotím jako průměrně obtížné. Bylo splněno ve všech jeho bodech.

Práce s literaturou

Student prostudoval doporučenou literaturu a aktivně dohledával další zdroje týkající se zejména použitých technologií a časového plánování.

Aktivita během řešení, konzultace, komunikace

Student nadprůměrně komunikoval během celého akademického roku. Konzultace probíhaly online s vedoucím práce. Student řádně plnil zadané úkoly a práce postupovala dobrým tempem.

Aktivita při dokončování

Praktická část práce byla dokončena v předstihu a mohla být dostatečně konzultována. Poslední kapitoly technické zprávy byly dokončovány na poslední chvíli.

Publikační činnost, ocenění

Výsledky byly publikovány formou posteru na konferenci Excel@FIT 2023. Aplikace je uveřejněná pod názvem TimeNoder, je dostupná v obchodech GooglePlay a AppStore. Prezentace projektu je dostupná na doméně timenoder.com.

Points proposed by supervisor: 95
Display more

Grade proposed by supervisor: A

Reviewer’s report
Ing. Alena Omachtová

Jde vidět obrovské množství práce, které student vložil do aplikace. Celkově se jedná o kvalitní řešení, které skutečně může pomoci k lepší disciplíně a organizaci času. Celkově hodnotím stupněm A.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: průměrně obtížné zadání

Cílem práce bylo vytvořit multiplatformní aplikaci pro chytré plánování času. I když se na první pohled může zdát zadání jako jednoduché, student implementoval značná rozšíření a nakonec se jedná o velmi komplexní aplikaci.

Jedná se o mobilní aplikace ve Flutteru a je testovaná a publikována pro platformy Android i IOS. Chtěla bych ocenit grafickou stránku aplikace a důkladné porovnání lokálních databází, u kterých student měřil výkonnost, aby zjistil, které řešení je nejlepší.

Rozsah splnění požadavků zadání

Evaluation level: zadání splněno a práce obsahuje podstatná rozšíření

Aplikace obsahuje značná rozšíření jako je například synchronizace dat s Google kalendářem a dalšími lokálními kalendáři, podpora offline režimu a vyřešení synchronizace dat na server, systém notifikací, statistiky, trackování času a další nastavení. Aplikace umožňuje kromě vkládání bloků do časové osy, tak také vkládání projektů, úkolů, štítků, termínů, nabízí více náhledů na kalendář (denní, měsíční, týdenní, 3-denní) a všechny události lze drag and drop přesouvat. V aplikaci není povinné přihlášení a v tom případě funguje aplikace pouze lokální a žádná data nejsou přenášena na server.

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

Prezentační úroveň technické zprávy

Prezentační úroveň práce je na dobré úrovni. Student se nejprve zabývá technikami časového managementu, následně aplikačním vývojem, systémy doporučení, analýzou existujících aplikací a v druhé části popisuje návrh, implementaci a testování aplikace.

Ocenila bych detailnější popis mobilního vývoje - nativnímu vývoji pro Android a iOS se věnují pouze dva velmi krátké odstavce, u flutteru jsou také pouze 3 věty, i když se jedná o vybraný framework použitý k implementaci.

80
Formální úprava technické zprávy

Práce je psaná v angličtině a je z formální hlediska na vysoké úrovni.

90
Práce s literaturou

V práci je citováno celkem 83 zdrojů. Často se jedná o velmi zajímavé články a odbornou literaturu. Studentovi nechybí ani zdroje na oficiální online dokumentace, ze kterých čerpal při vývoji. Celkově hodnotím práci s literaturou jako nadprůměrnou. 

90
Realizační výstup

Aplikace celkově působí "wow" dojmem v dobrém i špatném smyslu. Obsahuje obrovské množství funkcí, je graficky výborně zpracovaná a zdrojový kód je kvalitní. Bohužel příliš velké množství funkce, čtyři úrovně navigace z ní zatím nedělají úplně použitelnou aplikaci, což i student zjistil z uživatelského testování. 

85
Využitelnost výsledků

Práce byla prezentována na Excel@FIT 2023, je publikována na Google Play a App Store. Aplikace je na 100% funkční, jen by podle mého názoru potřebovala zjednodušit, aby ji uživatelé používali s radostí.

Topics for thesis defence:
  1. Vysvětlete, jak používáte strojové učení k výpočtu skóre.
  2. Jak se promítly analyzované time management techniky v aplikaci?
  3. Jak řešíte konflikty při synchronizaci dat ze serveru?
Points proposed by reviewer: 90
Display more

Grade proposed by reviewer: A