presentation ecsa

14
Mohsen Anvaari Slinger Jansen Evaluating Architectural Openness in Mobile Software Platforms 2 nd Workshop on Software Ecoystems Copenhagen August 23th, 2010

Upload: mohsen-anvaari

Post on 05-Jul-2015

629 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Presentation ECSA

Mohsen Anvaari Slinger Jansen

Evaluating Architectural Openness in Mobile Software Platforms

2nd Workshop on Software Ecoystems

Copenhagen – August 23th, 2010

Page 2: Presentation ECSA

2

Agenda

Subject and Problem Area Some Definitions Research Questions Research Scope Related Research Methodology Results Conclusions Questions

Page 3: Presentation ECSA

3

Subject and Problem Area

Openness in Software Systems and Projects

Mobile Software Platforms

Openness Strategy, Platform Architecture, Platform Accessibility

Evaluating Architectural Openness in Mobile Software Platforms

Page 4: Presentation ECSA

4

Some Definitions

Openness: Degree of accessibility to view, use, and modify a software code

Openness strategy: Openness degree of a platform settled by the platform supplier

Platform architecture: Structure of the software platform compromises its components and the relationship between them (Bass et. al, 2003)

Platform accessibility: Methods and points that developers can use to extend or modify a platform

Page 5: Presentation ECSA

5

Research Questions

RQ: How does the software architecture

expose the openness strategy of mobile

software platforms?

SQ1: Can a model be developed that describes

the architectural openness of mobile platforms?

SQ2: How would the licensing aspects of the

platforms relate to such a model?

SQ3: How open are the five main mobile

platforms?

Page 6: Presentation ECSA

6

Research Scope

Page 7: Presentation ECSA

Related Researches

Few attempts have been made to demonstrate the comparison of smartphone OSs (Lin and Ye, 2009)

Lin and Ye, 2009: comparison of four main mobile platforms and their openness, based on non-technical aspects

Cho and Joen, 2007: Openness and architecture of three platforms, a connection is not included

Yamakami, 2009: Comparison of four main mobile platforms, based on non-technical aspects

7

Page 8: Presentation ECSA

8

Methodology

Literature review: Finding the relationship

between openness strategies and the software architecture of mobile platforms

Qualitative interviews with mobile application developers: Verify the platform

accessibility in the five main platforms that allows application developers to extend the platforms

Page 9: Presentation ECSA

9

Results

Architectural Openness Model

Architectural Openness Factors

Openness in Five Main Mobile Platforms

Page 10: Presentation ECSA

10

Results: Architectural Openness Model

Applications

Middleware

Kernel

Extended ApplicationsNative Applications

App 1 App 2 App 3 App N...

(Services, Libraries, Frameworks …)

(Device Drivers, Memory Management, Power Management, Security …)

App 1 App 2 App 3 App M...

Platform Architecture

Symbian Architecture Android Architecture

+Platform Accessibility

Integrate

Extend

Modify

Integrate

Extend

Modify

Integrate

Extend

Modify

Integrate

Extend

Modify

Architecture (Cho and Jeon, 2007) iPhone Architecture

Page 11: Presentation ECSA

Results: Architectural Openness Factors

Layer FactorPossibility statuses

If possibleLicensingstatuses

Extended applications

Integrate extended applications

Possible/ Possible for

some components/ Not possible

Permission is not needed/ In some

situation permission is

needed/ Permission is always needed

Extend extended applications

Modify extended applications

Native applications

Integrate native applications

Extend native applications

Modify extended applications

Middleware

Integrate middleware

Extend middleware

Modify middleware

Kernel

Integrate kernel

Extend kernel

Modify kernel

Page 12: Presentation ECSA

Comparison

Factor Android Symbian Windows Mobile Blackberry iPhone

P L P L P L P L P LIntegrate extended

applications

Extend extended

applications

Modify extended

applications

Integrate native

applications

Extend native

applications

Modify native

applications

Integrate

middleware

Extend middleware

Modify middleware

Integrate kernel

Extend kernel

Modify kernel

P - Possibility: Possible (G), Possible for Some Components (Y), Not Possible (Red)

L - Licensing: Permission is Not Needed(G), Sometimes Permission is Needed(Yellow),

Permission is Always Needed(R)

Page 13: Presentation ECSA

13

Conclusions

Proposed architectural openness model shows how the openness strategies of mobile platform suppliers affect the software architecture of the platforms

Proposed architectural openness factors shows how open the mobile software platforms are

Based on the model and the factors, the openness degree of five main mobile platforms is indentified

Qualitative interviews validate the previous conclusion

Interviews show application developers don’t care about architectural openness of their favorite platforms

Interview with Some Device Manufacturers, and Mobile Suppliers is recommended

Page 14: Presentation ECSA

14

Questions