More severely, mobile apps are often closed-source, i.e. their source code is not publicly available. Thus, finding and learning code examples from existing mobile app projects would be difficult.
hence
then
要するに
altogether
in brief
to summarise
in short
i.e.
mobile apps are often closed-source, i.e. their source code is not publicly available.
For example, an Android app might make 8-42% of its external dependencies to Android APIs and 7-68% to Java APIs
e.g.
typical API usage scenarios often include several API elements and follow special rules, e.g. for pre- and post-conditions or for control and data flows
such as
traditional testing such as coverage-based approaches may not be effective.
Modern software systems are highly-configurable, allowing users to customize a large number of configuration operations while retaining a core set of functionality.
most existing work assumes default configurations while ignoring the influence of various configurations.
Concession (agrees that something is good, with limitations)†
なんといっても/とりわけ
after all
admittedly
doubtless
no doubt
それでもなお/それにもかかわらず
all the same
nonetheless
under certain circumstances
nevertheless
notwithstanding
still
yet
けれども
although
although this may be true
at the same time
despite
even though
in spite of
を覗いて
besides
としても
even if
even so
だが
however
However, learning API usages is often challenging due to the fast-changing nature of API frameworks for mobile systems and the insufficiency of API documentation and source code examples.
while
While researchers have developed techniques to analyze, quantify, detect, and fix performance bugs, we conjecture that many of these techniques may not be effective in highly-configurable systems.