lecture 9: design in platform ecosystems in5320 ...€¦ · in5320 - development in platform...
TRANSCRIPT
![Page 1: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/1.jpg)
1
IN5320 - Development in Platform EcosystemsLecture 9: Design in platform ecosystems
15th of October 2018Department of Informatics, University of OsloMagnus Li - [email protected]
![Page 2: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/2.jpg)
Two problems in large-scale / generic software development:
- “Generic” usability- Working with local users in development
We will look at:
1. Usability.2. User participation in design.3. Our two problems.4. Participation and scale. Four types of participatory design.5. Architectures for participation and local adaptations.6. IN5320 individual assignment award 2018!
2
Today
![Page 3: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/3.jpg)
Usability and participation
3
![Page 4: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/4.jpg)
Usability
How well a system works for the user
Do the system allow the intended users to certain goals with
- Effectiveness (doing the right things)- Efficiency (doing things right)- Satisfaction
4
![Page 5: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/5.jpg)
Usability - Nielsen’s 10 heuristics
- Visibility of system status
- Match between system and the real world
- User control and freedom
- Consistency and standards
- Error prevention
- Recognition rather than recall
- Flexibility and efficiency of use
- Aesthetic and minimalist design
- Help users recognize, diagnose, and recover from errors
- Help and documentation 5
![Page 6: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/6.jpg)
Different mental models
6
System oriented versus real-world oriented language
DHIS2 concepts
![Page 7: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/7.jpg)
Usability - Donald Normans 6 principles
- Affordances and signifiers
- Mapping
- Consistency
- Constraints
- Feedback
- Visibility
7
![Page 8: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/8.jpg)
8Norman 2013
![Page 9: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/9.jpg)
9
![Page 10: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/10.jpg)
10
![Page 11: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/11.jpg)
Usability
11
PERCEPTION
PAST - experiences
NOW - other senses
FUTURE - goals andmotives
Not just defined by qualities of the software, but dependent on a specific set of users
![Page 12: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/12.jpg)
Mental models
To make systems intuitive and usable, designers must try to create interfaces between technology and the user that are close to their mental model.
12
![Page 13: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/13.jpg)
Design - actuality gaps
Developers, designers, and end-users may have radically different understandings of the world.
13
![Page 14: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/14.jpg)
Design - actuality gaps
14
Heeks 2002
![Page 15: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/15.jpg)
Different mental models
15
January
February
March
April
May
June
January
February
March
April
MayJune
December
November
October
September
August
July
December
November
October
September
AugustJuly
![Page 16: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/16.jpg)
Different mental models
16
![Page 17: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/17.jpg)
Usability
Not just defined by qualities of the software, but dependent on a specific set of users in a certain context of use.
17
![Page 18: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/18.jpg)
User participation in design
To ensure usable systems, we must understand the users and context that we design for.
A common way to do this is to:
1. Investigate the context2. Involve end-users in the development process.
18
![Page 19: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/19.jpg)
User participation in design
Several traditions. Two common are.
- User/human-centered design (UCD).- Participatory design.
19UCD-model
![Page 20: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/20.jpg)
User participation in design
Different levels of participation.
20
![Page 21: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/21.jpg)
Challenge of scale
21
![Page 22: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/22.jpg)
Challenges in large-scale systems development
Two problems in large-scale / generic software development:
1. “Generic” usability
2. Working with local users in development
What if we are developing software to be used by very different users in very different contexts?
22
![Page 23: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/23.jpg)
Challenges of large-scale systems development
Example 1 - Standardized Patient Journal system
Implementing one common patient journal across different departments, hospitals, regions.
23
Norway
Health RegionHealth Region Health Region Health Region
Entity
Entity
Entity
Entity
Entity
Entity
Entity
Entity Entity
Entity
Entity
EntityEntity
Entity
![Page 24: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/24.jpg)
Challenges of large-scale systems development
Work practices, routines, language / semantics, culture, norms, legacy systems, dependencies etc.
24
![Page 25: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/25.jpg)
Challenges of large-scale systems development
25
PERCEPTION
PAST - experiences
NOW - other senses
FUTURE - goals andmotives
Not just defined by qualities of the software, but dependent on a specific set of users
![Page 26: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/26.jpg)
Challenges in large-scale systems development
- Usability is dependent on the users- Who is it usable for?- Who to involve in design?
26
![Page 27: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/27.jpg)
Challenges of large-scale systems development
Example 2 (Rolland & Monteiro, 2002) - Large shipping survey company:
Implementing one common system to support surveying across 300 sites in over 100 countries.
27
HQ
RegionRegion Region Region
Entity
Entity
Entity
Entity
Entity
Entity
Entity
Entity Entity
Entity
Entity
EntityEntity
Entity
![Page 28: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/28.jpg)
Challenges of large-scale systems development
Example 4 - HISP / DHIS2
28Titlestad et al., 2009
![Page 29: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/29.jpg)
29
![Page 30: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/30.jpg)
30
![Page 31: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/31.jpg)
Forms of participatory design (Roland et al., 2018)
Rolan et al,. 2018 have identified four types of participatory design based on scale (number of heterogeneous users and settings)
Singluar PD
Serial PD
Parallel PD
Community PD
31
![Page 32: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/32.jpg)
Singular PD
Singular - classic participatory design
Design technology in cooperation with small group of end-users.
Mutual learning
End-users can take part in fundamental decisions
32
![Page 33: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/33.jpg)
Serial PD
Design of artifact used in multiple settings / organizations / groups of users
In cooperation with end-users at one site, then another, and so forth.
33
Titlestad et al., 2009
![Page 34: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/34.jpg)
Parallel PD
Users are engaged at several sites in parallel to inform generic design
Core developers make visits to sites in parallel.
34
Generic product
Customized product Customized product Customized product
Local pd Local pd Local pd
Core developers and implementers
![Page 35: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/35.jpg)
Community PD
Broader community negotiates generic features. Local customization without involvement from core developers.
Circulating use-cases and best practices. Workshops and online arenas for communication
35
Generic product
Community of users and developers take decisions collectively. Core developers are not concerned with local
customization
Implementations
![Page 36: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/36.jpg)
Meta-design and platforms
36
![Page 37: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/37.jpg)
Architectures
- The technology must allow for local adaptations- Flexibility for customization- Modularization to innovate and make local adaptations. - Open source software
37
![Page 38: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/38.jpg)
Meta-design
Meta-design: Designing for future design (Andries Van Onck, Gerard Fischer e.g., 2008).
- Design continue during use.
Software developers create “spaces” so that the software can be shaped according to local use during or after implementation.
- Making functionality and interfaces customizable- Enable development of plugins- Open source software.
→ Mainly aimed at end-users as designers.
38
![Page 39: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/39.jpg)
Meta-design
39
![Page 40: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/40.jpg)
Platform design flexibility
40
Opening up the software architecture for the development of third-party apps could be one way of providing local implementers with flexibility.
Generic core
AppsHigh design-flexibility
Low use-flexibility
Tiwana 2013
![Page 41: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/41.jpg)
Platform architectures to support PD
41
Roland et al., 2018
![Page 42: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/42.jpg)
Architectures
- Technology is not enough. - Also a “social architecture” is needed.
Need of
- Local competence- Channels of communication
42
![Page 43: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/43.jpg)
Enabling large-scale distributed design
43
Scaffolding - structure that supports design and implementation (Titlestad et al., 2009)
“for the duration of a particular human practice, actors draw on various artefacts, spaces, and infrastructures to conduct their activities” - Orlikowski 2006 p462
![Page 44: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/44.jpg)
Enabling large-scale distributed design
44
Scaffolding - structure that supports design and implementation
HISP India
HISP Uganda
HISP BangladeshHISP Nigeria
DHIS2 core dev
HISP Oslo / UiO
HISP Tanzania
HISP South-Africa
jira
git
dhis2 academies
mailing lists
expert academies
workshops
![Page 45: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/45.jpg)
Enabling large-scale distributed design
45
Boundary spanners
![Page 46: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/46.jpg)
Architecture for design
46
![Page 47: Lecture 9: Design in platform ecosystems IN5320 ...€¦ · IN5320 - Development in Platform Ecosystems Lecture 9: Design in platform ecosystems 15th of October 2018 ... Not just](https://reader033.vdocuments.us/reader033/viewer/2022060208/5f040aca7e708231d40c0801/html5/thumbnails/47.jpg)
Example: Commodity ordering in Uganda
47
- Implemented DHIS2 to support commodity consumption reporting and ordering
- Hard to customize DHIS2 to this domain using built-in customization tools
- Platform core → too low use and design flexibility for this case
- Decided to build a third-party app (high design-flexibility)
- Enabled us to create a system tailored to the use-case.
- New tensions on the “scaffolding” and the boundary spanners