|
ABSTRACT
Even in well-designed software, some concerns can not be easily encapsulated due to their dependence on surrounding context. Such concerns are intermingled with each other and the context code, making it difficult for developers to reason independently about them. We have introduced software plans as an editor-based approach for addressing the tangling of context-dependent concerns. Software plans provide programmers with partial views of the overall software which present only that code related to concerns of current interest. The problem we address is that the traditional sequence-of-characters representation for code is poorly suited for software plans. It lacks the ability to accurately model the concerns associated with a code block, the relationships between code blocks, and the notion of multiple independent plans. In this paper, we present a formally-defined code/concern model that supports these capabilities and more. Using this model, we were able to implement a prototype editing tool that supports software plans.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
J. Aldrich. Challenge problems for separation of concerns. In OOPSLA 2000 Workshop on Advanced Separation of Concerns, Oct. 2000.
|
| |
2
|
E. L. Baniassad, G. C. Murphy, C. Schwanninger, and M. Kircher. Where are programmers faced with concerns? In OOPSLA 2000 Workshop on Advanced Separation of Concerns, Oct. 2000.
|
| |
3
|
A. P. Black and M. P. Jones. The case for multiple views. In ICSE 2004 Workshop on Directions in Software Engineering Environments, May 2004.
|
| |
4
|
L. Carver and W. G. Griswold. Sorting out concerns. In OOPSLA '99 Workshop on Multi-Dimensional Separation of Concerns, Nov. 1999.
|
| |
5
|
D. Coppit and B. Cox. Software plans for separation of concerns. In Proceedings of the Third AOSD Workshop on Aspects, Components, and Patterns for Infrastructure Software, Lancaster, UK, 22 Mar. 2004.
|
| |
6
|
|
| |
7
|
E. Ernst. Separation of concerns and then what? In ECOOP 2000 Workshop on Aspects and Dimensions of Concerns. Finland, 2000.
|
| |
8
|
|
| |
9
|
U. S. E. Group. Aspect browser homepage. URL: http://www.cs.ucsd.edu/users/wgg/Software/AB/.
|
 |
10
|
|
 |
11
|
|
| |
12
|
Gregor Kiczales , Erik Hilsdale , Jim Hugunin , Mik Kersten , Jeffrey Palm , William G. Griswold, An Overview of AspectJ, Proceedings of the 15th European Conference on Object-Oriented Programming, p.327-353, June 18-22, 2001
|
| |
13
|
G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP), Finland, June 1997. Springer-Verlag.
|
| |
14
|
V. Kruskal. Multiple cross-cutting architectural views. In A Blast from the Past: Using P-EDIT for Multidimensional Editing, June 2000.
|
| |
15
|
Gail C. Murphy , Albert Lai , Robert J. Walker , Martin P. Robillard, Separating features in source code: an exploratory study, Proceedings of the 23rd International Conference on Software Engineering, p.275-284, May 12-19, 2001, Toronto, Ontario, Canada
|
| |
16
|
E. Newman. Localizing views for separation of concerns. In ICSE 2001 Workshop on Advanced Separation of Concerns in Software Engineering, 15 May 2001.
|
 |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
W. P. Stevens, G. J. Myers, and L. L. Constantine. Structured design. IBM Systems Journal, 13(2):115--39, 1974.
|
| |
21
|
M. Weiser. Program slicing. IEEE Transactions on Software Engineering, SE-10(4):352--7, 1984.
|
|