Заботимся правильно (researchkit, carekit, healthkit) — Вадим...

95
Заботимся правильно Вадим Дробинин http://twitter.com/valzevul

Upload: vadim-drobinin

Post on 11-Apr-2017

191 views

Category:

Software


1 download

TRANSCRIPT

Заботимся правильно

Вадим Дробининhttp://twitter.com/valzevul

Вадим Дробинин / @Valzevul

В двух словах

2

Вадим Дробинин / @Valzevul

В двух словах

• Экскурс в историю

2

Вадим Дробинин / @Valzevul

В двух словах

• Экскурс в историю

• HealthKit

2

Вадим Дробинин / @Valzevul

В двух словах

• Экскурс в историю

• HealthKit

• ResearchKit & CareKit

2

Вадим Дробинин / @Valzevul

В двух словах

• Экскурс в историю

• HealthKit

• ResearchKit & CareKit

• Примеры использования

2

Вадим Дробинин / @Valzevul

В двух словах

• Экскурс в историю

• HealthKit

• ResearchKit & CareKit

• Примеры использования

• Tips & Tricks

2

HealthKit

HealthKit

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

Вадим Дробинин / @Valzevul5

Вадим Дробинин / @Valzevul

HealthKit

6

Вадим Дробинин / @Valzevul

HealthKit• Сбор данных, обмен аналитикой между приложениями для здоровья и фитнеса, а также фитнес-трекерами и внешними сервисами;

6

Вадим Дробинин / @Valzevul

HealthKit• Сбор данных, обмен аналитикой между приложениями для здоровья и фитнеса, а также фитнес-трекерами и внешними сервисами;

• 256-битное AES-шифрование:

6

Вадим Дробинин / @Valzevul

HealthKit• Сбор данных, обмен аналитикой между приложениями для здоровья и фитнеса, а также фитнес-трекерами и внешними сервисами;

• 256-битное AES-шифрование:

• Нет доступа при заблокированном девайсе

6

Вадим Дробинин / @Valzevul

HealthKit• Сбор данных, обмен аналитикой между приложениями для здоровья и фитнеса, а также фитнес-трекерами и внешними сервисами;

• 256-битное AES-шифрование:

• Нет доступа при заблокированном девайсе

• По-умолчанию не вносится в бэкап (если он не в iCloud)

6

ResearchKit & CareKit

Вадим Дробинин / @Valzevul

ResearchKit

8

Платформа для удалённых исследований в области здоровья и медицины.

Вадим Дробинин / @Valzevul9

Вадим Дробинин / @Valzevul

ResearchKit

10

Вадим Дробинин / @Valzevul

ResearchKit

• Открытый исходный код;

10

Вадим Дробинин / @Valzevul

ResearchKit

• Открытый исходный код;

• Создание исследований и тестов;

10

Вадим Дробинин / @Valzevul

ResearchKit

• Открытый исходный код;

• Создание исследований и тестов;

• Отправка анонимных данных в соотвествующие лаборатории.

10

Вадим Дробинин / @Valzevul

ResearchKit

11

Вадим Дробинин / @Valzevul

ResearchKit

11

Task View Controller

Вадим Дробинин / @Valzevul

ResearchKit

11

Task View Controller Task

present

Вадим Дробинин / @Valzevul

ResearchKit

11

Task View Controller

Visual Consent

Flow

Taskpresent

Вадим Дробинин / @Valzevul

ResearchKit

11

Task View Controller

Visual Consent

Flow

Survey Taskpresent

Вадим Дробинин / @Valzevul

ResearchKit

11

Task View Controller

Visual Consent

Flow

Survey

Active Task

Taskpresent

Вадим Дробинин / @Valzevul

ResearchKit

12

Вадим Дробинин / @Valzevul

ResearchKit

• Нужно разрабатывать собственный бэкенд (для медицинских лабораторий);

12

Вадим Дробинин / @Valzevul

ResearchKit

• Нужно разрабатывать собственный бэкенд (для медицинских лабораторий);

• Акцент на приватности данных.

12

Вадим Дробинин / @Valzevul

CareKit

13

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

принятия лекарств.

Вадим Дробинин / @Valzevul14

Вадим Дробинин / @Valzevul

CareKit

15

Вадим Дробинин / @Valzevul

CareKit

• Открытый исходный код;

15

Вадим Дробинин / @Valzevul

CareKit

• Открытый исходный код;

• Отслеживание программы лечения, мониторинг прогресса, аналитика;

15

Вадим Дробинин / @Valzevul

CareKit

• Открытый исходный код;

• Отслеживание программы лечения, мониторинг прогресса, аналитика;

• Удобный инструменты для экспорта;

15

Вадим Дробинин / @Valzevul

CareKit

• Открытый исходный код;

