AN ASPECT-BASED APPROACH FOR CONCURRENT PROGRAMMING USING CSP FEATURES

被引:0
作者
Araujo, Jose Elias [1 ]
Rebelo, Henrique [1 ]
Lima, Ricardo [1 ]
Mota, Alexandre [1 ]
Castor, Fernando [1 ]
Lima, Tiago [1 ]
Lucena, Juliana [1 ]
Lima, Filipe [1 ]
机构
[1] Univ Fed Pernambuco, Informat Ctr, Recife, PE, Brazil
来源
ICSOFT 2010: PROCEEDINGS OF THE FIFTH INTERNATIONAL CONFERENCE ON SOFTWARE AND DATA TECHNOLOGIES, VOL 2 | 2010年
关键词
Concurrent programming; Aspect-oriented programming; Communicating sequential processes; JCSP; Metrics;
D O I
暂无
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
The construction of large scale parallel and concurrent applications is one of the greatest challenges faced by software engineers nowadays. Programming models for concurrency implemented by mainstream programming languages, such as Java, C, and C++, are too low-level and difficult to use by the average programmer. At the same time, the use of libraries implementing high level concurrency abstractions such as JCSP requires additional learning effort and produces programs where application logic is tangled with library-specific code. In this paper we propose separating concurrent concerns (CSP code) from the development of sequential Java processes. We explore aspect-oriented programming to implement this separation of concerns. A compiler generates an AspectJ code, which instruments the sequential Java program with JCSP concurrent constructors. We have conducted an experiment to evaluate the benefits of the proposed framework. We employ metrics for attributes such as separation of concerns, coupling, and size to compare our approach against the JCSP framework and thread based approaches.
引用
收藏
页码:226 / 231
页数:6
相关论文
共 8 条
[1]   A METRICS SUITE FOR OBJECT-ORIENTED DESIGN [J].
CHIDAMBER, SR ;
KEMERER, CF .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1994, 20 (06) :476-493
[2]   Do crosscutting concerns cause defects? [J].
Eaddy, Marc ;
Zimmermann, Thomas ;
Sherwood, Kaitlin D. ;
Garg, Vibhav ;
Murphy, Gail C. ;
Nagappan, Nachiappan ;
Aho, Alfred V. .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2008, 34 (04) :497-515
[3]  
Goetz B., 2006, Java Concurrency in Practice
[4]  
Hoare C. A. R., 1985, Communicating Sequential Processes.
[5]  
Laddad R., 2003, ASPECTJ ACTION PRACT
[6]  
Roscoe AW., 1997, The Theory and Practice of Concurrency
[7]  
Sant'Anna C., 2003, P BRAZILIAN S SOFTWA, P19
[8]  
Welch P., 2006, JCSP COMMUNICATING S