2016
DOI: 10.1016/j.jss.2016.05.039
|View full text |Cite
|
Sign up to set email alerts
|

Software architectural principles in contemporary mobile software: from conception to practice

Abstract: a b s t r a c tThe meteoric rise of mobile software that we have witnessed in the past decade parallels a paradigm shift in its design, construction, and deployment. In particular, we argue that today's mobile software, with its rich ecosystem of apps, would have not been possible without the pioneering advances in software architecture research in the decade that preceded it. We describe the drivers that elevated software architecture to the centerpiece of contemporary mobile software. We distill the architec… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

4
16
0
1

Year Published

2016
2016
2019
2019

Publication Types

Select...
3
3
2

Relationship

1
7

Authors

Journals

citations
Cited by 21 publications
(21 citation statements)
references
References 40 publications
4
16
0
1
Order By: Relevance
“…This suggests that BitcoinWallet is required to handle a greater amount of user-interaction and a smaller amount of actual transactional services, whereas K-9 Mail has a greater focus on building business mailing services. This is aligned with a finding from the paper [210] by Bagheri et al The authors, via studying a set of 200 Android applications in Google Play store, found out that Android applications in different domains have different architecture characteristics regarding type and number of components. In particular, finance apps, such as BitcoinWallet and other banking or payment systems, provide richer user-interface compared to the other kinds of apps.…”
Section: Using Role Stereotypes For Profiling Software Design Intentisupporting
confidence: 82%
“…This suggests that BitcoinWallet is required to handle a greater amount of user-interaction and a smaller amount of actual transactional services, whereas K-9 Mail has a greater focus on building business mailing services. This is aligned with a finding from the paper [210] by Bagheri et al The authors, via studying a set of 200 Android applications in Google Play store, found out that Android applications in different domains have different architecture characteristics regarding type and number of components. In particular, finance apps, such as BitcoinWallet and other banking or payment systems, provide richer user-interface compared to the other kinds of apps.…”
Section: Using Role Stereotypes For Profiling Software Design Intentisupporting
confidence: 82%
“…Proposed in the 90's, Component Oriented Programming is considered a proved technique for building modern software‐based systems. For instance, Bagheri et al argue that Android owes its success to many software architectural principles developed over the previous decade, including component orientation—which is at the core of the proposed methodology.…”
Section: Discussionmentioning
confidence: 99%
“…The study of software architectures and software architecture patterns has allowed software developers to conceive, design, implement, and maintain highly complex software systems. The academic rigour of pioneers working in the wider area of software architectures is even credited as a main enabler of the mobile app revolution we are experiencing today, evident by the widespread success of the Android platform …”
Section: Reference Architecturementioning
confidence: 99%
“…Despite the wide diffusion of Android apps and their increasing complexity [18], at the time of writing we found a surprising low number of research studies about the architecture of mobile apps. By mining and reverse engineering the architecture of more than 1,400 Android apps, Bagheri et al studied the role of software architecture in the design and development of mobile software, extracted the architectural principles that have been applied by app developers, and identified architectural anti-patterns of the Android programming model [19]. They found that Android apps are complex, composed of tens of components, and organized according to multiple architectural styles.…”
Section: Related Workmentioning
confidence: 99%