from applications to a software ecosystem platform: an exploratory...

23
From Applications to a Software Ecosystem Platform: An Exploratory Study Gabriella Costa, Felyppe Silva, Rodrigo Santos, Cláudia Werner, Toacy Oliveira {gabriellacbc, felyppers, rps, werner, toacy}@cos.ufrj.br Federal University of Rio de Janeiro - Brazil Oct. 30 th , 2013

Upload: others

Post on 10-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study

Gabriella Costa, Felyppe Silva, Rodrigo Santos, Cláudia Werner, Toacy Oliveira

{gabriellacbc, felyppers, rps, werner, toacy}@cos.ufrj.br

Federal University of Rio de Janeiro - Brazil

Oct. 30th, 2013

Page 2: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study

• Introduction • Background

• Ecosystems Life Cycle • Software Supply Network model • Framework ReuseECOS “3+1”

• Related Work • Modeling DiaDia

• Application / Improvements • SSN Model / Development Process

• Conclusion

2

Page 3: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 3

• Software Ecosystem (SECO) approach emphasizes the

externalization of software development, inviting all community actors to take part in the development and evolution of the components [Pettersson et al., 2010]

build extensions / components / services / applications

• Mobile Ecosystems

interaction of external users and the adoption by third party developers is essential for the

growth of the ecosystem

Page 4: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 4

• Some researches consider the evolution of Software Product Lines (SPLs) to SECOs [Bosch, 2009] [Jansen et al., 2013] [Santos, 2013]

• Our focus:

Our objective is to perform an exploratory study on characterizing the emergence of a SECO from an initial application, considering the life

cycle of mobile ecosystems

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

How to evolve from mobile applications to a SECO?

Page 5: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 5

[Santos et al., 2013]

Ecosystems Life Cycle Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Time

Number of actors and

artifacts

Phase 1 Phase 2 Phase 3 Phase 4

1. Initiation 2. Propagation 3. Amplification 4. Termination

Page 6: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

Software Supply Network (SSN) Model

From Applications to a Software Ecosystem Platform: An Exploratory Study 6

• SECO modeling perspective based on three levels:

[Boucharas et al., 2009]

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 7: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 7

• SSN shows the main actors and their relationships within a SECO

• Main Elements:

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Software Supply Network (SSN) Model

Page 8: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 8

• SSN shows the main actors and their relationships within a SECO

• Main Elements:

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Software Supply Network (SSN) Model

Page 9: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

Framework ReuseECOS "3+1"

From Applications to a Software Ecosystem Platform: An Exploratory Study 9

• This framework divides the activities that compose the evolution process of an application to an ecosystem through "3+1" dimensions

Santos & Werner [2011 ]

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 10: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 10

Evaluating Architectural Openness in Mobile Software Platforms

• Architectural openness in mobile platforms • How can openness strategies for SECOs contribute to its growth?

• The adoption of a mobile application by third-party developers

and external users is emphasized • It also contributes for the application to become an ecosystem • We do not discuss the architectural aspects and policies on how

open the platform is

Anvaari & Jansen, 2010

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 11: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 11

Software Ecosystems: From Software Product Management to Software Platform Management

• Analyze Software Product Management (SPM) for software

producing organizations with a SECO approach • Investigate practices and tools of SPM and what needs to be

changed on it in order to use SPM for SECOs

• Management of the expansion of a product to a platform is undoubtedly of great importance

• Example that represents the evolution process of an application to an ecosystem

Jansen et al., 2013

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 12: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 12

• DiaDia initial version

• Glucose management system for diabetic patients • Provides a simple way to store glucose rates and monitor variations

during the user’s treatment

• Shows the amount of carbohydrates and calories contained in a given meal within the user’s diet

• Informs the amount of insulin necessary for the patient in a specific meal

DiaDia Mobile Application Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 13: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 13

• DiaDia initial version

DiaDia Mobile Application Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 14: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

DiaDia Application Improvements

From Applications to a Software Ecosystem Platform: An Exploratory Study 14

• DiaDia second version

• Information related to doctors and health plans • End user loses the freedom of owning an application free from a third

party’s information

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 15: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

DiaDia Application Improvements

From Applications to a Software Ecosystem Platform: An Exploratory Study 15

• DiaDia second version

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 16: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 16

• DiaDia third version

• Original application would be maintained and made directly available for

download at Google’s PlayStore for end-users • Provides a development version for health plans, endocrinologists or

companies connected to food

• The additional information from these intermediaries would appear like plugins for the application

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

DiaDia Application Improvements

Page 17: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 17

• DiaDia third version

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

DiaDia Application Improvements

Page 18: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

DiaDia Development Process

From Applications to a Software Ecosystem Platform: An Exploratory Study 18

1. Setup of the development environment in order to enable the reuse of an existing ecosystem, Android, offered by Google

2. Customers’ requests will propitiate the development or evolution of the application, resulting in a new version

3. If the generated application meets the needs expected by the customer, this can be spread among users, i.e., it is sent to PlayStore

4. Since DiaDia application is at the PlayStore, it will be available for interaction with users

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 19: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 19

5. From the interaction between the user and the application, he/she can improve the application by creating plugins and making them available to other users

6. Users also can suggest improvements for the organization that owns the application. However, as in other ecosystems (e.g., iOS, SAP), this evolution is controlled in order to maintain the application’s quality

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

DiaDia Development Process

Page 20: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 20

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

DiaDia Development Process

Page 21: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 21

When does DiaDia cease to be an application and becomes a SECO ?

• Since the company responsible for the application has no

longer control over who makes the extensions, how it is done and how many they are emerge as important issues

• The fact that the amount of products generated (or even of

intermediary actors) has increased is just an indication of the application evolution towards a SECO

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 22: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

From Applications to a Software Ecosystem Platform: An Exploratory Study 22

• We presented an exploratory study to characterize the emergence of a SECO from an initial application

• SSN model / BPMN model / DiaDia Example • We are executing some additional tests and

adjustments of its main features before releasing it to PlayStore

• As future work, we intend to apply and analyze this research approach in other scenarios than mobile applications

Introduction - Background - Related Work - Modeling DiaDia - Conclusion

Page 23: From Applications to a Software Ecosystem Platform: An Exploratory Studysigappfr.acm.org/MEDES/13/download/Gabriella-Castro.pdf · • SSN Model / Development Process • Conclusion

Thanks!

Questions?

Please email to [email protected]

From Applications to a Software Ecosystem Platform: An Exploratory Study 23