Posted: 1/11/15
Author: Marta
ResearchKit
Introducción a qué es ResearchKit y en qué modulos se basa.
Ahora todos podemos contribuir al avance de la investigación médica.
Pasa el ratón sobre los módulos para obtener más información.
La interfaz de usuario del módulo de surveys (encuestas) predefinido, te permite crear rápidamente encuestas simplemente especificando las preguntas y tipo de respuestas.
Se suele solicitar a los participantes en estudios de investigación, el compartir información sensible como parte de su inscripción y participación en el estudio. Por ello, es crítico clarificar exactamente que información se recogerá sobre los usuarios, y quién tendrá acceso a su información. ResearchKit tiene plantillas que puedes personalizar para explicar los detalles de tu estudio, y obtener el consentimiento del participante.
Algunos estudios pueden necesitar más información de la que se da como respuesta a las encuestas, o la recopilación de capacidades de las APIs de HealthKit y CoreMotion de iOS. Active tasks (tareas activas), invita a los usuarios a realizar actividades bajo condiciones parcialmente controladas, utilizando los sensores del iPhone para recolectar información.
Introducción a qué es ResearchKit y en qué modulos se basa.
Primera app con ResearchKit
Introducción a la app MyHeart Counts desarrollada por Stanford Medicine para el estudio de enfermedades cardiovasculares. ¿Qué preguntas pueden surgir sobre ésta app?.
Enlaces de ayuda
Qué es y como incluirlo en los proyectos.
Apple anuncia nuevos estudios con ResearchKit para Autismo, Epilepsia y melanoma
Descubra un poco más sobre que apps utilizan ya ResearchKit
ResearchKit es un framework Open Source cuyo objetivo es mejorar los estudios médicos.
Esto signfica que cualquiera puede ver, modificar, mejorar y compartir su código fuente bajo una licencia muy permisiva.
Esta iniciativa es esencial: crear una comunidad alrededor de ResearchKit probablemente ayudará a generar más características y feedback, y finalmente incrementar el número de apps que lo utilizan.
Pero tambien, no tendría sentido promocionar una herramienta científica sin hacerla abierta.
Y uno bastante grande.
Definitivamente, no es una bala plateada donde un científico pueda poner unos archivos, pulsar un botón, y tener una app funcionando en el Apple App Store.
Necesitarás desarrolladores para crear una app ResearchKit. Pero Apple no te dejará solo, y ya ofrece algunas app demo y un app templating engine (llamado AppCore), para hacer más fácil de este proceso.
ResearchKit puede ayudar a hacer las cosas mejor, más rápido y más fuerte.
Mejor porque puedes ser capaz de recoger información diaria del participante, incluyendo datos que no son facilmente falsificables.
Más rápido gracias al número de usuarios de iPhone. Por ejemplo, Bloomberg publicó en menos de 24 horas tras sacar MyHeart Counts al App Store (utilizando ResearchKit), sobre 11,000 usuarios de iPhone ya se habían registrado. Para conseguir 10,000 personas en un estudio médico, normalmente se necesitaría un año y 50 centros médicos en el país. Ese es el poder del teléfono.
Y finalmente de form más fuerte. Como se puede leer en la página oficial de ResearchKit: "Los números lo son todo. Cuanta más gente contribuya con sus datos, más grandes serán los números, y más veraz sera la representación de una población, con resultados más potentes".
Pero normalmente se olvida la parte más importante de los estudios médicos: el paciente.
Ahora con ResearchKit, los desarrolladores de apps y científicaso hacen trabajo de análisis juntos, haciendo posible dar feedback en tiempo real, en su iPhone, sobre los estudios médicos de los que forman parte. ¿Puedes imaginar lo frustrante que resulta tener que esperar al fin de un estudio antes de saber si vas mejor o no?
No todo se puede hacer con ResearchKit de momento.
Una gran cantidad de posts en blogs mencionan las limitaciones en cuanto a la regulación FDA, las reglas de validación de Apple para distribuir apps médicas en AppStore, el hecho de que las apps solo están disponible en USA, etc.
De hecho, las apps ResearchKit no están aquí para reemplazar los estudios médicos tradicionales. Al menos no por el momento, ya que es una tecnología muy reciente que necesita ser testeada de forma más concienciuda. Pero puede mejorar los resultados actuales otorgando datos cuantitativos asi como datos más cualitativos obtenidos de estudios clínicos tradicionales.
ResearchKit ofrece tres módulos para enfrentarse a los requisitos comunes de una investigación médica: encuestas, consentimientos y tareas activas. Desde un punto de vista de diseño, los tres módulos comparten la misma filosofía básica:
La mayor parte del código del framework ResearchKit está escrito en Objective-C, mientras que el ejemplo que ofrecen, ORKCatalog, está escrito en Swift.
La mejor forma de entender cómo funciona este framework, es ponerse manos a la obra, y crear una aplicación que utilice sus recursos. En este tutorial, crearemos una app en la que verificaremos el consentimiento del usuario, obtendremos información con una encuesta, y utilizaremos tareas activa para grabar clips de audio con el micrófono del iPhone.
Esta app, "MyVoiceResearch", simula un estudio sobre la siguiente pregunta: "¿Influye el nombre de una persona, sus estudios, o su color favorito en las variaciones de sus cuerdas vocales?".
Para empezar, creamos un nuevo proyecto en Xcode, File\New\Project y elegimos Single View Application:
Ahora tenemos que añadir ResearchKit a nuestro proyecto. Para ello, descargamos ResarchKit en GitHub. El repositorio incluye:
Arrastra ResarchKit.xcodeproj de Finder a tu proyecto Xcode. El Project Navigator tiene que aparecer asi:
Ahora, selecciona MyVoiceResearch.xcodeproj en el Project Navigator, selecciona MyVoiceResearch target, y la pestaña General y haz click al + en Embedded Binaries:
Finalmente, selecciona ResearchKit.framework y haz click en Add:
ResearchKit está ahora incluido en tu proyecto, y listo para usarse. Para asegurarse de que se ha incluido correctamente, añade el siguiente import en la parte de arriba de ViewController.swift:
import ResearchKit
Construye el proyecto, si tiene éxito ¡ya estás listo para usar el ResearchKit framework!
Una parte crucial en un estudio de investigación médica, es el consentimiento al test del sujeto.
Es tarea tuya asegurarte de que tu estudio obtiene consentimiento en una forma legal, y el Consent Modulo incluido en ResearchKit es un buen lugar para empezar, ya que puedes nombrar los objetivos y requisitos del estudio en una serie de vistas con simples, cautivadoras animaciones.
Para empezar, crea un nuevo archivo Swift vacio, llamado ConsentDocument.swift, y añade el siguiente código:
import ResearchKit
public var ConsentDocument: ORKConsentDocument {
let consentDocument = ORKConsentDocument()
consentDocument.title = "Ejemplo de consentimiento"
//TODO: secciones de consentimiento
//TODO: firma
return consentDocument
}
Aquí has creado un ORKConsentDocument, utilizado por ResearchKit para representar el documento de información de consentimiento para tu estudio. Piensa en él como un monton de papeles en un portapapeles que te dan cuando llegas al laboratorio, listo para que firmes abajo de cada página.
La primera cosa que tienes que haer, es definir la lista de formas qen que este estudio puede impactar al usuario. En ConsentDocument.swift, reemplaza //TODO: consent sections
con el siguiente código:
let consentSectionTypes: [ORKConsentSectionType] = [
.Overview,
.DataGathering,
.Privacy,
.DataUse,
.TimeCommitment,
.StudySurvey,
.StudyTasks,
.Withdrawing
]
Un ORKConsentSectionType es un enum que designa una página de prefacio que cubre parte del documento de consentimiento. Simplemente has definido un array de estos enums, que utilizarás cuando crees secciones de consentimiento para mostrar las diferentes páginas.
Al haber ordenado el ORKConsentSectionType array en el orden específico mostrado arriba, la página tendra automaticamente suaves transiciones cuando el usuario navega hacia delante.
Estas secciones son solo recomendadas, no obligatorias. Si tu estudio no necesita alguna o ninguna de estas secciones, puedes quitarlas como requieras, o utilizar una de las siguientes operaciones para ORKConsentSectionType:
Ahora que has identificado los tipos de secciones que utilizar, necesitas crearlas y darlas contenido.
Añade el siguiente código justo debajo de donde has definido consentSectionTypes
:
var consentSections: [ORKConsentSection] =
consentSectionTypes.map { consentSectionType in
let consentSection = ORKConsentSection(type: consentSectionType)
consentSection.summary = "Si quieres completar este estudio..."
consentSection.content = "En este estudio te pedirán que contestes
tres preguntas. También tendrás tu voz grabada durante diez segundos."
return consentSection
}
consentDocument.sections = consentSections
Aquí vas iterando a través del consentSectionTypes
array y creas un ORKConsentSection para cada tipo. Estas secciones corresponden a páginas en el formulario de consentimiento. Cada sección tiene una imagen por defecto basada en el tipo, que puedes cambiar accediendo a la propiedad customImage
.
EL contenido textual se pone en las propiedades summary
y content
que dan el titulo y texto a cada sección. En una app real, utilizarias distinto texto en cada página, dependiendo de su propósito. Para este tutorial sin embargo, simplementa añadiremos el mismo resumen y contenido a cada sección.
La recolección de una firma ya viene construido con ResearchKit. Reemplaza el //TODO: firma
en ConsentDocument.swift con lo siguiente:
consentDocument.addSignature(ORKConsentSignature(forPersonWithTitle: nil,
dataFormatString: nil, identifier: "ConsentDocumentParticipantSignature"))
El único parametro requerido para crear un ORKConsentSignature es identifier
, que es un String
único, que distinguirá esta firma de otra cualquiera potencial firma que pudiera estar presente en el documento.
Ahora que tienes el documento de consentimiento definido, tienes que añadirlo a una tarea, para poder presentarselo al usuario. Las tareas (tasks), se dividen en dos categorias: Visual Consent, que son las pantallas definidas en tu ORKContentSections
; y el Consent Review, que incluye la recolección de la firma.
Para empezar, crea un nuevo archivo Swift, llamado ConsentTask.swift y añade el siguiente código:
import ResearchKit
public var ConsentTask: ORKOrderedTask {
var steps = [ORKStep]()
//TODO: Añadir VisualConsentStep
//TODO: Añadir ConsentReviewStep
return ORKOrderedTask(identifier: "ConsentTask", steps: steps)
}
Esta es la primera aparición directa de un ORKTask: un protocolo que es uno de los del núcleo de ResearchKit. Tareas (tasks) en ResearchKit actuan como una colección de pasos, y un ORKOrderedTask es una clase común que implementa el protocolo ORKTask presentando sus pasos en un orden prefijado.
Ahora hay que añadir el Visual Consent Step. Todavía en ConsentTask.swift, reemplaza el //TODO: Añadir VisualConsentStep
con el siguiente codigo:
var consentDocument = ConsentDocument
let visualConsentStep = ORKVisualConsentStep(identifier:
"VisualConsentStep", document: consentDocument)
steps += [visualConsentStep]
Aquí, utilizas el ConsentDocument de arriba, para crear un ORKVisualConsentStep. En otras palabras, estas diciendo a ResearchKit que cree una representación visual de las secciones del documento de consentimiento.
Lo siguiente es el Consent Review Step. Reemplaza el //TODO: Añadir ConsentReviewStep
con el siguiente código:
let signature = consentDocument.signatures!.first as! ORKConsentSignature
let reviewConsentStep = ORKConsentReviewStep(identifier:
"ConsentReviewStep", signature: signature, inDocument: consentDocument)
reviewConsentStep.text = "¡Revisar Consentimiento!"
reviewConsentStep.reasonForConsent = "Consentimiento para unirse al estudio"
steps += [reviewConsentStep]
El ORKConsentReviewStep crea las pantallas para resumir el documento de consentimiento, para determinar si el usuario está de acuerdo o no con los términos, y obtener la firma del usuario. Tal como el ORKConsentSection que definimos antes, el consent review section requiere que pongas texto para la página.
Has añadido ambos pasos a la tarea de consentimiento. Todo lo que queda para la parte de consentimiento de tu app es presentar esta tarea al usuario, y manejar los resultados.
Es un trabajo para tu view controller, asique añade el siguiente código en ViewController.swift:
extension ViewController: ORKTaskViewControllerDelegate {
func taskViewController(taskViewController: ORKTaskViewController,
didFinishWithReason reason: ORKTaskViewControllerFinishReason, error:
NSError?) {
// Handle results with taskViewController.result
taskViewController.dismissViewControllerAnimated(true, completion: nil)
}
}
Tu view controller implementa ahora el ORKTaskViewControllerDelegate manejando los resultados de la tarea en taskViewController:didFinishWithReason:error:
. Estos resultados pueden estar en la forma de un documento de consentimiento firmado, respuestas a una encuesta, o datos de un sensor. Por ahora, simplementa vas a despachar el view controller de la tarea cuando ésta finalize.
¿Cómo puedes presentar la tarea entonces? Añade el siguiente método a la clase ViewController:
@IBAction func consentTapped(sender: AnyObject) {
let taskViewController = ORKTaskViewController(task: ConsentTask,
taskRunUUID: nil)
taskViewController.delegate = self
presentViewController(taskViewController, animated: true, completion: nil)
}
Este es un simple método en el que creas un ORKTaskViewController con tu tarea de consentimiento. ResearchKit creará la UI solo, de la información obtenida en la tarea que le pasas.
Una vez que has puesto el view controller como el view controller delegado de la tarea, presentas el view controller. ¡Todo lo que queda ahora es activar consentTapped!
Abre Main.storyboard y añade un UIButton
a la vista. Pon el titulo del botón como Consent y conecta el botón a consentTapped:
en tu view controller como puedes ver a continuación:
¡Es el momento que estabas esperando! Haz click en Build tu app:
Ahora que tienes hecha la parte de consentimiento de tu app, puedes pasar al kit de la cuestión: la encuesta. En esta sección, crearás una tarea de encuesta, y la presentarás en la misma forma que con la tarea de consentimiento.
Crea un nuevo archivo Swift, llámalo SurveyTask.swift y añade el código siguiente:
import ResearchKit
public var SurveyTask: ORKOrderedTask {
var steps = [ORKStep]()
//TODO: Añadir paso de instrucciones
//TODO: Añadir pregunta sobre el nombre
//TODO: Añadir pregunta sobre carrera
//TODO: Añadir pregunta sobre color
//TODO: Añadir paso de resumen
return ORKOrderedTask(identifier: "SurveyTask", steps: steps)
}
El primer paso simplemente muestra las instrucciones de la encuesta al usuario. Reemplaza TODO: Añadir paso de instrucciones
con lo siguiente:
let instructionStep = ORKInstructionStep(identifier: "IntroStep")
instructionStep.title = "Las tres preguntas"
instructionStep.text = "Q
steps += [instructionStep]
Esto crea y añade ORKInstructionSet, que es una pantalla simple, pero con una gran utilidad, que puedes utilizar cada vez que tengas que presentar instrucciones al usuario. Puedes opcionalmente incluir una imagen con la propiedad image
, pero no es necesario aquí.
Lo siguiente que tienes es la primera pregunta, que se abrirá para permitir al usuario entrar ciertos datos. Reemplaza //TODO: Añadi pregunta sobre el nombre
con:
let nameAnswerFormat = ORKTextAnswerFormat(maximumLength: 20)
nameAnswerFormat.multipleLines = false
let nameQuestionStepTitle = "¿Como te llamas?"
let nameQuestionStep = ORKQuestionStep(identifier: "QuestionStep", title:
nameQuestionStepTitle, answer: nameAnswerFormat)
steps += [nameQuestionStep]
Un ORKQuestionStep; como el que creaste en la sección anterior, presenta al usuario una única pregunta. El parametro answer:
, del tipo ORKAnswerFormat, determina la UI para la entrada de datos del usuario. Has utilizado ORKTextAnswerFormat, que deja al usuario meter su nombre utilizando el teclado.
Lo siguiente es una pregunta en la que el usuario tiene que elegir entre distintas opciones predefinidas. Reemplaza el //TODO: añadir pregunta sobre carrera
con lo siguiente:
let careerQuestionStepTitle = "Cual es tu carrera?"
let textChoices = [
ORKTextChoice(text: "Telecomunicaciones", value: 0)
ORKTextChoice(text: "Derecho", value: 1)
ORKTextChoice(tedxt: "Medicina", value: 2)
]
let careerAnswerFormat: ORKTextChoiceAnswerFormat =
ORKAnswerFormat.choiceAnswerFormatWithStyle(.SingleChoice, textChoices:
textChoices)
let careerQuestionStep = ORKQuestionStep(identifier:
"TextChoiceQuestionStep", title: careerQuestionsStepTitle, answer:
careerAnswerFormat)
steps += [careerQuestionStep]
Esta vez, el formato de la respuesta es un ORKTextChoiceAnswerFormat. Defines las posibles elecciones para el usuario, creas el paso de la pregunta, y lo añades a la tarea.
La última pregunta de tu encuesta es similar al formato de text choice, en que requiere que el usuario elija entre diferentes opciones predefinidas, pero con una diferencia clave: las opciones se representan con imagenes, no texto.
Descarga y abre este documento. Añadeles a tu proyecto Xcode en Images.xcassets:
Una vez has añadido las imagenes a tu proyecto, vuelve a SurveyTask.swift y reemplaza //TODO: Añadir pregunta de color
con lo siguiente:
let colorQuestionStepTitle = "What is your favorite color?"
let colorTuples = [
(UIImage(named: "red")!, "Rojo"),
(UIImage(named: "orange")!, "Naranja"),
(UIImage(named: "yellow")!, "Amarillo"),
(UIImage(named: "green")!, "Verde"),
(UIImage(named: "blue")!, "Azul"),
(UIImage(named: "purple")!, "Morado")
]
let imageChoices : [ORKImageChoice] = colorTuples.map {
return ORKImageChoice(normalImage: $0.0, selectedImage: nil, text: $0.1,
value: $0.1)
}
let colorAnswerFormat : ORKImageChoiceAnswerFormat =
ORKAnswerFormat.choiceAnswerFormatWithImageChoices(imageChoices)
let colorQuestionStep = ORKQuestionStep(identifier:
"ImageChoiceQuestionStep", title: colorQuestionStepTitle, answer:
colorAnswerFormat)
steps += [colorQuestionStep]
La clave para esta pregunta es, otra vez, el formato de la respuesta. Aquí, has utilizado ORKImageChoiceAnswerFormat, que inicializaste con un array de opciones de imagenes del tipo ORKImageChoice.
Cada ORKImageChoice
le da isntrucciones a ese paso para mostrar una image
; cuando el usuario selecciona una imagen, el paso muestra el texto de la imagen, a través de la propiedad name
y pasa el value
de esa imagen a los resultados. ResearchKit continua desde aquí, y construye tu pantalla utilizando estas imagenes para mostrar una serie de botones.
Es una buena práctica el notificar a tu usuario cuando la encuesta ha terminado; por lo tanto, necesitaras añadir un buen summary step.
Reemplaza //TODO: Añadir resumen
con lo siguiente:
let summaryStep = ORKCompletionStep(identifier: "SummaryStep")
summaryStep.title = "Bien, ¡has terminado!"
summaryStep.text = "¡Fue facil!"
steps += [summaryStep]
Aquí creas y añades un ORKCompletionStep, que es esencialmente lo mismo que un ORKInstructionStep
, excepto que tiene un animado tick en el centro, que agradece al usuario por completar la encuesta.
Presentar la tarea de la encuesta, funciona de la misma manera que para presentar la tarea de consentimiento. Abre ViewController.swift y añade el siguiente método:
@IBAction func surveyTapped(sender: AnyObject) {
let taskViewController = ORKTaskViewController(task: SurveyTask,
taskRunUUID: nil)
taskViewController.delegate = self
presentViewController(taskViewController, animated: true, completion: nil)
}
Otra vez, creas un ORKTaskViewController
, pones el view controller como delegado, y lo presentas.
Abre Main.storyboard, añade un UIButton
con el titulo Survey y conectalo con surveyTapped:
como puedes ver a continuación:
Construye tu app; ve completando la encuesta, y veras los pasos que contienen las instrucciones y el resumen, seguido de las tres preguntas de la encuesta:
Las tareas activas (Active Tasks) utilizan sensores del dispositivo, tales como el acelerómetro, el giroscopio, micrófono, e incluso la pantalla táctil; para grabar datos para propósitos de análisis. En este ejemplo, utilizarás el micrófono del iPhone para grabar ejemplos de audio para tu estudio.
Crea un nuevo archivo Swift en tu proyecto y llámalo MicrophoneTask.swift. Rellenalo con el siguiente código:
import ResearchKit
public var MicrophoneTask: ORKOrderedTask {
return ORK.OrderedTask.audioTaskWithIdentifier("AudioTask",
intendedUseDescription: "Una frase te aparecerá para que la leas",
speachInstruction: "Estas fueron las últimas palabras de Joseph
de Aramathea", shortSpeechInstruction: "El Santo Grial puede ser
encontrado en el Castillo de Aaaaaaaaaah", duration: 10,
recordingSettings: nil, options: nil)
}
Aqui estas utilizando un ORKOrderedTask con un inicializador típico, que produce una tarea de audio que muestra tus instrucciones y graba la voz del usuario durante cierto tiempo.
Es así de simple, simplemente especificas las instrucciones y la duración de la tarea, ¡y ResearchKit te da el resto de la interfaz gráfica gratis!
El paso final es conectar esta tarea a tu UI. Añade el siguiente método a ViewController.swift:
@IBAction func microphoneTapped(sender: AnyObject) {
let taskViewController = ORKTaskViewController(task: MicrophoneTask,
taskRunUUID: nil)
taskViewController.delegate = self
taskViewController.outputDirectory = NSURL(fileURLWithPath:
NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask,
true)[0] as! String, isDirectory: true)
presentViewController(taskViewController, animated: true, completion: nil)
}
Esto debería resultar ya familiar, excepto por la línea en la que especificas una NSURL
válida para taskViewController.outputDirectory
. La documentación de ResearchKit dice: "Si no hay un directorio de salida especificado, pasos activos que requieren escribir datos al disco, como aquellas que incluyen grabaciones, tipicamente fallarán cuando se ejecuten".
Finalmente, abre Main.storyboard, añade un tercer UIButton
que se llame Microphone, y connectalo a microphoneTapped:
como se muestra a continuación:
Construye tu app; haz click en el botón Microphone y prueba la nueva tarea. En el simulador, la tarea simplemente contará el tiempo, pero si lo ejecutas en un dispositivo real, puedes ver la forma de onda de tu voz:
En este tutorial, hemos cubierto los tres módulos de ResearchKit: surveys, informed consent y active tasks. Todos éstos tienen como objetivo final obtener información del usuario, que es básicamente, de lo que va ResearchKit.
Hay, por supuesto, pasos adicionales en un estudio real. Probablemente necesitaras programar estas tareas para que se ejecuten de forma regular, y tendrás que devolver estos datos a un servidor, donde pueda ser agregado al estudio. Ninguno de estos estan construidos en ResearchKit por el momento, pero apple y/o la comunidad de ResearchKit seguramente añadan esta capacidad en el futuro.
ResearchKit es capaz de mucho más que de los puntos cubiertos en este tutorial. Puedes probar el proyecto ORKCatalog que está incluido en ResearchKit para ver las posibilidades adicionales para tus app de investigación, tales como análisis de reusltados, otros tipos de sensores, y más.
ResearchKit está siendo utilizado en la actualidad en los siguientes estudios activos:
Puedes querer unirte a alguno de estos estudios, si eres elegible para participar, y así formar un concepto más sólido de la deseada experiencia de usuario en las apps de ResearchKit. Por supuesto,¡ tu participación puede ayudar a avanzar en unas investigaciones importantes!
ResearchKit es una plataforma de código abierto, asi que si quieres solicitar una característica, o incluso contribuir, simplemente abre un caso o solicitalo en GitHub. Para obtener más información sobre cómo colaborar, haz click aquí.
¡Muchas gracias por haber seguido este tutorial!
Stanford Medicine ha desarrollado este estudio sobre enfermedades cardiovasculares. En su página web, nos proporcionan una idea sobre dicho estudio. En este artículo, veremos por encima algunas dudas que pueden surgir sobre qué es MyHeart Counts. En otro artículo analizaremos su estructura interna.
Animan a cualquiera a descargarse su app, para combatir las enfermedades de corazon y de infartos (asesino #1 en el mundo); y conocer un poco más sobre en qué estado se encuentra tu corazón.
El hecho de que la app está solo disponible en inglés y para residentes en Estados Unidos me ha impedido poder descargarla y probarla por mi misma. Pero atendiendo a las descripciones que dan en su página web, podemos entender un poco mejor en qué se basa el estudio.
Estar activo cada día ayuda a prevenir enfermedades cardiovasculares; aun así, este conocimiento esta basado en gran medida en datos de encuestas. Ahora podemos medir la actividad en mayor detalle con el uso de smartphones y dispositivos wearable.
MyHeart Counts es una app de investigación diseñada al estudio de actividad y salud del corazón a través del telefono. Tambien es uno de las mayores investigaciones cardiovasculares jamás hechas. Los científicos de Stanford planean utilizar la información obtenida de los usuarios de la app para mejorar métodos de prevención y tratamiento de enfermedades del corazón.
La actividad física se conoce como una de las mejores "drogas" para prevenir enfermedades del corazon, infartos, alta presión sanguínea, diabetes y otras enfermedades. Ambos smartphones y wearables pueden hacer un seguimiento de como de activos estamos durante el dia. Tenemos la opertunidad de medir directamente la actividad en las personas para mejorar el conocimiento que tenemos sobre la relación entre actividad y salud del corazón. También nos permitirá estdiar formas de ayudar a la gente a mejorar su actividad y salud de corazón con el tiempo, previniendo así este tipo de enfermedades en el mundo.
Al principio del estudio, te realizan una encuesta, y tienes que utilizar tu telefono (o wearable si tienes uno), para recolectar tu información de actividad durante 7 dias. También te pedirán hacer un cuestionario de "Physical Activity Readiness" para ver o no si deberias consultar con tu médico sobre tu habilidad para incrementar tu actividad o fitness. Si puedes, te pedirá que hagas un test de andar durante 6 minutos, y añadir información sobre factores de reisgo y tests de sangre que determinarán tu nota de reisgo. La app repetirá este proceso cada 3 meses para tener tu información actualizada. También te pediran intentar distintas formas que mejoren tu actividad y salud de corazón.
El círculo muestra estimaciones de la proporción de tiempo que has destinado a distintos niveles de actividad, basado en los datos de los sensores de tu dispositivo. Tambien estima tus "minutos activos", que combina actividades moderadas y vigorosas, donde la recomendación se encuentra en 30 minutos al día o 150 a la semana. También te muestra los pasos del día. NTen en cuenta que esto pretende ser informativo, ya que un cálculo preciso de todo tipo de actividades de los sensores es un area en investigación y desarrollo. Tus datos pueden ayudar a refinar estas estimaciones, y a entender mejor la relación actividad-salud del corazón.
Ambos tu "heart age" y puntuaciones de riesgo están basados en cálculos de reisgo desarrollados como parte del oficial "2013 ACC/AHA Guideline on the Assessment of Cardiovascular Risk". Las guías de 2014 utilizan edad, género, raza, presión sanguinea, niveles de colesterol, y otra información sobre factores de riesgo para darte una estimación personal de 10 años de riesgo de infarto (edades 40-79) y riesgo durante toda la vida (20-59). Para compararlo, las puntuaciones de 10 años y de vida, tambien se dan a otra persona de la misma edad, genero y raza con factores de riesgo óptimos (colesterol total 170mg/dL, HDL 50mg/dL, presión sanguinea sistolica 110mmHg, no fumador, no diabetico, sin medicación para alta presión sanguínea).
Es un test que ha sido extensamente utilizado como un easy-to-perform (facil de ejecutar) medida de fitness. El estudio empieza con un cuestionario sobre Physical Activity Readiness. También se esta implementando una característica que te da la distancia típica esperada por tu edad, genero, altura, y peso. Datos de frecuencia cardiaca estan disponibles si utilizas un wearable que es capaz de grabar el ritmo cardiaco mientras andas.
No. Hay algunas preguntas en el cuestionario sobre la diete, paro el estudio no sigue un record de lo que comes.
Se tarda menos de 10-15 minutos al dia durante la primera semana para hacer las encuestas y tests. Te aconsejan seguir utilizando la app entre cada 3 meses.
Se anima a los participantes a continuar el estudio durante tanto tiempo como quieran. recibir datos durante un largo periodo de tiempo es extremadamente beneficial para la investigación. Aun asi, todos los datos que se reciben ayudan, y puedes retirar tu consentimiento y dejar de participar en cualquier momento.
Para la mayoría de nosotros, solo vamos a nuestro médico o enfermera unas pocas veces al año, pero nuestro teléfono se encuentra con nosotros todos los dias. Esto puede ayudar con medir nuestras actividades diarias además de darnos acceso a información del corazón 24/7, no importa donde te encuentres. También podemos recibir feedback en distintas formas que ayuden a mejorar tus comportamientos cotidianos para mantener nuestro corazón sano.
Los datos reunidos a través de la app MyHeart Counts en tu iPhone irán a un ordenador seguro donde tu nombre será quitado y reemplazado con un código aleatorio para proteger tu privacidad. Tus datos codificados irán entonces a un ordenador seguro de Sage Bionetworks, una organización de investigación sin ánimo de lucre, y será combinado con los datos de otros participantes para pasar a ser analizados. Los participantes del estudio tendrán la opción en la app, de compartir tus datos codificados ampliamente con investigadores cualificados, o solo para compartirlo con los investigadores y compañeros de Stanford. Cualquier opción sea la que elijas, tu participación ayuda en la creación de una base de datos rica para la investigación de científicos de Stanford, para colaborar en el avance del entendimiento de la salud del corazón humano.
Porque tienes un corazón, ¡y cada corazón cuenta! Todos estamos en riesgo de una enfermedad de corazón e infarto, y es el asesino #1 del mundo. Puedes ayudar a que se reuna información para colaborar a tener un mejor entendimiento y prevenir enfermedades del corazón mientras aprendes más sobre tu propia salud y los factores de riesgo y areas para mejorar.
Una de las páginas que recomiendo para aprender programación en iOS es Ray Wenderlich, donde ofrecen gran cantidad de tutoriales de los que pueden beneficiarse principiantes y profesionales en programación
Recientemente han publicado esta página Learning Researchkit, con muchos tutoriales gratis que pueden permitirte mejorar tus habilidades para crear una app ResearchKit, utilizando Swift, ResearchKit, HealthKit y mucho más.
Es muy interesante el tutorial Accessing heart rate data, el cual me encuentro ahora mismo desarrollando.
Cuando entramos en cualquiera de los proyectos de código abierto expuestos en la página principal de ResearchKit, se hace mención a AppCore, de hecho, en ninguno de los proyectos está incluido, por lo que no compilan.
AppCore es una capa construida sobre ResearchKit, y forma el núcleo de las cinco apps iniciales de ResearchKit.
Incluye algunas de las características claves de esas apps iniciales de ResearchKit, incluyendo:
AppCore ha resultado de mucha ayuda en el desarrollo de varias apps de ResearchKit. Para ayudar a la comunidad ResearchKit a obtener la mayor utilidad de los componentes individuales de AppCore, hay muchos desarrolladores trabajando con Apple para pasar ciertos componentes de AppCore al inicial repositorio de ResearchKit. Como resultado, en github solo aceptan formas de resolver bugs a AppCore para continuar.
AppCore no funciona por si solo, sino que se construye como parte de otros proyectos. Para construirlo, ve a alguno de los proyectos que lo utilizan, como MyHeart Counts.
Esta version de AppCore difiere de la version de las apps que se pueden coger en el App Store, ya que no incluye OpenSSL, que está utilizado en las apps ya subidas al App Store para ayudar ocn la encriptación (Cryptographic Message Syntax (CMS)).
CMS se utiliza en las apps para proteger datos sensibles que estan temporalmente almacenados en el teléfono, y mientras están en tránsito. Ayuda a redicor requisitos en los back-ends, para que los puntos finales HTTPS puedan terminarse de forma segura antes del salto final, ya que la encriptación y desencriptación de los datos ocurre en la capa de aplicación.
Para reactivar OpenSSL, construye OpenSSL como una librería estática iOS, añadelo a la libreria AppCore target, y cambia el código CMS para utilizar OpenSSL, quitando APCCMS_NoEncryption_JustAStub.m
del target, y añadiendo APCCMS_UsingOpenSSL.m
en su lugar.
El 15 de Octubre de 2015, Apple anunció que ResearchKit estaba permitiendo nuevos estudios de investgación de autismo, epilepsia y melanoma. Como ya hemos visto en el resto de artículos, ResearchKit trasnforma el iPhone en una herramienta poderosa para estudios médicos, permitiendo a médicos, científicos y otros ivnestigadores a recolectar datos con mayor frecuencia y mejor precisión de sus participantes, utilizando apps para el iPhone. Con ResearchKit, los participantes pueden repasar un proceso de consentimiento interactivo, completar fácilmente tareas activas, o mandar respuestas a encuestas, utilizando cóo sus datos de salud se comparten con investigadores, y haciendo contribuciones a la investigación médica de una forma más fácil que antes. Investigadores y desarrolladores han contribuido ya a ResearchKit, con mas de 50 investigaciones siendo añadidas al framework de código abierto.
Jeff Williams, el vice presidente senior de Operaciones de Apple, ha dicho: "Estamos honrados de trabajar con instituciones médicas a nivel mundial y proporcionalres herramientas para entender mejor las enfermedades, y, por último, ayudar a la gente a vivir de forma más sana. En tan solo seis meses, las apps de ResearchKit, estudiando de todo, desde asma a diabetes a Parkinson, están ofreciendo ideas a los científicos de todo el mundo, y más de 100.000 participantes están eligiendo contribuir sus datos para avanzar en la ciencia e investigación médica"
Con permiso del usuario, los investigadores están diseñando estudios que emplean ResearchKit, que puedan acceder también a datos de la app Salud, tal como peso, presión sanguínea, niveles de glucosa, y otros datos medidos por terceras apps y dispostitivos, para capturar datos a tiempo real desde el iPhone. Acceso al acelerómetro, micrófono, giroscopio y sensores GPS del iPhone, ofrecen una idea adicional en cuanto al modo de andar del participante, su discapacidad motora, fitness, habla y memoria, dando datos más objetivos a los investigadores médicos.
Autismo La Universidad de Duke y Medicina Duke están lanzando "Autism & Beyond", para padres preocupados sobre el autismo y otros temas de desarrollo. El equipo de investigación de Duke esta analizando si la camara frontal del iPhone puede ser utilizado para dectectar problemas de desarrollo desde una edad mas temprana. La app utiliza algoritmos de detección de emociones para medir la reacción de un niño a los videos mostrados en el iPhone. Duke se está emparejando con la Universidad de Pekin en China y otros compañeros internacionales para llevar a cabo el estudio.
"Autism & Beyond combina cuestionarios bien etablecidos con una nueva tecnología de video que permite analizar las emociones de los niños para que un día seamos capaces de automatizar el análisis para condiciones tales como el autismo y la ansiedad, dice Ricky Bloomfield, Director de Estrategia Tecnológica Movil y Profesor Asistente en Medicina Interna & Pediatria en la Universidad de Duke. "ResearchKit nos permite poner todo un estudio médico en una única app, alcanzando a más gente que nunca antes".
Epilepsia: La app EpiWatch desarrollada por Johns Hopkins es el primer estudio de este tipo a ser ejecutado con el Apple Watch utilizando ResearchKit. El estudio testearña si los sensores del Apple Watch pueden ser utilizado para detectar la generación y duración de convulsiones. Durante la primera fase del estudio, los investigadores utilizaran un complication personalizable en el Apple Watch para facilitar a los pacientes con un acceso de un toque apara capturar la aceleracion y ritmo cardiaco con los sensores para capturar la firma digital de su convulsión, y mandar una alerta a un ser querido. La app mantendrá un registro de todas las convulsiones y la responsividad del participante durante el evento. La app también ayuda a los participantes a organizar su problema siguiendo su toma de medicamentos y analizando posibles efectos secundarios, mientras permiten a los participantes a comparar su condición con otros en el estudio de investigación.
"La epilepsia tiene impacto sobre más de 2 millones de personas en los Estados Unidos. Esta nueva app, desarrollada utilizando ResearchKit, da a los pacientes actividades interactivas que les ayuda a manegar su condición ahora, y abre una puerta al desarrollo de una app que puede detectar distintos tipos de convulsiones y alertar a la familia y cuidadores", dice Gregory Krauss, MD., Profesor de Neurologia en la Universidad Johns Hopkins de Medicina. "Ahora tenemos la oportunidad de utilizar tecnología para monitorizar convusliones en el pais, y recolectar datos en una absolutamente nueva forma".
El diagnóstico y el tratamiento tempranos son de gran ayuda para los niños con autismo. En un revolucionario proyecto, investigadores de la Duke University, la Peking University y la University of Cape Town están estudiando cómo utilizar tecnología de vídeo para detectar problemas emocionales y de desarrollo en niños de tan solo 18 meses de edad. El objetivo es poder examinar a los pequeños en sus propios hogares para diagnosticar problemas de autismo y otros trastornos del desarrollo.
Un equipo de investigadores de la Johns Hopkins University ha desarrollado EpiWatch para determinar si los sensores del Apple Watch podrían utilizarse para detectar la aparición y la duración de los ataques epilépticos. Durante la primera fase del estudio, los participantes que notan una convulsión abren la app tocando la complicación del Apple Watch. De este modo se activan los sensores del reloj y se envía una alerta a una persona de su confianza. El objetivo es desarrollar una app capaz de detectar los ataques y mantener informados a familiares y cuidadores.
Hace tiempo que la fotografía se viene utilizando para controlar la evolución de los lunares. Ahora los investigadores de la Oregon Health and Science University han creado Mole Mapper, una app que recopila información a mayor escala. Mole Mapper recogerá imágenes de decenas de miles de participantes y les permitirá compartir fotos directamente con sus médicos. Los investigadores se han propuesto crear un algoritmo capaz de diagnosticar melanomas en sus fases más tempranas.
El hospital Mount Sinai, el Weill Cornell Medical College y LifeMap han desarrollado la app Asthma Health para entender mejor las causas que provocan la enfermedad. Esta app ayuda a los participantes a evitar las zonas donde la calidad del aire podría empeorar sus síntomas. Puesto que el estudio hace un seguimiento de los síntomas de cada individuo, los investigadores esperan poder personalizar más y mejor los tratamientos.
Los síntomas de la enfermedad de Parkinson son tan variados que muchas preguntas siguen aún sin respuesta. Partiendo de esa base, la Universidad de Rochester y Sage Bionetworks han creado la app mPower para medir con precisión datos como la destreza, el equilibrio, la memoria y la forma de andar. Esta información podría ayudar a los médicos a comprender la relación entre algunos de los síntomas y el párkinson. Y los participantes podrían empezar a reconocer la aparición de los síntomas.
El Massachusetts General Hospital ha desarrollado la app GlucoSuccess, que permite a los investigadores entender cómo determinados aspectos de la vida de una persona —dieta, actividad física y medicamentos— afectan a sus niveles de glucosa en sangre. La app también ayuda a los participantes a identificar de qué modo la alimentación y la actividad física influyen directamente en sus niveles de glucosa, lo que les permite tomar medidas preventivas.
El Dana-Farber Cancer Institute, la Fielding School of Public Health de la UCLA, Penn Medicine y Sage Bionetworks han desarrollado la app Share the Journey. Su objetivo es saber más sobre los efectos a largo plazo de la quimioterapia en el cáncer de mama. Los participantes pueden utilizar la app para aportar información detallada sobre su nivel de energía, habilidades cognitivas y estado de ánimo. El estudio pretende encontrar formas de mejorar la calidad de vida de los pacientes después de los tratamientos.
La app MyHeart Counts surge de la colaboración de la Stanford Medicine y la University of Oxford. Se basa en encuestas y pruebas para evaluar con mayor precisión la relación entre actividad y estilo de vida de los participantes y los riesgos de padecer enfermedades cardiovasculares. Estos datos permiten a los investigadores saber cómo proteger mejor el corazón de los pacientes.
Esta página web es el primer proyecto para la asignatura Ingeniería Web, de Grado de Ingeniería de Telecomunicaciones de la Universidad de Cantabria. El objetivo es llevar a cabo un análisis sobre el nuevo framework open-source de Apple: ResearchKit.
¡Consulta cualquier duda, o manda cualquier sugerencia!