27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

following research questions (RQ) were established: (i) RQ<br />

1: What is the current state of the adoption of AOP in the<br />

development of embedded systems? (ii) RQ 2: How AOP<br />

has been used in the embedded system development? (iii)<br />

RQ 3: What are the benefits and limitations by using AOP<br />

in embedded systems?<br />

Search Strategy: In order to establish the search strategy,<br />

we identified then initially specific keywords for the two<br />

research fields: AOP and Embedded System. Thus, for AOP<br />

field, we identified the terms “AOP”, “AO”, “crosscutting<br />

concern”, and “cross-cutting concern”. Following, we found<br />

synonyms for these keywords: “aspect oriented programming”,<br />

“aspect oriented software”, “aspect oriented application”,<br />

“aspect oriented app”, “aspect oriented program”,<br />

“aspect orientation”, and “aspect-based”. According to the<br />

systematic review specialist, a technological term “AspectJ”<br />

was included. Furthermore, for Embedded <strong>Systems</strong> field, the<br />

following keywords were used: “reactive system”, “real-time<br />

system”, “embedded”, “cyber-physical system”, “pervasive<br />

system”, “ubiquitous system”, “wearable computer”, and<br />

“consumer electronic”. In addition to the search string, we<br />

selected larger publications databases as sources of primary<br />

studies: IEEE Xplore 1 , ACM Digital Library 2 , Springer<br />

Link 3 , Scirus 4 , ScienceDirect 5 , and SCOPUS 6 .<br />

Inclusion and Exclusion Criteria: Two basic parameters<br />

that play an important role at the systematic review planning<br />

is to define the Inclusion Criteria (IC) and Exclusion Criteria<br />

(EC): (i) IC 1: The primary study explore the use of AOP in<br />

the embedded system development; (ii) IC 2: The primary<br />

study presents how AOP has been used in the embedded<br />

system development; and (iii) IC 3: The primary study<br />

presents benefits and limitations provided by the use of<br />

AOP in embedded systems; (iv) EC 1: The primary study<br />

does not address AOP in embedded system development;<br />

(v) EC 2: The primary study presents an abstract and/or an<br />

introductory section that seem related to AOP in embedded<br />

system development; however, the rest of the text is not in<br />

fact related to; and (vi) EC 3: The primary study does not<br />

present any abstract or it is not available for further reading.<br />

Data Extraction and Synthesis Method: To extract data,<br />

we use control tables to each research question. These<br />

tables summarize results aiming at facilitating to obtain<br />

conclusions. The data of each primary study will be independently<br />

extracted by two reviewers. If disagreement occurs,<br />

discussion will be conducted.<br />

1 http://www.ieeexplore.ieee.org<br />

2 http://www.portal.acm.org<br />

3 http://www.springer.com/lncs<br />

4 http://www.scirus.com/<br />

5 http://www.sciencedirect.com<br />

6 http://www.scopus.com<br />

B. Step 2: Systematic Review Conduction<br />

The search by primary studies was conducted according<br />

to previously established planning. This identification was<br />

made by looking for all primary studies that match with<br />

the search string on the selected databases. As result, a<br />

total of 297 studies were identified, all studies were considered<br />

primary even in the event of repetition between the<br />

databases, in order to identify the relevance of each database,<br />

as shown in Table I. Following, through reading of abstracts<br />

and application of the inclusion and exclusion criteria, 104<br />

studies were then selected to be fully read. At the end, 25<br />

studies, summarized in Table II, were considered as relevant<br />

to our systematic review. Following, a more detailed analysis<br />

was conducted on the 25 primary studies included in our<br />

systematic review and data were extracted.<br />

Table I<br />

DATABASE RELEVANCE<br />

Database Obtained Included Percentage Index<br />

IEEE 44 10 22.7%<br />

ACM 77 6 7.8%<br />

Scopus 79 5 6.3%<br />

Springerlink 17 1 5.9%<br />

ISI Web 11 1 9.0%<br />

Scirus 69 2 2.9%<br />

C. Step 3: Systematic Review Reporting<br />

The systematic review provides us a perspective of how<br />

AOP has been explored in embedded system development.<br />

Through primary studies included in our systematic review,<br />

we have identified six research areas: OOP versus AOP<br />

when used in embedded system development (S2, S8, S10,<br />

S23 and S24), AOP used at distributed embedded systems<br />

(S1, S2, S5, S6, S9, S12, S22, S23, S24 and S25), AOP<br />

used in consumer electronics (S8, S10, S24 and [11] by<br />

specialist recommendation), AOP used in software development<br />

process for embedded systems (S1, S9 and S23),<br />

SoC used in the architectures of embedded systems (S1, S5,<br />

S11, S18, S24 and S25), and AOP for real-time embedded<br />

systems (S2, S4, S5, S6, S9, S10, S11, S12, S15, S17, S20,<br />

S22 and S23). We have also examined the maturity of the<br />

ideas and concepts, as well as the status of their applications<br />

by looking into the research methods used in each study’s<br />

validation. It is also observed that the primary studies related<br />

to AOP in the context of embedded systems are concentrated<br />

in the last years. Figure 2 shows the number of primary<br />

studies distributed through the years.<br />

The research area which aggregates the most number of<br />

studies is the use of AOP on real-time embedded systems;<br />

two main studies present different initiatives to apply AOP:<br />

[1] and [4]. The work of Beuche et. al [1] show the<br />

use of AOP on the operational system layer, exploring<br />

customization and reuse. The usage of aspects imprints the<br />

159

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!