• Отслеживание программы лечения, мониторинг прогресса, аналитика;

• Удобный инструменты для экспорта;

• Прогнозы.

15

Вадим Дробинин / @Valzevul

CareKit

16

Вадим Дробинин / @Valzevul

CareKit

• Акцент на приватности данных;

16

Вадим Дробинин / @Valzevul

CareKit

• Акцент на приватности данных;

• Активная поддержка от Apple ([email protected]).

16

Вадим Дробинин / @Valzevul

CareKit

17

Care CardSymptom and Measurement

TrackerInsights Connect

Care Plan Store

Document Exporter

Вадим Дробинин / @Valzevul

CareKit

18

Care Card

Symptom

Insights

Connect

Care Plan

Document

Вадим Дробинин / @Valzevul

CareKit

18

Care Card

Symptom

Insights

Connect

Care Plan

Document

• Задачи, из которых состоит лечение:

Вадим Дробинин / @Valzevul

CareKit

18

Care Card

Symptom

Insights

Connect

Care Plan

Document

• Задачи, из которых состоит лечение:

• Принять таблетки;

Вадим Дробинин / @Valzevul

CareKit

18

Care Card

Symptom

Insights

Connect

Care Plan

Document

• Задачи, из которых состоит лечение:

• Принять таблетки;

• Сменить повязку;

Вадим Дробинин / @Valzevul

CareKit

18

Care Card

Symptom

Insights

Connect

Care Plan

Document

• Задачи, из которых состоит лечение:

• Принять таблетки;

• Сменить повязку;

• Помедитировать.

Вадим Дробинин / @Valzevul

CareKit

19

Care Card

Symptom and Measurement

Tracker

Insights

Connect

Care Plan

Document

Вадим Дробинин / @Valzevul

CareKit

19

Care Card

Symptom and Measurement

Tracker

Insights

Connect

Care Plan

Document

• Задачи, которые позволяют оценить качество лечения:

Вадим Дробинин / @Valzevul

CareKit

19

Care Card

Symptom and Measurement

Tracker

Insights

Connect

Care Plan

Document

• Задачи, которые позволяют оценить качество лечения:

• Субъективные измерения («покалывает в боку»);

Вадим Дробинин / @Valzevul

CareKit

19

Care Card

Symptom and Measurement

Tracker

Insights

Connect

Care Plan

Document

• Задачи, которые позволяют оценить качество лечения:

• Субъективные измерения («покалывает в боку»);

• Объективные измерения (давление, вес, …).

Вадим Дробинин / @Valzevul

CareKit

20

Care Card

Symptom

Insights

Connect

Care Plan

Document

Вадим Дробинин / @Valzevul

CareKit

20

Care Card

Symptom

Insights

Connect

Care Plan

Document

• Графики зависимости между лечением и прогрессом;

Вадим Дробинин / @Valzevul

CareKit

20

Care Card

Symptom

Insights

Connect

Care Plan

Document

• Графики зависимости между лечением и прогрессом;

• Текстовые подсказки.

Вадим Дробинин / @Valzevul

CareKit

21

Care Card

Symptom

Insights

Connect

Care Plan

Document

Вадим Дробинин / @Valzevul

CareKit

21

Care Card

Symptom

Insights

Connect

Care Plan

Document

• Экспорт данных о здоровье данных из модуля Insights родным и близким, а также наблюдающему врачу.

Вадим Дробинин / @Valzevul

CareKit

22

Care Card

Symptom

Insights

Connect

Care Plan Store

Document

Вадим Дробинин / @Valzevul

CareKit

22

Care Card

Symptom

Insights

Connect

Care Plan Store

Document

• База данных, которая хранит данные модулей Care Card и Progress Card;

Вадим Дробинин / @Valzevul

CareKit

22

Care Card

Symptom

Insights

Connect

Care Plan Store

Document

• База данных, которая хранит данные модулей Care Card и Progress Card;

• Её обновление приводит к автоматическому обновлению интерфейса.

Вадим Дробинин / @Valzevul

CareKit

23

Care Card

Symptom

Insights

Connect

Care Plan

Document Exporter

Вадим Дробинин / @Valzevul

CareKit

23

Care Card

Symptom

Insights

Connect

Care Plan

Document Exporter

• Управляет хранением и экспортом графиков и прочей информации из модуля Insights.

Вадим Дробинин / @Valzevul

CareKit

24

Care CardSymptom and Measurement

TrackerInsights Connect

Care Plan Store

Document Exporter

Вадим Дробинин / @Valzevul25

Иллюстрация Джефа Реймса

Примеры использования

Вадим Дробинин / @Valzevul

HealthKit

27

Вадим Дробинин / @Valzevul

ResearchKit

28

Диабет Астма Болезнь Паркинсона

