Re: How to define Scattering?
"Marc Eaddy" <[email protected]> Mon, 11 Feb 2008 17:15:12 -0500
| Newsgroups | gmane.comp.programming.aspect.general |
|---|---|
| Message-ID | <00dd01c86cfb$9256c3d0$b7044b70$@edu> |
Hi Dipankar, Great question! "Scattering" means that a concern is implemented by more than one program element. However, this all depends on how you define "concern," "implemented," and "program element." If you define a program element as the entire program A, no concerns are scattered. If you define a program element as the individual tokens of program A, most concerns are scattered. A concern may be scattered in program A and not in program B. Scattering also depends on the granularity of the concern. For example, a feature concern such as "Draw shapes" is at a higher level of granularity than "Draw circles." In general, scattering is proportional to concern granularity level and inversely proportional to program element granularity level. Probably most troublesome is that "implements" is not an easy relationship to decide. What does it mean to say a piece of code implements a concern? Does the Main function implement every concern? (If so, every concern is scattered.) Determining the relationship between concerns and code is called the concept assignment problem. It is undecidable in general. Several researchers have created metrics to measure scattering: F. C. Filho, N. Cacho, E. Figueiredo, R. Maranhao, A. Garcia, and C. M. F. Rubira, "Exceptions and Aspects: The Devil is in the Details," Foundations of Software Engineering (FSE), 2006. M. Eaddy, T. Zimmermann, K.D. Sherwood, V. Garg, G.C. Murphy, N. Nagappan, and A. Aho, "Do Crosscutting Concerns Cause Defects?," in submission, September 2007. http://www.cs.columbia.edu/~eaddy/publications/DoCrosscuttingConcernsCauseDe fects-JournalSubmission.pdf Cheers, Marc Eaddy PhD Student Columbia University http://www.columbia.edu/~me133 > -----Original Message----- > From: Dipankar Majumdar [mailto:[email protected]] > Sent: Sunday, February 10, 2008 11:15 PM > To: [email protected] > Subject: [aosd-discuss] How to define Scattering? > > Hi All, > I am working on Aspect Mining at Jadavpur University, India. It is well > known that 'Scattering' is one of the principal characteristics of any > Aspect. Can you please let me know, what is the formal definition of > Scattering? Or in other words what are the symptoms that we look for, > in order to tell whether a particular 'block of code' is scattered? > > Regards > > > Dipankar Majumdar > Dept. of Information Tech. > B.P. Poddar Instt of Mgmt & Tech. > Kolkata - 700052 > India > ________________________________ > > More new features than ever. Check out the new AIM(R) Mail > <http://o.aolcdn.com/cdn.webmail.aol.com/mailtour/aol/en- > us/text.htm?ncid=aimcmp00050000000001> ! _______________________________________________ discuss mailing list - [email protected] To unsubscribe and change options, go to: http://aosd.net/mailman/listinfo/discuss_aosd.net Check out the AOSD.net Wiki: http://aosd.net/wiki