Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used)...

30
Vom Papier zur normkonformen Mobile Medical App Ein Erfahrungsbericht

Transcript of Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used)...

Page 1: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

Vom Papier zur normkonformen Mobile Medical App –

Ein Erfahrungsbericht

Page 2: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

we engineer

medical

software

Page 3: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

welcomeMedConf2019

page

03

Bernd Seidenspinner

Lead Software

Architect

Miriam Schulze

Director Medical

Engineering

Page 4: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

we are certified by TÜV

Hessen according to ISO

9001 and ISO 13485 and

engineer software in

accordance with IEC 62304

Page 5: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

BAYOOMEDat a glance

page

05

most experienced

250 person years

experience in medical

software development

> 800 medical customers

100+ employees

Darmstadt & Munich

widespread expertise

great passion

medical softwaremobile medical apps for iOS

(iPhone & iPad) and Android.

device classes I, IIa, IIb and III

software safety classes B & C

cloud & web applications

the leading software

development company for

regulated development of

medical apps and medical

(standalone-) software

ISO

13485

Page 6: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

the beginning

Page 7: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

starting pointa analog product

page

07

articulating paper

„"Even the smallest contacts in the μ-range can cause

dysfunctions (usually pain dysfunction syndrome) in

patients and even significantly hinder swallowing. The

representation of the occlusal contact conditions

therefore places a very high requirement on the test

equipment. "

Quelle: http://bausch.fm/Blackbelt/bkdb/bk_templates/bausch/de/products/FMPro.php?-DB=bk_products&-Lay=weblayout&-

Format=proderg.html&-SortField=headline_e&-SortOrder=ascend&-Max=1&-Op=bw&artno=8m&-Find

Page 8: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

goaldigitalization of product and process

page

08

combination analog and digital

more than just a digital pedant to the analog product

added value for the dentist

system: handheld + iPad app

Page 9: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

page

09

Page 10: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

let’s do it

agile, please

Page 11: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

implementationscrum: process & advantages

page

011

wishlist finished

product(incl. sofware

design, tests,

verification and

documentation)

3 weeks

Plan Do Check

• empirical process control: transparency, inspection, adaption

• fixed time boxes

• results every 3 weeks

scrum imposes a few constraints on the development process

Page 12: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

implementationscrum: process & advantages

page

012

improve

sprint

retrospective

dosprint

planning sprint review

sprint

3 weeks

daily scrum

sprint

backlog

product backlog

finished

product

BAYOOMED development team

Customer stakeholder

BAYOOMED product owner

BAYOOMED scrum master

Page 13: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

agile?!what about documentation

page

013

02creation and maintenance of

software development plan

according IEC 62304

03documentation plan contains

relevant documents,

templates and storage

locations

01“Definition of Done” includes

documentation, verification

and tracing activities

Page 14: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

specify, design,

implement, verify

Page 15: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

implementationtool chain

page

015

Enterprise Architect for

requirements management

Word and Excel for test

plans, memo, strategy paper,

etc. using existing templates

specify

Enterprise Architect for sw

architecture and design

tracing is done in Enterprise

Architect as well

design

GIT for revision and code

control

DevOps for sprint

organization

feature and test develop-

ment in XCode

implement

GIT in combination with

DevOps and separate build

server for automated tests

verify

Page 16: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

implementationCI/CD pipeline iOS app

page

016

macOS & XCode

git

iPad / iOS

Safari browser

development

macOS VM

XCode / iOS emulator

git

build agent

build & (unit)test

Windows VM

release agent

release

internal QA / validation

QA Testflight

customer limited number of

beta Testers

staging Testflight

released version

AppStore

MS DevOps

Page 17: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

iOS - lessons

learned

Page 18: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

Apples update strategy

causes challenges:

AppStore policy change

causes need for updating

XCode

causes need for updating

macOS

development process

lessons learned

integration of DevOps & iOS

& macOS was less painful

than expected

AppStore distribution for

releases remains manual

process

Page 19: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

there is only very limited use

of testing the app with beta

versions of iOS

better to invest efforts into

higher test automation

development process

lessons learned

Page 20: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

no iPad mini support: no

device type detection

possible

undocumented API calls

development process

lessons learned

missing high level API for

network communication

custom C code and

SOUPs

Page 21: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

versioning of subsystems

imposes changes to

repository structure (if gitflow

is used)

independent versioning of

app and cloud

independent (linked) git

repositories

development process

lessons learned

Page 22: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

just upload it to

the app store

Page 23: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

app storesending hardware to apple

page

023

“Your app includes content or features that users

aren't able to use in this version. Apps that are for

demonstration, trial, or up-sell purposes are not

appropriate for the App Store.”

“Demo”-mode unregistered”

“We noticed that your app has iTunes File Sharing enabled.

-Which features of your app require iTunes File Sharing?

-What type of files would users normally be transferring with iTunes?

-Where specifically in the app would users access these shared files?”

detailed description of airdrop usage

“Which specific features of the

app utilize audio functionality

while the app is running in the

background?

Where can these features be

located within the binary?”

deactivation

“We have started the review of your app, but we are not able to

continue because we need access to a video that demonstrates your

app: in use on a physical iOS device, which shows the pairing and

interaction with the designated hardware.

Please ensure the video you provide shows a physical iOS device (not

a simulator)”

no need for sending a handheld video

Page 24: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

yet, another

update

Page 25: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

updateshow to handle them

page

025

new iPadscheck iPad versions within the application

lock app if required

no restrctions in app store possible

part of post-market

surveillance activities

new iOScloud db containing compatibility information

unblocking after verification (automated and

manual tests)

new handheld firmware

compiled into app

creation of new app version for firmware updates

app store guidelines compatibility check

Page 26: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

discussion

Page 27: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

thank you

Page 28: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

development processlessons learned

page

028

versioning of subsystems imposes changes to repository

structure (if gitflow is used)

independent versioning of app and cloud

independent (linked) git repositories

Page 29: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

development processlessons learned

page

029

no iPad mini support: no device type detection possible

undocumented API calls

missing high level API for network communication

custom C code and SOUPs

Page 30: Vom Papier zur normkonformen Mobile Medical App Ein ...€¦ · structure (if gitflow is used) independent versioning of app and cloud independent (linked) git repositories. development

implementationCI/CD lessons learned

page

030

Apples update strategy causes challenges:

AppStore policy change

causes need for updating Xcode

causes need for updating macOS

Integration of DevOps & iOS & macOS was less painful than

expected

AppStore distribution for releases remains manual process