Рак грудиСердечно-сосудистые заболевания

Вадим Дробинин / @Valzevul

CareKit

29

Tips & Tricks

Вадим Дробинин / @Valzevul

HealthKit

31

Вадим Дробинин / @Valzevul

HealthKit• Не забывайте про Capabilities;

31

Вадим Дробинин / @Valzevul

HealthKit• Не забывайте про Capabilities;

• С запасом получайте права на доступ к данным в HealthKit (пример);

31

Вадим Дробинин / @Valzevul

HealthKit• Не забывайте про Capabilities;

• С запасом получайте права на доступ к данным в HealthKit (пример);

• Не храните прочитанные данные в UserDefaults, логах, sql-дампе и так далее;

31

Вадим Дробинин / @Valzevul

HealthKit• Не забывайте про Capabilities;

• С запасом получайте права на доступ к данным в HealthKit (пример);

• Не храните прочитанные данные в UserDefaults, логах, sql-дампе и так далее;

• Помните про NSMassFormater, NSEnergyFormatter, etc;

31

Вадим Дробинин / @Valzevul

HealthKit• Не забывайте про Capabilities;

• С запасом получайте права на доступ к данным в HealthKit (пример);

• Не храните прочитанные данные в UserDefaults, логах, sql-дампе и так далее;

• Помните про NSMassFormater, NSEnergyFormatter, etc;

• Регулярно синхронизируйте данные с Health.

31

Вадим Дробинин / @Valzevul

ResearchKit

32

Вадим Дробинин / @Valzevul

ResearchKit

• Подробно заполняйте ORKConsentDocument;

32

Вадим Дробинин / @Valzevul

ResearchKit

• Подробно заполняйте ORKConsentDocument;

• Корректно выбирайте тип исследования (если его поменять, придётся заново получать разрешение);

32

Вадим Дробинин / @Valzevul

ResearchKit

• Подробно заполняйте ORKConsentDocument;

• Корректно выбирайте тип исследования (если его поменять, придётся заново получать разрешение);

• Убедитесь, что ваш бэкенд хорошо защищен.

32

Вадим Дробинин / @Valzevul

CareKit

33

Вадим Дробинин / @Valzevul

CareKit

• Заранее проектируйте OCKCarePlanStore;

33

Вадим Дробинин / @Valzevul

CareKit

• Заранее проектируйте OCKCarePlanStore;

• Динамично обновляйте данные;

33

Вадим Дробинин / @Valzevul

CareKit

• Заранее проектируйте OCKCarePlanStore;

• Динамично обновляйте данные;

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

33

Вадим Дробинин / @Valzevul

CareKit

• Заранее проектируйте OCKCarePlanStore;

• Динамично обновляйте данные;

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

• Не бойтесь «Unbalanced calls to begin/end appearance transitions» (issues/741).

33

Вадим Дробинин / @Valzevul

Что дальше?

34

Вадим Дробинин / @Valzevul

Что дальше?• Изучать:

• researchkit.org

34

Вадим Дробинин / @Valzevul

Что дальше?• Изучать:

• researchkit.org

• carekit.org

34

Вадим Дробинин / @Valzevul

Что дальше?• Изучать:

• researchkit.org

• carekit.org

• How to create surveys with ResearchKit http://blog.shazino.com/articles/dev/researchkit-survey/

34

Вадим Дробинин / @Valzevul

Что дальше?• Изучать:

• researchkit.org

• carekit.org

• How to create surveys with ResearchKit http://blog.shazino.com/articles/dev/researchkit-survey/

• HealthKit: Getting Fitness Datahttps://www.natashatherobot.com/healthkit-getting-fitness-data/

34

Вадим Дробинин / @Valzevul

Что дальше?

35

Вадим Дробинин / @Valzevul

Что дальше?• Встраивать в свои приложения:

35

Вадим Дробинин / @Valzevul

Что дальше?• Встраивать в свои приложения:

• Не просто игра-платформер, но и параллельное исследование признаков болезни Паркинсона;

35

Вадим Дробинин / @Valzevul

Что дальше?• Встраивать в свои приложения:

• Не просто игра-платформер, но и параллельное исследование признаков болезни Паркинсона;

• Не просто приложение фитнес-центра, но и персональный ассистент на основе HealthKit и CareKit;

35

Вадим Дробинин / @Valzevul

Что дальше?• Встраивать в свои приложения:

• Не просто игра-платформер, но и параллельное исследование признаков болезни Паркинсона;

• Не просто приложение фитнес-центра, но и персональный ассистент на основе HealthKit и CareKit;

• Не просто гид по кафе, но и личный диетолог.

35

Q&AВадим Дробинин

[email protected]

Team Lead @ WaveRoll, Преподаватель @ VK University